АнглийскийФранцузскийИспанский

Ad


Значок OnWorks

check_postgres_bloatp - Онлайн в облаке

Запустите check_postgres_bloatp в бесплатном хостинг-провайдере OnWorks через Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS

Это команда check_postgres_bloatp, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

ПРОГРАММА:

ИМЯ


check_postgres - скрипт мониторинга Postgres для Nagios, MRTG, Cacti и других

Этот документ описывает check_postgres версии 2.22.0

СИНТАКСИС


## Создать все символические ссылки
check_postgres --символические ссылки

## Проверить подключение к базе данных Postgres 'pluto':
check_postgres --action = соединение --db = плутон

## То же самое, но с использованием символической ссылки
check_postgres_connection --db = плутон

## Предупреждать, если> 100 блокировок, критично, если> 200, или> 20 эксклюзивных
check_postgres_locks --warning = 100 --critical = "total = 200: exclusive = 20"

## Показать текущее количество незанятых соединений на порту 6543:
check_postgres_txn_idle --port = 6543 --output = простой

## Есть много других действий и опций, продолжайте читать.

Последние новости и документацию всегда можно найти по адресу:
http://bucardo.org/check_postgres/

ОПИСАНИЕ


check_postgres - это Perl-скрипт, который запускает множество различных тестов для одного или нескольких
Базы данных Postgres. Он использует программу psql для сбора информации и выводит
приводит к одному из трех форматов: Nagios, MRTG или простой.

Результат Режимы
Вывод можно изменить с помощью опции «--output». По умолчанию выводится nagios,
хотя при желании это можно изменить в верхней части скрипта. Текущий вариант
выбор нагиос, мртгкачества декриминализовано. Чтобы избежать необходимости вводить выходной аргумент каждый
time, тип вывода устанавливается автоматически, если не указан аргумент --output, и если
в названии текущего каталога есть одна из опций вывода. Например, создание
каталог с именем mrtg и заполнение его символическими ссылками через --символы аргумент будет
убедитесь, что любые действия, запускаемые из этого каталога, всегда по умолчанию будут выводить «mrtg»
В качестве ярлыка для --output = simple вы можете ввести --simple, который также переопределяет
трюк с именами каталогов.

Nagios выходной

Формат вывода по умолчанию - для Nagios, который представляет собой одну строку информации вместе с
четыре конкретных кода выхода:

0 (ОК)
1 (ВНИМАНИЕ)
2 (КРИТИЧЕСКИЙ)
3 (НЕИЗВЕСТНО)

Строка вывода - это одно из указанных выше слов, двоеточие, а затем краткое описание того, что
был измерен. Дополнительная статистическая информация, а также общее время выполнения команды
взял, также можно выводить: см. документацию по аргументам --showperf,
--perflimitкачества --время для шоу.

MRTG выходной

Вывод MRTG состоит из четырех строк, причем первая строка всегда дает одно число
важность. Если возможно, это число представляет собой фактическое значение, например, количество
байтов, но также может быть 1 или 0 для действий, которые возвращают только «истина» или «ложь», например
как check_postgres_version. Вторая строка является дополнительной характеристикой и используется только для
некоторые действия. Третья строка указывает время безотказной работы и не используется. Четвертая строка - это
описание и обычно указывает имя базы данных стат из первой строки
был извлечен из, но может отличаться в зависимости от действия.

Некоторые действия допускают необязательный --мртг аргумент для дальнейшего управления выводом.

См. Документацию по каждому действию для получения подробной информации о точном выходе MRTG для каждого из них.

просто выходной

Простой вывод - это просто усеченная версия MRTG, которая просто возвращает
первый номер и больше ничего. Это очень полезно, когда вы просто хотите проверить состояние
чего-то, независимо от порога. Вы можете преобразовать числовой вывод с помощью
добавление KB, MB, GB, TB или EB к выходному аргументу, например:

--output = simple, МБ

Кактусы выходной

Выходные данные Cacti состоят из одного или нескольких элементов в одной строке с простым именем,
двоеточие, а затем число. На данный момент единственное действие с явным выводом Cacti - это
'dbstats', и использование опции --output в этом случае не требуется, поскольку Cacti является единственным
выход для этого действия. Для многих других действий использования --simple достаточно, чтобы Cacti
счастливы.

DATABASE ПОДКЛЮЧЕНИЕ ДОПОЛНИТЕЛЬНЫЕ УСЛУГИ, НЕ ВКЛЮЧЕННЫЕ В ПАКЕТ


Все действия допускают общий набор параметров базы данных.

-H ИМЯ or --host = ИМЯ
Подключитесь к хосту, указанному ИМЯ. Может быть список имен, разделенных запятыми.
Допускается несколько аргументов хоста. Если хост не указан, по умолчанию используется "PGHOST".
переменная окружения или отсутствие хоста (что указывает на использование локального сокета Unix).
Вы также можете использовать "--dbhost".

-p PORT or --port = ПОРТ
Подключается с использованием указанного номера ПОРТА. Может быть список портов, разделенных запятыми
числа и несколько аргументов порта. Если номер порта не указан, по умолчанию
в переменную окружения "PGPORT". Если он не установлен, по умолчанию используется 5432. Вы можете
также используйте "--dbport"

-db ИМЯ or --dbname = ИМЯ
Определяет, к какой базе данных подключаться. Может быть список имен, разделенных запятыми, и
Допускается несколько аргументов dbname. Если опция dbname не указана, по умолчанию используется
переменная окружения "PGDATABASE". Если это не установлено, по умолчанию используется postgres.
если psql версии 8 или выше, и «template1» в противном случае.

-u USERNAME or --dbuser = ИМЯ ПОЛЬЗОВАТЕЛЯ
Имя пользователя базы данных для подключения. Может быть разделенным запятыми списком
допустимы имена пользователей и несколько аргументов dbuser. Если это не предусмотрено, это
по умолчанию используется переменная среды «PGUSER», в противном случае - «postgres».

--dbpass = ПАРОЛЬ
Предоставляет пароль для подключения к базе данных. Использование этой опции очень
обескуражен. Вместо этого следует использовать файл .pgpass или pg_service.conf.

--dbservice = ИМЯ
Имя службы в файле pg_service.conf. До версии 9.0 из
Postgres, это глобальный файл, обычно находящийся в /etc/pg_service.conf. Если ты
используя Postgres версии 9.0 или выше, вы можете использовать файл ".pg_service.conf" в
домашний каталог пользователя, запускающего сценарий, например, nagios.

Этот файл содержит простой список вариантов подключения. Вы также можете пройти дополнительные
информация при использовании этого параметра, например --dbservice = "maindatabase sslmode = require"

Документацию к этому файлу можно найти по адресу
http://www.postgresql.org/docs/current/static/libpq-pgservice.html

Варианты подключения к базе данных можно сгруппировать: --host = a, b --host = c --port = 1234
--port = 3344 будет подключаться к a-1234, b-1234 и c-3344. Обратите внимание, что после установки параметр
сохраняется до тех пор, пока не будет изменен снова.

Примеры:

--host = a, b --port = 5433 --db = c
Дважды подключается к порту 5433, используя базу данных c, к хостам a и b: a-5433-c b-5433-c

--host = a, b --port = 5433 --db = c, d
Четыре раза подключается: a-5433-c a-5433-d b-5433-c b-5433-d

--host = a, b --host = foo --port = 1234 --port = 5433 --db = e, f
Подключается шесть раз: a-1234-e a-1234-f b-1234-e b-1234-f foo-5433-e foo-5433-f

--host = a, b --host = x --port = 5432,5433 --dbuser = alice --dbuser = bob -db = baz
Трижды подключается: a-5432-alice-baz b-5433-alice-baz x-5433-bob-baz

--dbservice = "foo" --port = 5433
Подключается с использованием именованной службы 'foo' в файле pg_service.conf, но переопределяет порт

ДРУГИЕ ДОПОЛНИТЕЛЬНЫЕ УСЛУГИ, НЕ ВКЛЮЧЕННЫЕ В ПАКЕТ


Другие варианты включают в себя:

--action = ИМЯ
Указывает, какое действие мы выполняем. Требуется, если не используется файл с символической ссылкой, в котором
случае имя файла используется для определения действия.

--warning = VAL or -w VAL
Устанавливает порог срабатывания предупреждения. Допустимые варианты для этого
опция зависит от используемого действия.

--critical = VAL or -c VAL
Устанавливает порог срабатывания критического предупреждения. Действительные варианты для этого
опция зависит от используемого действия.

-t VAL or --timeout = VAL
Устанавливает тайм-аут в секундах, по истечении которого скрипт прерывает все, что он делает, и
вернуть НЕИЗВЕСТНЫЙ статус. Тайм-аут рассчитан на кластер Postgres, а не на весь
сценарий. Значение по умолчанию - 10; единицы всегда в секундах.

--assume-standby-режим
Если указано, сначала выполняется проверка, будет ли сервер в режиме ожидания (--datadir
требуется), в этом случае все проверки, требующие SQL-запросов, будут игнорироваться и "Сервер
в режиме ожидания »вместо этого будет возвращено состояние ОК.

Пример:

postgres@db$./check_postgres --action = version --warning = 8.1 --datadir /var/lib/postgresql/8.3/main/ --assume-standby-mode
POSTGRES_VERSION OK: Сервер в режиме ожидания | время = 0.00

--просчитать-прод
Если указано, проверьте, работает ли сервер в производственном режиме (требуется --datadir).
Опция актуальна только для ("символическая ссылка: check_postgres_checkpoint").

Пример:

postgres@db$./check_postgres --action = контрольная точка --datadir /var/lib/postgresql/8.3/main/ --assume-prod
POSTGRES_CHECKPOINT OK: последняя контрольная точка была 72 секунды назад | возраст = 72 ;; 300 режим = МАСТЕР

-h or --Помогите
Отображает экран справки со сводкой всех действий и опций.

--человек
Отображает все руководство.

-V or --версия
Показывает текущую версию.

-v or --подробный
Установите уровень детализации. Можно позвонить более одного раза, чтобы повысить уровень. Установив его на
три или выше (другими словами, команда "-v -v -v") включает отладочную информацию
для этой программы, которая отправляется на stderr.

--showperf = VAL
Определяет, выводим ли мы дополнительные данные о производительности в стандартном формате Nagios (в конце
строки после символа вертикальной черты, используя имя = значение). VAL должен быть 0 или 1. По умолчанию
равно 1. Действует только при использовании режима вывода Nagios.

--perflimit = я
Устанавливает ограничение на количество элементов, представляющих интерес, сообщается при использовании
шоуперф вариант. Это влияет только на действия, возвращающие большое количество
предметы, такие как размер_таблицы. По умолчанию 0 или без ограничений. Будьте осторожны при использовании этого
с --включают or --исключать варианты, поскольку эти ограничения выполнены после домен
запрос был запущен, и поэтому ваш лимит может не включать нужные вам элементы. Только берет
эффект при использовании режима вывода Nagios.

