我正在尝试使用主机名动态配置LogBack,以便为记录器设置特定属性。 我在任何appender之前初始化如下所示的地图:
def HOSTNAME="${hostname}"
def logEntriesTokens = [ "Info03": "myToken" ]
然后我会做以下事情:
appender("LogEntriesAppender",LogentriesAppender){
encoder(PatternLayoutEncoder) {
pattern = "%d{dd MMM yyyy ; HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n"
}
token = logEntriesTokens[HOSTNAME]
println HOSTNAME
println logEntriesToken
println logEntriesTokens[HOSTNAME]
println token
Ssl = false
facility = "USER"
filter(ThresholdFilter){
level = ERROR
}
}
结果如下:
Info03
[Info03:myToken]
myToken
null
由于某种原因,未设置token属性(我可以通过调查Java中的appender层次结构来看到)。如果我把一个常量,比如token =“myToken”,一切正常。我哪里错了?