我正在使用Logback API来记录基于java的应用程序并提供以下路径来创建文件,但是在VPS服务器上它没有创建文件。相同的配置在我的本地计算机上正常工作。请检查您是否可以提供帮助,此问题是否与文件夹和文件写入权限有关。我已经给了
chmod 777对以下日志文件夹的权限,但仍然没有运气。请帮忙。
没有粘性痕迹 /根/应用/为MyService /日志
没有堆栈跟踪。
我在此文件夹上安装了Tomcat 8实例 - /root/apps/authservice/apache-tomcat-8.0.32/logs
是否写入此日志文件夹的Tomcat写入限制问题 /在CentoS Linux机器上?我有root用户权限,Tomcat也有root用户,拥有从顶级root到嵌套foldler的所有777权限 - 我已在此文件夹上安装了Tomcat 8实例 - /root/apps/authservice/apache-tomcat-8.0.32/logs
你在/ usr / local / tomcat8 / logs / file写入权限上安装的Tomcat是否相同?我是否需要安装Tomcat usr / local文件夹。这是访问权限的问题吗? CentoS Linux机器上的/ root和/ local访问权限?
<property name="DEV_HOME" value="/root/apps/logs" />
<appender name="FILE-AUDIT" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${DEV_HOME}/myapp.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- rollover daily -->
<fileNamePattern>${DEV_HOME}/archived/myapp.%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- or whenever the file size reaches the max -->
<maxFileSize>${rolling.file.max.size}</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<maxHistory>${rolling.file.max.history}</maxHistory>
</rollingPolicy>
<encoder>
<pattern>${rolling.file.encoder.pattern}</pattern>
</encoder>
</appender>
答案 0 :(得分:0)
最后,我得到了自己的问题的解决方案,并为其他人发布解决方案并节省了他们2天的努力:)
当我们从旧的log4j迁移到Logback时,问题与log4j和Logback之间的冲突有关。您需要通过运行以下命令从现有依赖项中排除lo4j依赖项:
$ mvn dependency:tree
=&gt;仅为使用SLF4j和Logback&gt;
进行日志记录添加这些jar <dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${version.slf4j}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>${version.logback}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>log4j-over-slf4j</artifactId>
<version>${version.slf4j}</version>
<scope>runtime</scope>
</dependency>