Logging 使用Elasticstack对Innovate进行测井分析
我的任务是建立一个日志分析工具,为人力资源部创建手机使用情况报告。我们在站点上有一个Innovaphone IP6010,它通过GET请求将其日志传输到apache Web服务器。 我目前正试图从apache访问日志中提取所有有用的信息,这些日志包含请求主体,而请求主体包含日志本身。我使用的软件栈由Elasticsearch、Kibana和Debian 10上的Filebeat组成。我试图利用filebeat的摄取管道功能,使用grok过滤器进行日志分析 日志示例:Logging 使用Elasticstack对Innovate进行测井分析,logging,elastic-stack,elk,Logging,Elastic Stack,Elk,我的任务是建立一个日志分析工具,为人力资源部创建手机使用情况报告。我们在站点上有一个Innovaphone IP6010,它通过GET请求将其日志传输到apache Web服务器。 我目前正试图从apache访问日志中提取所有有用的信息,这些日志包含请求主体,而请求主体包含日志本身。我使用的软件栈由Elasticsearch、Kibana和Debian 10上的Filebeat组成。我试图利用filebeat的摄取管道功能,使用grok过滤器进行日志分析 日志示例: /zz?event=A:Re
/zz?event=A:Rel&time=1619596558&ts=5421116.946&date=20210428-075558&ref=9a9cdbc6138960015dfe00903329048b&dir=in&src_if=SIP1&dst_if=PRI2&src_cgpn=5961421358662&src_cdpn=0586583149&dst_cgpn=5961421358662&dst_cdpn=586583149&bcaps=03_90_90_a3&xcoder=G711A,20(3,0,6)&rcoder=G711A,20(0,0,7)&xstats=3+4+0+0+6&rstats=0+0+0+0+7&alert_time=1619596230&connect_time=1619596233&disc_time=1619596558&srv_id=00903329048b
当前grok筛选器(取自filebeat的pipiline.yml文件,位于/usr/share/filebeat/module/apache/access/inset):
-grok:
字段:url.original
忽略缺失:false
模式:
-“{CONN_TIME:connttime}”
-“{DISC_TIME:disctime}”
-“{ALERT_TIME:alerttime}”
-“%$SOURCE:SOURCE}”
-“{TARGET:TARGET}”
-“{EVENT_TYPE:eventtype}”
模式定义:
CONN_TIME:“((?问题的解决方案是在更新1下的原始帖子中找到的
- grok:
field: url.original
ignore_missing: false
patterns:
- '%{CONN_TIME:conntime}'
- '%{DISC_TIME:disctime}'
- '%{ALERT_TIME:alerttime}'
- '%{SOURCE:source}'
- '%{TARGET:target}'
- '%{EVENT_TYPE:eventtype}'
pattern_definitions:
CONN_TIME: "((?<=connect_time=)([0-9]*))"
DISC_TIME: "((?<=disc_time=)[0-9]*)"
ALERT_TIME: "((?<=alert_time=)([0-9]*))"
SOURCE: "((?<=src_cdpn=)[0-9]*)"
TARGET: "((?<=src_cgpn=)[0-9]*)"
EVENT_TYPE: "((?<=event=)[A-Z]*)"
- grok:
ignore_missing: true
field: message
patterns:
- '%{CONN_TIME:innova.conntime}'
pattern_definitions:
CONN_TIME: "((?<=connect_time=)([0-9]*))"
- grok:
ignore_missing: true
field: message
patterns:
- '%{DISC_TIME:innova.disctime}'
pattern_definitions:
DISC_TIME: "((?<=disc_time=)[0-9]*)"
- grok:
ignore_missing: true
field: message
patterns:
- '%{ALERT_TIME:innova.alerttime}'
pattern_definitions:
ALERT_TIME: "((?<=alert_time=)([0-9]*))"
- grok:
ignore_missing: true
field: message
patterns:
- '%{SOURCE:innova.source}'
pattern_definitions:
SOURCE: "((?<=src_cdpn=)[0-9]*)"
- grok:
ignore_missing: true
field: message
patterns:
- '%{TARGET:innova.target}'
pattern_definitions:
TARGET: "((?<=src_cgpn=)[0-9]*)"
- grok:
ignore_missing: true
field: message
patterns:
- '%{EVENT_TYPE:innova.eventtype}'
pattern_definitions:
EVENT_TYPE: "((?<=event=)[A-Z]*)"