开发者社区> 问答> 正文

Log4j2.properties中的故障转移配置

我试图建立正确的配置为Failover在Log4j2.properties我的Gradle项目..

这些是配置:

appenders = console, http, failover
rootLogger.level = debug
rootLogger.appenderRef.stdout.ref = STDOUT
rootLogger.appenderRef.http.ref = Http

appender.console.type = Console
appender.console.name = STDOUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = [%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n 

appender.http.type = Http
appender.http.name = Http
appender.http.url = https://localhost:9200/test/log4j/
appender.http.method = POST
appender.http.layout.type = JsonLayout
appender.http.ignoreExceptions = false

appender.failover.type = Failover
appender.failover.name = Failover
appender.failover.primary = http
appender.failover.appenders = console

但是,当我运行该应用程序时,出现此错误:

2019-12-29 00:28:41,701 main ERROR Failover contains an invalid element or attribute "appenders"
2019-12-29 00:28:41,702 main ERROR At least one failover Appender must be specified
2019-12-29 00:28:41,705 main ERROR Null object returned for Failover in Appenders.

我怀疑该错误relared到Failovers配置,我没有做是正确的,因为我不知道正确的属性名Failovers AppenderRefs的.Properties格式

展开
收起
几许相思几点泪 2019-12-29 18:51:42 1378 0
1 条回答
写回答
取消 提交回答
  • 您可能需要改为添加以下属性。如果仅对故障转移附加程序执行此操作,请在下面使用。您需要将appenderRef添加到记录器而不是添加到附加器,这就是您可能会出错的原因。

    loggers=failover
    logger.failover.name= #FailOverName
    logger.failover.level = debug #or your desired logging level
    logger.failover.appenderRefs = STDOUT
    logger.failover.appenderRef.stdout.ref = STDOUT
    
    2019-12-29 18:51:58
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
俞航翔|基于Log的通用增量Checkpoint 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载