Плагин PostgreSQL

Обзор

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

Рекомендуется указывать их в отдельном файле конфигурации (например, postgresql.conf), а не в файле конфигурации агента 2. Затем используйте директиву Include, чтобы подключить этот файл в конфигурацию Zabbix agent 2.

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

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

Эта страница имеет следующую структуру:

  • Обзор параметров (чтобы увидеть полные сведения о параметре, нажмите на его имя)
  • Сведения о параметрах
Parameter Description
Plugins.PostgreSQL.CallTimeout Установите максимальное время ожидания в секундах для завершения запроса.
Plugins.PostgreSQL.CustomQueriesPath Укажите полный путь к каталогу, содержащему файлы .sql с пользовательскими запросами.
Plugins.PostgreSQL.CustomQueriesEnabled Включите выполнение ключа элемента данных postgresql.custom.query.
Plugins.PostgreSQL.Default.CacheMode Укажите режим кэширования по умолчанию для подключения PostgreSQL.
Plugins.PostgreSQL.Default.Database Укажите имя базы данных по умолчанию.
Plugins.PostgreSQL.Default.Password Укажите пароль по умолчанию.
Plugins.PostgreSQL.Default.TLSCAFile Укажите полный путь к файлу, содержащему сертификат(ы) CA верхнего уровня для проверки сертификата узла.
Plugins.PostgreSQL.Default.TLSCertFile Укажите полный путь к файлу, содержащему сертификат PostgreSQL или цепочку сертификатов.
Plugins.PostgreSQL.Default.TLSConnect Укажите уровень шифрования по умолчанию для обмена данными между Zabbix agent 2 и контролируемыми базами данных.
Plugins.PostgreSQL.Default.TLSKeyFile Укажите полный путь к файлу, содержащему закрытый ключ PostgreSQL.
Plugins.PostgreSQL.Default.Uri Укажите URI по умолчанию.
Plugins.PostgreSQL.Default.User Укажите имя пользователя по умолчанию.
Plugins.PostgreSQL.KeepAlive Установите максимальное время ожидания (в секундах) перед закрытием неиспользуемых подключений плагина.
Plugins.PostgreSQL.Sessions.<SessionName>.CacheMode Укажите режим кэширования для именованной сессии подключения PostgreSQL.
Plugins.PostgreSQL.Sessions.<SessionName>.Database Укажите имя базы данных для именованной сессии.
Plugins.PostgreSQL.Sessions.<SessionName>.Password Укажите пароль для именованной сессии.
Plugins.PostgreSQL.Sessions.<SessionName>.TLSCAFile Укажите полный путь к файлу, содержащему сертификат(ы) CA верхнего уровня для проверки сертификата узла.
Plugins.PostgreSQL.Sessions.<SessionName>.TLSCertFile Укажите полный путь к файлу, содержащему сертификат PostgreSQL или цепочку сертификатов.
Plugins.PostgreSQL.Sessions.<SessionName>.TLSConnect Укажите уровень шифрования для именованной сессии при обмене данными между Zabbix agent 2 и контролируемыми базами данных.
Plugins.PostgreSQL.Sessions.<SessionName>.TLSKeyFile Укажите полный путь к файлу, содержащему закрытый ключ PostgreSQL.
Plugins.PostgreSQL.Sessions.<SessionName>.Uri Укажите URI для именованной сессии.
Plugins.PostgreSQL.Sessions.<SessionName>.User Укажите имя пользователя для именованной сессии.

|Plugins.PostgreSQL.System.Path|Укажите путь к исполняемому файлу плагина PostgreSQL.| |Plugins.PostgreSQL.Timeout|Установите тайм-аут выполнения запроса.|

Обратите внимание:

  • Значения по умолчанию отражают значения по умолчанию процесса, а не значения в поставляемых файлах конфигурации.
  • Значения поддерживают переменные среды;
  • Zabbix поддерживает файлы конфигурации только в кодировке UTF-8 без BOM.
  • Комментарии, начинающиеся с "#", поддерживаются только в начале строки.

Подробности параметра

Plugins.PostgreSQL.CallTimeout

Установите максимальное время ожидания в секундах для завершения запроса.

По умолчанию: global timeout
Диапазон: 1-30

Plugins.PostgreSQL.CustomQueriesPath

Укажите полный путь к каталогу, содержащему файлы .sql с пользовательскими запросами.