--showtime = VAL
Определяет, отображается ли в выходных данных время, затраченное на выполнение каждого запроса. VAL должен быть 0
или 1. По умолчанию 1. Никакого эффекта, если только шоуперф горит. Действует только при использовании
Режим вывода Nagios.

--тестовое задание
Включает тестовый режим. См. Раздел «ТЕСТОВЫЙ РЕЖИМ» ниже.

--PGBINDIR = ПУТЬ
Сообщает сценарию, где найти двоичные файлы psql. Полезно, если у вас более одного
версия исполняемых файлов PostgreSQL в вашей системе, или если их нет в вашей
дорожка. Обратите внимание, что этот параметр находится в верхнем регистре. По умолчанию эта опция не
разрешено. Чтобы включить его, вы должны изменить $ NO_PSQL_OPTION в верхней части скрипта.
на 0. По возможности не используйте эту опцию, вместо этого используйте переменную среды
c или жестко запрограммированная переменная $ PGBINDIR, также в верхней части скрипта, чтобы установить
путь к PostgreSQL, который нужно использовать.

--PSQL = ПУТЬ
(устарело, этой вариант май be удаленный in a будущее выпускать!) Сообщает сценарию, где
найти программу psql. Полезно, если у вас более одной версии psql.
исполняемый файл в вашей системе, или если на вашем пути нет программы psql. Обратите внимание, что это
опция находится в верхнем регистре. По умолчанию эта опция не разрешено. Чтобы включить его, вы
должен изменить $ NO_PSQL_OPTION в верхней части скрипта на 0. Избегайте использования этого
вариант, если вы можете, и вместо этого жестко закодируйте ваше местоположение psql в переменной $ PSQL,
также в верхней части сценария.

--символы
Создает символические ссылки на основную программу для каждого действия.

--output = VAL
Определяет формат вывода для использования в различных программах. По умолчанию
'нагиос'. Доступные варианты: nagios, mrtg, simple и cacti.

--mrtg = VAL
Используется только для MRTG или простого вывода, для нескольких конкретных действий.

--debugoutput = VAL
Выводит точную строку, возвращаемую psql, для использования при отладке. Значение - один или
больше букв, которые определяют, отображается вывод или нет, где 'a' = all, 'c'
= критическое, 'w' = предупреждение, 'o' = нормально и 'u' = неизвестно. Буквы можно комбинировать.

--get_method = VAL
Позволяет указать метод, используемый для получения информации для "new_version_cp",
Проверки "new_version_pg", "new_version_bc", "new_version_box" и "new_version_tnm".
Следующие программы пытаются получить информацию из Интернета: GET,
wget, fetch, curl, lynx, ссылки. Чтобы принудительно использовать только один (и таким образом удалить
накладные расходы на попытки всех остальных, пока одно из них не сработает), введите одно из имен как
аргумент get_method. Например, в поле BSD можно ввести следующую строку в
их файл ".check_postgresrc":

get_method = получить

--language = VAL
Установите язык, который будет использоваться для всех выходных сообщений. Обычно это определяется
проверяя переменные среды LC_ALL, LC_MESSAGES и LANG, но устанавливая это
опция отменяет любое такое обнаружение.

Действия


Сценарий выполняет одно или несколько действий. Это можно сделать либо с помощью флага --action, либо с помощью
используя символическую ссылку на основной файл, который содержит название действия внутри него. Для
Например, чтобы запустить действие «timesync», вы можете либо выполнить:

check_postgres --action = timesync

или используйте программу с именем:

check_postgres_timesync

Все символические ссылки создаются для вас в текущем каталоге, если использовать параметр --symlinks

perl check_postgres --символические ссылки

Если имя файла уже существует, оно не будет перезаписано. Если файл существует и является
символическую ссылку, вы можете принудительно перезаписать ее, используя "--action = build_symlinks_force"

Большинство действий требует --предупреждение и еще один - критический вариант, указывающий, в какой момент мы меняем
от ОК до ПРЕДУПРЕЖДЕНИЕ, и в какой момент мы переходим к КРИТИЧЕСКОМУ. Обратите внимание: поскольку критические
всегда проверяется в первую очередь, установка предупреждения равным критическому - эффективный способ
отключить предупреждения и всегда давать критику.

Текущие поддерживаемые действия:

архив_готов
("символическая ссылка: check_postgres_archive_ready") Проверяет, сколько файлов WAL с расширением .готовы
существуют в pg_xlog / archive_status каталог, который находится вне вашего каталог_данных.
Это действие должно быть запущено от имени суперпользователя, чтобы получить доступ к содержимому
pg_xlog / archive_status каталог. Минимальная версия для использования этого действия - Postgres 8.1.
Ассоциация --предупреждение и - критический варианты - это просто количество .готовы файлы в
pg_xlog / archive_status каталог. Обычно эти значения должны быть низкими, при включении
механизм архивирования, мы обычно хотим, чтобы он архивировал файлы WAL как можно быстрее.

Если команда архивирования завершилась неудачно, количество WAL в вашем pg_xlog каталог будет расти до тех пор, пока
исчерпание всего дискового пространства и немедленная остановка PostgreSQL.

Пример 1. Убедитесь, что количество готовых файлов WAL не превышает 10 на хосте "pluto".

check_postgres_archive_ready --host = плутон --critical = 10

Для вывода MRTG сообщает количество готовых файлов WAL в строке 1.

autovac_freeze
("символическая ссылка: check_postgres_autovac_freeze") Проверяет, насколько близко каждая база данных находится
Postgres autovacuum_freeze_max_age параметр. Это действие будет работать только для баз данных
версия 8.2 или выше. В --предупреждение и - критический варианты должны быть выражены как
проценты. «Возраст» транзакций в каждой базе данных сравнивается с
autovacuum_freeze_max_age (по умолчанию 200 миллионов) для создания округленного
процент. Значения по умолчанию: 90% за предупреждение и 95% для критических. Базы данных
можно отфильтровать с помощью --включают и --исключать параметры. См. «ОСНОВНАЯ ФИЛЬТРАЦИЯ»
раздел для более подробной информации.

Пример 1: выдавать предупреждение, когда любая база данных на порту 5432 превышает 97%

check_postgres_autovac_freeze --port = 5432 --warning = "97%"

Для вывода MRTG самый высокий общий процент указан в первой строке, а
самый высокий возраст указан во второй строке. Все базы данных, которые имеют процент от
первая строка указывается в четвертой строке, разделенных вертикальной чертой.

бэкэнды
("символическая ссылка: check_postgres_backends") Проверяет текущее количество подключений для одного или
больше баз данных, и при необходимости сравнивает его с максимально допустимым, которое определяется
переменная конфигурации Postgres max_connections, --предупреждение и - критический кредита
может принимать одну из трех форм. Во-первых, можно указать простое число, которое представляет
количество соединений, при которых будет выдано предупреждение. Этот выбор не использует
max_connections параметр. Во-вторых, можно указать процент доступных подключений.
В-третьих, можно указать отрицательное число, которое представляет количество оставшихся подключений.
до max_connections достигается. Значения по умолчанию для --предупреждение и - критический Он
«90%» и «95%». Вы также можете фильтровать базы данных с помощью --включают и --исключать
параметры. См. Раздел «ОСНОВНАЯ ФИЛЬТРАЦИЯ» для получения более подробной информации.

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

Пример 1: выдает предупреждение, когда количество подключений на хосте quirm достигает 120, а
критично, если он достигает 150.

check_postgres_backends --host = quirm --warning = 120 --critical = 150

Пример 2: Дайте критическое значение, когда мы достигнем 75% нашей настройки max_connections на хостах
ланкр или ланкр2.

check_postgres_backends --warning = '75% '--critical = '75%' --host = lancre, lancre2

Пример 3: выдавать предупреждение, когда на хосте осталось только 10 дополнительных разъемов для подключения
плазмида, и критическая, когда осталось только 5.

check_postgres_backends --warning = -10 --critical = -5 --host = плазмида

Пример 4. Проверьте все базы данных, кроме тех, в названии которых есть слово "test", но разрешите те, которые
называются "pg_greatest". Подключитесь как порт 5432 на первых двух хостах и ​​как порт 5433 на
третий. Мы хотим всегда бросать критику, когда мы достигаем 30 или более подключений.

check_postgres_backends --dbhost = hong, kong --dbhost = fooey --dbport = 5432 --dbport = 5433 --warning = 30 --critical = 30 --exclude = "~ test" --include = "pg_greatest, ~ prod "

Для вывода MRTG количество подключений указывается в первой строке, а в четвертой.
В строке указано имя базы данных плюс текущее значение maximum_connections. Если больше чем
одна база данных запрошена, выводится база с наибольшим количеством подключений.

раздуваться
("символическая ссылка: check_postgres_bloat") Проверяет степень раздувания таблиц и индексов. (Раздувание
обычно представляет собой количество мертвого неиспользуемого пространства, занимаемого в таблице или индексе. Это пространство
обычно восстанавливается с помощью команды VACUUM.) Это действие требует, чтобы статистика
коллекция должна быть включена в целевых базах данных и требует запуска ANALYZE
часто. В --включают и --исключать параметры можно использовать, чтобы отфильтровать, какие таблицы нужно
смотреть на. См. Раздел «ОСНОВНАЯ ФИЛЬТРАЦИЯ» для получения более подробной информации.

Ассоциация --предупреждение и - критический параметры могут быть указаны как размеры, проценты или и то, и другое. Действительный
Единицы размера - байты, килобайты, мегабайты, гигабайты, терабайты, эксабайты, петабайты и
зеттабайт. Вы можете сократить все до первой буквы. Предметы без единиц
Предполагается, что это байты. Значения по умолчанию - «1 ГБ» и «5 ГБ». Значение представляет собой
количество «потраченных впустую байтов», или разница между тем, что фактически используется таблицей и
index, и то, что мы вычислили, что это должно быть.

Обратите внимание, что это действие имеет два жестко запрограммированных значения, чтобы избежать ложных срабатываний на меньших
связи. Таблицы должны иметь не менее 10 страниц и индексы не менее 15, прежде чем их можно будет
считается этим тестом. Если вы действительно хотите отрегулировать эти значения, вы можете найти
переменные $ MINPAGES и МИНИПАДЖИ $ в верхней части подпрограммы check_bloat. Эти
значения игнорируются, если --исключать or --включают используется.

Показаны только 10 самых раздутых отношений. Вы можете изменить это число, используя
--perflimit возможность установить свой собственный лимит.

Схема с именем 'information_schema' исключена из этого теста, так как единственные таблицы, которые она
содержит небольшие по размеру и не меняются.

Обратите внимание, что значения, вычисленные этим действием, неточны, и их следует использовать как
только руководство. Было приложено много усилий, чтобы оценить правильный размер таблицы, но в
конец это только оценка. Правильный размер индекса - это даже больше предположение, чем
правильный размер стола, но оба должны дать общее представление о том, насколько раздуты вещи.

Пример 1: Предупреждать, если какая-либо таблица на порту 5432 превышает 100 МБ, и критична, если более 200
MB

