- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的 Java 项目使用 Log4J2。目前,它正在成功地将日志写入文件。现在,我正在尝试通过 Socket Appender 将日志推送到 LogStash。不幸的是,我的这些努力没有取得任何成功。此时,我正在查看两部分:我的 log4j2.xml 文件和我的 logstash 配置文件。我在这里提供了两者,希望有人能帮助我确定我的问题。
log4j2.xml
<Configuration status="WARN" monitorInterval="30">
<Appenders>
<Socket name="A1" host="0.0.0.0" port="4560">
<SerializedLayout/>
</Socket>
<RollingRandomAccessFile name="RollingFile" fileName="/logs/server.log"
filePattern="/logs/$${date:yyyy-MM}/server-%d{yyyy-MM-dd-HH}-%i.log.gz">
<JSONLayout complete="false"></JSONLayout>
<Policies>
<TimeBasedTriggeringPolicy interval="6" modulate="true"/>
<SizeBasedTriggeringPolicy size="100 MB"/>
</Policies>
</RollingRandomAccessFile>
<Async name="AsyncFile">
<AppenderRef ref="RollingFile"/>
</Async>
</Appenders>
<Loggers>
<Logger name="com.company" level="trace" additivity="false">
<AppenderRef ref="AsyncFile"/>
</Logger>
<Root level="trace">
<AppenderRef ref="AsyncFile"/>
</Root>
</Loggers>
</Configuration>
那是我的 log4j2 配置。这是我的 logstash 配置:
logstash.conf
input {
log4j {
mode => "server"
type => "log4j"
host => "0.0.0.0"
port => "4560"
}
}
output {
stdout {
codec => "json"
}
}
我使用 logstash-1.4.0/bin/logstash --config/etc/logstash/logstash.conf --debug
从命令行启动 logstash。我没有看到任何错误。同时,我没有看到任何日志写入控制台窗口。我知道日志应该出现,因为它们出现在我的滚动 server.log 文件中,该文件被配置为 log4j 中的第二个附加程序。
我做错了什么?我一直在修补这个 3 天。
最佳答案
Logstash 中的 log4j 输入与 Log4j2 不兼容。 Log4j2 使用一种新的格式来序列化日志数据。
但是有一个插件可以解析 Log4j2 套接字: https://github.com/jurmous/logstash-log4j2
在 logstash 1.5+ 中,它可以从以下位置安装: https://rubygems.org/gems/logstash-input-log4j2
关于java - 无法使 Log4J SocketAppender 工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22947786/
我有一个记录器将日志发送到日志服务器存储。这工作正常,但没有使用patternlayout。不管有没有,都不会改变任何事情。我相信记得在某处读过 socketappender 使用的是自己的模式而不是
我有一个场景,我们正在记录到远程logstash 主机。现在根据 log4j 文档,对于 SocketAppender,如果远程主机关闭,日志事件将被简单地删除。我想自定义套接字附加程序,以便在本地日
我想使用 SocketAppender 将日志消息发送到远程服务器,我想知道- 这个 SocketAppender 是否有加密选项和通过 ssl 发送日志事件的选项? 最佳答案 它不支持任何类型的加密
我配置了一个 SimpleSocketServer public class Simple { public static void main(String[] args) {
我有一个 answer关于如何使用 SocketAppender(我需要它从分布式系统收集日志),但我是 log4j 的新手,我不知道如何使用该示例代码。 也许我应该有这样的 log4j-server
我的 Java 项目使用 Log4J2。目前,它正在成功地将日志写入文件。现在,我正在尝试通过 Socket Appender 将日志推送到 LogStash。不幸的是,我的这些努力没有取得任何成功。
我正在使用 Logback SSLSocketAppender 将日志定向到中央记录器服务器。应用程序运行正常,我可以看到服务器端正在接收日志。 但是,仔细查看日志,通常每 5 个日志条目中,就有 1
这是我的配置文件或log4j2.properties文件 #Socket Appender appender.socket.type=Socket appender.socket.name=Socke
我正在尝试使用 SocketAppender将事件记录到套接字服务器。 我需要发送的是自定义日志对象。然而,似乎所有对象都是使用 toString 作为字符串发送的。 在这里阅读: http://ji
我正在尝试使用 log4cplus 库将我的 C++ 应用程序的日志发送到 logstash。我已阅读 log4cplus 文档并使用以下配置来配置 SocketAppender。 log4cplus
我是一名优秀的程序员,十分优秀!