Да, есть несколько способов сделать это в Splunk, каждый из которых отличается степенью легкости и способности к масштабированию. Я перейду через метод поиска:
1) Получите все эти идентификаторы за период от -1d @ d до @ d
Вы хотите сначала проверить поиск, который возвращает только список идентификаторов, который затем будет преобразован в подпоиск:
sourcetype=<MY_SOURCETYPE> earliest=-1d@d latest=-@d | stats values(id) AS id
2) Для каждого пользователя выполните поиск от начала индекса до -1d @ d и посмотрите, присутствует ли идентификатор пользователя, сравнив поле фактического идентификатора
Создайте основной поиск с другим таймфреймом, который использует подпоиск из (1) для сопоставления с этими идентификаторами (обратите внимание, что подпоиск должен начинаться с search
):
sourcetype=<MY_SOURCETYPE> [search sourcetype=<MY_SOURCETYPE> earliest=-1d@d latest=-@d | stats values(id) AS id] earliest=0 latest=-1d@d
Это вернет необработанный набор данных всех событий от начала индекса до 1d @ d, но не содержащий идентификаторы из (1).
3) Если его нет, добавьте его в счетчик
Измените этот поиск с помощью NOT
по всему подзапросу и направьте внешний поиск на stats
, чтобы увидеть идентификаторы, которые ему соответствуют:
sourcetype=<MY_SOURCETYPE> NOT [search sourcetype=<MY_SOURCETYPE> earliest=-1d@d latest=-@d | stats values(id) AS id] earliest=0 latest=-1d@d | stats values(id)
4) Показать этот окончательный счет.
Пересмотрите последнюю команду stats
, чтобы вместо нее было возвращено другое число:
sourcetype=<MY_SOURCETYPE> NOT [search sourcetype=<MY_SOURCETYPE> earliest=-1d@d latest=-@d | stats values(id) AS id] earliest=0 latest=-1d@d | stats dc(id)
Особенности производительности:
Вышеприведенный метод работает достаточно хорошо для наборов данных длиной до 1 миллиона строк на обычном оборудовании Проблема в том, что подпоиск блокируется, поэтому внешний поиск должен ждать. Если вы имеете дело с большими наборами данных, то для того, чтобы сделать этот поиск эффективным, необходимо использовать альтернативные методы.
К вашему сведению, у Splunk есть специальный сайт, где вы можете получить ответы на такие вопросы гораздо быстрее: http://splunk -base.splunk.com / answers /