【发布时间】:2017-08-23 15:02:20
【问题描述】:
我在服务器上安装了一组应用程序,我想开始通过 syslog 将日志发送到远程 Logstash 服务器。为此,我创建了一个外部 Logback 配置文件,其中包含一个指向所需远程服务器的 SyslogAppender。
由于多个应用程序将登录到同一台服务器,我已将日志模式更改为如下:
<suffixPattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [${server_instance}] [${application_name}] %p ${PID:- } --- [%15.15t] %logger : %m%n</suffixPattern>
其中 server_instance 和 application_name 是启动时提供的命令行选项参数。
现在我只需将所有应用程序的 logging.config 属性设置为指向同一个 Logback 配置文件,然后所有应用程序都开始使用指定的模式将日志发送到所需的服务器。这部分就像一个魅力。
但我遇到的唯一问题是 Logback 无法确定 server_instance 和 application_name 属性,它们显示为 [server_instance_IS_NOT_DEFINED] 和 [application_name_IS_NOT_DEFINED] 分别。
我可以使用单个外部配置文件以某种方式实现这一点吗?
【问题讨论】:
标签: spring-boot logback syslog