java logback.xml 配置示例
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
<
configuration
debug
=
"true"
>
<
jmxConfigurator
/>
<
springProperty
scope
=
"context"
name
=
"app_name"
source
=
"spring.application.name"
/>
<
appender
name
=
"STDOUT"
class
=
"ch.qos.logback.core.ConsoleAppender"
>
<
layout
class
=
"ch.qos.logback.classic.PatternLayout"
>
<
pattern
>%date [%thread] %-5level %logger{36}- %msg%n</
pattern
>
</
layout
>
</
appender
>
<
appender
name
=
"KafkaAppender"
class
=
"com.ppdai.logclient.logback.KafkaAppender"
>
<
layout
>
<
pattern
>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</
pattern
>
</
layout
>
<
manualStart
>true</
manualStart
>
</
appender
>
<
appender
class
=
"ch.qos.logback.core.rolling.RollingFileAppender"
name
=
"RollingFile"
>
<
file
>logs/application.log</
file
>
<
rollingPolicy
class
=
"ch.qos.logback.core.rolling.TimeBasedRollingPolicy"
>
<
FileNamePattern
>logs/application-%d{yyyy-MM-dd}-%i.log</
FileNamePattern
>
<
timeBasedFileNamingAndTriggeringPolicy
class
=
"ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"
>
<
maxFileSize
>20MB</
maxFileSize
>
</
timeBasedFileNamingAndTriggeringPolicy
>
<
MaxHistory
>10</
MaxHistory
>
</
rollingPolicy
>
<
encoder
class
=
"ch.qos.logback.classic.encoder.PatternLayoutEncoder"
>
<
pattern
>[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread] [%level] %logger:%L - %msg%n</
pattern
>
</
encoder
>
</
appender
>
<
springProfile
name
=
"dev"
>
<
root
>
<
level
value
=
"INFO"
/>
<
appender-ref
ref
=
"STDOUT"
/>
<
appender-ref
ref
=
"KafkaAppender"
/>
<
appender-ref
ref
=
"RollingFile"
/>
</
root
>
</
springProfile
>
<
springProfile
name
=
"fat"
>
<
root
>
<
level
value
=
"INFO"
/>
<
appender-ref
ref
=
"STDOUT"
/>
<
appender-ref
ref
=
"KafkaAppender"
/>
<
appender-ref
ref
=
"RollingFile"
/>
</
root
>
</
springProfile
>
<
springProfile
name
=
"uat"
>
<
root
>
<
level
value
=
"INFO"
/>
<
appender-ref
ref
=
"STDOUT"
/>
<
appender-ref
ref
=
"KafkaAppender"
/>
<
appender-ref
ref
=
"RollingFile"
/>
</
root
>
</
springProfile
>
<
springProfile
name
=
"pre"
>
<
root
>
<
level
value
=
"INFO"
/>
<
appender-ref
ref
=
"STDOUT"
/>
<
appender-ref
ref
=
"KafkaAppender"
/>
<
appender-ref
ref
=
"RollingFile"
/>
</
root
>
</
springProfile
>
<
springProfile
name
=
"pro"
>
<
root
>
<
level
value
=
"INFO"
/>
<
appender-ref
ref
=
"STDOUT"
/>
<
appender-ref
ref
=
"KafkaAppender"
/>
</
root
>
</
springProfile
>
</
configuration
>
此份logback的设置会在非pro环境开启本地日志,研发或测试的小伙伴可以直接通过stargate里面的终端进入实例,日志在目录logs/application.log文件中,可以使用less、cat、grep等命令进行查看。