У меня есть файл журнала Nginx в формате ниже.
192.168.1.17 - - [10/Nov/2017:16:17:20 +0000] "GET /admin/pages/data HTTP/1.1" 404 199 "http://192.157.1.29/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36"
В модуле nginx у меня есть этот шаблон для поля сообщения в /usr/share/filebeat/modules/nginx/access/ingest/defaults.json
{
"grok": {
"field": "message",
"patterns": [
"%{IPORHOST:remote_ip} - %{DATA:user_name} \[%{HTTPDATE:access_time}\] \"%{WORD:http_method} %{DATA:url} HTTP/%{NUMBER:http_version}\" %{NUMBER:response_code} %{NUMBER:body_sent_bytes} \"%{DATA:referrer}\" \"%{DATA:agent}\""
],
"",
"ignore_missing": true
}
},
С этим шаблоном в индексе elasticsearch я вижу только поле сообщения. Не удалось получить все остальные поля как часть индексного документа? Здесь, как мы можем получить все значения шаблонов в индексе ES как отдельные поля? Есть предложения?