По умолчанию:
/usr/local/share/zabbix/custom-queries/postgreSQL - для систем Unix,
*:\Program Files\Zabbix Agent 2\Custom Queries\PostgreSQL - для систем Windows (где * — это имя диска из переменной среды ProgramFiles)

Пример:

/etc/zabbix/oracle/sql
Plugins.PostgreSQL.CustomQueriesEnabled

Включить выполнение ключа элемента данных postgresql.custom.query.
Если отключено, запросы не будут загружаться из пути к каталогу пользовательских запросов.

По умолчанию: false
Диапазон: true/false

Plugins.PostgreSQL.Default.CacheMode

Укажите режим кэширования по умолчанию для подключения PostgreSQL.

По умолчанию: prepare
Диапазон:
prepare - создавать подготовленные выражения на сервере PostgreSQL;
describe - использовать анонимное подготовленное выражение, чтобы описать выражение без создания выражения на сервере.

Обратите внимание, что describe в первую очередь полезен, когда среда не позволяет использовать подготовленные выражения, например при работе через пул соединений, такой как PgBouncer.

Plugins.PostgreSQL.Default.Database

Укажите базу данных по умолчанию для подключения к PostgreSQL.
Используется, если значение не указано в ключе элемента данных или именованной сессии.

Plugins.PostgreSQL.Default.Password

Укажите пароль по умолчанию для подключения к PostgreSQL.
Используется, если значение не указано в ключе элемента данных или именованной сессии.

Plugins.PostgreSQL.Default.TLSCAFile

Укажите полный путь к файлу, содержащему сертификат(ы) корневого CA для проверки сертификата узла при зашифрованных соединениях между агентом 2 Zabbix и контролируемыми базами данных.
Используется, если в именованной сессии не указано значение.

Обязательно: yes, если Plugins.PostgreSQL.Default.TLSConnect установлено в verify_ca или verify_full

Plugins.PostgreSQL.Default.TLSCertFile

Укажите полное имя пути к файлу, содержащему сертификат PostgreSQL или цепочку сертификатов для зашифрованного обмена данными между агентом Zabbix 2 и контролируемыми базами данных.
Используется, если в именованной сессии не указано значение.

Обязательно: yes, если указан Plugins.PostgreSQL.Default.TLSKeyFile

Plugins.PostgreSQL.Default.TLSConnect

Укажите уровень шифрования по умолчанию для обмена данными между агентом Zabbix 2 и контролируемыми базами данных.
Используется, если для именованной сессии не указано значение.

Диапазон:
required - подключение с использованием TLS в качестве режима передачи без проверки идентичности;
verify_ca - подключение с использованием TLS и проверка сертификата;
verify_full - подключение с использованием TLS, проверка сертификата и проверка того, что идентификатор базы данных (CN), указанный в DBHost, соответствует ее сертификату.

Неуказанный тип шифрования означает незашифрованное соединение.

Plugins.PostgreSQL.Default.TLSKeyFile

Укажите полное имя пути к файлу, содержащему закрытый ключ PostgreSQL для зашифрованной связи между агентом Zabbix 2 и контролируемыми базами данных.
Используется, если в именованной сессии не указано значение.

Обязательно: yes, если указан Plugins.PostgreSQL.Default.TLSCertFile

Plugins.PostgreSQL.Default.Uri

Укажите URI по умолчанию для подключения к PostgreSQL.
Используется, если значение не указано в ключе элемента данных или именованной сессии.
Встроенные учетные данные будут проигнорированы.
Должен соответствовать формату URI.
Поддерживаемые схемы: tcp, unix

Примеры:

tcp://127.0.0.1:5432
tcp://localhost
unix:/var/run/postgresql/.s.PGSQL.5432
Plugins.PostgreSQL.Default.User

Укажите имя пользователя по умолчанию для подключения к PostgreSQL.
Используется, если значение не указано в ключе элемента данных или именованной сессии.

Plugins.PostgreSQL.KeepAlive

Задайте максимальное время ожидания (в секундах) перед закрытием неиспользуемых подключений плагина.

Plugins.PostgreSQL.Sessions.<SessionName>.CacheMode

Укажите именованный режим кэша сеанса для подключения PostgreSQL.
<SessionName> - задайте имя сеанса для использования в ключах элементов данных.

