我需要将我的 log4j 日志发送到 Splunk。我找到了几个解决方案:
- 使用 REST API(例如
curl -k -u admin:changeme -d "name=/tmp/myfile.log" -d "sourcetype=syslog" https://localhost:8089/servicesNS/admin/search/data/inputs/monitor
) - 安装 Splunk 通用转发器
使用 log4j appender,例如:
系统日志附加器
log4j.appender.splunk=org.apache.log4j.net.SyslogAppender log4j.appender.splunk.SyslogHost=localhost:8089 log4j.appender.splunk.layout=org.apache.log4j.PatternLayout log4j.appender.splunk.facility=LOCAL2 log4j.appender.splunk.layout.ConversionPattern=[%p] %t: %m%n
但在我看来,如果 splunk 服务器和日志位于不同的机器上,第三种解决方案将不起作用。
第二种解决方案需要安装其他软件
任何人都可以提出任何其他解决方案吗?
PS 我尝试使用开源 java 库。但它没有给出结果。