elasticsearch 汤姆猫日志,elasticsearch,logstash,kibana,elasticsearch,Logstash,Kibana" /> elasticsearch 汤姆猫日志,elasticsearch,logstash,kibana,elasticsearch,Logstash,Kibana" />

elasticsearch 汤姆猫日志

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方

我想解析有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方法: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" ]
    }
   }
}