elasticsearch 汤姆猫日志
我想解析有soap/rest请求和响应的tomcat日志。有谁能给我举个好例子,我们可以解析这些日志,并将其保存在json格式的弹性搜索中 谢谢艾伦的回复。下面是我尝试使用
elasticsearch 汤姆猫日志,
elasticsearch,logstash,kibana,
elasticsearch,Logstash,Kibana,我想解析有soap/rest请求和响应的tomcat日志。有谁能给我举个好例子,我们可以解析这些日志,并将其保存在json格式的弹性搜索中 谢谢艾伦的回复。下面是我尝试使用Grok模式分析的示例。我是新来的,所以我想弄清楚这个方法是否正确 2015-09-28 10:50:30249{http-apr-8080-exec-4}INFO[org.apache.cxf.services.interfaceType]1.0.0-LOCAL-入站消息 身份证号码:1 地址: 编码:UTF-8 Http方
Grok模式分析的示例。我是新来的,所以我想弄清楚这个方法是否正确
2015-09-28 10:50:30249{http-apr-8080-exec-4}INFO[org.apache.cxf.services.interfaceType]1.0.0-LOCAL-入站消息
身份证号码:1
地址:
编码:UTF-8
Http方法:POST
内容类型:text/xml;字符集=UTF-8
标题:{Accept=[/],cache control=[no cache],connection=[keep alive],Content Length=[2871],Content type=[text/xml;charset=UTF-8],host=[localhost:8080],pragma=[no cache],SOAPAction=[''],user agent=[Apache CXF 2.7.5]}
有效负载:用户\u 19911111test123456false
过滤器{
如果[type]=“tomcatlog”{
多行{
#类型=>“所有”#无类型表示所有输入
模式=>“^%{TIMESTAMP_ISO8601}”
否定=>true
什么=>“以前的”
}
格罗克{
匹配=>{
message=>“%{TIMESTAMP\u ISO8601:TIMESTAMP}%{SPACE}{(?[^]+)\}%{SPACE}%{LOGLEVEL:level}%{SPACE}\[(?[^\]]+)\]%{SPACE}%{greedydyddata:message}”
}
}
日期{
匹配=>[“时间戳”,“yyyy-MM-dd HH:MM:ss,SSS”]
删除_字段=>[“时间戳”]
}
}
}
用于创建grok
过滤器。列出了有用的模式而不是让我们查找tomcat日志的样子,为什么不发布一个示例,告诉我们根据google返回的72500个结果在解析它时遇到了什么麻烦。取决于您想要使用的技术,您可以在scala中或在linux中通过命令shell进行操作。。。有无限的选择可以做。首先创建索引,然后填充索引并使用kibana表示。你可以在很多地方阅读很多ot指南。谢谢你的回复。
filter {
if [type] == "tomcatlog"{
multiline {
#type => "all" # no type means for all inputs
pattern => "^%{TIMESTAMP_ISO8601}"
negate => true
what => "previous"
}
grok {
match => {
message => "%{TIMESTAMP_ISO8601:timestamp}%{SPACE}\{(?<thread>[^)]+)\}%{SPACE}%{LOGLEVEL:level}%{SPACE}\[(?<logger>[^\]]+)\]%{SPACE}%{SPACE}%{GREEDYDATA:message}"
}
}
date {
match => [ "timestamp", "yyyy-MM-dd HH:mm:ss,SSS" ]
remove_field => [ "timestamp" ]
}
}
}