check_postgres_bloat --port = 5432 --warning = '100 млн' --critical = '200 млн'

Пример 2: Дайте критическую оценку, если таблица 'orders' на хосте 'sami' имеет более 10 мегабайт раздувания

check_postgres_bloat --host = sami --include = orders --critical = '10 MB '

Пример 3. Дайте критическую оценку, если таблица «q4» в базе данных «Продажи» раздута более чем на 50%.

check_postgres_bloat --db = sales --include = q4 --critical = '50% '

Пример 4: Дайте критическую оценку, если таблица раздута более чем на 20% и имеет более 150 МБ раздутого пространства:

check_postgres_bloat --port = 5432 --critical = '20% и 150 млн '

Пример 5: Дайте критическую оценку, если таблица раздута более чем на 40% or имеет более 500 МБ раздутого пространства:

check_postgres_bloat --port = 5432 --warning = '500 млн или 40%'

Для вывода MRTG первая строка дает наибольшее количество байтов, потраченных впустую для таблиц,
а вторая строка дает наибольшее количество байтов, потраченных впустую для индексов. Четвертый
Строка дает имя базы данных, имя таблицы и информацию об имени индекса. Если хотите
вместо этого выведите коэффициент раздувания (во сколько раз соотношение больше по сравнению с тем, как
должно быть большим), просто передайте "--mrtg = ratio".

контрольно-пропускной пункт
("символическая ссылка: check_postgres_checkpoint") Определяет, сколько времени прошло с момента последней контрольной точки.
был запущен. Он должен работать на том же сервере, что и проверяемая база данных (например,
-h флаг работать не будет). Эта проверка предназначена для запуска на сервере «горячего резерва», который
активно обрабатывает отправленные файлы WAL и предназначен для проверки работоспособности вашего горячего резервирования.
действительно «теплый». Каталог данных должен быть установлен либо с помощью переменной среды
«PGDATA» или передача аргумента «--datadir». Возвращает количество секунд с момента
последняя контрольная точка была запущена, как определено анализом вызова "pg_controldata". Из-за
при этом исполняемый файл pg_controldata должен быть доступен по текущему пути. В качестве альтернативы,
вы можете указать "PGBINDIR" в качестве каталога, в котором он находится. Также можно использовать
специальные опции --просчитать-прод or --assume-standby-режим, если найденный режим не
один ожидаемый, испускается КРИТИЧЕСКИЙ.

Должен быть установлен хотя бы один предупреждающий или критический аргумент.

Для этого действия требуется модуль Date :: Parse.

Для MRTG или простого вывода возвращает количество секунд.

идентификатор_кластера
("символическая ссылка: check_postgres_cluster-id") Проверяет, предоставлен ли идентификатор системы базы данных
by pg_controldata - это то же самое, что и в прошлый раз. Это должно работать на том же сервере
как проверяемая база данных (например, флаг -h работать не будет). Либо
--предупреждение или - критический должен быть предоставлен вариант, но не оба сразу. Ценность каждого из них
идентификатор кластера, целочисленное значение. Вы можете работать со специальным "--critical = 0"
возможность узнать существующий идентификатор кластера.

Пример 1: Найдите начальный идентификатор

check_postgres_cluster_id --critical = 0 --datadir = / var // библиотека / postgresql / 9.0 / main

Пример 2: Убедитесь, что кластер такой же, и предупредите, если нет, используя результат выше.

check_postgres_cluster_id --critical = 5633695740047915135

Для выходных данных MRTG возвращает 1 или 0, указывающее на успех или сбой идентификатора для
соответствие. Идентификатор должен быть указан в качестве аргумента "--mrtg". Четвертая строка всегда
дает текущий идентификатор.

обязательство
("символическая ссылка: check_postgres_commitratio") Проверяет коэффициент фиксации всех баз данных и
жалуется, когда они слишком низкие. Нет необходимости запускать эту команду более одного раза за
кластер базы данных. Базы данных можно фильтровать с помощью --включают и --исключать параметры. Видеть
в разделе «ОСНОВНАЯ ФИЛЬТРАЦИЯ». Их также может отфильтровать владелец
база данных с --includeuser и --excludeuser параметры. См. «ИМЯ ПОЛЬЗОВАТЕЛЯ»
ФИЛЬТРАЦИЯ »для более подробной информации.

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

Пример: Предупреждать, если какая-либо база данных на хосте flagg имеет коэффициент фиксации менее 90% и является критическим.
если менее 80%.

check_postgres_database_commitratio --host = flagg --warning = '90% '--critical = '80%'

Для вывода MRTG возвращает процент базы данных с наименьшим коэффициентом фиксации на
в первой строке и имя базы данных в четвертой строке.

связи
("символическая ссылка: check_postgres_connection") Просто подключается, выдает 'SELECT версия()', а также
листья. Не принимает --предупреждение or - критический настройки.

Для вывода MRTG просто выводит 1 (хорошее соединение) или 0 (плохое соединение) на первом
линии.

custom_query
("символическая ссылка: check_postgres_custom_query") Выполняет пользовательский запрос по вашему выбору и анализирует
результаты, достижения. Сам запрос передается через аргумент query и должен быть
сохранены как можно проще. Если возможно, оберните его в представление или функцию, чтобы сохранить
проще управлять вещами. Запрос должен возвращать один или два столбца. Требуется, чтобы
один из столбцов назовите "результат" и это элемент, который будет сравниваться с вашим
предупреждения и критические значения. Второй столбец предназначен для данных о производительности и любого имени.
можно использовать: это будет «значение» в разделе данных о производительности.

Необходимо указать хотя бы одно предупреждение или критический аргумент. На что они настроены, зависит
от типа выполняемого запроса. Есть четыре типа custom_queries, которые можно
run, заданный аргументом valtype. Если ничего не указано, это действие по умолчанию
"целое число". Вот четыре типа:

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

string: Предупреждение и критическое значение являются строками и запускаются только в том случае, если значение в
первый столбец ему точно соответствует. Это чувствительно к регистру.

время: Предупреждение и критическое значение - это время и могут иметь единицы измерения в секундах, минутах,
часы или дни. Каждый может быть написан в единственном числе или сокращен до первой буквы. Если
единицы не указаны, предполагаются секунды. Первый столбец должен быть целым числом
представляющий количество секунд для проверки.

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

Обычно предупреждение запускается, если возвращенные значения большой чем или равно
критическое значение или значение предупреждения. Однако вариант --задний ход вызовет предупреждение, если
возвращаемое значение ниже чем или равно критическому значению или значению предупреждения.

Пример 1. Предупредить, если какое-либо отношение более 100 страниц названо "рад", укажите количество страниц.
внутри раздела данных о производительности.

check_postgres_custom_query --valtype = string -w "rad" --query =
"ВЫБЕРИТЕ relname КАК результат, относит страницы КАК страницы FROM pg_class WHERE relpages> 100"

Пример 2: Дайте критическую оценку, если функция "foobar" возвращает число более 5 МБ:

check_postgres_custom_query --critical = '5MB' - valtype = size --query = "ВЫБРАТЬ foobar () как результат"

Пример 2: Предупредить, если функция snazzo возвращает меньше 42:

check_postgres_custom_query --critical = 42 --query = "ВЫБРАТЬ snazzo () AS результат" --reverse

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

Это действие пока не поддерживает MRTG или простой вывод.

размер_базы_данных
("символическая ссылка: check_postgres_database_size") Проверяет размер всех баз данных и жалуется
когда они слишком большие. Нет необходимости запускать эту команду более одного раза для каждой базы данных.
кластер. Базы данных можно фильтровать с помощью --включают и --исключать параметры. Увидеть
Подробнее в разделе «ОСНОВНАЯ ФИЛЬТРАЦИЯ». Их также может отфильтровать владелец
база данных с --includeuser и --excludeuser параметры. См. «ФИЛЬТРАЦИЯ ПО ИМЕНИ ПОЛЬЗОВАТЕЛЯ»
раздел для более подробной информации.

Параметры предупреждения и критические могут быть указаны в байтах, килобайтах, мегабайтах,
гигабайты, терабайты или эксабайты. Каждый может быть сокращен до первой буквы.
Если единица измерения не указана, предполагается, что единицы измерения - байты. Для этого нет значений по умолчанию
действие: необходимо указать предупреждение и критическое. Значение предупреждения не может быть больше
чем критическое значение. Вывод возвращает все базы данных, отсортированные по размеру в первую очередь,
показаны как необработанные байты, так и "красивая" версия размера.

Пример 1: Предупреждать, если размер какой-либо базы данных на хосте flagg превышает 1 ТБ, и критично, если он превышает
1.1 TB.

check_postgres_database_size --host = flagg --warning = '1 ТБ' --critical = '1.1 т'

Пример 2: Дайте критическое значение, если размер базы данных template1 на порту 5432 превышает 10 МБ.

check_postgres_database_size --port = 5432 --include = template1 --warning = '10MB' --critical = '10MB'

Пример 3: Предоставить предупреждение, если какая-либо база данных на хосте tardis, принадлежащая пользователю tom, закончилась.
5 GB

check_postgres_database_size --host = tardis --includeuser = tom --warning = '5 ГБ' --critical = '10 ГБ '

Для вывода MRTG возвращает размер в байтах самой большой базы данных в первой строке, и
имя базы данных в четвертой строке.

dbstats
("символическая ссылка: check_postgres_dbstats") Сообщает информацию из представления pg_stat_database,
и выводит его в удобной для кактусов манере. Никакой другой вывод не поддерживается, так как вывод
информационный и не поддается оповещениям, например, используемым с Nagios. Если нет вариантов
приведены все базы данных, по одной в каждой строке. Вы можете включить конкретную базу данных
используя параметр --include, или вы можете использовать параметр --dbname.

В каждой строке возвращается одиннадцать элементов в формате имя: значение, разделенных одним
Космос. Предметы:

бэкэнды
Количество запущенных в данный момент серверных ВМ для этой базы данных.

совершает
Общее количество коммитов для этой базы данных с момента ее создания или сброса.

откаты
Общее количество откатов для этой базы данных с момента ее создания или сброса.

читать
Общее количество прочитанных блоков диска.

hit Общее количество попаданий в буфер.

ret Общее количество возвращенных строк.

получать
Общее количество выбранных строк.

ins Общее количество вставленных строк.

upd Общее количество обновленных строк.

del Общее количество удаленных строк.

имя_базы_данных
Имя базы данных.

Обратите внимание, что элементы ret, fetch, ins, upd и del всегда будут равны 0, если Postgres версии 8.2.
или ниже, поскольку эта статистика не была доступна в этих версиях.

Если указан аргумент dbname, возвращаются семь дополнительных элементов:

idxscan
Общее количество сканирований пользовательского индекса.

idxtupread
Общее количество возвращенных записей указателя пользователя.

idxtupfetch
Общее количество строк, извлеченных при простом сканировании пользовательского индекса.

idxblksread
Общее количество прочитанных блоков диска для всех пользовательских индексов.

