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

PostgreSQL Requests

Общие сведения

Название плагина: postgresqlPlugin

Ссылка для загрузки плагина: postgresqlPlugin

Описание:

Данный плагин позволяет выполнить SQL запрос в СУБД PostgreSQL

Формат сценария задания потока данных

#Формат задания

jobs:
- name: request to postgresql
steps:
- name: request to postgresql
- plugin: postgresqlRequest
with:
streamId: $.vars.stream.id
streamKey: $.vars.stream.key
# Имя хоста для подключения к серверу postgreSQL.
# Обязательный параметр.
host: <string>
# Номер порта для подключения к серверу postgreSQL.
# Опционально. По умолчанию 5432.
port: <integer>
# Режим ssl для подключению к серверу postgresql
# Допустимые значения Disable, Allow, Prefer, Require, VerifyCA, VerifyFull
# Опционально. По умолчанию Prefer.
sslMode: <string>
# Имя базы данных для подключения.
# Обязательный параметр.
dbname: <string>
# Запрос в БД.
# Обязательный параметр.
query: <string>
# Способ отправки результатов выполнения запроса.
# Допустимые значения events и metrics.
# Опционально. По умолчанию event.
sendAs: <enum>
# Параметры отправки результатов выполнения запроса как события.
# Используется только если sendAs = events
sendAsEvents:
# Количество строк в выборке, отправляемых за раз в одном событии.
# Опционально. По умолчанию 100.
batchSize: <integer>
# Параметры отправки результатов выполнения запроса как метрики.
# Используется только если sendAs = metrics
sendAsMetrics:
# Количество строк в выборке, отправляемых за раз в коллектор метрик.
# Опционально. По умолчанию 10.
batchSize: <integer>
# Указание имени, которое будет добавлено как суффикс к результирующему названию метрики, начинающейся с pg_mon.
# Опционально. По умолчанию пустая строка.
metricNameSuffix: <string>
# Таймаут для запросов на отправку метрик в коллектор Monq.
# Опционально. По умолчанию 30s.
writeTimeout: <string>
# Задержка начальной повторной попытки отправки метрик. Удваивается при каждой повторной попытке.
# Опционально. По умолчанию 30ms.
writeMinBackoff: <string>
# Максимальная задержка повторной попытки отправки метрик.
# Опционально. По умолчанию 5s.
writeMaxBackoff: <string>
# Список меток, добавляемых к полученным метрикам.
# Опционально. По умолчанию пустой список.
labels:
label1: Label1_Value
label2: Label2_Value
# Параметры для преобразования таблицы с результатами запроса в метрики.
tableConversion:
# Указание имени колонки, ячейки которой будут содержать значение метрики.
# Опционально. По умолчанию VALUE.
valueColumn: <string>
# Количество строк выборки, конвертируемых в метрику и отправляемых коллектор метрик. Допустимые значения от 1 до 1000.
# Опционально. По умолчанию 10.
metricSendLimit: <integer>
# Список колонок из ответа, которые надо преобразовать в метки.
# Опционально. По умолчанию пустой список.
labelColumns:
- Column1
- Column2
# Фиксировать время выполнения запроса (в секундах) в БД (в формате метрического ряда) или нет.
# Опционально. По умолчанию false.
sendQueryResponseTime: <boolean>
# Параметры отправки времени выполнения запроса. Используется только если sendQueryResponseTime = true
queryResponseTimeMetric:
# Список меток, добавляемых к полученным метрикам.
# Опционально. По умолчанию пустой список.
labels:
label1: Label1_Value
label2: Label2_Value
# Допустимые значения для LogLevel: trace, debug, information, warning, error, critical, none
# Опционально. Уровень логирования выполнения заданий, выводящихся в лог работы агента. По умолчанию error
consoleSyncLogLevel: <string>
# Опционально. Уровень логирования выполнения заданий, отправляющихся в коллектор событий. По умолчанию error
syncLogLevel: <string>
with-secured:
# Username - для подключения к серверу postgresql
username: <string>
# Password - для подключения к серверу postgresql
password: <string>

Параметры конфигурации используемые в сценарии

ПараметрТипОбязательный параметрЗначение по умолчаниюВозможные значенияОписание
streamIdstringда-Любая строкаИдентификатор текущего потока ($.vars.stream.id)
streamKeystringда-Любая строкаAPI ключ текущего потока ($.vars.stream.key)
usernamestringда-Любая строкаЛогин для подключения к серверу postgresql
passwordstringда-Любая строкаПароль для подключения к серверу postgresql
hoststringда-Любая строкаАдрес для подключения к серверу postgresql
portstringопционально5432От 1 до 65535Порт - для подключения к серверу postgresql
sslModestringопциональноpreferdisable, allow, prefer, requiredisable - ssl не используется для подключения к серверу postgresql
allow, prefer, require - режимы ssl для подключения
dbnamestringопциональноpostgresЛюбая строкаУказывается имя базы данных для подключения

Пример сценария задания на получение метрик

name: request to postgresql
jobs:
- name: request to postgresql
steps:
- plugin: postgresqlRequest
with:
streamId: $.vars.stream.id
streamKey: $.vars.stream.key
host: 10.25.0.10
port: 5432
sslMode: prefer
dbName: myDatabase
query: >
SELECT COUNT(*)
FROM public."Table";
sendAsEvents:
batchSize: 10
sendQueryResponseTime: false
consoleSyncLogLevel: trace
syncLogLevel: none
with-secured:
username: $.vars.stream.params.username
password: $.vars.stream.params.password