错误 RollingFileAppender

错误 RollingFileAppender

当我检查服务 unifi 状态时,我看到了这个错误,我想清除它。我是 Ubuntu 的菜鸟,所以如果给出关于从哪里开始查找以及如何查找的明确说明,我就能弄清楚。如果有人能帮忙,我将不胜感激。

ERROR Unable to invoke factory method in class org.apache.logging.log4j.core.appender.
RollingFileAppender for element RollingFile: java.lang.
IllegalStateException: No factory method found for class org.apache.logging.log4j.core.appender.
RollingFileAppender java.lang.IllegalStateException: No factory method found for class org.apache.logging.log4j.core.appender.
RollingFileAppender

答案1

这通常是写入权限问题,服务无权写入日志位置。

在您的log4j.xml文件中,您将看到如下部分:

<RollingFile
    name="RollingFile"
    fileName="${log.dir}/le-${app}.log"
    filePattern="${log.dir}/le-${app}-%d{yyyy-MM-dd}-%i.log.gz"
    ignoreExceptions="false"
    ...
</RollingFile>

记下{log.dir}位置并确认运行 Unifi 的服务能够写入该目录。如果不能,请考虑为服务创建一个特定目录,如下所示:

sudo mkdir /var/log/unifi
sudo chown -R {unifi}:{unifi} /var/log/unifi 

笔记:确保更改{unifi}为运行该服务的用户名。

/var/log如果您希望将日志写入其他地方,则位置不需要位于其中。

相关内容