Page History
...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<?xml version="1.0" encoding="UTF-8"?> <configuration<Configuration status="WARN" shutdownHook="disable"> <properties> <property <Properties> <Property name="LogLevel">INFO</property> TimeZone">${env:SCHEDULER_TZ:-Etc/UTC}</Property> <Property name="LogDir">${env:SCHEDULER_LOGS:-logs}</Property> <Property name="LogBasename">${env:SCHEDULER_APPNAME:-controller}</Property> <Property name="RetainDays">30d</Property> <Property name="MaxSizeOfRolledOverFiles">5GB</Property> <Property name="MaxSizePerFile">100MB</Property> <!-- Log level of the Root Logger. </properties> <appenders> <console name="--> <Property name="RootLogLevel">INFO</Property> <!-- Configuration for a 2nd debug log file (OFF|DEBUG|TRACE) If this value is set to DEBUG or TRACE then the above RootLogLevel has to have the same value. --> <Property name="LogLevelOfDebugLog">OFF</Property> </Properties> <Appenders> <Console name="console" target="SYSTEM_ERR"> <PatternLayout <patternLayout pattern="%highlight{%d{EE HHpattern="%highlight{%d{EE HH:mm:ss.SSS}{${TimeZone}} %-5level{INFO=info, DEBUG=debug, TRACE=trace} %logger - %message}{WARN=magenta}%n"/> </console>Console> <rollingRandomAccessFile <RollingRandomAccessFile name="fileInfo" fileName="${env:SCHEDULER_LOGSLogDir}/${env:SCHEDULER_APPNAMELogBasename}.log" filePattern="${env:SCHEDULER_LOGSLogDir}/${env:SCHEDULER_APPNAMELogBasename}-%d{yyyy-MM-dd}-%i.log.gz" immediateFlush="false"> <PatternLayout <patternLayout pattern="%d{yyyy-MM-dd HH:mm:ss,SSSZ} %-5level{pattern="%d{ISO8601}{${TimeZone}} %-5level{INFO=info, DEBUG=debug, TRACE=trace} %logger - %message%n" charset=" charset="UTF-8"/> <policies> <onStartupTriggeringPolicy/> <timeBasedTriggeringPolicy/> <sizeBasedTriggeringPolicy size="${MaxSizePerFile}"/> </policies> <DefaultRolloverStrategy fileIndex="nomax"> <Delete basePath="${env:SCHEDULER_LOGS}"> <IfFileName glob="*/${env:SCHEDULER_APPNAME}-*.log.gz" /> <IfAny> <IfLastModified age="${RetainDays}" /> <IfAccumulatedFileSize exceeds="${MaxSizeOfRolledOverFiles}"/> </IfAny> </Delete> </DefaultRolloverStrategy> </rollingRandomAccessFile> <rollingRandomAccessFile name="fileDebug" fileName="${env:SCHEDULER_LOGS}/${env:SCHEDULER_APPNAME}-debug.log" filePattern="${env:SCHEDULER_LOGS}/${env:SCHEDULER_APPNAME}-debug-%d{yyyy-MM-dd}-%i.log.gz" immediateFlush="false"> <patternLayout pattern="%d{yyyy-MM-dd HH:mm:ss,SSSZ} %-5level{INFO=info, DEBUG=debug, TRACE=trace} %logger - %message%n" charset="UTF-8"/> <policies> <onStartupTriggeringPolicy/> <timeBasedTriggeringPolicy/> <sizeBasedTriggeringPolicy size="${MaxSizePerFile}"/> </policies> <DefaultRolloverStrategy fileIndex="nomax"> <Delete basePath="${env:SCHEDULER_LOGS}"> <IfFileName glob="*/${env:SCHEDULER_APPNAME}-debug-*.log.gz" /> <IfAny> <IfLastModified age="${RetainDays}" /> <IfAccumulatedFileSize exceeds="${MaxSizeOfRolledOverFiles}"/> </IfAny> </Delete> </IfAny> </Delete> </DefaultRolloverStrategy> </rollingRandomAccessFile> </appenders> <loggers> <!-- logger name="js7" level="debug"/ --> <logger <Policies> <TimeBasedTriggeringPolicy/> <SizeBasedTriggeringPolicy size="${MaxSizePerFile}"/> </Policies> <DefaultRolloverStrategy fileIndex="nomax"> <Delete basePath="${LogDir}"> <IfFileName glob="*/${LogBasename}-*.log.gz" /> <IfAny> <IfLastModified age="${RetainDays}" /> <IfAccumulatedFileSize exceeds="${MaxSizeOfRolledOverFiles}"/> </IfAny> </Delete> </DefaultRolloverStrategy> </RollingRandomAccessFile> <RollingRandomAccessFile name="fileDebug" fileName="${LogDir}/${LogBasename}-debug.log" filePattern="${LogDir}/${LogBasename}-debug-%d{yyyy-MM-dd}-%i.log.gz" immediateFlush="false"> <PatternLayout pattern="%d{ISO8601}{${TimeZone}} %-5level{INFO=info, DEBUG=debug, TRACE=trace} %logger - %message%n" charset="UTF-8"/> <Policies> <TimeBasedTriggeringPolicy/> <SizeBasedTriggeringPolicy size="${MaxSizePerFile}"/> </Policies> <DefaultRolloverStrategy fileIndex="nomax"> <Delete basePath="${LogDir}"> <IfFileName glob="*/${LogBasename}-*.log.gz" /> <IfAny> <IfLastModified age="${RetainDays}" /> <IfAccumulatedFileSize exceeds="${MaxSizeOfRolledOverFiles}"/> </IfAny> </Delete> </DefaultRolloverStrategy> </RollingRandomAccessFile> </Appenders> <Loggers> <Logger name="spray" level="INFO"/> <logger <Logger name="akka" level="INFO"/> <logger <Logger name="akka.event.slf4j.Slf4jLogger" level="WARN"/> <logger <Logger name="js7.common.akkahttp.web.auth.GateKeeper" level="ERROR"/> <root <Root level="INFO${RootLogLevel}"> <!--appenderRefAppenderRef ref="console" level="ERROR"/--> <appenderRef -> <AppenderRef ref="fileInfo" level="INFO"/> <appenderRef <AppenderRef ref="fileDebug" level="${LogLevelLogLevelOfDebugLog}"/> </root> Root> </loggers>Loggers> </configuration>Configuration> |
Explanations:
- To modify the time zone that is applied to log entries and to the point in time of log rotation modify
<Property name="TimeZone">{Etc/UTC}<>Etc/UTC</Property>
. The time zone is specified during installationthe startscript by setting the environment variableSCHEDULER_TZ
. - To enable debug mode modify
<property name="LogLevelRootLogLevel">INFO</property>
toDEBUG
. In addition modify the value of<property name="LogLevelOfDebugLog">OFF</property>
toDEBUG.
- To change the log retention period modify
<Property name="RetainDays">30d</Property>
to some other value. Consider to use the suffixd
(ays),w
(eeks),m
(onths). - To limit the max. size of individual log files modify
<Property name="MaxSizePerFile">100MB</Property>
to some other value. Consider to use the unitsMB
,GB
. - To limit space consumption of all log files modify
<Property name="MaxSizeOfRolledOverFiles">5GB</Property>
to some other value. Consider to use the unitsMB
,GB
.
...
Overview
Content Tools