Задать вопрос
@FulTupFul

Как загрузить json лог в elasticsearch?

Есть стэк ELK с kibana на фронте. Хочу загружать туда json логи моего uwsgi.
Uwsgi на выходе выдает такой лог:
{"timestamp": "2019-03-05T15:00:32", "event": "uwsgi_request", "method": "GET", "uri": "/doc/%D0%A0%D0%B5%D0%BA%D0%B2%D0%B8%D0%B7%D0%B8%D1%82%D1%8B%20%D0%9E%D0%9E%D0%9E.xls", "proto": "HTTP/1.1", "status": 500, "referer": "-", "user_agent": "Mozilla/5.0 (compatible; YandexBot/3.0; +http://yandex.com/bots)", "remote_addr": "141.8.142.12", "http_host": "myhost.com", "pid": 85188, "worker_id": 4, "core": 0, "async_switches": 1, "io_errors": 0, "rq_size": 0, "rs_time_ms": 41, "rs_size": 1092, "rs_header_size": 142, "rs_header_count": 4}

Пытался парсить стандартными средствами logstash, но на выходе ничего не оказывается
filter {
 if [type] == "nginx_access" {
    grok {
	match => { "message" => "%{IPORHOST:remote_ip} - %{DATA:user} \[%{HTTPDATE:access_time}\] \"%{WORD:http_method} %{DATA:url} HTTP/%{NUMBER:http_version$
    }
  }
  date {
        match => [ "timestamp" , "dd/MMM/YYYY:HH:mm:ss Z" ]
  }
  geoip {
         source => "remote_ip"
         target => "geoip"
         add_tag => [ "nginx-geoip" ]
  }
  else if [type] == "django" {
    json {
	source => "message"
    }
  }
}
  • Вопрос задан
  • 1168 просмотров
Подписаться 2 Простой 3 комментария
Пригласить эксперта
Ответы на вопрос 2
leahch
@leahch
3D специалист. Dолго, Dорого, Dерьмово.
Скорее всего вам нужен этот планин подключить https://www.elastic.co/guide/en/logstash/current/p...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы