Плагин 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> Запустить плагин для тестирования (конфигурация плагина игнорируется).

См. также