idxblkshit
Общее количество попаданий в буфер для всех пользовательских индексов.

секскан
Общее количество последовательных сканирований всех пользовательских таблиц.

seqtupread
Общее количество кортежей, возвращенных из всех пользовательских таблиц.

Пример 1. Получите статистику для базы данных с именем "products" на хосте "willow":

check_postgres_dbstats --dbhost ива --dbname продукты

Возвращаемый результат будет таким (все в одной строке, без упаковки):

бэкенды: 82 коммитов: 58374408 откатов: 1651 чтение: 268435543 попадание: 2920381758 idxscan: 310931294 idxtupread: 2777040927
idxtupfetch: 1840241349 idxblksread: 62860110 idxblkshit: 1107812216 seqscan: 5085305 seqtupread: 5370500520
ret: 0 выборка: 0 ins: 0 upd: 0 del: 0 dbname: willow

отключенные_триггеры
("символическая ссылка: check_postgres_disabled_triggers") Проверяет количество отключенных триггеров.
внутри базы данных. В --предупреждение и - критический options - количество таких триггеров
найдено, и оба по умолчанию равны "1", так как при нормальном использовании отключение триггеров является опасным
мероприятие. Если проверяемая база данных 8.3 или выше, проверка выполняется на количество
триггеры, которые находятся в «отключенном» состоянии (в отличие от «всегда» или «реплики»). В
вывод покажет имя таблицы и имя триггера для каждого отключенного
вызывать.

Пример 1. Убедитесь, что нет отключенных триггеров.

check_postgres_disabled_triggers

Для вывода MRTG возвращает количество отключенных триггеров в первой строке.

дисковое пространство
("символическая ссылка: check_postgres_disk_space") Проверяет доступное физическое дисковое пространство, используемое
Postgres. Это действие требует наличия исполняемого файла "/ bin / df"доступен для отчета
на размерах дисков, и его также нужно запускать от имени суперпользователя, чтобы он мог проверять
каталог_данных настройка внутри Postgres. В --предупреждение и - критический даны варианты
либо в размерах, либо в процентах, либо в том и другом. При использовании размеров стандартными типами единиц являются:
разрешено: байты, килобайты, гигабайты, мегабайты, гигабайты, терабайты или эксабайты. Каждый
может быть сокращен только до первой буквы; Отсутствие единиц указывает на «байты». В
значения по умолчанию - «90%» и «95%».

Эта команда проверяет следующие параметры, чтобы определить все различные физические диски.
используется Postgres.

каталог_данных - Диск, на котором находится основной каталог данных.

журнал каталог - Диск, на котором находятся файлы журнала.

WAL файл каталог - Диск, на котором находятся журналы упреждающей записи (например, pg_xlog с символической ссылкой)

табличные - Каждое табличное пространство на отдельном диске.

Вывод показывает общий размер, используемый и доступный на каждом диске, а также
процентное соотношение, отсортированное в порядке убывания использованного процента. Каждый элемент выше отображается в файл
система: они могут быть включены или исключены. См. Раздел «ОСНОВНАЯ ФИЛЬТРАЦИЯ» для получения дополнительной информации.
Детали.

Пример 1. Убедитесь, что файловая система не превышает 90% для базы данных на порту 5432.

check_postgres_disk_space --port = 5432 --warning = '90% '--critical = '90%'

Пример 2: Убедитесь, что все файловые системы, начинающиеся с / dev / sda, меньше 10 ГБ и
11 ГБ (предупреждение и критическое)

check_postgres_disk_space --port = 5432 --warning = '10 ГБ '--critical = '11 ГБ' --include = "~ ^ / dev / sda"

Пример 4. Убедитесь, что файловая система не превышает 50%. и имеет более 15 ГБ

check_postgres_disk_space --critical = '50% и 15 ГБ '

Пример 5: выдает предупреждение, если какая-либо файловая система заполнена более чем на 70% or имеет более 1T

check_postgres_disk_space --warning = '1Т или 75'

Для вывода MRTG возвращает размер файловой системы в байтах в первой строке, а
имя файловой системы в четвертой строке.

fsm_pages
("символическая ссылка: check_postgres_fsm_pages") Проверяет, насколько близко кластер находится к Postgres
max_fsm_pages параметр. Это действие будет работать только для баз данных версии 8.2 или выше, и оно
требуется модуль contrib pg_freespacemap быть установлен. В --предупреждение и - критический
параметры должны быть выражены в процентах. Количество используемых страниц в карте свободного пространства.
определяется путем просмотра в представлении pg_freespacemap_relations и выполнения формулы
на основе формулы, используемой для вывода слотов страниц карты свободного пространства в подробном вакууме
команда. Значения по умолчанию: 85% за предупреждение и 95% для критических.

Пример 1: выдает предупреждение, когда наш кластер использовал 76% свободного места в страницах,
с установленной pg_freespacemap в базе данных Роберт

check_postgres_fsm_pages --dbname = robert --warning = "76%"

Хотя вам нужно передать имя базы данных, в которой установлен pg_freespacemap, вы
необходимо выполнить эту проверку только один раз для каждого кластера. Кроме того, для проверки этой информации требуется
получение специальных блокировок на карте свободного пространства, поэтому рекомендуется не запускать этот
проверять с короткими интервалами.

Для вывода MRTG возвращает процент карты свободного пространства в первой строке и число
страниц, используемых в настоящее время во второй строке.

fsm_relations
("символическая ссылка: check_postgres_fsm_relations") Проверяет, насколько близок кластер к Postgres
max_fsm_relations параметр. Это действие будет работать только для баз данных версии 8.2 или выше, и
требуется модуль contrib pg_freespacemap быть установлен. В --предупреждение и - критический
параметры должны быть выражены в процентах. Количество используемых отношений в свободном-
space-map определяется просмотром в представлении pg_freespacemap_relations. По умолчанию
значения 85% за предупреждение и 95% для критических.

Пример 1: выдает предупреждение, когда наш кластер использовал 80% отношений свободного пространства,
с установленной pg_freespacemap в базе данных dylan

check_postgres_fsm_relations --dbname = dylan --warning = "75%"

Хотя вам нужно передать имя базы данных, в которой установлен pg_freespacemap, вы
необходимо выполнить эту проверку только один раз для каждого кластера. Кроме того, для проверки этой информации требуется
получение специальных блокировок на карте свободного пространства, поэтому рекомендуется не запускать этот
проверять с короткими интервалами.

Для вывода MRTG возвращает процент свободного пространства-карты в первой строке, количество
отношения, которые в настоящее время используются во второй строке.

Hitratio
("символическая ссылка: check_postgres_hitratio") Проверяет коэффициент попадания для всех баз данных и жалуется
когда они слишком низкие. Нет необходимости запускать эту команду более одного раза для каждой базы данных.
кластер. Базы данных можно фильтровать с помощью --включают и --исключать параметры. Увидеть
Подробнее в разделе «ОСНОВНАЯ ФИЛЬТРАЦИЯ». Их также может отфильтровать владелец
база данных с --includeuser и --excludeuser параметры. См. «ФИЛЬТРАЦИЯ ПО ИМЕНИ ПОЛЬЗОВАТЕЛЯ»
раздел для более подробной информации.

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

Пример: Предупреждать, если для какой-либо базы данных на хосте flagg значение Hitratio менее 90%, и критично, если
менее 80%.

check_postgres_hitratio --host = flagg --warning = '90% '--critical = '80%'

Для вывода MRTG возвращает процент базы данных с наименьшим коэффициентом попадания на
в первой строке и имя базы данных в четвертой строке.

hot_standby_delay
("символическая ссылка: check_hot_standby_delay") Проверяет задержку потоковой репликации путем вычисления
дельта между текущей позицией xlog главного сервера и местом воспроизведения
раб подключен к нему. Подчиненный сервер должен находиться в режиме горячего ожидания (например, только для чтения),
поэтому минимальная версия для использования этого действия - Postgres 9.0. В --предупреждение и
- критический Опции - это разница между местоположениями xlog. Поскольку эти значения байтовые
смещения в WAL, они должны соответствовать ожидаемому объему транзакции вашего приложения
для предотвращения ложных срабатываний или негативов.

Первые параметры «--dbname», «--host», «--port» и т. Д. Считаются главными; в
второй принадлежит рабу.

Значения байтов должны основываться на объеме транзакций, необходимых для потоковой передачи.
отключение репликации от мастера из-за слишком большой задержки, определяемой Postgres
переменная конфигурации wal_keep_segments. Для единиц времени допустимыми являются секунды,
"минуты", "часы" или "дни". Каждый может быть написан в единственном числе или сокращен до
первое письмо. При указании обоих в форме 'байт и время', оба условия должны быть
верно для достижения порога.

Вы должны предоставить информацию о том, как получить доступ к базам данных, указав через запятую
list к параметрам --dbhost и --dbport, например, "--dbport = 5432,5543". Если не указано,
действие не удается.

Пример 1. Предупреждение о том, что база данных с локальной репликой на порту 5433 отстает при любом воспроизведении xlog
вообще

check_hot_standby_delay --dbport = 5432,5433 --warning = '1'

Пример 2: Дайте критическую оценку, если последняя полученная реплика 1 транзакция превышает 10
минут назад

check_hot_standby_delay --dbhost = master, replica1 --critical = '10 мин '

Пример 3: Разрешить реплике 1 отставать на 1 сегмент WAL, если мастер на мгновение видит
больше активности, чем может обработать соединение с потоковой репликацией, или на 10 минут позже,
если мастер видит очень мало активности и не обрабатывает транзакции, но не
оба, что указывало бы на длительную проблему с соединением репликации.

check_hot_standby_delay --dbhost = master, replica1 --warning = '1048576 и 2 мин' --critical = '16777216 и 10 мин'

index_size
размер_таблицы
Relationship_size
(символические ссылки: «check_postgres_index_size», «check_postgres_table_size» и
"check_postgres_relation_size") Действия размер_таблицы и index_size просто
вариации Relationship_size действие, которое проверяет отношение, которое тоже выросло
большой. Отношения (другими словами, таблицы и индексы) можно фильтровать с помощью --включают
и --исключать параметры. См. Раздел «ОСНОВНАЯ ФИЛЬТРАЦИЯ» для получения более подробной информации. Отношения могут
также могут быть отфильтрованы пользователем, которому они принадлежат, с помощью --includeuser и --excludeuser
параметры. См. Раздел «ФИЛЬТРАЦИЯ ПО ИМЕНИ ПОЛЬЗОВАТЕЛЯ» для получения более подробной информации.

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

Если же линия индикатора --showperf опция включена, Найти отношения с их размерами.
Чтобы этого не произошло, рекомендуется установить --perflimit вариант, который вызовет
запрос для выполнения "ORDER BY size DESC LIMIT (perflimit)".

Пример 1. Дайте критическую оценку, если размер какой-либо таблицы на хосте превышает 600 МБ.

check_postgres_table_size --critical = '600 МБ' --warning = '600 МБ' --host = burrick

