2015-04-07 36 views
4

我在我的公司内部运行Jira和Confluence。我希望将日志文件发送到Kibana。Jira的Logstash托运人配置

这很容易做到,但我不想重写Grok过滤器。我无法想象没有人已经这样做过。

有没有人有一个logstash托运人配置的例子。大部分日志记录如catalina.log是标准的。

请帮我的例子

回答

1

有人会认为,Java应用程序日志中仅有一种形式,但我的经验是,经常有细微的差别。有时线程名称在方括号中,有时在括号中,有时线程名称首先在记录器名称之后,其他时间,等等。当您尝试解析多种类型的日志时,这会变得更加痛苦。

而是与各种过滤器的加入多消息和神交我使用github.com/logstash/log4j-jsonevent-layout Log4j的布局产生基于JSON的日志,这些日志Logstash可以直接读取没有任何过滤器强烈支持的所有字段搞乱的。除了不必维护过滤器外,您还可以从每个日志事件中获得全部字段。由于我不知道你的 catalina.log看起来像我不能说通过解析它的内容而不是使用JSON布局会丢失什么。

缺点是它在部署方面有点多。你显然必须自己部署布局jar文件,但它有自己的一些依赖关系(net.minidev:jsonsmart和commons-lang:commons-lang),你也需要提供它们。