Înainte ca un document JSON să fie scris într-un index, un Ingest Pipeline poate intercepta și transforma datele direct pe nodurile Elasticsearch (ingest nodes). Astfel, puteți parsa adrese IP în țări și orașe (GeoIP), extrage date din șiruri nestructurate cu expresii Grok sau masca date cu caracter personal (GDPR) fără a fi nevoie de un cluster Logstash separat.
Crearea unui pipeline de parsare a logurilor Nginx
PUT _ingest/pipeline/pipeline-loguri-web
{
"description": "Parsează linia de log Nginx și adaugă geolocație pe baza IP-ului",
"processors": [
{
"grok": {
"field": "message",
"patterns": ["%{IPORHOST:client_ip} %{USER:ident} %{USER:auth} \\[%{HTTPDATE:timestamp}\\] \"%{WORD:metoda} %{DATA:cale} HTTP/%{NUMBER:versiune_http}\" %{NUMBER:cod_raspuns} %{NUMBER:octeti}"]
}
},
{
"geoip": {
"field": "client_ip",
"target_field": "geo"
}
},
{
"remove": {
"field": "message"
}
}
]
}
Întrebări & Exemple de Cod:
Pipeline-uri de Ingestie în Elasticsearch: Procesori Grok, Date și Set (_ingest)Ai o nelămurire despre utilizarea comenzii
Pipeline-uri de Ingestie în Elasticsearch: Procesori Grok, Date și Set (_ingest)sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.