Middle
როგორია თქვენი გამოცდილება ELK-ისთვის grok ფაილების დაწერაში?
sobes.tech AI
პასუხი AI-სგან
ELK stackтин ичинде логдордун ар кандай форматтарын талдоо үчүн Grok үлгүлөрүн жазуу боюнча тажрыйбам бар. Мен төмөнкүлөр менен иштедим:
- Стандарттык үлгүлөр: Apache, Syslog жана башка жалпы лог форматтары үчүн алдын ала аныкталган үлгүлөрдү колдонуп келем.
%{COMBINEDAPACHELOG} - Косулган үлгүлөр: Стандарттык жана өзгөчөлөнгөн үлгүлөрдү бириктирдим.
%{SYSLOGBASE} %{DATA:message} - Өзгөчөлөнгөн үлгүлөр: Стандарттык үлгүлөр менен камтылбаган лог форматтары үчүн өзүмдүн өзгөчө регулятордук билдирүүлөрүмдү иштеп чыктым. Алардын сынактарын Grok Debugger аркылуу өткөрдүм.
(?<field_name>\[?\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}(?:,\d{3})?]) - Шарттуу талдоо: Grok'та шарттуу операторлорду колдонуп, ар кандай форматтагы логдорду бир кирүүдө иштеттим.
if [type] == "apache" { grok { match => { "message" => "%{COMBINEDAPACHELOG}" } } } else if [type] == "syslog" { grok { match => { "message" => "%{SYSLOGBASE} %{GREEDYDATA:logmessage}" } } } - Ката кетирүүнү иштетүү:
tag_on_failureколдонуп, талдоо мүмкүн эмес болгон окуяларды белгиледим, бул жөндөөлөр жана көйгөйлүү логдорду аныктоо үчүн жардам берди.grok { match => { "message" => "%{MYCUSTOMLOGFORMAT}" } tag_on_failure => ["_grokparsefailure_mycustom"] }