Как исправить тег "_geoip_lookup_failure" с фильтром logstash "geoip" при публикации json с http в logstash - PullRequest
0 голосов
/ 15 апреля 2019

Я отправляю json из приложения в logstash, желая узнать местоположение IP-адреса с помощью плагина logstashes geoip. Однако я получаю _geoip_lookup_failure.

это мой конфиг logstash

    http {
        port => "4200"
        codec => json
    }
}
filter{
    geoip {
    source => "clientip"
  }
}
output {
  elasticsearch { hosts => ["localhost:9200"] }
  stdout { codec => rubydebug }
}

вот что я отправляю в порт:

{'used_credentials': [
    {'username': 'l', 'number_of_usages': 1, 'used_commands': {},
'get_access': 'false', 
'timestamps': {'1': '04/15/2019, 21:08:54'}, 'password': 'l'}],
 'clientip': '192.168.xxx.xx', 
'unsuccessfull_logins': 1}

и вот что я получаю в logstash:

{
    "unsuccessfull_logins" => 1,
                "@version" => "1",
        "used_credentials" => [
        [0] {
                    "username" => "l",
               "used_commands" => {},
                    "password" => "l",
                  "timestamps" => {
                "1" => "04/15/2019, 21:08:54"
            },
            "number_of_usages" => 1,
                  "get_access" => "false"
        }
    ],
                "clientip" => "192.168.xxx.xx",
              "@timestamp" => 2019-04-15T19:08:57.147Z,
                    "host" => "127.0.0.1",
                 "headers" => {
           "request_path" => "/telnet",
             "connection" => "keep-alive",
        "accept_encoding" => "gzip, deflate",
           "http_version" => "HTTP/1.1",
         "content_length" => "227",
        "http_user_agent" => "python-requests/2.21.0",
         "request_method" => "POST",
            "http_accept" => "*/*",
           "content_type" => "application/json",
              "http_host" => "127.0.0.1:4200"
    },
                   "geoip" => {},
                    "tags" => [
        [0] "_geoip_lookup_failure"
    ]
}

Я не понимаю, почему ввод распознается так, но goeip не находит его

1 Ответ

0 голосов
/ 17 апреля 2019

Проблема в том, что ваш clientip находится в сети 192.168.0.0/16, которая является частной сетью, зарезервированной только для локального использования, и отсутствует в базе данных, используемой фильтром geoip.

Фильтр geoip будет работать только с общедоступными IP-адресами.

...