当我检查服务 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
如果您希望将日志写入其他地方,则位置不需要位于其中。