Поделиться через


Краткое руководство. Прием данных из Logstash в Azure Data Explorer

Внимание

Этот соединитель можно использовать в аналитике в режиме реального времени в Microsoft Fabric. Используйте инструкции в этой статье со следующими исключениями:

Logstash — это конвейер с открытым кодом на стороне сервера для обработки данных, который одновременно принимает данные из множества источников, преобразовывает данные, а затем отправляет их в избранный "тайник". В этой статье вы отправите эти данные в Azure Data Explorer, который представляет собой быструю и хорошо масштабируемую службу исследования данных для журналов и данных телеметрии. Сначала вы создадите таблицу и сопоставление данных в тестовом кластере, а затем укажете Logstash отправить данные в таблицу и проверить результаты.

Примечание.

Этот коннектор в настоящее время поддерживает только формат данных json.

Необходимые компоненты

Создание таблицы

При наличии кластера и базы данных можно приступать к созданию таблицы.

  1. Чтобы создать таблицу, выполните следующую команду в окне запроса базы данных:

    .create table logs (timestamp: datetime, message: string)
    
  2. Чтобы убедиться, что таблица logs создана и является пустой, выполните следующую команду:

    logs
    | count
    

Создание сопоставления

Сопоставление используется службой Azure Data Explorer для преобразования входящих данных в схему целевой таблицы. Следующая команда создает сопоставление с именем basicmsg, которое извлекает свойства из входящего JSON, как отмечено в path, и выводит их в column.

Выполните следующую команду в окне запроса:

.create table logs ingestion json mapping 'basicmsg' '[{"column":"timestamp","path":"$.@timestamp"},{"column":"message","path":"$.message"}]'

Установка подключаемого модуля выходных данных

Подключаемый модуль выходных данных Logstash взаимодействует с Azure Data Explorer и отправляет данные в службу. Дополнительные сведения см. в статье Подключаемый модуль Logstash.

В командной оболочке перейдите к корневому каталогу Logstash и выполните следующую команду, чтобы установить подключаемый модуль:

bin/logstash-plugin install logstash-output-kusto

Настройка Logstash для создания примера набора данных

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

Примечание.

Если вы используете собственные данные, измените объекты таблицы и сопоставления, определенные на предыдущих шагах.

  1. Измените новый текстовый файл, который будет содержать необходимые параметры конвейера (используя vi):

    vi test.conf
    
  2. Вставьте следующие параметры, которые сообщат Logstash о создании 1000 тестовых событий:

    input {
        stdin { }
        generator {
            message => "Test Message 123"
            count => 1000
        }
    }
    

Эта конфигурация также включает подключаемый модуль входных данных stdin, который позволит вам самостоятельно писать дополнительные сообщения (обязательно используйте Ввод, чтобы отправить их в конвейер).

Настройка Logstash для отправки данных в Azure Data Explorer

Вставьте следующие параметры в тот же файл конфигурации, который использовался на предыдущем шаге. Замените все заполнители соответствующими значениями для настройки. Дополнительные сведения см. в разделе "Создание приложения Microsoft Entra".

output {
    kusto {
            path => "/tmp/kusto/%{+YYYY-MM-dd-HH-mm-ss}.txt"
            ingest_url => "https://ingest-<cluster name>.kusto.windows.net/"
            app_id => "<application id>"
            app_key => "<application key/secret>"
            app_tenant => "<tenant id>"
            database => "<database name>"
            table => "<target table>" # logs as defined above
            json_mapping => "<mapping name>" # basicmsg as defined above
    }
}
имени параметра Description
path Подключаемый модуль Logstash записывает события во временные файлы перед их отправкой в Azure Data Explorer. Этот параметр включает в себя путь, куда следует записывать файлы, и выражение времени для смены файлов, чтобы активировать отправку в службу Azure Data Explorer.
ingest_url Конечная точка Kusto для обмена данными, связанными с приемом.
app_id, app_key и app_tenant Учетные данные, необходимые для подключения к Azure Data Explorer. Обязательно используйте приложение с привилегиями приема.
database Имя базы данных для размещения событий.
table Имя целевой таблицы для размещения событий.
json_mapping Сопоставление используется для сопоставления строки в формате JSON входящего события в правильный формат строки (определяет, какое свойство входит в какой столбец).

Запуск Logstash

Теперь мы готовы запустить Logstash и проверить наши параметры.

  1. В командной оболочке перейдите к корневому каталогу Logstash и выполните следующую команду:

    bin/logstash -f test.conf
    

    Вы должны увидеть информацию на экране, а затем 1000 сообщений, созданных нашим примером конфигурации. На этом этапе вы также можете вручную ввести дополнительные сообщения.

  2. Через несколько минут выполните следующий запрос Data Explorer, чтобы просмотреть сообщения в определенной вами таблице:

    logs
    | order by timestamp desc
    
  3. Нажмите клавиши Ctrl + C, чтобы выйти из Logstash.

Очистка ресурсов

Выполните следующую команду в базе данных, чтобы очистить таблицу logs:

.drop table logs