Слушатель событий#
Trino поддерживает пользовательские слушатели событий, которые вызываются для следующих событий:
Создание запроса
Завершение запроса (успешное или с ошибкой)
Детали события включают сессию, выполнение запроса, использование ресурсов, таймлайн и другое.
Эта функциональность позволяет разрабатывать плагины для пользовательского логирования, отладки и анализа производительности.
Реализация#
EventListenerFactory отвечает за создание экземпляра
EventListener. Он также определяет имя EventListener,
которое администратор использует в конфигурации Trino.
Реализации EventListener реализуют методы для тех типов событий,
обработкой которых они заинтересованы.
Реализация EventListener и EventListenerFactory
должна быть упакована как плагин и установлена в кластере Trino.
Конфигурация#
После установки на координатор плагина, реализующего EventListener и
EventListenerFactory, он настраивается с помощью файла
etc/event-listener.properties. Все свойства, кроме
event-listener.name, специфичны для реализации
EventListener.
Свойство event-listener.name используется Trino для поиска
зарегистрированного EventListenerFactory по имени, возвращаемому
EventListenerFactory.getName(). Остальные свойства передаются
в виде map в EventListenerFactory.create().
Пример файла конфигурации:
event-listener.name=custom-event-listener
custom-property1=custom-value1
custom-property2=custom-value2
Несколько слушателей событий#
Trino поддерживает несколько экземпляров одинаковых или разных слушателей
событий. Установите и настройте несколько экземпляров, задав
event-listener.config-files в Config properties как список файлов
конфигурации слушателей событий, разделенный запятыми:
event-listener.config-files=etc/event-listener.properties,etc/event-listener-second.properties