gpt4 book ai didi

elasticsearch - 配置ELK + log4j

转载 作者:行者123 更新时间:2023-12-03 00:36:37 26 4
gpt4 key购买 nike

我在 ubuntu 服务器 14.04 上安装了 ELK。现在我想将我所有的 jboss 服务器日志发送到这里(使用 log4j)。

日志存储配置:
输入conf文件:

input {
log4j {
type => "log4j"
port => 5000
}
}

过滤配置文件:
filter {
if [type] == "log4j" {
grok {
match => {"message" => MY_GROK_PARSE}
}
}
}

和输出文件:
output {
elasticsearch {
embedded => true
}
}

并完成 log4j appender:

<appender name="LOGSTASH" class="org.apache.log4j.net.SocketAppender"> 
<param name="Port" value="5000"/>
<param name="RemoteHost" value="XXX.XXX.XXX.XXX"/> <!-- There is a real adress here ;-) -->
<param name="ReconnectionDelay" value="50000"/>
<param name="LocationInfo" value="true"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %-5p [%c{1}] %m%n" />
</layout>
</appender>

但是这种配置没有任何 react 。所以我不知道我误解了什么。
我的其他附加程序(控制台和本地文件)工作正常。
elasticsearch 日志显示任何信息/事件。

编辑:
更多关于我的 jboss-log4j.xml:

<appender name="Async" class="org.apache.log4j.AsyncAppender">
<appender-ref ref="FILE" />
<appender-ref ref="CONSOLE" />
<appender-ref ref="LOGSTASH" />
</appender>

<root>
<priority value="INFO" />
<appender-ref ref="Async" />
</root>

最佳答案

我知道这是一篇旧帖子,但有人可能会觉得它很有用 - log4j SocketAppender 无法使用布局,请参阅 docs for SocketAppender

SocketAppenders do not use a layout. They ship a serialized LoggingEvent object to the server side.



您也不需要在 logstash 配置中添加额外的过滤器。 Logstash log4j 插件最小配置就足够了
input {
log4j {
data_timeout => 5
host => "0.0.0.0"
mode => "server"
port => 4560
debug => true
type => "log4j"
}
...
}

关于elasticsearch - 配置ELK + log4j,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27101996/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com