我已经将我的Squid代理配置为将日志发送到Elasticsearch 7.17.6,除了用户Map之外,一切都很正常。
字符串Expect是DOMAIN/USER,ELK在原始消息上正确接收它,但在Map时我只看到DOMIN,缺少/USER。
在Map和索引模式中,字段类型配置为关键字。
文件节拍pipieline.json
{
"description": "Pipeline for parsing squid elasticsearch.log",
"processors": [{
"grok": {
"field": "message",
"patterns":[
"%{POSINT:squid.proxy.request_time}.%{POSINT:squid.proxy.request_time_ms}\|.*?%{NUMBER:squid.proxy.response_time}\|%{IP:squid.proxy.src_ip}\|(%{MAC:squid.proxy.mac}|-)\|%{DATA:squid.proxy.request_status}\|%{DATA:squid.proxy.status_code}\|%{NUMBER:squid.proxy.http_size}\|%{WORD:squid.proxy.http_method}\|(%{IP:squid.proxy.server_ip}|%{HOSTNAME:squid.proxy.website})\|(%{USER:squid.proxy.user})|(%{USER:{WORD}/{WORD}}|-)\|%{WORD:squid.proxy.hierarchy}\|(%{IP:squid.proxy.server_ip}|-)\|(%{DATA:squid.proxy.ct}|-)\|(%{NUMBER:squid.proxy.total_time}|-)\|%{UUID:squid.proxy.uuid}\|(%{HOSTNAME:squid.proxy.website}|-)\|(%{DATA:squid.proxy.useragent}|-)\|\|\|.*?(category:.*?cinfo:%{NUMBER:squid.proxy.category_id}-%{WORD:squid.proxy.category_name};|-).*"
],
"ignore_missing": false,
"ignore_failure": false
}
},{
"rename":{
"field": "message",
"target_field": "squid.proxy.original_message"
}
},
{
"date": {
"field": "squid.proxy.request_time",
"formats": ["UNIX", "dd MMM H:m:s"],
"ignore_failure": true
}
},
{
"geoip": {
"field": "squid.proxy.server_ip",
"target_field": "squid.proxy.geo",
"ignore_missing": true
}
},
{
"remove": {
"field": "message",
"ignore_missing": true,
"ignore_failure": true
}
}],
"on_failure" : [{
"drop" : {
"ignore_failure" : true
}
}]
}
任何人都可以帮我解决这个问题。
提前谢谢你
诚挚的问候
1条答案
按热度按时间jtw3ybtb1#
问题已解决
在Grok中我必须使用
而不是