Пример 2: Предупредить, если размер таблицы продуктов превышает 4 ГБ, и указать критическое значение 4.5 ГБ.

check_postgres_table_size --host = burrick --warning = '4 ГБ' --critical = '4.5 ГБ' --include = products

Пример 3: Предупредить, если какой-либо индекс, не принадлежащий postgres, превышает 500 МБ.

check_postgres_index_size --port = 5432 --excludeuser = postgres -w 500MB -c 600MB

Для вывода MRTG возвращает размер в байтах наибольшего отношения и имя
база данных и отношение как четвертая строка.

последний_анализ
последний_вакуум
последний_автоанализ
Last_autovacuum
(символические ссылки: "check_postgres_last_analyze", "check_postgres_last_vacuum",
"check_postgres_last_autoanalyze" и "check_postgres_last_autovacuum") Проверяет, как долго
это было с момента последнего запуска вакуума (или анализа) для каждой таблицы в одной или нескольких базах данных.
Для использования этих действий требуется, чтобы целевая база данных была версии 8.3 или выше или
версия 8.2 и переменная конфигурации stats_row_level был включен. Таблицы
можно отфильтровать с помощью --включают и --исключать параметры. См. «ОСНОВНАЯ ФИЛЬТРАЦИЯ»
раздел для более подробной информации. Таблицы также могут быть отфильтрованы по владельцу с помощью
--includeuser и --excludeuser параметры. См. Раздел «ФИЛЬТРАЦИЯ ПО ИМЕНИ ПОЛЬЗОВАТЕЛЯ» для получения дополнительной информации.
Детали.

Единицы для --предупреждение и - критический указаны как раз. Допустимые единицы - секунды,
минуты, часы и дни; все можно сократить до первой буквы. Если нет единиц
учитывая, предполагается, что "секунды". Значения по умолчанию - «1 день» и «2 дня». Пожалуйста, обрати внимание
что бывают случаи, когда это поле не заполняется автоматически. Если уверен
столы создают проблемы, убедитесь, что в них есть мертвые строки, которые нужно очистить, или просто
исключить их из теста.

Схема с именем 'information_schema' исключена из этого теста, так как единственные таблицы, которые она
содержит небольшие по размеру и не меняются.

Обратите внимание, что версии, отличные от «авто», также будут проверять автоматические версии. В других
слова, использование last_vacuum сообщит о последнем вакууме, был ли это нормальный вакуум,
или один запускаемый демоном автоочистки.

Пример 1: предупредить, если какой-либо стол не пылесосился в течение 3 дней, и дать критическое значение
неделя, для хозяйской полыни

check_postgres_last_vacuum --host = полынь --warning = '3d' --critical = '7d'

Пример 2: То же, что и выше, но пропускать таблицы, принадлежащие пользователям "eve" или "mallory".

check_postgres_last_vacuum --host = полынь --warning = '3d' --critical = '7d' --excludeusers = eve, mallory

Для вывода MRTG возвращает (в первой строке) НАИМЕНЕЕ количество времени в секундах с момента
стол был последний раз вакуумирован или проанализирован. Четвертая строка возвращает имя базы данных и
название таблицы.

слушатель
("символическая ссылка: check_postgres_listener") Подтвердите, что кто-то слушает один или несколько
определенные строки (с использованием системы LISTEN / NOTIFY), просмотрев таблицу pg_listener.
Требуется только одно предупреждение или критическое значение. Формат представляет собой простую строку, представляющую
Цель LISTEN или символ тильды, за которым следует строка для проверки регулярного выражения.
Обратите внимание, что эта проверка не будет работать в версиях Postgres 9.0 или выше.

Пример 1. Предупредить, если никто не слушает строку bucardo_mcp_ping на портах.
5555 и 5556

check_postgres_listener --port = 5555,5556 --warning = bucardo_mcp_ping

Пример 2: Дайте критическую оценку, если нет активных запросов LISTEN, соответствующих 'grimm' на
база данных oskar

check_postgres_listener --db oskar --critical = ~ гримм

Для вывода MRTG возвращает 1 или 0 в первом случае, что указывает на успех или неудачу. Имя
уведомления должны быть предоставлены через --мртг опцию.

замки
("символическая ссылка: check_postgres_locks") Проверьте общее количество блокировок на одном или нескольких
базы данных. Нет необходимости запускать это более одного раза для каждого кластера базы данных. Базы данных могут
фильтроваться с --включают и --исключать параметры. См. Раздел «ОСНОВНАЯ ФИЛЬТРАЦИЯ».
Больше подробностей.

Ассоциация --предупреждение и - критический параметры можно указать в виде простых чисел, которые представляют
общее количество замков или их можно разбить по типу замков. Допустимые имена блокировок
являются 'total', 'wait' или имя типа блокировки, используемого Postgres. Эти имена
нечувствительны к регистру и не нуждаются в блокировке на конце, поэтому эксклюзив будет соответствовать
«ExclusiveLock». Формат: имя = число, с разными элементами, разделенными двоеточиями или
точка с запятой (или любой другой символ).

Пример 1: Предупредить, если количество блокировок 100 или больше, и критическое, если 200 или больше, на
хозяин Гарретт

check_postgres_locks --host = garrett --warning = 100 --critical = 200

Пример 2: На хосте artemus предупредить, если существует 200 или более блокировок, и дать критическое значение, если
всего существует более 250 блокировок, или если существует более 20 эксклюзивных блокировок, или если более 5 подключений
ждут блокировки.

check_postgres_locks --host = artemus --warning = 200 --critical = "всего = 250: ожидание = 5: эксклюзив = 20"

Для вывода MRTG возвращает количество блокировок в первой строке и имя
база данных на четвертой строке.

журнальный файл
("символическая ссылка: check_postgres_logfile") Гарантирует, что файл журнала находится в ожидаемом месте
и выполняется вход в систему. Это действие вызывает команду, которая выдает ошибку на каждом
база данных, которую он проверяет, и гарантирует, что сообщение появится в журналах. Он сканирует
различные настройки log_ * внутри Postgres, чтобы выяснить, где должны быть журналы. если ты
используют системный журнал, он выполняет грубое (но не надежное) сканирование /etc/syslog.conf.
В качестве альтернативы вы можете указать имя файла журнала с --лог-файл вариант. Это
особенно полезно, если журналы имеют настраиваемую схему ротации, управляемую внешней программой.
Ассоциация --лог-файл опция поддерживает следующие escape-символы: «% Y% m% d% H», что
представляют текущий год, месяц, число и час соответственно. Ошибка всегда
сообщается как критическое, если опция предупреждения не была передана как ненулевое значение.
Помимо этого конкретного использования, параметры "--warning" и "--critical" должны не be
используемый.

Пример 1. На порту 5432 убедитесь, что файл журнала записывается в файл.
/home/грег/pg8.2.log

check_postgres_logfile --port = 5432 --logfile = / home / greg / pg8.2.log

Пример 2: То же, что и выше, но вызывает предупреждение, а не критическое

check_postgres_logfile --port = 5432 --logfile = / home / greg / pg8.2.log -w 1

Для вывода MRTG возвращает 1 или 0 в первой строке, что указывает на успех или неудачу. В
В случае сбоя четвертая строка предоставит более подробную информацию о возникшем сбое.

