Log4j1.X 设置日志文件权限

针对客户要求日志文件权限为600的问题,通过Log4j1.X的自定义Appender尝试用PosixFilePermission设置权限失败,最终采用Linux的chmod命令成功实现日志文件权限设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景

在一个客户那边要求系统生成的日志文件权限为600,而系统用的是Log4j1.X来记录日志的,默认权限是644。

解决办法

解决此问题需明确两点即可解决:

1、在哪里去设置日志文件权限?

2、如何设置日志文件权限?

对于第一个问题,会用Log4j的同学应该都知道我们可以自定义Appender来控制日志输出相关很多事情,当然包括输出的目标文件,那么就可以确定我们是可以通过自定义Appender来处理这个问题。

接下来是第二个问题,如何设置日志文件权限。大家知道一般要求控制文件权限都是在Linux系统中,windows一般不存在这种要求;在Linux中很自然的就能想到通过chmod命令就可以解决,但是出于自己对Java的那点小执着,chmod并不是我的第一选项,我还是希望通过Java方法来设置,这时就需要用到PosixFilePermission了,实现代码很简单:

public class MyRollingFileAppender extends RollingFileAppender {
    @Override
    public synchronized void setFile(String fileName, boolean append,
                                     boolean bufferedIO, int bufferSize) throws IOException {
        super.setFile(fileName, append, bufferedIO, bufferSize);
        File f =
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

EngineZhang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值