log4j2 для регистрации функций AWS Lambda - PullRequest
0 голосов
/ 26 сентября 2019

Я пытаюсь реализовать ведение журнала log4j2 для лямбда-функции AWS.Я вижу, что на странице документации AWS есть конфигурация log4j2.xml: https://docs.aws.amazon.com/lambda/latest/dg/java-logging.html

Но у меня есть все остальные файлы свойств приложения, заданные в формате файла свойств.Итак, для обеспечения согласованности проекта, как реализовать приведенную ниже конфигурацию для формата файла log4j2.properties

<?xml version="1.0" encoding="UTF-8"?>
<Configuration packages="com.amazonaws.services.lambda.runtime.log4j2">
  <Appenders>
    <Lambda name="Lambda">
      <PatternLayout>
          <pattern>%d{yyyy-MM-dd HH:mm:ss} %X{AWSRequestId} %-5p %c{1}:%L - %m%n</pattern>
      </PatternLayout>
    </Lambda>
  </Appenders>
  <Loggers>
    <Root level="info">
      <AppenderRef ref="Lambda" />
    </Root>
  </Loggers>
</Configuration>

Ниже приведен мой файл log4j2.properties

# Directory Path for Log files to be stored
property.basePath = C:/Logs/

# ConsoleAppender to print logs to console
appender.console.type = Console
appender.console.name = consoleLogger
appender.console.target = SYSTEM_OUT
appender.console.layout.type = PatternLayout
# Specifying Pattern Of Logs
appender.console.layout.pattern = [%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n

# RollingFileAppender to write logs into file by rotating based on limit
appender.rolling.type = RollingFile
appender.rolling.name = fileLogger
appender.rolling.fileName = ${basePath}logging.log
appender.rolling.filePattern = ${basePath}app_%d{yyyyMMdd}.log.gz
appender.rolling.layout.type = PatternLayout
appender.rolling.layout.pattern = [%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n
appender.rolling.policies.type = Policies

#To Rotate Log file each day and keep until 30 days
appender.rolling.policies.time.type = TimeBasedTriggeringPolicy
appender.rolling.policies.time.interval = 1
appender.rolling.policies.time.modulate = true
appender.rolling.strategy.type = DefaultRolloverStrategy
appender.rolling.strategy.delete.type = Delete
appender.rolling.strategy.delete.basePath = ${basePath}
appender.rolling.strategy.delete.maxDepth = 1
appender.rolling.strategy.delete.ifLastModified.type = IfLastModified
# Delete files older than 30 days
appender.rolling.strategy.delete.ifLastModified.age = 30d

logger.example.name = com.example
logger.example.level = debug
logger.example.additivity = false
logger.example.appenderRef.rolling.ref = fileLogger

#Configure root logger for logging errors
rootLogger.level = error
rootLogger.additivity = false
rootLogger.appenderRef.rolling.ref = fileLogger
rootLogger.appenderRef.console.ref = consoleLogger
...