новая_версия_bc
("символическая ссылка: check_postgres_new_version_bc") Проверяет, установлена ​​ли более новая версия Bucardo
программа доступна. Текущая версия получается с помощью команды bucardo_ctl --version.
Если доступно крупное обновление, возвращается предупреждение. Если обновление ревизии
в наличии, возвращается критическое. (Букардо - господин рабу, господин господин
система репликации для Postgres: см. http://bucardo.org для дополнительной информации). Смотрите также
информация о параметре "--get_method".

новая_версия_бокс
("символическая ссылка: check_postgres_new_version_box") Проверяет наличие более новой версии boxinfo
программа доступна. Текущую версию можно получить, запустив boxinfo.pl --version.
Если доступно крупное обновление, возвращается предупреждение. Если обновление ревизии
в наличии, возвращается критическое. (boxinfo - это программа для сбора важных
информацию с сервера и перевод ее в формат HTML: см.
http://bucardo.org/wiki/boxinfo для дополнительной информации). Также информацию о
Параметр "--get_method".

новая_версия_cp
("символическая ссылка: check_postgres_new_version_cp") Проверяет наличие более новой версии этой программы
(check_postgres) доступен, взяв версию из небольшого текстового файла на главном
страница домашней страницы проекта. Возвращает предупреждение, если возвращенная версия не
соответствовать тому, который вы используете. Рекомендуемый интервал проверки - один раз в день. Также
информация о параметре "--get_method".

новая_версия_pg
("символическая ссылка: check_postgres_new_version_pg") Проверяет, существует ли более новая версия Postgres
для каждой подключенной базы данных. Обратите внимание, что это проверяет только версию, например, переход от
С 8.3.6 по 8.3.7. Ревизии всегда на 100% бинарно совместимы и не требуют дампа и
восстановить для обновления. Внесены исправления для устранения ошибок, поэтому выполняйте обновление как можно скорее.
всегда рекомендуется. Возвращает предупреждение, если у вас нет последней версии. это
Рекомендуется проводить эту проверку не реже одного раза в день. Также информацию о
Параметр "--get_method".

новая_версия_tnm
("символическая ссылка: check_postgres_new_version_tnm") Проверяет наличие более новой версии tail_n_mail
программа доступна. Текущая версия получается с помощью команды «tail_n_mail --version».
Если доступно крупное обновление, возвращается предупреждение. Если обновление ревизии
в наличии, возвращается критическое. (tail_n_mail - это инструмент мониторинга журналов, который может отправлять
отправлять сообщения, когда в ваших журналах Postgres появляются интересные события. Видеть:
http://bucardo.org/wiki/Tail_n_mail для дополнительной информации). Также информацию о
параметр "--get_method".

pgb_pool_cl_active
pgb_pool_cl_waiting
pgb_pool_sv_active
pgb_pool_sv_idle
pgb_pool_sv_used
pgb_pool_sv_tested
pgb_pool_sv_логин
pgb_pool_maxwait
(символические ссылки: "check_postgres_pgb_pool_cl_active", "check_postgres_pgb_pool_cl_waiting",
"check_postgres_pgb_pool_sv_active", "check_postgres_pgb_pool_sv_idle",
"check_postgres_pgb_pool_sv_used", "check_postgres_pgb_pool_sv_tested",
"check_postgres_pgb_pool_sv_login" и "check_postgres_pgb_pool_maxwait")

Исследует статистику пула pgbouncer. Каждый пул имеет набор «клиентских» подключений,
относится к подключениям от внешних клиентов, и «серверные» подключения, ссылаясь на
подключения к самому PostgreSQL. Соответствующие действия check_postgres имеют префикс cl_.
и "sv_" соответственно. Активные клиентские соединения - это те соединения, которые в настоящее время связаны
при активном подключении к серверу. Клиентские соединения также могут быть "ожидающими", что означает, что они
еще не выделено подключение к серверу. Подключения к серверу являются «активными» (связаны
клиенту), «бездействует» (ожидание соединения с клиентом), «используется» (просто
отсоединен от клиента и еще не возвращен в пул ожидания), «протестирован» (в настоящее время
проверено) и "логин" (в процессе авторизации). Значение maxwait показывает, сколько времени в
секунд ожидало самое старое ожидающее клиентское соединение.

pgbouncer_backends
("символическая ссылка: check_postgres_pgbouncer_backends") Проверяет текущее количество подключений
для одной или нескольких баз данных через pgbouncer и, при желании, сравнивает его с максимальным
разрешено, что определяется переменной конфигурации pgbouncer max_client_conn,
--предупреждение и - критический варианты могут принимать одну из трех форм. Во-первых, простое число может
быть задано, что представляет количество соединений, при которых будет выдано предупреждение.
Этот выбор не использует max_connections параметр. Во-вторых, процент доступных
связи могут быть предоставлены. В-третьих, можно указать отрицательное число, которое представляет
количество подключений осталось до max_connections достигается. Значения по умолчанию для
--предупреждение и - критический равны «90%» и «95%». Вы также можете фильтровать базы данных, используя
домен --включают и --исключать параметры. См. Раздел «ОСНОВНАЯ ФИЛЬТРАЦИЯ» для получения более подробной информации.

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

Пример 1: выдает предупреждение, когда количество подключений на хосте quirm достигает 120, а
критично, если он достигает 150.

check_postgres_pgbouncer_backends --host = quirm --warning = 120 --critical = 150 -p 6432 -u pgbouncer

Пример 2: Дайте критическое значение, когда мы достигнем 75% нашей настройки max_connections на хостах
ланкр или ланкр2.

check_postgres_pgbouncer_backends --warning = '75% '--critical = '75%' --host = lancre, lancre2 -p 6432 -u pgbouncer

Пример 3: выдавать предупреждение, когда на хосте осталось только 10 дополнительных разъемов для подключения
плазмида, и критическая, когда осталось только 5.

check_postgres_pgbouncer_backends --warning = -10 --critical = -5 --host = плазмида -p 6432 -u pgbouncer

Для вывода MRTG количество подключений указывается в первой строке, а в четвертой.
строка дает имя базы данных плюс текущий max_client_conn. Если более одного
база данных была запрошена, выводится тот, у которого наибольшее количество подключений.

pgbouncer_checksum
("символическая ссылка: check_postgres_pgbouncer_checksum") Проверяет, что все настройки pgBouncer
так же, как в прошлый раз. Это делается путем создания контрольной суммы отсортированного списка.
установки имен и их значений. Обратите внимание, что вы не должны указывать имя базы данных, это
автоматически по умолчанию будет pgbouncer. Либо --предупреждение или - критический вариант
следует давать, но не то и другое одновременно. Значение каждого из них - это контрольная сумма, 32 символа.
шестнадцатеричное значение. Вы можете запустить со специальной опцией "--critical = 0", чтобы узнать
существующая контрольная сумма.

Для этого действия требуется модуль Digest :: MD5.

Пример 1: Найдите начальную контрольную сумму для конфигурации pgbouncer на порту 6432, используя
пользователь по умолчанию (обычно postgres)

check_postgres_pgbouncer_checksum --port = 6432 --critical = 0

Пример 2: Убедитесь, что никакие настройки не изменились, и в этом случае предупредите, используя контрольную сумму из
выше.

check_postgres_pgbouncer_checksum --port=6432 --warning=cd2f3b5e129dc2b4f5c0f6d8d2e64231

Для вывода MRTG возвращает 1 или 0, что указывает на успешное или несоответствие контрольной суммы.
Контрольная сумма должна быть указана в качестве аргумента "--mrtg". Четвертая строка всегда дает
текущая контрольная сумма.

pgagent_jobs
("символическая ссылка: check_postgres_pgagent_jobs") Проверяет, что все задания pgAgent, у которых есть
выполнены в предыдущем интервале времени. Это делается путем проверки
любые шаги с ненулевым результатом.

В качестве времени можно указать "--warning" или "--critical", или и то, и другое, и задания будут
проверен на наличие отказов за указанные промежутки времени до текущего времени. Действительный
единицы - секунды, минуты, часы и дни; все можно сократить до первой буквы.
Если единицы не указаны, подразумеваются секунды.

Пример 1: Дайте критическую оценку, если какие-либо задания, выполненные в последний день, потерпели неудачу.

check_postgres_pgagent_jobs --critical = 1d

Пример 2: выдавать предупреждение, если какое-либо задание, выполненное за последнюю неделю, не удалось.

check_postgres_pgagent_jobs --warning = 7d

Пример 3: укажите критическое значение для заданий, которые не удалось выполнить за последние 2 часа, и предупреждение для
вакансии, которые не удалось выполнить за последние 4 часа:

check_postgres_pgagent_jobs --critical = 2h --warning = 4h

подготовленный_txns
("символическая ссылка: check_postgres_prepared_txns") Проверьте возраст всех существующих подготовленных
сделки. Обратите внимание, что большинство людей НЕ будут использовать подготовленные транзакции, поскольку они являются частью
состоит из двух частей и сложен в обслуживании. Их также не следует путать с
ПОДГОТОВЛЕННЫЕ ЗАЯВЛЕНИЯ, о которых большинство людей думают, когда слышат о подготовке. В
значение по умолчанию для предупреждения составляет 1 секунду, чтобы обнаружить любое использование подготовленных транзакций, которые
это, вероятно, ошибка в большинстве систем. Предупреждение и критическое - это количество секунд
подготовленная транзакция была открыта до выдачи предупреждения.

Пример 1: Предупредить об обнаружении любых подготовленных транзакций:

check_postgres_prepared_txns -w 0

Пример 2: Дайте критическую оценку, если какая-либо подготовленная транзакция была открыта дольше 10
секунд, но подождите до 360 секунд для базы данных shrike:

check_postgres_prepared_txns --critical = 10 --exclude = сорокопут
check_postgres_prepared_txns --critical = 360 --include = сорокопут

Для вывода MRTG возвращает количество секунд, в течение которых была открыта самая старая транзакция, как
первая строка, и какая база данных была получена в качестве последней строки.

query_runtime
("символическая ссылка: check_postgres_query_runtime") Проверяет, сколько времени требуется для выполнения конкретного запроса,
выполнив "EXPLAIN ANALYZE" против него. В --предупреждение и - критический варианты
максимальное количество времени, которое должен занять запрос. Допустимые единицы - секунды, минуты и часы;
any можно сократить до первой буквы. Если единицы не указаны, подразумеваются секунды.
Должны быть даны как предупреждение, так и критический вариант. Имя представления или функции
для запуска необходимо передать в --имя_запроса вариант. Он должен состоять из одного слова
(или schema.word) с необязательными скобками в конце.

Пример 1. Дайте критическую оценку, если функция с именем "speedtest" не запускается в течение 10 секунд или
Меньше.

check_postgres_query_runtime --queryname = 'speedtest ()' --critical = 10 --warning = 10

Для вывода MRTG указывает время в секундах для выполнения запроса в первой строке.
В четвертой строке перечислена база данных.

время_запроса
("символическая ссылка: check_postgres_query_time") Проверяет длину выполняемых запросов на одном или нескольких
базы данных. Нет необходимости запускать это более одного раза в одном кластере базы данных. Примечание
что это уже исключает запросы, которые "простаивают в транзакции". Базы данных могут быть
фильтруется с помощью --включают и --исключать параметры. См. Раздел «ОСНОВНАЯ ФИЛЬТРАЦИЯ».
Больше подробностей. Вы также можете отфильтровать пользователя, выполняющего запрос, с помощью --includeuser
и --excludeuser параметры. См. Раздел «ФИЛЬТРАЦИЯ ПО ИМЕНИ ПОЛЬЗОВАТЕЛЯ» для получения более подробной информации.

Значения для --предупреждение и - критический параметры - количество времени, по умолчанию - 2
минут и 5 минут соответственно. Допустимые единицы: секунды, минуты, часы или
"дни". Каждый может быть написан в единственном числе или сокращен до первой буквы. Если нет единиц
даны, предполагается, что единицей измерения являются секунды.

Для этого действия требуется Postgres 8.1 или выше.

Пример 1: выдает предупреждение, если какой-либо запрос выполняется дольше 3 минут, и
критично, если дольше 5 минут.

check_postgres_query_time --port = 5432 --warning = '3 минуты' --critical = '5 минут'

Пример 2: Используя значения по умолчанию (2 и 5 минут), проверьте все базы данных, кроме тех.
начиная с "шаблона".

check_postgres_query_time --port = 5432 --exclude = ~ ^ шаблон

Пример 3: Предупреждать, если у пользователя 'don' запрос выполняется более 20 секунд.

check_postgres_query_time --port = 5432 --includeuser = don --warning = 20 с

Для вывода MRTG возвращает длину в секундах самого длительного выполняющегося запроса на первом
линия. В четвертой строке указано имя базы данных.

копировать_строку
("символическая ссылка: check_postgres_replicate_row") Проверяет, работает ли репликация главный-подчиненный
одному или нескольким рабам.

Первые параметры «--dbname», «--host», «--port» и т. Д. Считаются главными;
последующее использование - рабы. Ценности или --предупреждение и - критический варианты
единиц времени, и должен быть указан хотя бы один (без значений по умолчанию). Допустимые единицы - секунды,
"минуты", "часы" или "дни". Каждый может быть написан в единственном числе или сокращен до
первое письмо. Если единицы не указаны, предполагается, что это секунды.

Эта проверка обновляет одну строку на главном сервере, а затем измеряет, сколько времени требуется, чтобы
применительно к рабам. Для этого вам нужно выбрать таблицу, которая реплицируется, затем
найти строку, которая может быть изменена и не будет изменена никаким другим процессом. А
конкретный столбец этой строки будет изменен с одного значения на другое. Все это кормят
к параметру "repinfo" и должен содержать следующие параметры, разделенные запятыми:
имя таблицы, первичный ключ, идентификатор ключа, столбец, первое значение, второе значение.

Пример 1: Slony реплицирует таблицу с именем «orders» с хоста «alpha» на хост «beta»,
в базе данных «Продажи». Первичный ключ таблицы называется id, и мы собираемся
проверьте строку с идентификатором 3 (который является историческим и никогда не менялся). Есть столбец
с именем 'salesrep', которое мы собираемся переключить со значения 'slon' на 'nols', чтобы проверить
репликация. Мы хотим выдать предупреждение, если репликация не произойдет в течение 10
секунд.

check_postgres_replicate_row --host = alpha --dbname = sales --host = beta
--dbname = sales --warning = 10 --repinfo = orders, id, 3, salesrep, slon, nols

Пример 2: Bucardo реплицирует таблицу с именем «квитанция» с хоста «зеленый» на хосты.
«красный», «синий» и «желтый». База данных для обеих сторон является «общедоступной». Подчиненные базы данных
работают на порту 5455. Первичный ключ называется "Receiver_id", строка, которую мы хотим использовать
имеет значение 9, а столбец, который мы хотим изменить для теста, называется «зона». Хорошо
переключаться между «севером» и «югом» для значения этого столбца и бросать критический, если
изменение происходит не на всех трех ведомых устройствах в течение 5 секунд.

check_postgres_replicate_row --host = зеленый --port = 5455 --host = красный, синий, желтый
--critical = 5 --repinfo = квитанция, квитанция_ид, 9, зона, север, юг

Для вывода MRTG возвращает в первой строке время в секундах, необходимое для репликации.
Конец. Максимальное время установлено на 4 минуты 30 секунд: если репликация не проводилась
место за это время выдается ошибка.

та же_схема
("символическая ссылка: check_postgres_same_schema") Проверяет идентичность двух или более баз данных.
насколько их схема (но не данные внутри). Это особенно удобно для изготовления
убедитесь, что ваши ведомые устройства не были изменены или повреждены каким-либо образом при использовании ведущего для ведомого
репликация. В отличие от большинства других действий, у этого нет никаких предупреждений или критических критериев -
базы данных либо синхронизированы, либо нет. Если они разные, подробный список
различия представлены.

Вы можете исключить или отфильтровать определенные различия. Для этого нужно добавить
строки к параметру "--filter". Чтобы исключить тип объекта, используйте «noname», где «name»
это тип объекта, например, «носхема». Чтобы исключить объекты определенного типа по
регулярное выражение напротив их имени, используйте "noname = regex". См. Примеры ниже для
лучшее понимание.

Типы объектов, которые можно фильтровать, включают:

пользователь
схема
ТАБЛИЦЫ
view
индекс
последовательность
ограничение
вызвать
функция

Параметр фильтра "noposition" предотвращает проверку положения столбцов в
таблице.

Параметр фильтра «nofuncbody» предотвращает сравнение тел всех функций.

Параметр фильтра «noperm» предотвращает сравнение прав доступа к объектам.

Чтобы предоставить вторую базу данных, просто добавьте различия к первой, вызвав
соответствующий аргумент подключения. Например, для сравнения баз данных на хостах альфа и
браво, используйте "--dbhost = alpha, bravo". Также см. Примеры ниже.

Если указан только один хост, предполагается, что мы составляем «основанный на времени» отчет. В
при первом запуске моментальный снимок всех элементов в базе данных сохраняется на локальном
файл. При повторном запуске этот снимок считывается и становится «базой данных №2».
по сравнению с текущей базой данных.

Чтобы заменить старый сохраненный файл новой версией, используйте аргумент --replace.

Чтобы разрешить создание снимков в различные моменты времени, вы можете использовать аргумент «--suffix», чтобы сделать
имена файлов уникальны для каждого запуска. См. Примеры ниже.

Пример 1. Убедитесь, что две базы данных на узлах звездой и строкой совпадают:

check_postgres_same_schema --dbhost = звезда, линия

Пример 2. То же, что и раньше, но исключите все триггеры, в названии которых есть слово «slony».

check_postgres_same_schema --dbhost = star, line --filter = "notrigger = slony"

Пример 3. То же, что и раньше, но исключить все индексы.

check_postgres_same_schema --dbhost = star, line --filter = "notrigger = slony noindexes"

Пример 4: Проверить различия для базы данных "боевой крейсер" на разных портах

check_postgres_same_schema --dbname = Battlestar --dbport = 5432,5544

Пример 5. Создание файла моментального снимка за день и за неделю.

check_postgres_same_schema --dbname = cylon --suffix = daily
check_postgres_same_schema --dbname = cylon --suffix = еженедельно

Пример 6. Выполните историческое сравнение, а затем замените файл.

check_postgres_same_schema --dbname = cylon --suffix = daily --replace

последовательность
("символическая ссылка: check_postgres_sequence") Проверяет, сколько места осталось для всех последовательностей в
база данных. Это измеряется как процент от общего числа возможных значений, которые были использованы.
для каждой последовательности. В --предупреждение и - критический варианты должны быть выражены как
проценты. Значения по умолчанию: 85% за предупреждение и 95% для критических. Вы можете
используйте --include и --exclude, чтобы контролировать, какие последовательности нужно проверять. Обратите внимание, что это
чек учитывает необычные минимальное значение и увеличить by значения, но не заботится, если
Последовательность установлена ​​на цикл или нет.

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

Выходные данные для MRTG возвращают наивысший процент по всем последовательностям в первой строке,
и название каждой последовательности с этим процентом в четвертой строке, разделенные знаком "|"
(вертикальная черта), если имеется более одной последовательности в этом процентном соотношении.

Пример 1: Предупредить, если какая-либо последовательность приближается к 95%.

check_postgres_sequence --dbport = 5432 --warning = 95%

Пример 2: Убедитесь, что последовательность с именем «orders_id_seq» заполнена не более чем наполовину.

check_postgres_sequence --dbport = 5432 --critical = 50% --include = orders_id_seq

settings_checksum
("символическая ссылка: check_postgres_settings_checksum") Проверяет, что все настройки Postgres
так же, как в прошлый раз. Это делается путем создания контрольной суммы отсортированного списка.
установки имен и их значений. Обратите внимание, что разные пользователи в одной базе данных могут иметь
разные контрольные суммы из-за использования ALTER USER и из-за того, что суперпользователи видят больше
настройки, чем у обычных пользователей. Либо --предупреждение или - критический вариант должен быть
дано, но не то и другое одновременно. Значение каждого из них - это контрольная сумма в шестнадцатеричном формате из 32 символов.
ценить. Вы можете запустить со специальной опцией «--critical = 0», чтобы узнать существующий
контрольная сумма.

Для этого действия требуется модуль Digest :: MD5.

Пример 1: Найдите начальную контрольную сумму для базы данных на порту 5555, используя пользователя по умолчанию
(обычно postgres)

check_postgres_settings_checksum --port = 5555 --critical = 0

Пример 2: Убедитесь, что никакие настройки не изменились, и в этом случае предупредите, используя контрольную сумму из
выше.

check_postgres_settings_checksum --port=5555 --warning=cd2f3b5e129dc2b4f5c0f6d8d2e64231

Для вывода MRTG возвращает 1 или 0, что указывает на успешное или несоответствие контрольной суммы.
Контрольная сумма должна быть указана в качестве аргумента "--mrtg". Четвертая строка всегда дает
текущая контрольная сумма.

slony_status
("символическая ссылка: check_postgres_slony_status") Проверяет статус кластера Slony с помощью
глядя на результаты просмотра sl_status Slony. Возвращается как количество
секунды «времени запаздывания». В --предупреждение и - критический варианты должны быть выражены в виде раз.
Значения по умолчанию: 60 секунды за предупреждение и 300 секунды для критических.

Необязательный аргумент --схема указал схему, по которой установлен Slony. Если оно
не указан, схема будет определяться автоматически при каждом запуске этой проверки.

Пример 1. Предупредить, если какой-либо Slony отстает более чем на 20 секунд.

check_postgres_slony_status --предупреждение 20

Пример 2: Дайте критическую оценку, если Slony, установленный по схеме "_slony", превышает 10
минут с запаздыванием

check_postgres_slony_status --schema = _slony --critical = 600

временная синхронизация
("символическая ссылка: check_postgres_timesync") Сравнивает локальное системное время с сообщенным временем
одной или несколькими базами данных. В --предупреждение и - критический варианты представляют собой количество
секунд между двумя системами до выдачи предупреждения. Если ни один из них не указан,
используются значения по умолчанию: «2» и «5». Значение предупреждения не может быть больше, чем
критическое значение. Из-за неточного характера этого теста значения «0» или «1» не учитываются.
рекомендуется.

Возвращенная строка показывает разницу во времени, а также время на каждой написанной стороне.
из.

Пример 1: Убедитесь, что базы данных на хостах ankh, morpork и klatch не превышают 3
в секундах от местного времени:

check_postgres_timesync --host = ankh, morpork, klatch --critical = 3

Для вывода MRTG возвращает в первой строке количество секунд разницы между
местное время и время базы данных. Четвертая строка возвращает имя базы данных.

txn_idle
("символическая ссылка: check_postgres_txn_idle") Проверяет количество и продолжительность "простоя в
транзакции "запросы к одной или нескольким базам данных. Нет необходимости запускать это более одного раза
в том же кластере базы данных. Базы данных можно фильтровать с помощью --включают и
--исключать параметры. См. Раздел «ОСНОВНАЯ ФИЛЬТРАЦИЯ» ниже для получения более подробной информации.

Ассоциация --предупреждение и - критический параметры представлены в виде единиц времени, целых чисел со знаком или
целые числа для единиц времени, и оба должны быть предоставлены (нет значений по умолчанию). Действительные единицы
- секунды, минуты, часы или дни. Каждый может быть написан в единственном числе или сокращенно.
до первой буквы. Если единицы не указаны и числа беззнаковые, единицы измерения
считаются секундами.

Для этого действия требуется Postgres 8.3 или выше.

Пример 1: выдавать предупреждение, если какое-либо соединение неактивно в транзакции более 15
секунды:

check_postgres_txn_idle --port = 5432 --warning = '15 секунд '

Пример 2: предупреждать о 50 или более транзакциях.

check_postgres_txn_idle --port = 5432 --warning = '+ 50'

Пример 3: Дайте критическую оценку, если 5 или более соединений простаивали в транзакции для большего количества
более 10 секунд:

check_postgres_txn_idle --port = 5432 --critical = '5 в течение 10 секунд'

Для вывода MRTG возвращает время в секундах, в котором была проведена самая длинная простаивающая транзакция.
Бег. Четвертая строка возвращает имя базы данных и другую информацию о
самая длинная сделка.

txn_time
("символическая ссылка: check_postgres_txn_time") Проверяет длину открытых транзакций для одной или нескольких
базы данных. Нет необходимости запускать эту команду более одного раза для каждого кластера базы данных.
Базы данных можно фильтровать с помощью --включают и --исключать параметры. См. «ОСНОВНОЙ
ФИЛЬТРАЦИЯ ". Владельца транзакции также можно отфильтровать по
использование --includeuser и --excludeuser параметры. См. Раздел «ФИЛЬТРАЦИЯ ПО ИМЕНИ ПОЛЬЗОВАТЕЛЯ».
Больше подробностей.

Ценности или --предупреждение и - критический параметры являются единицами времени и должны быть предоставлены
(по умолчанию нет). Допустимые единицы: секунды, минуты, часы или дни. Каждый может быть
пишется в единственном числе или сокращается до первой буквы. Если единицы не указаны,
единицы считаются секундами.

Для этого действия требуется Postgres 8.3 или выше.

Пример 1: Дайте критическую оценку, если какая-либо транзакция была открыта более 10 минут:

check_postgres_txn_time --port = 5432 --critical = '10 минут '

Пример 1. Предупреждать, если у пользователя «склад» транзакция открыта более 30 секунд.

check_postgres_txn_time --port-5432 --warning = 30s --includeuser = склад

Для вывода MRTG возвращает максимальное время в секундах, в течение которого транзакция была открыта на
первая строка. В четвертой строке указано имя базы данных.

txn_wraparound
("символическая ссылка: check_postgres_txn_wraparound") Проверяет, насколько близко транзакция завершена.
или больше баз данных. В --предупреждение и - критический варианты указывают количество
выполненных транзакций и должно быть положительным целым числом. Если ни один из вариантов не указан,
используются значения по умолчанию 1.3 и 1.4 миллиарда. Больше нет необходимости запускать эту команду
более одного раза на кластер базы данных. Для более подробного обсуждения того, что это за число
представляет и что с этим делать, посетите страницу
<http://www.postgresql.org/docs/current/static/routine-vacuuming.html# ВАКУУМ-ДЛЯ ОБЕРТЫВАНИЯ>

Предупреждающие и критические значения могут иметь подчеркивание в цифрах для удобочитаемости, поскольку Perl
делает.

Пример 1. Проверьте значения по умолчанию для базы данных localhost

check_postgres_txn_wraparound --host = localhost

Пример 2: проверьте порт 6000 и дайте критическое значение при достижении 1.7 миллиарда транзакций:

check_postgres_txn_wraparound --port=6000 --critical=1_700_000_000

Для вывода MRTG возвращает наибольшее количество транзакций для всех баз данных в первой строке,
а строка 4 указывает, какая это база данных.

версия
("символическая ссылка: check_postgres_version") Проверяет, что требуемая версия Postgres
Бег. В --предупреждение и - критический параметры (требуется только один) должны иметь формат
XY or XYZ в котором X это основной номер версии, Y - это дополнительный номер версии, и Z is
доработка.

Пример 1: вывести предупреждение, если база данных на порту 5678 не является версией 8.4.10:

check_postgres_version --port = 5678 -w = 8.4.10

Пример 2: Выдайте предупреждение, если какая-либо база данных по узлам долины, зерна или солнечного света отличается от 8.3:

check_postgres_version -H долина, зерно, солнце --critical = 8.3

Для вывода MRTG в первой строке отображается 1 или 0, указывающее на успех или неудачу. В
четвертая строка указывает текущую версию. Версия должна быть указана через "--mrtg".
опцию.

wal_files
("символическая ссылка: check_postgres_wal_files") Проверяет, сколько файлов WAL существует в pg_xlog
каталог, который находится вне вашего каталог_данных, иногда как символическая ссылка на другой
физический диск по соображениям производительности. Это действие должно быть запущено от имени суперпользователя, чтобы
получить доступ к содержимому pg_xlog каталог. Минимальная версия для использования этого действия:
Postgres 8.1. В --предупреждение и - критический параметры - это просто количество файлов в
pg_xlog каталог. Какое число для этого параметра будет варьироваться, но общая рекомендация заключается в том, чтобы поставить
число немного выше, чем обычно, для раннего выявления проблем.

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

Пример 1. Убедитесь, что количество файлов WAL не превышает 20 на хосте "pluto".

check_postgres_wal_files --host = плутон --critical = 20

Для вывода MRTG сообщает количество файлов WAL в строке 1.

перестроить_символы
перестроить_symlinks_force
Это действие не требует других аргументов и не подключается ни к каким базам данных, а просто
создает символические ссылки в текущем каталоге для каждого действия в форме
check_postgres_. Если файл уже существует, он не будет перезаписан. Если
действие rebuild_symlinks_force, тогда символические ссылки будут перезаписаны. Опция
--symlinks - это более короткий способ сказать --action = rebuild_symlinks

BASIC ФИЛЬТРАЦИЯ


Варианты --включают и --исключать можно комбинировать, чтобы ограничить проверяемые элементы,
в зависимости от действия. Имя базы данных можно отфильтровать при использовании следующих
действия: backends, database_size, locks, query_time, txn_idle и txn_time. Имя
отношение может быть отфильтровано при использовании следующих действий: раздувание, index_size,
table_size, Relations_size, last_vacuum, last_autovacuum, last_analyze и
last_autoanalyze. Имя параметра можно отфильтровать с помощью параметра settings_checksum.
действие. Имя файловой системы можно отфильтровать при использовании действия disk_space.

Если задана только опция включения, то будут проверяться ТОЛЬКО совпадающие записи.
Однако, если заданы как exclude, так и include, сначала выполняется исключение, а включение
после, чтобы восстановить вещи, которые могли быть исключены. Оба --включают и --исключать может
задаваться несколько раз и / или в виде списков, разделенных запятыми. Ведущая тильда будет соответствовать
следующее слово как регулярное выражение.

Чтобы соответствовать схеме, завершите поисковый запрос одной точкой. Можно использовать ведущие тильды
для схем также.

Будьте осторожны при использовании фильтрации: например, правило включения на серверных ВМ может
сообщать об отсутствии проблем не только потому, что в соответствующей базе данных не было серверных модулей, но и потому, что вы
неправильно написано имя базы данных!

Примеры:

Проверяет только элементы с именем pg_class:

--include = pg_class

Проверяет только элементы, содержащие буквы "pg_":

--include = ~ pg_

Проверяйте только элементы, начинающиеся с 'pg_':

--include = ~ ^ pg_

Исключите элемент под названием "тест":

--exclude = тест

Исключить все предметы, содержащие буквы test:

--exclude = ~ тест

Исключить все элементы из схемы pg_catalog:

--exclude = 'pg_catalog.'

Исключить все предметы, содержащие буквы «туз», но разрешить предмет «вбрасывание»:

--exclude = ~ ace --include = вбрасывание

Исключить все элементы, которые начинаются с букв "pg_" и содержат буквы "slon", или
которые называются sql_settings или green. Конкретно проверяйте предметы с буквами
'prod' в их именах и всегда проверяйте элемент с именем 'pg_relname':

--exclude = ~ ^ pg_, ~ slon, sql_settings --exclude = green --include = ~ prod, pg_relname

USER ИМЯ ФИЛЬТРАЦИЯ


Варианты --includeuser и --excludeuser можно использовать в некоторых действиях только для проверки
объекты базы данных, принадлежащие (или не принадлежащие) одному или нескольким пользователям. An --includeuser вариант
всегда превосходит --excludeuser вариант. Вы можете назначить каждый вариант более одного раза на
несколько пользователей, или вы можете указать список через запятую. Действия, которые в настоящее время используются
эти варианты:

размер_базы_данных
последний_анализ
последний_автоанализ
последний_вакуум
Last_autovacuum
время_запроса
Relationship_size
txn_time

Примеры:

Проверяйте только элементы, принадлежащие пользователю с именем greg:

--includeuser = greg

Проверяйте только предметы, принадлежащие Watson или Crick:

--includeuser = Ватсон, крик

Проверяйте только предметы, принадлежащие Крику, Франклину, Уотсону или Уилкинсу:

--includeuser = watson --includeuser = franklin --includeuser = crick, Wilkins

Отметьте все элементы, кроме принадлежащих пользователю scott:

--excludeuser = Скотт

ИСПЫТАНИЕ РЕЖИМ


Чтобы помочь в настройке, эту программу можно запустить в «тестовом режиме», указав
--тестовое задание вариант. Это позволит выполнить некоторые базовые тесты, чтобы убедиться, что базы данных могут быть
контактировал, и что определенные предварительные требования к действию выполнены, например, является ли пользователь
суперпользователь, если версия Postgres достаточно новая и включен stats_row_level.

Используйте check_postgres_bloatp онлайн с помощью сервисов onworks.net


Бесплатные серверы и рабочие станции

Скачать приложения для Windows и Linux

  • 1
    АстрОрзПлеер
    АстрОрзПлеер
    AstrOrz Player — бесплатный медиаплеер.
    программное обеспечение, частично основанное на WMP и VLC.
    плеер выполнен в минималистическом стиле, с
    более десяти цветов темы, а также может
    б ...
    Скачать AstrOrzPlayer
  • 2
    Movistartv
    Movistartv
    Kodi Movistar+ TV является дополнением для XBMC/
    Коди, разрешенный к использованию
    decodificador de los servicios IPTV де
    Movistar интегрирован в один город
    медиацентры ма...
    Скачать киностартв
  • 3
    Code :: Blocks
    Code :: Blocks
    Code::Blocks — это бесплатная программа с открытым исходным кодом,
    кроссплатформенная C, C++ и Fortran IDE
    построен для удовлетворения самых взыскательных потребностей
    своих пользователей. Он разработан, чтобы быть очень
    расширенный ...
    Код загрузки::Блоки
  • 4
    среди
    среди
    Среда или расширенный интерфейс Minecraft
    и отслеживание данных / структуры - это инструмент для
    отобразить обзор Minecraft
    мир, фактически не создавая его. Это
    жестяная банка ...
    Скачать Среди
  • 5
    МСИС2
    МСИС2
    MSYS2 - это набор инструментов и
    библиотеки, предоставляющие вам
    удобная среда для строительства,
    установка и запуск родной Windows
    программное обеспечение. Это кон ...
    Скачать MSYS2
  • 6
    libjpeg-турбо
    libjpeg-турбо
    libjpeg-turbo - это кодек изображений JPEG
    который использует инструкции SIMD (MMX, SSE2,
    NEON, AltiVec) для ускорения базового уровня
    Сжатие и распаковка JPEG на
    x86, x8 ...
    Скачать libjpeg-turbo
  • Больше »

Команды Linux

  • 1
    abi-трекер
    abi-трекер
    abi-tracker — визуализировать изменения ABI
    временная шкала библиотеки программного обеспечения C/C++.
    ОПИСАНИЕ: НАЗВАНИЕ: ABI Tracker
    (abi-tracker) Визуализация изменений ABI
    график C/C+...
    Запустить аби-трекер
  • 2
    Abicheck
    Abicheck
    abicheck — проверка бинарников приложения
    для вызовов частных или развивающихся символов
    в библиотеках и для статической компоновки
    некоторые системные библиотеки. ...
    Запустить абичек
  • 3
    курьермлм
    курьермлм
    couriermlm - Список рассылки курьера
    менеджер ...
    Запустить курьермлм
  • 4
    курьер
    курьер
    couriertcpd - почтовый сервер Courier
    Демон TCP-сервера...
    Запустите couriertcpd
  • 5
    гбклатекс
    гбклатекс
    bg5latex — использовать LaTeX непосредственно на Big5
    файл encodedtex bg5pdflatex - Использование
    pdfLaTeX непосредственно на закодированном тексте Big5
    file bg5+latex — использовать LaTeX непосредственно на
    Большой5+...
    Запустить gbklatex
  • 6
    gbkpdfлатекс
    gbkpdfлатекс
    bg5latex — использовать LaTeX непосредственно на Big5
    файл encodedtex bg5pdflatex - Использование
    pdfLaTeX непосредственно на закодированном тексте Big5
    file bg5+latex — использовать LaTeX непосредственно на
    Большой5+...
    Запустите gbkpdflatex
  • Больше »

Ad