Перейти к основному содержимому
Версия: 5.3

iplocation

Описание

Извлекает информацию о местоположении из IP-адреса.

к сведению

Команда создает поля в событии и заполняет их информацией о местоположении IP-адреса. Если в базе данных есть не вся информация, часть полей могут принять значение null.

НазваниеОписание
countryНазвание страны.
iso_codeКод страны.
subdivisionРайон.
cityГород.
latitudeШирота.
longitudeДолгота.

Синтаксис

iplocation <ip-address-fieldname>

Обязательные аргументы

ПараметрСинтаксисОписание
ip-address-fieldname<field>Имя поля, в котором хранится IP-адрес, например clientip.
к сведению

Если в событии нет указанного поля, или оно не содержит IP-адрес, все созданные поля в этом событии примут значение null.


Примеры запросов

Данные примеры показывают базовое обогащение событий геоданными и дальнейшую работу с полями, которые создает iplocation.

Пример 1

В данном примере команда берет IP-адрес из поля ip и добавляет к событию поля country, city, latitude, longitude и другие доступные геоатрибуты.

source server_ip
| iplocation 'ip'

Пример 2

В данном примере поле с IP-адресом сначала переименовывается, а затем используется в iplocation. Это показывает, что команда работает с любым полем, в котором хранится IP-адрес.

source server_ip
| rename ip as clientip
| iplocation clientip

Пример 3

В данном примере после обогащения геоданными запрос оставляет только записи для host2 и собирает широту и долготу в multivalue-поле location.

source server_ip
| iplocation 'ip'
| where host_name == "host2"
| eval location = mvappend(latitude, longitude)

Пример 4

В данном примере геоданные используются для фильтрации: в результате останутся только события, у которых определенная страна равна Russia.

source server_ip
| iplocation 'ip'
| where country == "Russia"