JFrog Artifactory uses the logback framework for Artifactory and Access services. Logback is a popular open-source Java-based logging framework designed for efficient and flexible logging in Java applications.
To rotate your Artifactory and Access logs daily and archive them for n number of days, please use the sample appender using time based rolling policy along with
Artifactory Version 7:
Below is the example of rotating artifactory-service/access/request.log daily and keeping them for 30 days.
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <File>${log.dir}/artifactory-service.log</File> <encoder> <pattern>%date{yyyy-MM-dd'T'HH:mm:ss.SSS, UTC}Z [jfrt ] [%-5p] [%-16X{uber-trace-id}] [%-30.30(%c{3}:%L)] [%-20.20thread] - %m%n</pattern> </encoder> <!-- http://logback.qos.ch/manual/appenders.html#TimeBasedRollingPolicy --> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- rollover daily --> <FileNamePattern>${log.dir.archived}/artifactory-service/%d{yyyy-MM-dd}/artifactory-service.%d{yyyy-MM-dd}.log.gz</FileNamePattern> <!-- keep logs for 30 days --> <maxHistory>30</maxHistory> </rollingPolicy> </appender> <appender name="REQUEST" class="ch.qos.logback.core.rolling.RollingFileAppender"> <File>${log.dir}/artifactory-request.log</File> <encoder> <pattern>%m%n</pattern> </encoder> <!-- http://logback.qos.ch/manual/appenders.html#TimeBasedRollingPolicy --> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <FileNamePattern>${log.dir.archived}/artifactory-request/%d{yyyy-MM-dd}/artifactory-request.%d{yyyy-MM-dd}.log.gz</FileNamePattern> <!-- keep logs for 30 days --> <maxHistory>30</maxHistory> </rollingPolicy> </appender> <appender name="ACCESS" class="ch.qos.logback.core.rolling.RollingFileAppender"> <File>${log.dir}/artifactory-access.log</File> <encoder> <pattern>%m%n</pattern> </encoder> <!-- http://logback.qos.ch/manual/appenders.html#TimeBasedRollingPolicy --> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <FileNamePattern>${log.dir.archived}/artifactory-access/%d{yyyy-MM-dd}/artifactory-access.%d{yyyy-MM-dd}.log.gz</FileNamePattern> <!-- keep logs for 30 days --> <maxHistory>30</maxHistory> </rollingPolicy> </appender>