По умолчанию: prepare
Диапазон:
prepare - создавать подготовленные операторы на сервере PostgreSQL;
describe - использовать анонимный подготовленный оператор для описания оператора без создания оператора на сервере.

Обратите внимание, что describe в первую очередь полезен, когда среда не позволяет использовать подготовленные операторы, например при работе через пул соединений, такой как PgBouncer.

Plugins.PostgreSQL.Sessions.<SessionName>.Database

Укажите базу данных для именованной сессии, используемой для подключения к PostgreSQL.
<SessionName> - задайте имя сессии для использования в ключах элементов данных.

Plugins.PostgreSQL.Sessions.<SessionName>.Password

Укажите пароль для именованной сессии, используемой для подключения к PostgreSQL.
<SessionName> - задает имя сессии для использования в ключах элементов данных.
Должен соответствовать формату пароля.

Plugins.PostgreSQL.Sessions.<SessionName>.TLSCAFile

Укажите полный путь к файлу, содержащему сертификат(ы) корневого CA для проверки сертификата удаленной стороны при зашифрованных соединениях между агентом Zabbix 2 и контролируемыми базами данных.
<SessionName> - задайте имя сеанса для использования в ключах элементов данных.

Обязательно: yes, если Plugins.PostgreSQL.Sessions.<SessionName>.TLSConnect установлено в verify_ca или verify_full

Plugins.PostgreSQL.Sessions.<SessionName>.TLSCertFile

Укажите полное имя пути к файлу, содержащему сертификат PostgreSQL или цепочку сертификатов для зашифрованного обмена данными между агентом Zabbix 2 и контролируемыми базами данных.
<SessionName> - задайте имя сеанса для использования в ключах элементов данных.

Обязательно: yes, если указан Plugins.PostgreSQL.Sessions.<SessionName>.TLSKeyFile

Plugins.PostgreSQL.Sessions.<SessionName>.TLSConnect

Укажите именованный уровень шифрования для обмена данными между агентом Zabbix 2 и контролируемыми базами данных.
<SessionName> - задает имя сеанса для использования в ключах элементов данных.

Диапазон:
required - подключение с использованием TLS в качестве режима транспортировки без проверки идентичности;
verify_ca - подключение с использованием TLS и проверкой сертификата;
verify_full - подключение с использованием TLS, проверкой сертификата и проверкой того, что идентификатор базы данных (CN), указанный в DBHost, соответствует ее сертификату.

Неуказанный тип шифрования означает незашифрованное соединение.

Plugins.PostgreSQL.Sessions.<SessionName>.TLSKeyFile

Укажите полное имя пути к файлу, содержащему закрытый ключ PostgreSQL для зашифрованной связи между агентом Zabbix 2 и контролируемыми базами данных.
<SessionName> - задайте имя сеанса для использования в ключах элементов данных.

Обязательно: yes, если указан Plugins.PostgreSQL.Sessions.<SessionName>.TLSCertFile.

Plugins.PostgreSQL.Sessions.<SessionName>.Uri

Укажите URI именованной сессии для подключения к PostgreSQL.
<SessionName> - задайте имя сессии для использования в ключах элементов данных.
Встроенные учетные данные будут проигнорированы.
Должен соответствовать формату URI.
Поддерживаемые схемы: tcp, unix

Примеры:

tcp://127.0.0.1:5432
tcp://localhost
unix:/var/run/postgresql/.s.PGSQL.5432
Plugins.PostgreSQL.Sessions.<SessionName>.User

Укажите имя пользователя для именованной сессии, используемой для подключения к PostgreSQL.
<SessionName> - задает имя сессии для использования в ключах элементов данных.

Plugins.PostgreSQL.System.Path

Укажите путь к исполняемому файлу плагина PostgreSQL.

Обязательно: yes

Пример:

Plugins.PostgreSQL.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-postgresql
Plugins.PostgreSQL.Timeout

Установите тайм-аут выполнения запроса (продолжительность ожидания завершения запроса в секундах, после которой он будет принудительно остановлен).

По умолчанию: global timeout
Диапазон: 1-30

Параметры

Parameter Description
-V --version Вывести версию плагина и информацию о лицензии.
-h --help Вывести справочную информацию (сокращенный вариант).
-t, --test <item key> Запустить плагин для тестирования (конфигурация плагина игнорируется).

См. также