我正在使用Logback通过TCP appender将数据提供给Logstash。
我遇到的问题是,我可以获得开箱即用的创建日志的应用程序的非限定主机名(例如 myhostname ),但我可以&# 39;找到一种方法来获取FQDN(例如 myhostname.mydomain.com )。
我可以看到here Logback附带已在其上下文中配置的HOSTNAME变量,但我无法扩展以获取fqdn而不是......
修改 我需要的是一种方法,来自logback配置本身,以获取此信息。不幸的是,我无法修改将自己发出日志消息的代码。
有什么想法吗?
由于
答案 0 :(得分:0)
您可以尝试将您的名称解析为IP地址或FQDN。使用InetAddress类及其静态方法getByName(String name)来尝试解析您的名称。之后,您可以通过方法" public String getCanonicalHostName()"
从中检索IP地址或FQDN答案 1 :(得分:0)
正如logback documentation中所述,HOSTNAME会自动定义为context scope中的变量,可在配置文件中找到。
未自动定义完全限定的域。但是,您可以使用自定义property definer动态定义它。