1、控制台

  1. <configuration status="error" monitorInterval="10">
  2. <properties>
  3. <property name="LOG_HOME">logs</property>
  4. <property name="PATTERN_LAYOUT_CONSOLE_ROOT">%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %highlight{[%-5level]} [%c{1.}.%M(%F:%L)] --- %highlight{%msg %xEx%n}</property>
  5. <property name="PATTERN_LAYOUT">%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] [%-5level] --- %msg %xEx%n</property>
  6. </properties>
  7. <appenders>
  8. <Console name="Console" target="SYSTEM_OUT">
  9. <ThresholdFilter level="debug" onMatch="ACCEPT" onMismatch="DENY"/>
  10. <PatternLayout charset="utf-8">
  11. <MarkerPatternSelector defaultPattern="${PATTERN_LAYOUT_CONSOLE_ROOT}">
  12. <PatternMatch key="UTIL" pattern="${PATTERN_LAYOUT}"/>
  13. </MarkerPatternSelector>
  14. </PatternLayout>
  15. </Console>
  16. </appenders>
  17. <loggers>
  18. <!-- 默认显示方式 -->
  19. <root level="INFO">
  20. <appender-ref ref="Console"/>
  21. </root>
  22. <Logger name="com.lms.http" level="DEBUG" additivity="false">
  23. <!--生产环境将控制台去掉-->
  24. <appender-ref ref="Console"/>
  25. </Logger>
  26. </loggers>
  27. </configuration>

2、文件

  1. <configuration status="error" monitorInterval="10">
  2. <properties>
  3. <property name="LOG_HOME">logs</property>
  4. <property name="INFO_FILE_NAME">info.log</property>
  5. <property name="ERROR_FILE_NAME">error.log</property>
  6. <property name="PATTERN_LAYOUT_CONSOLE_ROOT">%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %highlight{[%-5level]} [%c{1.}.%M(%F:%L)] --- %highlight{%msg %xEx%n}</property>
  7. <property name="PATTERN_LAYOUT_FILE_ROOT">%d{yyyy-MM-dd HH:mm:ss.SSS} [%5p] [%t] [%l] --- %m%n</property>
  8. <property name="PATTERN_LAYOUT">%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] [%-5level] --- %msg %xEx%n</property>
  9. </properties>
  10. <appenders>
  11. <Console name="Console" target="SYSTEM_OUT">
  12. <ThresholdFilter level="debug" onMatch="ACCEPT" onMismatch="DENY"/>
  13. <PatternLayout charset="utf-8">
  14. <MarkerPatternSelector defaultPattern="${PATTERN_LAYOUT_CONSOLE_ROOT}">
  15. <PatternMatch key="UTIL" pattern="${PATTERN_LAYOUT}"/>
  16. </MarkerPatternSelector>
  17. </PatternLayout>
  18. </Console>
  19. <RollingFile name="ROLLING_FILE_INFO" fileName="${LOG_HOME}/${INFO_FILE_NAME}"
  20. filePattern="${LOG_HOME}/${INFO_FILE_NAME}-%d{yyyy-MM-dd}-%i.log.gz"
  21. bufferSize="4096" immediateFlush="true" bufferedIO="true" append="false">
  22. <Filters>
  23. <ThresholdFilter level="INFO" onMatch="ACCEPT" onMismatch="NEUTRAL"/>
  24. </Filters>
  25. <PatternLayout charset="utf-8">
  26. <MarkerPatternSelector defaultPattern="${PATTERN_LAYOUT_FILE_ROOT}">
  27. <PatternMatch key="UTIL" pattern="${PATTERN_LAYOUT}"/>
  28. </MarkerPatternSelector>
  29. </PatternLayout>
  30. <Policies>
  31. <!--<CronTriggeringPolicy schedule="0 0 0/12 * * ?"/>-->
  32. <TimeBasedTriggeringPolicy/>
  33. <SizeBasedTriggeringPolicy size="10MB"/>
  34. </Policies>
  35. <DefaultRolloverStrategy max="5">
  36. <Delete basePath="${LOG_HOME}" testMode="false" maxDepth="5">
  37. <IfFileName glob="${INFO_FILE_NAME}*.log.gz">
  38. <IfLastModified age="30d">
  39. <IfAny>
  40. <IfAccumulatedFileSize exceeds="5GB"/>
  41. <IfAccumulatedFileCount exceeds="10"/>
  42. </IfAny>
  43. </IfLastModified>
  44. </IfFileName>
  45. <IfAccumulatedFileCount exceeds="10"/>
  46. <IfAccumulatedFileSize exceeds="5GB"/>
  47. </Delete>
  48. </DefaultRolloverStrategy>
  49. </RollingFile>
  50. <RollingFile name="ROLLING_FILE_ERROR" fileName="${LOG_HOME}/${ERROR_FILE_NAME}"
  51. filePattern="${LOG_HOME}/${ERROR_FILE_NAME}-%d{yyyy-MM-dd}-%i.log.gz"
  52. bufferSize="4096" immediateFlush="true" bufferedIO="true" append="false">
  53. <Filters>
  54. <ThresholdFilter level="ERROR" onMatch="ACCEPT" onMismatch="DENY"/>
  55. </Filters>
  56. <PatternLayout charset="utf-8">
  57. <MarkerPatternSelector defaultPattern="${PATTERN_LAYOUT_FILE_ROOT}">
  58. <PatternMatch key="UTIL" pattern="${PATTERN_LAYOUT}"/>
  59. </MarkerPatternSelector>
  60. </PatternLayout>
  61. <Policies>
  62. <!--<CronTriggeringPolicy schedule="0 0 0/12 * * ?"/>-->
  63. <TimeBasedTriggeringPolicy/>
  64. <SizeBasedTriggeringPolicy size="10MB"/>
  65. </Policies>
  66. <DefaultRolloverStrategy max="5">
  67. <Delete basePath="${LOG_HOME}" testMode="false" maxDepth="5">
  68. <IfFileName glob="${ERROR_FILE_NAME}*.log.gz">
  69. <IfLastModified age="30d">
  70. <IfAny>
  71. <IfAccumulatedFileSize exceeds="5GB"/>
  72. <IfAccumulatedFileCount exceeds="10"/>
  73. </IfAny>
  74. </IfLastModified>
  75. </IfFileName>
  76. <IfAccumulatedFileCount exceeds="10"/>
  77. <IfAccumulatedFileSize exceeds="5GB"/>
  78. </Delete>
  79. </DefaultRolloverStrategy>
  80. </RollingFile>
  81. </appenders>
  82. <loggers>
  83. <!-- 默认显示方式 -->
  84. <root level="INFO">
  85. <appender-ref ref="Console"/>
  86. <appender-ref ref="RollingFileINFO"/>
  87. <appender-ref ref="ROLLING_FILE_ERROR"/>
  88. </root>
  89. <Logger name="com.lms.swing" level="INFO" additivity="false">
  90. <!--生产环境将控制台去掉-->
  91. <appender-ref ref="Console"/>
  92. <appender-ref ref="ROLLING_FILE_INFO"/>
  93. <appender-ref ref="ROLLING_FILE_ERROR"/>
  94. </Logger>
  95. </loggers>
  96. </configuration>