我有一个lambda函数,可以从S3存储桶中读取文件并将其存储到另一个S3存储桶中。 lambda正常运行,但是当我看到cloudwatch的日志时,会看到不需要的其他日志。
我得到的其他日志如下。
[main] DEBUG org.springframework.context.annotation.AnnotationConfigApplicationContext
[main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory
[main] DEBUG com.amazonaws.AmazonWebServiceClient
[main] DEBUG org.apache.http.headers
[main] DEBUG org.apache.http.wire
我只想显示要在cloudwatch中显示的代码中使用的logger.info()
。有什么办法可以限制这些日志的显示?有人可以提供示例代码供参考吗?
我正在设置log4j.properties文件,内容如下。
log4j.rootLogger=INFO
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
# Log all HTTP content (headers, parameters, content, etc) for
# all requests and responses. Use caution with this since it can
# be very expensive to log such verbose data!
log4j.logger.org.apache.http.wire=INFO
答案 0 :(得分:0)
这是一个Log4J 1.x日志记录配置,因此消除不必要消息的方法是:
将root记录程序更改为仅允许重要消息(您可以将其设置为OFF
,但您确实希望在发生错误的地方看到它们):
log4j.rootLogger=ERROR
更改应用程序的记录器以启用日志记录:
log4j.logger.com.example.myprogram=INFO
如果要显示多个软件包,则需要分别设置其日志记录配置。