āļ āļēāļĐāļēāļ­āļąāļ‡āļāļĪāļĐāļ āļēāļĐāļēāļāļĢāļąāđˆāļ‡āđ€āļĻāļŠāļŠāđ€āļ›āļ™

Ad


āđ„āļ­āļ„āļ­āļ™ Fav āļ‚āļ­āļ‡ OnWorks

check_postgres_connectionp - āļ­āļ­āļ™āđ„āļĨāļ™āđŒāđƒāļ™ Cloud

āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰ check_postgres_connectionp āđƒāļ™āļœāļđāđ‰āđƒāļŦāđ‰āļšāļĢāļīāļāļēāļĢāđ‚āļŪāļŠāļ•āđŒāļŸāļĢāļĩāļ‚āļ­āļ‡ OnWorks āļœāđˆāļēāļ™ Ubuntu Online, Fedora Online, āđ‚āļ›āļĢāđāļāļĢāļĄāļˆāļģāļĨāļ­āļ‡āļ­āļ­āļ™āđ„āļĨāļ™āđŒāļ‚āļ­āļ‡ Windows āļŦāļĢāļ·āļ­āđ‚āļ›āļĢāđāļāļĢāļĄāļˆāļģāļĨāļ­āļ‡āļ­āļ­āļ™āđ„āļĨāļ™āđŒāļ‚āļ­āļ‡ MAC OS

āļ™āļĩāđˆāļ„āļ·āļ­āļ„āļģāļŠāļąāđˆāļ‡ check_postgres_connectionp āļ—āļĩāđˆāļŠāļēāļĄāļēāļĢāļ–āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āđƒāļ™āļœāļđāđ‰āđƒāļŦāđ‰āļšāļĢāļīāļāļēāļĢāđ‚āļŪāļŠāļ•āđŒāļŸāļĢāļĩāļ‚āļ­āļ‡ OnWorks āđ‚āļ”āļĒāđƒāļŠāđ‰āļŦāļ™āļķāđˆāļ‡āđƒāļ™āđ€āļ§āļīāļĢāđŒāļāļŠāđ€āļ•āļŠāļąāļ™āļ­āļ­āļ™āđ„āļĨāļ™āđŒāļŸāļĢāļĩāļ‚āļ­āļ‡āđ€āļĢāļē āđ€āļŠāđˆāļ™ Ubuntu Online, Fedora Online, āđ‚āļ›āļĢāđāļāļĢāļĄāļˆāļģāļĨāļ­āļ‡āļ­āļ­āļ™āđ„āļĨāļ™āđŒāļ‚āļ­āļ‡ Windows āļŦāļĢāļ·āļ­āđ‚āļ›āļĢāđāļāļĢāļĄāļˆāļģāļĨāļ­āļ‡āļ­āļ­āļ™āđ„āļĨāļ™āđŒāļ‚āļ­āļ‡ MAC OS

āđ‚āļ„āļĢāļ‡āļāļēāļĢ:

āļŠāļ·āđˆāļ­


check_postgres - āļŠāļ„āļĢāļīāļ›āļ•āđŒāļ•āļĢāļ§āļˆāļŠāļ­āļš Postgres āļŠāļģāļŦāļĢāļąāļš Nagios, MRTG, Cacti āđāļĨāļ°āļ­āļ·āđˆāļ™āđ†

āđ€āļ­āļāļŠāļēāļĢāļ™āļĩāđ‰āļ­āļ˜āļīāļšāļēāļĒ check_postgres āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™ 2.22.0

āđ€āļĢāļ·āđˆāļ­āļ‡āļĒāđˆāļ­


## āļŠāļĢāđ‰āļēāļ‡āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāđ‚āļĒāļ‡āļ—āļąāđ‰āļ‡āļŦāļĄāļ”
check_postgres --symlinks

## āļ•āļĢāļ§āļˆāļŠāļ­āļšāļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ Postgres 'āļžāļĨāļđāđ‚āļ•':
check_postgres --action=connection --db=āļžāļĨāļđāđ‚āļ•

## āļŠāļīāđˆāļ‡āđ€āļ”āļĩāļĒāļ§āļāļąāļ™ āđāļ•āđˆāđƒāļŠāđ‰ symlink
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=simple

## āļĄāļĩāļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđāļĨāļ°āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ­āļ·āđˆāļ™ āđ† āļ­āļĩāļāļĄāļēāļāļĄāļēāļĒ āđ‚āļ›āļĢāļ”āļ­āđˆāļēāļ™āļ•āđˆāļ­āđ„āļ›

āļŠāļēāļĄāļēāļĢāļ–āļ•āļīāļ”āļ•āļēāļĄāļ‚āđˆāļēāļ§āļŠāļēāļĢāđāļĨāļ°āđ€āļ­āļāļŠāļēāļĢāļĨāđˆāļēāļŠāļļāļ”āđ„āļ”āđ‰āļ—āļĩāđˆ:
http://bucardo.org/check_postgres/

DESCRIPTION


check_postgres āđ€āļ›āđ‡āļ™āļŠāļ„āļĢāļīāļ›āļ•āđŒ Perl āļ—āļĩāđˆāļĢāļąāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ•āđˆāļēāļ‡āđ† āļĄāļēāļāļĄāļēāļĒāđ€āļ—āļĩāļĒāļšāļāļąāļšāļ­āļĒāđˆāļēāļ‡āļ™āđ‰āļ­āļĒāļŦāļ™āļķāđˆāļ‡āļĢāļēāļĒāļāļēāļĢ
āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ Postgres āļĄāļąāļ™āđƒāļŠāđ‰āđ‚āļ›āļĢāđāļāļĢāļĄ psql āđ€āļžāļ·āđˆāļ­āļĢāļ§āļšāļĢāļ§āļĄāļ‚āđ‰āļ­āļĄāļđāļĨāđāļĨāļ°āļŠāđˆāļ‡āļ­āļ­āļ
āļœāļĨāļĨāļąāļžāļ˜āđŒāđƒāļ™āļĢāļđāļ›āđāļšāļšāđƒāļ”āļĢāļđāļ›āđāļšāļšāļŦāļ™āļķāđˆāļ‡āļˆāļēāļāļŠāļēāļĄāļĢāļđāļ›āđāļšāļš: Nagios, MRTG āļŦāļĢāļ·āļ­āđāļšāļšāļ˜āļĢāļĢāļĄāļ”āļē

āđ€āļ­āļēāļ—āđŒāļžāļļāļ• āđ‚āļŦāļĄāļ”
āļœāļĨāļĨāļąāļžāļ˜āđŒāļŠāļēāļĄāļēāļĢāļ–āđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡āđ„āļ”āđ‰āđ‚āļ”āļĒāđƒāļŠāđ‰āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ "--output" āđ€āļ­āļēāļ•āđŒāļžāļļāļ•āđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ„āļ·āļ­ nagios
āđāļĄāđ‰āļ§āđˆāļēāļŠāļīāđˆāļ‡āļ™āļĩāđ‰āļŠāļēāļĄāļēāļĢāļ–āđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡āđ„āļ”āđ‰āļ—āļĩāđˆāļ”āđ‰āļēāļ™āļšāļ™āļ‚āļ­āļ‡āļŠāļ„āļĢāļīāļ›āļ•āđŒāļŦāļēāļāļ„āļļāļ“āļ•āđ‰āļ­āļ‡āļāļēāļĢ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ›āļąāļˆāļˆāļļāļšāļąāļ™
āļ—āļēāļ‡āđ€āļĨāļ·āļ­āļāļ„āļ·āļ­ āļ™āļēāļāļīāļ­āļ­āļŠ, MRTGāđāļĨāļ° āļ‡āđˆāļēāļĒ. āđ€āļžāļ·āđˆāļ­āļŦāļĨāļĩāļāđ€āļĨāļĩāđˆāļĒāļ‡āļāļēāļĢāļ›āđ‰āļ­āļ™āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒāđ€āļ­āļēāļ•āđŒāļžāļļāļ•āđāļ•āđˆāļĨāļ°
āđ€āļ§āļĨāļē āļ›āļĢāļ°āđ€āļ āļ—āļ‚āļ­āļ‡āđ€āļ­āļēāļ•āđŒāļžāļļāļ•āļˆāļ°āļ–āļđāļāļ•āļąāđ‰āļ‡āļ„āđˆāļēāđ‚āļ”āļĒāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļīāļŦāļēāļāđ„āļĄāđˆāļĄāļĩāļāļēāļĢāļāļģāļŦāļ™āļ”āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒ --output āđāļĨāļ°āļ–āđ‰āļē
āđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩāļ›āļąāļˆāļˆāļļāļšāļąāļ™āļĄāļĩāļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđ€āļ­āļēāļ•āđŒāļžāļļāļ•āļ­āļĒāđˆāļēāļ‡āđƒāļ”āļ­āļĒāđˆāļēāļ‡āļŦāļ™āļķāđˆāļ‡āđƒāļ™āļŠāļ·āđˆāļ­ āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđ€āļŠāđˆāļ™ āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡ a
āđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩāļŠāļ·āđˆāļ­ mrtg āđāļĨāļ°āđ€āļ•āļīāļĄāļ”āđ‰āļ§āļĒ symlink āļœāđˆāļēāļ™āļ—āļēāļ‡ --symlinks āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒāļˆāļ°
āļ•āļĢāļ§āļˆāļŠāļ­āļšāđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđƒāļ” āđ† āļ—āļĩāđˆāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļˆāļēāļāđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩāļ™āļąāđ‰āļ™āļˆāļ°āļĄāļĩāļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āđ€āļ›āđ‡āļ™āđ€āļ­āļēāļ•āđŒāļžāļļāļ•āļ‚āļ­āļ‡ "mrtg" āđ€āļŠāļĄāļ­
āđ€āļ›āđ‡āļ™āļ—āļēāļ‡āļĨāļąāļ”āļŠāļģāļŦāļĢāļąāļš --output=simple āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļ›āđ‰āļ­āļ™ --simple āļ‹āļķāđˆāļ‡āļˆāļ°āđāļ—āļ™āļ—āļĩāđˆ
āđ€āļ„āļĨāđ‡āļ”āļĨāļąāļšāļāļēāļĢāļ•āļąāđ‰āļ‡āļŠāļ·āđˆāļ­āđ„āļ”āđ€āļĢāļāļ—āļ­āļĢāļĩ

Nagios āđ€āļ­āļēāļ—āđŒāļžāļļāļ•

āļĢāļđāļ›āđāļšāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ•āđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļŠāļģāļŦāļĢāļąāļš Nagios āļ‹āļķāđˆāļ‡āđ€āļ›āđ‡āļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļšāļĢāļĢāļ—āļąāļ”āđ€āļ”āļĩāļĒāļ§āļžāļĢāđ‰āļ­āļĄāļ”āđ‰āļ§āļĒ
āļŠāļĩāđˆāļĢāļŦāļąāļŠāļ—āļēāļ‡āļ­āļ­āļāđ€āļ‰āļžāļēāļ°:

0 (āļ•āļāļĨāļ‡)
1 (āļ„āļģāđ€āļ•āļ·āļ­āļ™)
2 (āļ§āļīāļāļĪāļ•)
3 (āđ„āļĄāđˆāļ—āļĢāļēāļš)

āļšāļĢāļĢāļ—āļąāļ”āļœāļĨāļĨāļąāļžāļ˜āđŒāđ€āļ›āđ‡āļ™āļŦāļ™āļķāđˆāļ‡āđƒāļ™āļ„āļģāļ‚āđ‰āļēāļ‡āļ•āđ‰āļ™ āļ—āļ§āļīāļ āļēāļ„ āđāļĨāļ°āļ„āļģāļ­āļ˜āļīāļšāļēāļĒāļŠāļąāđ‰āļ™ āđ† āļ‚āļ­āļ‡āļ­āļ°āđ„āļĢ
āļ–āļđāļāļ§āļąāļ” āļ‚āđ‰āļ­āļĄāļđāļĨāļŠāļ–āļīāļ•āļīāđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ āļĢāļ§āļĄāļ—āļąāđ‰āļ‡āđ€āļ§āļĨāļēāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļ„āļģāļŠāļąāđˆāļ‡
āđ€āļ­āļēāļ­āļ­āļāđ„āļ”āđ‰āđ€āļŠāđˆāļ™āļāļąāļ™: āļ”āļđāđ€āļ­āļāļŠāļēāļĢāđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļ‚āđ‰āļ­āđ‚āļ•āđ‰āđāļĒāđ‰āļ‡ --āđ‚āļŠāļ§āđŒāđ€āļžāļ­āļĢāđŒāļŸ,
--āđ€āļžāļ­āļĢāđŒāļŸāļĨāļīāļĄāļīāļ•āđāļĨāļ° --āđ€āļ§āļĨāļēāđāļŠāļ”āļ‡.

āļĢāļŸāļĄ āđ€āļ­āļēāļ—āđŒāļžāļļāļ•

āđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļĄāļĩāļŠāļĩāđˆāļšāļĢāļĢāļ—āļąāļ” āđ‚āļ”āļĒāļšāļĢāļĢāļ—āļąāļ”āđāļĢāļāđƒāļŦāđ‰āļŦāļĄāļēāļĒāđ€āļĨāļ‚ . āđ€āļ”āļĩāļĒāļ§āđ€āļŠāļĄāļ­
āļ„āļ§āļēāļĄāļŠāļģāļ„āļąāļ āļŦāļēāļāđ€āļ›āđ‡āļ™āđ„āļ›āđ„āļ”āđ‰ āļ•āļąāļ§āđ€āļĨāļ‚āļ™āļĩāđ‰āđāļ—āļ™āļ„āđˆāļēāļˆāļĢāļīāļ‡ āđ€āļŠāđˆāļ™ āļˆāļģāļ™āļ§āļ™
āđ„āļšāļ•āđŒ āđāļ•āđˆāļ­āļēāļˆāđ€āļ›āđ‡āļ™ 1 āļŦāļĢāļ·āļ­ 0 āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļāļĢāļ°āļ—āļģāļ—āļĩāđˆāļ„āļ·āļ™āļ„āđˆāļēāđ€āļ‰āļžāļēāļ° "āļˆāļĢāļīāļ‡" āļŦāļĢāļ·āļ­ "āđ€āļ—āđ‡āļˆ" āđ€āļŠāđˆāļ™
āđ€āļ›āđ‡āļ™ check_postgres_version āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļ­āļ‡āđ€āļ›āđ‡āļ™āļ„āđˆāļēāļŠāļ–āļēāļ™āļ°āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄāđāļĨāļ°āđƒāļŠāđ‰āļŠāļģāļŦāļĢāļąāļš .āđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™
āļāļēāļĢāļāļĢāļ°āļ—āļģāļšāļēāļ‡āļ­āļĒāđˆāļēāļ‡ āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļēāļĄāļŦāļĄāļēāļĒāļ–āļķāļ‡ "āđ€āļ§āļĨāļēāļ—āļģāļ‡āļēāļ™" āđāļĨāļ°āđ„āļĄāđˆāđ„āļ”āđ‰āđƒāļŠāđ‰ āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆāļ„āļ·āļ­ a
āļ„āļģāļ­āļ˜āļīāļšāļēāļĒāđāļĨāļ°āļĄāļąāļāļˆāļ°āļĢāļ°āļšāļļāļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ āļŠāļ–āļīāļ•āļīāļˆāļēāļāļšāļĢāļĢāļ—āļąāļ”āđāļĢāļ
āļ–āļđāļāļ”āļķāļ‡āļ­āļ­āļāļĄāļēāđāļ•āđˆāļ­āļēāļˆāđāļ•āļāļ•āđˆāļēāļ‡āļāļąāļ™āļ‚āļķāđ‰āļ™āļ­āļĒāļđāđˆāļāļąāļšāļāļēāļĢāļāļĢāļ°āļ—āļģ

āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļšāļēāļ‡āļ­āļĒāđˆāļēāļ‡āļĒāļ­āļĄāļĢāļąāļšāļ•āļąāļ§āđ€āļĨāļ·āļ­āļ --mrtg āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒāđ€āļžāļ·āđˆāļ­āļ„āļ§āļšāļ„āļļāļĄāļœāļĨāļĨāļąāļžāļ˜āđŒāđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ

āļ”āļđāđ€āļ­āļāļŠāļēāļĢāļ›āļĢāļ°āļāļ­āļšāļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđāļ•āđˆāļĨāļ°āļ­āļĒāđˆāļēāļ‡āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļ—āļĩāđˆāđāļ™āđˆāļ™āļ­āļ™āļŠāļģāļŦāļĢāļąāļšāđāļ•āđˆāļĨāļ°āļĢāļēāļĒāļāļēāļĢ

āļ‡āđˆāļēāļĒ āđ€āļ­āļēāļ—āđŒāļžāļļāļ•

āđ€āļ­āļēāļ•āđŒāļžāļļāļ•āļ­āļĒāđˆāļēāļ‡āļ‡āđˆāļēāļĒāđ€āļ›āđ‡āļ™āđ€āļžāļĩāļĒāļ‡āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ—āļĩāđˆāļ–āļđāļāļ•āļąāļ”āļ—āļ­āļ™āļ‚āļ­āļ‡ MRTG āđāļĨāļ°āļŠāđˆāļ‡āļ„āļ·āļ™
āļŦāļĄāļēāļĒāđ€āļĨāļ‚āđāļĢāļāđāļĨāļ°āđ„āļĄāđˆāļĄāļĩāļ­āļ°āđ„āļĢāļ­āļ·āđˆāļ™ āļŠāļīāđˆāļ‡āļ™āļĩāđ‰āļĄāļĩāļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒāļĄāļēāļāđ€āļĄāļ·āđˆāļ­āļ„āļļāļ“āļ•āđ‰āļ­āļ‡āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļŠāļ–āļēāļ™āļ°
āļ‚āļ­āļ‡āļšāļēāļ‡āļŠāļīāđˆāļ‡āļšāļēāļ‡āļ­āļĒāđˆāļēāļ‡āđ‚āļ”āļĒāđ„āļĄāđˆāļ„āļģāļ™āļķāļ‡āļ–āļķāļ‡āđ€āļāļ“āļ‘āđŒāđƒāļ” āđ† āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āđāļ›āļĨāļ‡āđ€āļ­āļēāļ•āđŒāļžāļļāļ•āļ•āļąāļ§āđ€āļĨāļ‚āđ‚āļ”āļĒ
āļ•āđˆāļ­āļ—āđ‰āļēāļĒ KB, MB, GB, TB āļŦāļĢāļ·āļ­ EB āđ„āļ›āļĒāļąāļ‡āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒāđ€āļ­āļēāļ•āđŒāļžāļļāļ• āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđ€āļŠāđˆāļ™

--output=āļ‡āđˆāļēāļĒMB

cacti āđ€āļ­āļēāļ—āđŒāļžāļļāļ•

āđ€āļ­āļēāļ•āđŒāļžāļļāļ• Cacti āļ›āļĢāļ°āļāļ­āļšāļ”āđ‰āļ§āļĒāļĢāļēāļĒāļāļēāļĢāļ­āļĒāđˆāļēāļ‡āļ™āđ‰āļ­āļĒāļŦāļ™āļķāđˆāļ‡āļĢāļēāļĒāļāļēāļĢāđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āđ€āļ”āļĩāļĒāļ§āļāļąāļ™āđ‚āļ”āļĒāđƒāļŠāđ‰āļŠāļ·āđˆāļ­āļ‡āđˆāļēāļĒāđ† a
āđ‚āļ„āļĨāļ­āļ™āđāļĨāđ‰āļ§āļ•āļēāļĄāļ”āđ‰āļ§āļĒāļ•āļąāļ§āđ€āļĨāļ‚ āđƒāļ™āļ‚āļ“āļ°āļ™āļĩāđ‰ āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđ€āļ”āļĩāļĒāļ§āļ—āļĩāđˆāļĄāļĩāđ€āļ­āļēāļ•āđŒāļžāļļāļ• Cacti āļ—āļĩāđˆāļŠāļąāļ”āđ€āļˆāļ™āļ„āļ·āļ­
'dbstats' āđāļĨāļ°āļāļēāļĢāđƒāļŠāđ‰āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ --output āđƒāļ™āļāļĢāļ“āļĩāļ™āļĩāđ‰āđ„āļĄāđˆāļˆāļģāđ€āļ›āđ‡āļ™āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļ Cacti āđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™
āļœāļĨāļĨāļąāļžāļ˜āđŒāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰ āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļāļĢāļ°āļ—āļģāļ­āļ·āđˆāļ™āđ† āļāļēāļĢāđƒāļŠāđ‰ --simple āļāđ‡āđ€āļžāļĩāļĒāļ‡āļžāļ­āļ—āļĩāđˆāļˆāļ°āļ—āļģāđƒāļŦāđ‰ Cacti
āļĄāļĩāļ„āļ§āļēāļĄāļŠāļļāļ‚.

āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­ OPTIONS


āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļĒāļ­āļĄāļĢāļąāļšāļŠāļļāļ”āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļąāđˆāļ§āđ„āļ›

-H āļŠāļ·āđˆāļ­ or --āđ‚āļŪāļŠāļ•āđŒ=āļŠāļ·āđˆāļ­
āđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļāļąāļšāđ‚āļŪāļŠāļ•āđŒāļ—āļĩāđˆāļĢāļ°āļšāļļāđ‚āļ”āļĒ NAME āļŠāļēāļĄāļēāļĢāļ–āđ€āļ›āđ‡āļ™āļĢāļēāļĒāļŠāļ·āđˆāļ­āļ—āļĩāđˆāļ„āļąāđˆāļ™āļ”āđ‰āļ§āļĒāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļŦāļĄāļēāļĒāļˆāļļāļĨāļ āļēāļ„
āļ­āļ™āļļāļāļēāļ•āđƒāļŦāđ‰āđƒāļŠāđ‰āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒāđ‚āļŪāļŠāļ•āđŒāļŦāļĨāļēāļĒāļĢāļēāļĒāļāļēāļĢ āļŦāļēāļāđ„āļĄāđˆāļĄāļĩāđ‚āļŪāļŠāļ•āđŒ āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļˆāļ°āđ€āļ›āđ‡āļ™ "PGHOST"
āļ•āļąāļ§āđāļ›āļĢāļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄāļŦāļĢāļ·āļ­āđ„āļĄāđˆāļĄāļĩāđ‚āļŪāļŠāļ•āđŒāđ€āļĨāļĒ (āļ‹āļķāđˆāļ‡āļšāđˆāļ‡āļŠāļĩāđ‰āļ§āđˆāļēāđƒāļŠāđ‰āļ‹āđ‡āļ­āļāđ€āļāđ‡āļ• Unix āđƒāļ™āđ€āļ„āļĢāļ·āđˆāļ­āļ‡)
āļ„āļļāļ“āļ­āļēāļˆāđƒāļŠāđ‰ "--dbhost"

-p PORT or --port=āļžāļ­āļĢāđŒāļ•
āđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āđ‚āļ”āļĒāđƒāļŠāđ‰āļŦāļĄāļēāļĒāđ€āļĨāļ‚ PORT āļ—āļĩāđˆāļĢāļ°āļšāļļ āļŠāļēāļĄāļēāļĢāļ–āđ€āļ›āđ‡āļ™āļĢāļēāļĒāļāļēāļĢ port . āļ—āļĩāđˆāļ„āļąāđˆāļ™āļ”āđ‰āļ§āļĒāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļŦāļĄāļēāļĒāļˆāļļāļĨāļ āļēāļ„
āļ­āļ™āļļāļāļēāļ•āđƒāļŦāđ‰āđƒāļŠāđ‰āļŦāļĄāļēāļĒāđ€āļĨāļ‚āđāļĨāļ°āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒāļžāļ­āļĢāđŒāļ•āļŦāļĨāļēāļĒāļĢāļēāļĒāļāļēāļĢ āļŦāļēāļāđ„āļĄāđˆāđ„āļ”āđ‰āļĢāļ°āļšāļļāļŦāļĄāļēāļĒāđ€āļĨāļ‚āļžāļ­āļĢāđŒāļ• āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™
āđ„āļ›āļĒāļąāļ‡āļ•āļąāļ§āđāļ›āļĢāļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄ "PGPORT" āļŦāļēāļāđ„āļĄāđˆāđ„āļ”āđ‰āļ•āļąāđ‰āļ‡āļ„āđˆāļēāđ„āļ§āđ‰ āļˆāļ°āļĄāļĩāļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āđ€āļ›āđ‡āļ™ 5432 āļ„āļļāļ“āļ­āļēāļˆ
āļĒāļąāļ‡āđƒāļŠāđ‰ "--dbport"

-āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ āļŠāļ·āđˆāļ­ 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=āļ,āļ‚ --host=āļ„ --āļžāļ­āļĢāđŒāļ•=1234
--āļžāļ­āļĢāđŒāļ•=3344 āļˆāļ°āđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļāļąāļš a-1234, b-1234 āđāļĨāļ° c-3344 āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļšāļ§āđˆāļēāđ€āļĄāļ·āđˆāļ­āļ•āļąāđ‰āļ‡āļ„āđˆāļēāđāļĨāđ‰āļ§ option
āļˆāļ™āļāļ§āđˆāļēāļˆāļ°āļĄāļĩāļāļēāļĢāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡āļ­āļĩāļāļ„āļĢāļąāđ‰āļ‡

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡:

--āđ‚āļŪāļŠāļ•āđŒ=a,b --āļžāļ­āļĢāđŒāļ•=5433 --db=c
āđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļŠāļ­āļ‡āļ„āļĢāļąāđ‰āļ‡āļāļąāļšāļžāļ­āļĢāđŒāļ• 5433 āđ‚āļ”āļĒāđƒāļŠāđ‰āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ c āđ€āļžāļ·āđˆāļ­āđ‚āļŪāļŠāļ•āđŒ a āđāļĨāļ° b: a-5433-c b-5433-c

--āđ‚āļŪāļŠāļ•āđŒ=a,b --āļžāļ­āļĢāđŒāļ•=5433 --db=c,d
āđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļŠāļĩāđˆāļ„āļĢāļąāđ‰āļ‡: a-5433-c a-5433-d b-5433-c b-5433-d

--āđ‚āļŪāļŠāļ•āđŒ=a,b --āđ‚āļŪāļŠāļ•āđŒ=foo --āļžāļ­āļĢāđŒāļ•=1234 --āļžāļ­āļĢāđŒāļ•=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 āđāļ•āđˆāđāļ—āļ™āļ—āļĩāđˆāļžāļ­āļĢāđŒāļ•

āļ­āļ·āđˆāļ™ āđ† OPTIONS


āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ­āļ·āđˆāļ™ āđ† āđ„āļ”āđ‰āđāļāđˆ :

--āļāļēāļĢāļāļĢāļ°āļ—āļģ=āļŠāļ·āđˆāļ­
āļĢāļ°āļšāļļāļ§āđˆāļēāđ€āļĢāļēāļāļģāļĨāļąāļ‡āļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ­āļ°āđ„āļĢāļ­āļĒāļđāđˆ āļˆāļģāđ€āļ›āđ‡āļ™āđ€āļ§āđ‰āļ™āđāļ•āđˆāļˆāļ°āđƒāļŠāđ‰āđ„āļŸāļĨāđŒāļ—āļĩāđˆāļĄāļĩāļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāđ‚āļĒāļ‡āļāļąāļ™ āļ‹āļķāđˆāļ‡
āļāļĢāļ“āļĩāļ—āļĩāđˆāļŠāļ·āđˆāļ­āđ„āļŸāļĨāđŒāļ–āļđāļāđƒāļŠāđ‰āđ€āļžāļ·āđˆāļ­āļ„āđ‰āļ™āļŦāļēāļāļēāļĢāļāļĢāļ°āļ—āļģ

--āļ„āļģāđ€āļ•āļ·āļ­āļ™=VAL or -w VAL
āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ‚āļĩāļ”āļˆāļģāļāļąāļ”āļ—āļĩāđˆāļāļēāļĢāđāļˆāđ‰āļ‡āđ€āļ•āļ·āļ­āļ™āđ€āļĢāļīāđˆāļĄāļ—āļģāļ‡āļēāļ™ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ—āļĩāđˆāļ–āļđāļāļ•āđ‰āļ­āļ‡āļŠāļģāļŦāļĢāļąāļšāļŠāļīāđˆāļ‡āļ™āļĩāđ‰
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ‚āļķāđ‰āļ™āļ­āļĒāļđāđˆāļāļąāļšāļāļēāļĢāļāļĢāļ°āļ—āļģāļ—āļĩāđˆāđƒāļŠāđ‰

--āļŠāļģāļ„āļąāļ = VAL or -c VAL
āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ‚āļĩāļ”āļˆāļģāļāļąāļ”āļ‚āļ­āļ‡āļāļēāļĢāđāļˆāđ‰āļ‡āđ€āļ•āļ·āļ­āļ™āļ—āļĩāđˆāļŠāļģāļ„āļąāļ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ—āļĩāđˆāļ–āļđāļāļ•āđ‰āļ­āļ‡āļŠāļģāļŦāļĢāļąāļšāļŠāļīāđˆāļ‡āļ™āļĩāđ‰
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ‚āļķāđ‰āļ™āļ­āļĒāļđāđˆāļāļąāļšāļāļēāļĢāļāļĢāļ°āļ—āļģāļ—āļĩāđˆāđƒāļŠāđ‰

-t VAL or --āļŦāļĄāļ”āđ€āļ§āļĨāļē=VAL
āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļāļēāļĢāļŦāļĄāļ”āđ€āļ§āļĨāļēāđ€āļ›āđ‡āļ™āļ§āļīāļ™āļēāļ—āļĩāļŦāļĨāļąāļ‡āļˆāļēāļāļ—āļĩāđˆāļŠāļ„āļĢāļīāļ›āļ•āđŒāļˆāļ°āļĒāļāđ€āļĨāļīāļāļŠāļīāđˆāļ‡āļ—āļĩāđˆāļ—āļģāļ­āļĒāļđāđˆāđāļĨāļ°
āļŠāđˆāļ‡āļ„āļ·āļ™āļŠāļ–āļēāļ™āļ° UNKNOWN āļāļēāļĢāļŦāļĄāļ”āđ€āļ§āļĨāļēāđ€āļ›āđ‡āļ™āđ„āļ›āļ•āļēāļĄāļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒ Postgres āđ„āļĄāđˆāđƒāļŠāđˆāļŠāļģāļŦāļĢāļąāļšāļ—āļąāđ‰āļ‡āļŦāļĄāļ”
āļŠāļ„āļĢāļīāļ›āļ•āđŒ āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ„āļ·āļ­ 10; āļŦāļ™āđˆāļ§āļĒāđ€āļ›āđ‡āļ™āļ§āļīāļ™āļēāļ—āļĩāđ€āļŠāļĄāļ­

--āļŠāļĄāļĄāļ•āļīāđ‚āļŦāļĄāļ”āļŠāđāļ•āļ™āļ”āđŒāļšāļēāļĒ
āļŦāļēāļāļĢāļ°āļšāļļāđ„āļ§āđ‰ āļāđˆāļ­āļ™āļ­āļ·āđˆāļ™āđƒāļŦāđ‰āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāļ­āļĒāļđāđˆāđƒāļ™āđ‚āļŦāļĄāļ”āļŠāđāļ•āļ™āļ”āđŒāļšāļēāļĒāļŦāļĢāļ·āļ­āđ„āļĄāđˆ (--datadir
āļˆāļģāđ€āļ›āđ‡āļ™) āļ–āđ‰āļēāđƒāļŠāđˆ āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰āļāļēāļĢāļŠāļ·āļšāļ„āđ‰āļ™ SQL āļˆāļ°āļ–āļđāļāļĨāļ°āđ€āļ§āđ‰āļ™āđāļĨāļ° "Server
āđƒāļ™āđ‚āļŦāļĄāļ”āļŠāđāļ•āļ™āļ”āđŒāļšāļēāļĒ" āļ—āļĩāđˆāļĄāļĩāļŠāļ–āļēāļ™āļ°āļ•āļāļĨāļ‡āļˆāļ°āļ–āļđāļāļŠāđˆāļ‡āļ„āļ·āļ™āđāļ—āļ™

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡:

postgres@db$./check_postgres --action=version --warning=8.1 --datadir /var/lib/postgresql/8.3/main/ --assume-standby-mode
POSTGRES_VERSION āļ•āļāļĨāļ‡: āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāļ­āļĒāļđāđˆāđƒāļ™āđ‚āļŦāļĄāļ”āļŠāđāļ•āļ™āļ”āđŒāļšāļēāļĒ | āđ€āļ§āļĨāļē=0.00

--āļŠāļĄāļĄāļ•āļīāļœāļĨāļīāļ•āļ āļąāļ“āļ‘āđŒ
āļŦāļēāļāļĢāļ°āļšāļļāđ„āļ§āđ‰ āđƒāļŦāđ‰āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāļ—āļģāļ‡āļēāļ™āđƒāļ™āđ‚āļŦāļĄāļ”āđƒāļŠāđ‰āļ‡āļēāļ™āļˆāļĢāļīāļ‡āļŦāļĢāļ·āļ­āđ„āļĄāđˆ (--datadir is required)
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ™āļĩāđ‰āđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡āđ€āļ‰āļžāļēāļ°āļāļąāļš ("symlink: check_postgres_checkpoint")

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡:

postgres@db$./check_postgres --action=āļˆāļļāļ”āļ•āļĢāļ§āļˆāļŠāļ­āļš --datadir /var/lib/postgresql/8.3/main/ --assume-prod
POSTGRES_CHECKPOINT āļ•āļāļĨāļ‡: āļ”āđˆāļēāļ™āļŠāļļāļ”āļ—āđ‰āļēāļĒāļ„āļ·āļ­ 72 āļ§āļīāļ™āļēāļ—āļĩāļ—āļĩāđˆāđāļĨāđ‰āļ§ | āļ­āļēāļĒāļļ=72;;300 āđ‚āļŦāļĄāļ”=āļ­āļēāļˆāļēāļĢāļĒāđŒ

-h or --āļŠāđˆāļ§āļĒāļ”āđ‰āļ§āļĒ
āđāļŠāļ”āļ‡āļŦāļ™āđ‰āļēāļˆāļ­āļ„āļ§āļēāļĄāļŠāđˆāļ§āļĒāđ€āļŦāļĨāļ·āļ­āļžāļĢāđ‰āļ­āļĄāļŠāļĢāļļāļ›āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđāļĨāļ°āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ—āļąāđ‰āļ‡āļŦāļĄāļ”

--āļŠāļēāļĒ
āđāļŠāļ”āļ‡āļ„āļđāđˆāļĄāļ·āļ­āļ—āļąāđ‰āļ‡āļŦāļĄāļ”

-V or --āļĢāļļāđˆāļ™
āđāļŠāļ”āļ‡āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ›āļąāļˆāļˆāļļāļšāļąāļ™

-v or --āļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”
āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļĢāļ°āļ”āļąāļšāļ„āļ§āļēāļĄāļŸāļļāđˆāļĄāđ€āļŸāļ·āļ­āļĒ āļŠāļēāļĄāļēāļĢāļ–āđ€āļĢāļĩāļĒāļāđ„āļ”āđ‰āļĄāļēāļāļāļ§āđˆāļēāļŦāļ™āļķāđˆāļ‡āļ„āļĢāļąāđ‰āļ‡āđ€āļžāļ·āđˆāļ­āđ€āļžāļīāđˆāļĄāļĢāļ°āļ”āļąāļš āļ•āļąāđ‰āļ‡āđ€āļ›āđ‡āļ™
āļŠāļēāļĄāļŦāļĢāļ·āļ­āļŠāļđāļ‡āļāļ§āđˆāļē (āļāļĨāđˆāļēāļ§āļ„āļ·āļ­ āļāļēāļĢāļ­āļ­āļ "-v -v -v") āļˆāļ°āđ€āļ›āļīāļ”āļ‚āđ‰āļ­āļĄāļđāļĨāļāļēāļĢāļ”āļĩāļšāļąāļ
āļŠāļģāļŦāļĢāļąāļšāđ‚āļ›āļĢāđāļāļĢāļĄāļ™āļĩāđ‰āļ‹āļķāđˆāļ‡āļ–āļđāļāļŠāđˆāļ‡āđ„āļ›āļĒāļąāļ‡ stderr

--showperf=VAL
āļāļģāļŦāļ™āļ”āļ§āđˆāļēāđ€āļĢāļēāļŠāđˆāļ‡āļ­āļ­āļāļ‚āđ‰āļ­āļĄāļđāļĨāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄāđƒāļ™āļĢāļđāļ›āđāļšāļš Nagios āļĄāļēāļ•āļĢāļāļēāļ™āļŦāļĢāļ·āļ­āđ„āļĄāđˆ (āļ—āļĩāđˆ end
āļ‚āļ­āļ‡ string āļŦāļĨāļąāļ‡āļŠāļąāļāļĨāļąāļāļĐāļ“āđŒāđ„āļžāļžāđŒ āđ‚āļ”āļĒāđƒāļŠāđ‰ name=value) VAL āļ„āļ§āļĢāđ€āļ›āđ‡āļ™ 0 āļŦāļĢāļ·āļ­ 1 āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™
āļ„āļ·āļ­ 1 āļˆāļ°āļĄāļĩāļœāļĨāđ€āļ‰āļžāļēāļ°āđ€āļĄāļ·āđˆāļ­āđƒāļŠāđ‰āđ‚āļŦāļĄāļ”āđ€āļ­āļēāļ•āđŒāļžāļļāļ• Nagios

--perflimit=āļ‰āļąāļ™
āļāļģāļŦāļ™āļ”āļ‚āļĩāļ”āļˆāļģāļāļąāļ”āļˆāļģāļ™āļ§āļ™āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāļ™āđˆāļēāļŠāļ™āđƒāļˆāļ—āļĩāđˆāļˆāļ°āļĢāļēāļĒāļ‡āļēāļ™āļāļĨāļąāļšāđ€āļĄāļ·āđˆāļ­āđƒāļŠāđ‰āļ„āļģāļŠāļąāđˆāļ‡
āļ™āļąāļāđāļŠāļ”āļ‡ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļŠāļīāđˆāļ‡āļ™āļĩāđ‰āļĄāļĩāļœāļĨāđ€āļ‰āļžāļēāļ°āļāļąāļšāļāļēāļĢāļāļĢāļ°āļ—āļģāļ—āļĩāđˆāļŠāđˆāļ‡āļāļĨāļąāļšāļˆāļģāļ™āļ§āļ™āļĄāļēāļ
āļĢāļēāļĒāļāļēāļĢāđ€āļŠāđˆāļ™ āļ•āļēāļĢāļēāļ‡_āļ‚āļ™āļēāļ”. āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ„āļ·āļ­ 0 āļŦāļĢāļ·āļ­āđ„āļĄāđˆāļˆāļģāļāļąāļ” āļĢāļ°āļ§āļąāļ‡āđ€āļĄāļ·āđˆāļ­āđƒāļŠāđ‰āļŠāļīāđˆāļ‡āļ™āļĩāđ‰
āļāļąāļš --āļĢāļ§āļĄ or --āđ„āļĄāđˆāļĢāļ§āļĄ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļ‚āđ‰āļ­āļˆāļģāļāļąāļ”āđ€āļŦāļĨāđˆāļēāļ™āļąāđ‰āļ™āđ€āļŠāļĢāđ‡āļˆāļŠāļīāđ‰āļ™āđāļĨāđ‰āļ§ āļŦāļĨāļąāļ‡āļˆāļēāļ
āļĄāļĩāļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļāļēāļĢāļŠāļ·āļšāļ„āđ‰āļ™āļ‚āđ‰āļ­āļĄāļđāļĨ āļ”āļąāļ‡āļ™āļąāđ‰āļ™āļ‚āļĩāļ”āļˆāļģāļāļąāļ”āļ‚āļ­āļ‡āļ„āļļāļ“āļ­āļēāļˆāđ„āļĄāđˆāļĢāļ§āļĄāļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāļ„āļļāļ“āļ•āđ‰āļ­āļ‡āļāļēāļĢ āđƒāļŠāđ‰āđ€āļ§āļĨāļēāđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™
āļĄāļĩāļœāļĨāļŦāļēāļāđƒāļŠāđ‰āđ‚āļŦāļĄāļ”āđ€āļ­āļēāļ•āđŒāļžāļļāļ• Nagios

--āđ€āļ§āļĨāļēāļ‰āļēāļĒ=VAL
āļāļģāļŦāļ™āļ”āļ§āđˆāļēāđ€āļ§āļĨāļēāļ—āļĩāđˆāđƒāļŠāđ‰āđƒāļ™āļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āđāļ•āđˆāļĨāļ°āđāļšāļšāļŠāļ­āļšāļ–āļēāļĄāļˆāļ°āđāļŠāļ”āļ‡āđƒāļ™āļœāļĨāļĨāļąāļžāļ˜āđŒāļŦāļĢāļ·āļ­āđ„āļĄāđˆ VAL āļ„āļ§āļĢāđ€āļ›āđ‡āļ™ 0
āļŦāļĢāļ·āļ­ 1. āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ„āļ·āļ­ 1. āđ„āļĄāđˆāļĄāļĩāļœāļĨāđ€āļ§āđ‰āļ™āđāļ•āđˆ āļ™āļąāļāđāļŠāļ”āļ‡ āđ€āļ›āļīāļ”āļ­āļĒāļđāđˆ āļˆāļ°āļĄāļĩāļœāļĨāļ–āđ‰āļēāđƒāļŠāđ‰ .āđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™
āđ‚āļŦāļĄāļ”āđ€āļ­āļēāļ•āđŒāļžāļļāļ• Nagios

--āļ—āļ”āļŠāļ­āļš
āđ€āļ›āļīāļ”āđƒāļŠāđ‰āļ‡āļēāļ™āđ‚āļŦāļĄāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļš āļ”āļđāļŠāđˆāļ§āļ™ "āđ‚āļŦāļĄāļ”āļ—āļ”āļŠāļ­āļš" āļ”āđ‰āļēāļ™āļĨāđˆāļēāļ‡

--PGBINDIR=āđ€āļŠāđ‰āļ™āļ—āļēāļ‡
āļšāļ­āļāļŠāļ„āļĢāļīāļ›āļ•āđŒāļ§āđˆāļēāļˆāļ°āļŦāļēāđ„āļšāļ™āļēāļĢāļĩ psql āđ„āļ”āđ‰āļ—āļĩāđˆāđ„āļŦāļ™ āļĄāļĩāļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒāļ–āđ‰āļēāļ„āļļāļ“āļĄāļĩāļĄāļēāļāļāļ§āđˆāļēāļŦāļ™āļķāđˆāļ‡
āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ‚āļ­āļ‡āđ„āļŸāļĨāđŒāļŠāļąāđˆāļ‡āļāļēāļĢ PostgreSQL āđƒāļ™āļĢāļ°āļšāļšāļ‚āļ­āļ‡āļ„āļļāļ“ āļŦāļĢāļ·āļ­āļŦāļēāļāđ„āļĄāđˆāļĄāļĩāļ­āļĒāļđāđˆāđƒāļ™ your
āđ€āļŠāđ‰āļ™āļ—āļēāļ‡. āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļšāļ§āđˆāļēāļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ™āļĩāđ‰āđ€āļ›āđ‡āļ™āļ•āļąāļ§āļžāļīāļĄāļžāđŒāđƒāļŦāļāđˆāļ—āļąāđ‰āļ‡āļŦāļĄāļ” āđ‚āļ”āļĒāļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ™āļĩāđ‰āļ„āļ·āļ­ āđ„āļĄāđˆ
āļ­āļ™āļļāļāļēāļ•āđƒāļŦāđ‰. āļŦāļēāļāļ•āđ‰āļ­āļ‡āļāļēāļĢāđ€āļ›āļīāļ”āđƒāļŠāđ‰āļ‡āļēāļ™ āļ„āļļāļ“āļ•āđ‰āļ­āļ‡āđ€āļ›āļĨāļĩāđˆāļĒāļ™ $NO_PSQL_OPTION āđƒāļāļĨāđ‰āļāļąāļšāļ”āđ‰āļēāļ™āļšāļ™āļŠāļļāļ”āļ‚āļ­āļ‡āļŠāļ„āļĢāļīāļ›āļ•āđŒ
āđ€āļ›āđ‡āļ™ 0 āļŦāļĨāļĩāļāđ€āļĨāļĩāđˆāļĒāļ‡āļāļēāļĢāđƒāļŠāđ‰āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ™āļĩāđ‰āļ–āđ‰āļēāļ—āļģāđ„āļ”āđ‰ āđāļĨāļ°āđƒāļŠāđ‰āļ•āļąāļ§āđāļ›āļĢāļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄāđāļ—āļ™
āļ„ āļŦāļĢāļ·āļ­āļ•āļąāļ§āđāļ›āļĢ $PGBINDIR āđāļšāļšāļŪāļēāļĢāđŒāļ”āđ‚āļ„āđ‰āļ” āļ‹āļķāđˆāļ‡āļ­āļĒāļđāđˆāđƒāļāļĨāđ‰āļāļąāļšāļ”āđ‰āļēāļ™āļšāļ™āļŠāļļāļ”āļ‚āļ­āļ‡āļŠāļ„āļĢāļīāļ›āļ•āđŒāđ€āļžāļ·āđˆāļ­āļ•āļąāđ‰āļ‡āļ„āđˆāļē
āđ€āļŠāđ‰āļ™āļ—āļēāļ‡āđ„āļ›āļĒāļąāļ‡ PostgreSQL āļ—āļĩāđˆāļˆāļ°āđƒāļŠāđ‰

--PSQL=āđ€āļŠāđ‰āļ™āļ—āļēāļ‡
(āđ€āļĨāļīāļāđƒāļŠāđ‰, āļ™āļĩāđ‰ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ āļ­āļēāļˆ be āļĨāļšāļ­āļ­āļ in a āļ­āļ™āļēāļ„āļ• āļ›āļĨāđˆāļ­āļĒ!) āļšāļ­āļāļŠāļ„āļĢāļīāļ›āļ•āđŒāļ§āđˆāļē
āđ€āļžāļ·āđˆāļ­āļ„āđ‰āļ™āļŦāļēāđ‚āļ›āļĢāđāļāļĢāļĄ psql āļĄāļĩāļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒāļ–āđ‰āļēāļ„āļļāļ“āļĄāļĩ psql . āļĄāļēāļāļāļ§āđˆāļēāļŦāļ™āļķāđˆāļ‡āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™
āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļ‡āļēāļ™āđ„āļ”āđ‰āļšāļ™āļĢāļ°āļšāļšāļ‚āļ­āļ‡āļ„āļļāļ“ āļŦāļĢāļ·āļ­āļŦāļēāļāđ„āļĄāđˆāļĄāļĩāđ‚āļ›āļĢāđāļāļĢāļĄ psql āđƒāļ™āļžāļēāļ˜āļ‚āļ­āļ‡āļ„āļļāļ“ āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļšāļ§āđˆāļēāļŠāļīāđˆāļ‡āļ™āļĩāđ‰
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđ€āļ›āđ‡āļ™āļ•āļąāļ§āļžāļīāļĄāļžāđŒāđƒāļŦāļāđˆāļ—āļąāđ‰āļ‡āļŦāļĄāļ” āđ‚āļ”āļĒāļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ™āļĩāđ‰āļ„āļ·āļ­ āđ„āļĄāđˆ āļ­āļ™āļļāļāļēāļ•āđƒāļŦāđ‰. āļŦāļēāļāļ•āđ‰āļ­āļ‡āļāļēāļĢāđ€āļ›āļīāļ”āđƒāļŠāđ‰āļ‡āļēāļ™ āļ„āļļāļ“
āļ•āđ‰āļ­āļ‡āđ€āļ›āļĨāļĩāđˆāļĒāļ™ $NO_PSQL_OPTION āđƒāļāļĨāđ‰āļāļąāļšāļ”āđ‰āļēāļ™āļšāļ™āļ‚āļ­āļ‡āļŠāļ„āļĢāļīāļ›āļ•āđŒāđ€āļ›āđ‡āļ™ 0 āļŦāļĨāļĩāļāđ€āļĨāļĩāđˆāļĒāļ‡āļāļēāļĢāđƒāļŠāđ‰āļŠāļīāđˆāļ‡āļ™āļĩāđ‰
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ–āđ‰āļēāļ„āļļāļ“āļ—āļģāđ„āļ”āđ‰āđāļĨāļ°āđāļ—āļ™āļ—āļĩāđˆāļ•āļģāđāļŦāļ™āđˆāļ‡ psql āļ‚āļ­āļ‡āļ„āļļāļ“āļ­āļĒāđˆāļēāļ‡āļŦāļ™āļąāļāđƒāļ™āļ•āļąāļ§āđāļ›āļĢ $PSQL
āđƒāļāļĨāđ‰āļŠāđˆāļ§āļ™āļšāļ™āļ‚āļ­āļ‡āļŠāļ„āļĢāļīāļ›āļ•āđŒāļ”āđ‰āļ§āļĒ

--symlinks
āļŠāļĢāđ‰āļēāļ‡āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāđ‚āļĒāļ‡āđ„āļ›āļĒāļąāļ‡āđ‚āļ›āļĢāđāļāļĢāļĄāļŦāļĨāļąāļāļŠāļģāļŦāļĢāļąāļšāđāļ•āđˆāļĨāļ°āļāļēāļĢāļāļĢāļ°āļ—āļģ

--āđ€āļ­āļēāļ—āđŒāļžāļļāļ—=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, āļ”āļķāļ‡āļ‚āđ‰āļ­āļĄāļđāļĨ, āļĄāđ‰āļ§āļ™āļ‡āļ­, āļ„āļĄ, āļĨāļīāļ‡āļ„āđŒ āđ€āļžāļ·āđˆāļ­āļšāļąāļ‡āļ„āļąāļšāđƒāļŦāđ‰āđƒāļŠāđ‰āđ€āļžāļĩāļĒāļ‡āļ­āļąāļ™āđ€āļ”āļĩāļĒāļ§ (āđāļĨāļ°āļĨāļš
āļ„āđˆāļēāđ‚āļŠāļŦāļļāđ‰āļĒāļ‚āļ­āļ‡āļāļēāļĢāļĨāļ­āļ‡āļ­āļĒāđˆāļēāļ‡āļ­āļ·āđˆāļ™āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļˆāļ™āļāļĢāļ°āļ—āļąāđˆāļ‡āļŦāļ™āļķāđˆāļ‡āđƒāļ™āļœāļĨāļ‡āļēāļ™āđ€āļŦāļĨāđˆāļēāļ™āļąāđ‰āļ™) āļ›āđ‰āļ­āļ™āļŠāļ·āđˆāļ­āđƒāļ”āļŠāļ·āđˆāļ­āļŦāļ™āļķāđˆāļ‡āđ€āļ›āđ‡āļ™
āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒāđ€āļžāļ·āđˆāļ­ get_method āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđ€āļŠāđˆāļ™ āļāļĨāđˆāļ­āļ‡ BSD āļ­āļēāļˆāļ›āđ‰āļ­āļ™āļšāļĢāļĢāļ—āļąāļ”āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰āđƒāļ™
āđ„āļŸāļĨāđŒ ".check_postgresrc" āļ‚āļ­āļ‡āļžāļ§āļāđ€āļ‚āļē:

get_method=āļ”āļķāļ‡āļ‚āđ‰āļ­āļĄāļđāļĨ

--āļ āļēāļĐāļē=VAL
āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ āļēāļĐāļēāļ—āļĩāđˆāļˆāļ°āđƒāļŠāđ‰āļŠāļģāļŦāļĢāļąāļšāļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ—āļĩāđˆāļŠāđˆāļ‡āļ­āļ­āļāļ—āļąāđ‰āļ‡āļŦāļĄāļ” āđ‚āļ”āļĒāļ›āļāļ•āļīāļŠāļīāđˆāļ‡āļ™āļĩāđ‰āļˆāļ°āļ–āļđāļāļ•āļĢāļ§āļˆāļžāļšāđ‚āļ”āļĒ
āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ•āļąāļ§āđāļ›āļĢāļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄ LC_ALL, LC_MESSAGES āđāļĨāļ° LANG āđāļ•āđˆāļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ™āļĩāđ‰
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļˆāļ°āđāļ—āļ™āļ—āļĩāđˆāļāļēāļĢāļ•āļĢāļ§āļˆāļˆāļąāļšāļ”āļąāļ‡āļāļĨāđˆāļēāļ§

āļāļēāļĢāļāļĢāļ°āļ—āļģ


āļŠāļ„āļĢāļīāļ›āļ•āđŒāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ­āļĒāđˆāļēāļ‡āļ™āđ‰āļ­āļĒāļŦāļ™āļķāđˆāļ‡āļĢāļēāļĒāļāļēāļĢ āļŠāļēāļĄāļēāļĢāļ–āļ—āļģāđ„āļ”āđ‰āļ”āđ‰āļ§āļĒāđāļŸāļĨāđ‡āļ --action āļŦāļĢāļ·āļ­ by
āđ‚āļ”āļĒāđƒāļŠāđ‰ symlink āđ„āļ›āļĒāļąāļ‡āđ„āļŸāļĨāđŒāļŦāļĨāļąāļāļ—āļĩāđˆāļĄāļĩāļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļĢāļāļĢāļ°āļ—āļģāļ­āļĒāļđāđˆāļ āļēāļĒāđƒāļ™ āļŠāļģāļŦāļĢāļąāļš
āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđ€āļŠāđˆāļ™ āđƒāļ™āļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļāļēāļĢāļāļĢāļ°āļ—āļģ "timesync" āļ„āļļāļ“āļ­āļēāļˆāđƒāļŠāđ‰āļ‚āđ‰āļ­āđƒāļ”āļ‚āđ‰āļ­āļŦāļ™āļķāđˆāļ‡āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰

check_postgres --action=timesync

āļŦāļĢāļ·āļ­āđƒāļŠāđ‰āđ‚āļ›āļĢāđāļāļĢāļĄāļŠāļ·āđˆāļ­:

check_postgres_timesync

symlink āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļˆāļ°āļ–āļđāļāļŠāļĢāđ‰āļēāļ‡āļ‚āļķāđ‰āļ™āļŠāļģāļŦāļĢāļąāļšāļ„āļļāļ“āđƒāļ™āđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩāļ›āļąāļˆāļˆāļļāļšāļąāļ™āļŦāļēāļāđƒāļŠāđ‰āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ --symlinks

perl check_postgres --symlinks

āļŦāļēāļāļŠāļ·āđˆāļ­āđ„āļŸāļĨāđŒāļĄāļĩāļ­āļĒāļđāđˆāđāļĨāđ‰āļ§āļˆāļ°āđ„āļĄāđˆāļ–āļđāļāđ€āļ‚āļĩāļĒāļ™āļ—āļąāļš āļŦāļēāļāđ„āļŸāļĨāđŒāļ™āļąāđ‰āļ™āļĄāļĩāļ­āļĒāļđāđˆāđāļĨāļ°āđ€āļ›āđ‡āļ™
symlink āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļšāļąāļ‡āļ„āļąāļšāđƒāļŦāđ‰āđ€āļ‚āļĩāļĒāļ™āļ—āļąāļšāđ„āļ”āđ‰āđ‚āļ”āļĒāđƒāļŠāđ‰ "--action=build_symlinks_force"

āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļŠāđˆāļ§āļ™āđƒāļŦāļāđˆāđƒāļŠāđ‰ a --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļĢāļ°āļšāļļāļ§āđˆāļēāđ€āļĢāļēāđ€āļ›āļĨāļĩāđˆāļĒāļ™āļˆāļļāļ”āđ„āļŦāļ™
āļˆāļēāļāļ•āļāļĨāļ‡āđ€āļ›āđ‡āļ™āļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ›āļĢāļ°āđ€āļ”āđ‡āļ™āđƒāļ”āļ—āļĩāđˆāđ€āļĢāļēāđ„āļ›āļ—āļĩāđˆ CRITICAL āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļšāļ§āđˆāļēāđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļ§āļīāļāļĪāļ•āļ„āļ·āļ­
āļ•āļĢāļ§āļˆāļŠāļ­āļšāļāđˆāļ­āļ™āđ€āļŠāļĄāļ­ āļāļēāļĢāļ•āļąāđ‰āļ‡āđ€āļ•āļ·āļ­āļ™āđƒāļŦāđ‰āđ€āļ—āđˆāļēāļāļąāļšāļ§āļīāļāļĪāļ•āđ€āļ›āđ‡āļ™āļ§āļīāļ˜āļĩāļ—āļĩāđˆāđ„āļ”āđ‰āļœāļĨ
āļ›āļīāļ”āļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āđƒāļŦāđ‰āļ„āļģāļ§āļīāļˆāļēāļĢāļ“āđŒāđ€āļŠāļĄāļ­

āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ—āļĩāđˆāļĢāļ­āļ‡āļĢāļąāļšāđƒāļ™āļ›āļąāļˆāļˆāļļāļšāļąāļ™āļ„āļ·āļ­:

archive_ready
("symlink: check_postgres_archive_ready") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļˆāļģāļ™āļ§āļ™āđ„āļŸāļĨāđŒ WAL āļ—āļĩāđˆāļĄāļĩāļ™āļēāļĄāļŠāļāļļāļĨ .āļžāļĢāđ‰āļ­āļĄ
āļĄāļĩāļ­āļĒāļđāđˆāđƒāļ™ pg_xlog/archive_status āđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩāļ‹āļķāđˆāļ‡āļžāļšāļˆāļēāļ your data_directory.
āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļ•āđ‰āļ­āļ‡āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āđƒāļ™āļāļēāļ™āļ° superuser āđ€āļžāļ·āđˆāļ­āđ€āļ‚āđ‰āļēāļ–āļķāļ‡āđ€āļ™āļ·āđ‰āļ­āļŦāļēāļ‚āļ­āļ‡
pg_xlog/archive_status āđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩ āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ‚āļąāđ‰āļ™āļ•āđˆāļģāļ—āļĩāđˆāļˆāļ°āđƒāļŠāđ‰āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļ„āļ·āļ­ Postgres 8.1
āļžāļ·āđ‰āļ™āļ—āļĩāđˆ --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđ€āļ›āđ‡āļ™āđ€āļžāļĩāļĒāļ‡āļ•āļąāļ§āđ€āļĨāļ‚āļ‚āļ­āļ‡ .āļžāļĢāđ‰āļ­āļĄ āđ„āļŸāļĨāđŒāđƒāļ™
pg_xlog/archive_status āđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩ āđ‚āļ”āļĒāļ›āļāļ•āļī āļ„āđˆāļēāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļ„āļ§āļĢāļ•āđˆāļģ āđ‚āļ”āļĒāđ€āļ›āļīāļ”
āļāļĨāđ„āļāļāļēāļĢāđ€āļāđ‡āļšāļ–āļēāļ§āļĢ āđ€āļĢāļēāļĄāļąāļāļˆāļ°āļ•āđ‰āļ­āļ‡āļāļēāļĢāđƒāļŦāđ‰āđ„āļŸāļĨāđŒ WAL āđ€āļāđ‡āļšāļ–āļēāļ§āļĢāđ‚āļ”āļĒāđ€āļĢāđ‡āļ§āļ—āļĩāđˆāļŠāļļāļ”

āļŦāļēāļāļ„āļģāļŠāļąāđˆāļ‡ archive āļĨāđ‰āļĄāđ€āļŦāļĨāļ§ āļˆāļģāļ™āļ§āļ™ WAL āđƒāļ™ your pg_xlog āđ„āļ”āđ€āļĢāļāļ—āļ­āļĢāļĩāļˆāļ°āđ€āļ•āļīāļšāđ‚āļ•āļˆāļ™āļ–āļķāļ‡
āļ—āļģāđƒāļŦāđ‰āļžāļ·āđ‰āļ™āļ—āļĩāđˆāļ”āļīāļŠāļāđŒāļŦāļĄāļ”āđāļĨāļ°āļšāļąāļ‡āļ„āļąāļšāđƒāļŦāđ‰ PostgreSQL āļŦāļĒāļļāļ”āļ—āļģāļ‡āļēāļ™āļ—āļąāļ™āļ—āļĩ

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļˆāļģāļ™āļ§āļ™āđ„āļŸāļĨāđŒ WAL āļ—āļĩāđˆāļžāļĢāđ‰āļ­āļĄāđƒāļŠāđ‰āļ‡āļēāļ™āļ„āļ·āļ­ 10 āļŦāļĢāļ·āļ­āļ™āđ‰āļ­āļĒāļāļ§āđˆāļēāļšāļ™āđ‚āļŪāļŠāļ•āđŒ "āļžāļĨāļđāđ‚āļ•"

check_postgres_archive_ready --host=āļžāļĨāļđāđ‚āļ• --critical=10

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļĢāļēāļĒāļ‡āļēāļ™āļˆāļģāļ™āļ§āļ™āđ„āļŸāļĨāđŒ WAL āļ—āļĩāđˆāļžāļĢāđ‰āļ­āļĄāđƒāļŠāđ‰āļ‡āļēāļ™āđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆ 1

autovac_freeze
("symlink: check_postgres_autovac_freeze") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāđāļ•āđˆāļĨāļ°āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ­āļĒāļđāđˆāđƒāļāļĨāđ‰āļāļąāļš
āđ‚āļžāļŠāļ•āđŒāđ€āļāļĢāļŠ autovacuum_freeze_max_age āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļˆāļ°āđƒāļŠāđ‰āđ„āļ”āđ‰āđ€āļ‰āļžāļēāļ°āļāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ
āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™ 8.2 āļŦāļĢāļ·āļ­āļŠāļđāļ‡āļāļ§āđˆāļē NS --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ„āļ§āļĢāđāļŠāļ”āļ‡āđ€āļ›āđ‡āļ™
āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒ 'āļ­āļēāļĒāļļ' āļ‚āļ­āļ‡āļ˜āļļāļĢāļāļĢāļĢāļĄāđƒāļ™āđāļ•āđˆāļĨāļ°āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļ›āļĢāļĩāļĒāļšāđ€āļ—āļĩāļĒāļšāļāļąāļš
autovacuum_freeze_max_age āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē (200 āļĨāđ‰āļēāļ™āđ‚āļ”āļĒāļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™) āđ€āļžāļ·āđˆāļ­āļŠāļĢāđ‰āļēāļ‡āļāļēāļĢāļ›āļąāļ”āđ€āļĻāļĐ
āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒ āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ„āļ·āļ­ āļĨāļ” 90% āđ€āļžāļ·āđˆāļ­āđ€āļ›āđ‡āļ™āļ­āļļāļ—āļēāļŦāļĢāļ“āđŒāđāļĨāļ° āļĨāļ” 95% āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ§āļīāļˆāļēāļĢāļ“āđŒ āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ
āļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āđ„āļ”āđ‰āđ‚āļ”āļĒāđƒāļŠāđ‰āļ›āļļāđˆāļĄ --āļĢāļ§āļĄ āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđ "āļāļēāļĢāļāļĢāļ­āļ‡āļžāļ·āđ‰āļ™āļāļēāļ™"
āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđāļˆāđ‰āļ‡āđ€āļ•āļ·āļ­āļ™āđ€āļĄāļ·āđˆāļ­āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđƒāļ” āđ† āļšāļ™āļžāļ­āļĢāđŒāļ• 5432 āļŠāļđāļ‡āļāļ§āđˆāļē 97%

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

āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļŠāđˆāļ‡āļ­āļ­āļ MRTG āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāđ‚āļ”āļĒāļĢāļ§āļĄāļŠāļđāļ‡āļŠāļļāļ”āļˆāļ°āļĢāļēāļĒāļ‡āļēāļ™āđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļ āđāļĨāļ°āļ„āđˆāļē
āļĄāļĩāļāļēāļĢāļĢāļēāļĒāļ‡āļēāļ™āļ­āļēāļĒāļļāļŠāļđāļ‡āļŠāļļāļ”āđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļ­āļ‡ āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļĄāļĩāđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāļˆāļēāļ
āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļāļˆāļ°āļ–āļđāļāļĢāļēāļĒāļ‡āļēāļ™āđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆ āļ„āļąāđˆāļ™āļ”āđ‰āļ§āļĒāļŠāļąāļāļĨāļąāļāļĐāļ“āđŒāđ„āļ›āļ›āđŒ

āđāļšāđ‡āļāđ€āļ­āļ™āļ”āđŒ
("symlink: check_postgres_backends") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļˆāļģāļ™āļ§āļ™āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļ›āļąāļˆāļˆāļļāļšāļąāļ™āļŠāļģāļŦāļĢāļąāļšāļŦāļ™āļķāđˆāļ‡āļŦāļĢāļ·āļ­
āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļĄāļēāļāļ‚āļķāđ‰āļ™āđāļĨāļ°āđ€āļĨāļ·āļ­āļāļ—āļĩāđˆāļˆāļ°āđ€āļ›āļĢāļĩāļĒāļšāđ€āļ—āļĩāļĒāļšāļāļąāļšāļˆāļģāļ™āļ§āļ™āļŠāļđāļ‡āļŠāļļāļ”āļ—āļĩāđˆāļ­āļ™āļļāļāļēāļ•āļ‹āļķāđˆāļ‡āļāļģāļŦāļ™āļ”āđ‚āļ”āļĒ
āļ•āļąāļ§āđāļ›āļĢāļāļēāļĢāļāļģāļŦāļ™āļ”āļ„āđˆāļē Postgres max_connections. --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ
āļŠāļēāļĄāļēāļĢāļ–āļĄāļĩāļĢāļđāļ›āđāļšāļšāđƒāļ”āļĢāļđāļ›āđāļšāļšāļŦāļ™āļķāđˆāļ‡āļˆāļēāļāļŠāļēāļĄāļĢāļđāļ›āđāļšāļš āļ‚āļąāđ‰āļ™āđāļĢāļ āđƒāļŦāđ‰āļ•āļąāļ§āđ€āļĨāļ‚āļ­āļĒāđˆāļēāļ‡āļ‡āđˆāļēāļĒ āļ‹āļķāđˆāļ‡āđāļ—āļ™āļ„āđˆāļē
āļˆāļģāļ™āļ§āļ™āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļ—āļĩāđˆāļˆāļ°āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāđāļˆāđ‰āļ‡āđ€āļ•āļ·āļ­āļ™ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ™āļĩāđ‰āđ„āļĄāđˆāđƒāļŠāđ‰ the
max_connections āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē āļ›āļĢāļ°āļāļēāļĢāļ—āļĩāđˆāļŠāļ­āļ‡ āļŠāļēāļĄāļēāļĢāļ–āļĢāļ°āļšāļļāđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāļ‚āļ­āļ‡āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļ—āļĩāđˆāļĄāļĩāđ„āļ”āđ‰
āļ›āļĢāļ°āļāļēāļĢāļ—āļĩāđˆāļŠāļēāļĄ āļŠāļēāļĄāļēāļĢāļ–āđƒāļŦāđ‰āļˆāļģāļ™āļ§āļ™āļĨāļšāļ‹āļķāđˆāļ‡āđāļŠāļ”āļ‡āļ–āļķāļ‡āļˆāļģāļ™āļ§āļ™āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļ—āļĩāđˆāđ€āļŦāļĨāļ·āļ­
āļˆāļ™āļāļĢāļ°āļ—āļąāđˆāļ‡ max_connections āļ–āļķāļ‡. āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļŠāļģāļŦāļĢāļąāļš --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āđ€āļ›āđ‡āļ™
'90%' āđāļĨāļ° '95%' āļ„āļļāļ“āļĒāļąāļ‡āļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđ‚āļ”āļĒāđƒāļŠāđ‰āļ›āļļāđˆāļĄ --āļĢāļ§āļĄ āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄ
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđāļŠāđˆāļ§āļ™ "āļāļēāļĢāļāļĢāļ­āļ‡āļžāļ·āđ‰āļ™āļāļēāļ™" āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ

āļŦāļēāļāļ•āđ‰āļ­āļ‡āļāļēāļĢāļ”āļđāđ€āļ‰āļžāļēāļ°āļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāļ—āļĩāđˆāđ„āļĄāđˆāđ„āļ”āđ‰āđƒāļŠāđ‰āļ‡āļēāļ™ āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļ›āļļāđˆāļĄ --āļ™āļ­āļĒāļ”āđŒ āļāļēāļĢāđ‚āļ•āđ‰āđāļĒāđ‰āļ‡. āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļšāļ§āđˆāļēāļœāļđāđ‰āđƒāļŠāđ‰āļ„āļļāļ“
āļāļģāļĨāļąāļ‡āđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļ•āļēāļĄāļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āđ€āļ›āđ‡āļ™ superuser āđ€āļžāļ·āđˆāļ­āđƒāļŦāđ‰āļ—āļģāļ‡āļēāļ™āđ„āļ”āđ‰āļ­āļĒāđˆāļēāļ‡āļ–āļđāļāļ•āđ‰āļ­āļ‡

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđāļˆāđ‰āļ‡āđ€āļ•āļ·āļ­āļ™āđ€āļĄāļ·āđˆāļ­āļˆāļģāļ™āļ§āļ™āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļšāļ™āđ‚āļŪāļŠāļ•āđŒ quirm āļ–āļķāļ‡ 120 āđāļĨāļ° a
āļŠāļģāļ„āļąāļāļ–āđ‰āļēāļĄāļąāļ™āļ–āļķāļ‡ 150

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

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āđƒāļŦāđ‰āļ„āļ§āļēāļĄāļŠāļģāļ„āļąāļāđ€āļĄāļ·āđˆāļ­āđ€āļĢāļēāļ•āļąāđ‰āļ‡āļ„āđˆāļē max_connections āļ–āļķāļ‡ 75% āļšāļ™āđ‚āļŪāļŠāļ•āđŒ
lancre āļŦāļĢāļ·āļ­ lancre2

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

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 3: āđƒāļŦāđ‰āļ„āļģāđ€āļ•āļ·āļ­āļ™āđ€āļĄāļ·āđˆāļ­āđ‚āļŪāļŠāļ•āđŒāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āđ€āļŦāļĨāļ·āļ­āđ€āļžāļĩāļĒāļ‡ 10 āļŠāđˆāļ­āļ‡āđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™
āļžāļĨāļēāļŠāļĄāļīāļ”āđāļĨāļ°āļ§āļīāļāļĪāļ•āđ€āļĄāļ·āđˆāļ­āđ€āļĢāļēāđ€āļŦāļĨāļ·āļ­āđ€āļžāļĩāļĒāļ‡ 5 āđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™

check_postgres_backends --warning=-10 --critical=-5 --host=āļžāļĨāļēāļŠāļĄāļīāļ”

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 4: āļ•āļĢāļ§āļˆāļŠāļ­āļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļąāđ‰āļ‡āļŦāļĄāļ” āļĒāļāđ€āļ§āđ‰āļ™āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļĄāļĩ "āļ—āļ”āļŠāļ­āļš" āđƒāļ™āļŠāļ·āđˆāļ­ āđāļ•āđˆāļ­āļ™āļļāļāļēāļ•āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆ
āļĄāļĩāļŠāļ·āđˆāļ­āļ§āđˆāļē "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 āļ›āļąāļˆāļˆāļļāļšāļąāļ™ āļ–āđ‰āļēāļĄāļēāļāļāļ§āđˆāļē
āļĄāļĩāļāļēāļĢāļŠāļ­āļšāļ–āļēāļĄāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļŦāļ™āļķāđˆāļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļĄāļĩāļˆāļģāļ™āļ§āļ™āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļŠāļđāļ‡āļŠāļļāļ”āļ„āļ·āļ­āđ€āļ­āļēāļ•āđŒāļžāļļāļ•

āļšāļ§āļĄ
("symlink: check_postgres_bloat") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ›āļĢāļīāļĄāļēāļ“āļāļēāļĢāļ‚āļĒāļēāļĒāđƒāļ™āļ•āļēāļĢāļēāļ‡āđāļĨāļ°āļ”āļąāļŠāļ™āļĩ (āļšāļ§āļĄ
āđ‚āļ”āļĒāļ—āļąāđˆāļ§āđ„āļ›āļ„āļ·āļ­āļˆāļģāļ™āļ§āļ™āļžāļ·āđ‰āļ™āļ—āļĩāđˆāļ§āđˆāļēāļ‡āļ—āļĩāđˆāđ„āļĄāđˆāđ„āļ”āđ‰āđƒāļŠāđ‰āļ‡āļēāļ™āļ‹āļķāđˆāļ‡āļ–āļđāļāļ™āļģāđ„āļ›āđƒāļŠāđ‰āđƒāļ™āļ•āļēāļĢāļēāļ‡āļŦāļĢāļ·āļ­āļ”āļąāļŠāļ™āļĩ āļžāļ·āđ‰āļ™āļ—āļĩāđˆāļ™āļĩāđ‰āļ„āļ·āļ­
āļĄāļąāļāļˆāļ°āļ–āļđāļāđ€āļĢāļĩāļĒāļāļ„āļ·āļ™āđ‚āļ”āļĒāđƒāļŠāđ‰āļ„āļģāļŠāļąāđˆāļ‡ VACUUM) āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰ stats
āļ„āļ­āļĨāđ€āļĨāļāļŠāļąāļ™āļ–āļđāļāđ€āļ›āļīāļ”āđƒāļŠāđ‰āļ‡āļēāļ™āļšāļ™āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒ āđāļĨāļ°āļ•āđ‰āļ­āļ‡āļāļēāļĢāđƒāļŦāđ‰ ANALYZE āļĢāļąāļ™
āļšāđˆāļ­āļĒ. NS --āļĢāļ§āļĄ āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄ āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđ€āļžāļ·āđˆāļ­āļāļĢāļ­āļ‡āļ•āļēāļĢāļēāļ‡āļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āļāļēāļĢ
āļ”āļđāļ—āļĩāđˆ. āļ”āļđāļŠāđˆāļ§āļ™ "āļāļēāļĢāļāļĢāļ­āļ‡āļžāļ·āđ‰āļ™āļāļēāļ™" āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ

āļžāļ·āđ‰āļ™āļ—āļĩāđˆ --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļŠāļēāļĄāļēāļĢāļ–āļĢāļ°āļšāļļāđ€āļ›āđ‡āļ™āļ‚āļ™āļēāļ” āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒ āļŦāļĢāļ·āļ­āļ—āļąāđ‰āļ‡āļŠāļ­āļ‡āļ­āļĒāđˆāļēāļ‡ āļ–āļđāļāļ•āđ‰āļ­āļ‡
āļŦāļ™āđˆāļ§āļĒāļ‚āļ™āļēāļ” āđ„āļ”āđ‰āđāļāđˆ āđ„āļšāļ•āđŒ āļāļīāđ‚āļĨāđ„āļšāļ•āđŒ āđ€āļĄāļāļ°āđ„āļšāļ•āđŒ āļāļīāļāļ°āđ„āļšāļ•āđŒ āđ€āļ—āļĢāļēāđ„āļšāļ•āđŒ āđ€āļ­āđ‡āļāļ‹āļēāđ„āļšāļ•āđŒ āđ€āļžāļ•āļēāđ„āļšāļ•āđŒ āđāļĨāļ°
āđ€āļ‹āļ•āļēāđ„āļšāļ•āđŒ āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļĒāđˆāļ­āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļĄāļĩāļ•āļąāļ§āļ­āļąāļāļĐāļĢāļ•āļąāļ§āđāļĢāļ āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāđ„āļĄāđˆāļĄāļĩāļŦāļ™āđˆāļ§āļĒāļ„āļ·āļ­
āļ–āļ·āļ­āļ§āđˆāļēāđ€āļ›āđ‡āļ™ 'āđ„āļšāļ•āđŒ' āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ„āļ·āļ­ '1 GB' āđāļĨāļ° '5 GB' āļ„āđˆāļēāđāļŠāļ”āļ‡āļ–āļķāļ‡
āļˆāļģāļ™āļ§āļ™ "āđ„āļšāļ•āđŒāļ—āļĩāđˆāđ€āļŠāļĩāļĒ" āļŦāļĢāļ·āļ­āļ„āļ§āļēāļĄāđāļ•āļāļ•āđˆāļēāļ‡āļĢāļ°āļŦāļ§āđˆāļēāļ‡āļŠāļīāđˆāļ‡āļ—āļĩāđˆāļ•āļēāļĢāļēāļ‡āđƒāļŠāđ‰āļˆāļĢāļīāļ‡āļāļąāļš
āļ”āļąāļŠāļ™āļĩ āđāļĨāļ°āļŠāļīāđˆāļ‡āļ—āļĩāđˆāđ€āļĢāļēāļ„āļģāļ™āļ§āļ“āļ§āđˆāļēāļĄāļąāļ™āļ„āļ§āļĢāļˆāļ°āđ€āļ›āđ‡āļ™

āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļšāļ§āđˆāļēāļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļĄāļĩāļ„āđˆāļēāļŪāļēāļĢāđŒāļ”āđ‚āļ„āđ‰āļ”āļŠāļ­āļ‡āļ„āđˆāļēāđ€āļžāļ·āđˆāļ­āļŦāļĨāļĩāļāđ€āļĨāļĩāđˆāļĒāļ‡āļāļēāļĢāđ€āļ•āļ·āļ­āļ™āļ—āļĩāđˆāļœāļīāļ”āļžāļĨāļēāļ”āđƒāļ™āļ­āļļāļ›āļāļĢāļ“āđŒāļ—āļĩāđˆāđ€āļĨāđ‡āļāļāļ§āđˆāļē
āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒ. āļ•āļēāļĢāļēāļ‡āļ•āđ‰āļ­āļ‡āļĄāļĩāļ­āļĒāđˆāļēāļ‡āļ™āđ‰āļ­āļĒ 10 āļŦāļ™āđ‰āļē āđāļĨāļ°āļˆāļąāļ”āļ—āļģāļ”āļąāļŠāļ™āļĩāļ­āļĒāđˆāļēāļ‡āļ™āđ‰āļ­āļĒ 15 āļŦāļ™āđ‰āļēāļāđˆāļ­āļ™āļ—āļĩāđˆāļˆāļ°āđ€āļ›āđ‡āļ™
āļžāļīāļˆāļēāļĢāļ“āļēāđ‚āļ”āļĒāļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ™āļĩāđ‰ āļŦāļēāļāļ„āļļāļ“āļ•āđ‰āļ­āļ‡āļāļēāļĢāļ›āļĢāļąāļšāļ„āđˆāļēāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļˆāļĢāļīāļ‡āđ† āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļĄāļ­āļ‡āļŦāļē
āļ•āļąāļ§āđāļ›āļĢ $MINPAGES āđāļĨāļ° $āļĄāļīāļ™āļīāđ€āļžāļˆ āļ—āļĩāđˆāļ”āđ‰āļēāļ™āļšāļ™āļ‚āļ­āļ‡āļĢāļđāļ—āļĩāļ™āļĒāđˆāļ­āļĒ "check_bloat" āđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰
āļ„āđˆāļēāļˆāļ°āļ–āļđāļāļĨāļ°āđ€āļ§āđ‰āļ™āļŦāļēāļāļ—āļąāđ‰āļ‡ --āđ„āļĄāđˆāļĢāļ§āļĄ or --āļĢāļ§āļĄ āļ–āļđāļāļ™āļģāļĄāļēāđƒāļŠāđ‰.

āđāļŠāļ”āļ‡āđ€āļ‰āļžāļēāļ°āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒāļ—āļĩāđˆāļ›āđˆāļ­āļ‡āļ—āļĩāđˆāļŠāļļāļ” 10 āļ­āļąāļ™āļ”āļąāļšāđāļĢāļāđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™ āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āđ€āļ›āļĨāļĩāđˆāļĒāļ™āļŦāļĄāļēāļĒāđ€āļĨāļ‚āļ™āļĩāđ‰āđ„āļ”āđ‰āđ‚āļ”āļĒāđƒāļŠāđ‰āļ›āļļāđˆāļĄ
--āđ€āļžāļ­āļĢāđŒāļŸāļĨāļīāļĄāļīāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđ€āļžāļ·āđˆāļ­āļāļģāļŦāļ™āļ”āļ§āļ‡āđ€āļ‡āļīāļ™āļ‚āļ­āļ‡āļ„āļļāļ“āđ€āļ­āļ‡

āļŠāļ„āļĩāļĄāļēāļŠāļ·āđˆāļ­ 'information_schema' āđ„āļĄāđˆāļĢāļ§āļĄāļ­āļĒāļđāđˆāđƒāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ™āļĩāđ‰ āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāđ€āļ›āđ‡āļ™āđ€āļžāļĩāļĒāļ‡āļ•āļēāļĢāļēāļ‡āđ€āļ”āļĩāļĒāļ§
āļ›āļĢāļ°āļāļ­āļšāļ”āđ‰āļ§āļĒāļĄāļĩāļ‚āļ™āļēāļ”āđ€āļĨāđ‡āļāđāļĨāļ°āđ„āļĄāđˆāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡

āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļšāļ§āđˆāļēāļ„āđˆāļēāļ—āļĩāđˆāļ„āļģāļ™āļ§āļ“āđ‚āļ”āļĒāļāļēāļĢāļāļĢāļ°āļ—āļģāļ™āļĩāđ‰āđ„āļĄāđˆāđāļĄāđˆāļ™āļĒāļģ āđāļĨāļ°āļ„āļ§āļĢāđƒāļŠāđ‰āđ€āļ›āđ‡āļ™
āđ€āļ›āđ‡āļ™āđāļ™āļ§āļ—āļēāļ‡āđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™ āļĄāļĩāļ„āļ§āļēāļĄāļžāļĒāļēāļĒāļēāļĄāļ­āļĒāđˆāļēāļ‡āļĄāļēāļāđƒāļ™āļāļēāļĢāļ›āļĢāļ°āļĄāļēāļ“āļ‚āļ™āļēāļ”āđ‚āļ•āđŠāļ°āļ—āļĩāđˆāļ–āļđāļāļ•āđ‰āļ­āļ‡ āđāļ•āđˆāđƒāļ™
āļ—āđ‰āļēāļĒāļ—āļĩāđˆāļŠāļļāļ”āļĄāļąāļ™āđ€āļ›āđ‡āļ™āđ€āļžāļĩāļĒāļ‡āļāļēāļĢāļ›āļĢāļ°āļĄāļēāļ“āļāļēāļĢ āļ‚āļ™āļēāļ”āļ”āļąāļŠāļ™āļĩāļ—āļĩāđˆāļ–āļđāļāļ•āđ‰āļ­āļ‡āļ™āļąāđ‰āļ™āļ„āļēāļ”āđ€āļ”āļēāđ„āļ”āđ‰āļĄāļēāļāļāļ§āđˆāļē
āļ‚āļ™āļēāļ”āđ‚āļ•āđŠāļ°āļ—āļĩāđˆāļ–āļđāļāļ•āđ‰āļ­āļ‡ āđāļ•āđˆāļ—āļąāđ‰āļ‡āļ„āļđāđˆāļ„āļ§āļĢāđƒāļŦāđ‰āđāļ™āļ§āļ„āļīāļ”āļ„āļĢāđˆāļēāļ§āđ† āļ§āđˆāļēāļŠāļīāđˆāļ‡āļ—āļĩāđˆāļ›āđˆāļ­āļ‡āđ€āļ›āđ‡āļ™āļ­āļĒāđˆāļēāļ‡āđ„āļĢ

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļ•āļēāļĢāļēāļ‡āđƒāļ”āđ† āļšāļ™āļžāļ­āļĢāđŒāļ• 5432 āđ€āļāļīāļ™ 100 MB āļ›āđˆāļ­āļ‡ āđāļĨāļ°āļ§āļīāļāļĪāļ•āļŦāļēāļāļĄāļēāļāļāļ§āđˆāļē 200
MB

check_postgres_bloat --port=5432 --warning='100 M' --critical='200 M'

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āđƒāļŦāđ‰āļ„āļ§āļēāļĄāļŠāļģāļ„āļąāļāļŦāļēāļāļ•āļēāļĢāļēāļ‡ 'āļ„āļģāļŠāļąāđˆāļ‡' āļšāļ™āđ‚āļŪāļŠāļ•āđŒ '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 MB:

check_postgres_bloat --port=5432 --critical='20% and 150 M'

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 5: āđƒāļŦāđ‰āļ•āļēāļĢāļēāļ‡āļ—āļĩāđˆāļŠāļģāļ„āļąāļāļāļ§āđˆāļē 40% āļ›āđˆāļ­āļ‡ or āļĄāļĩāļžāļ·āđ‰āļ™āļ—āļĩāđˆāļĄāļēāļāļāļ§āđˆāļē 500 MB:

check_postgres_bloat --port=5432 --warning='500 M āļŦāļĢāļ·āļ­ 40%'

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļāđƒāļŦāđ‰āļˆāļģāļ™āļ§āļ™āđ„āļšāļ•āđŒāļ—āļĩāđˆāđ€āļŠāļĩāļĒāđ€āļ›āļĨāđˆāļēāļŠāļđāļ‡āļŠāļļāļ”āļŠāļģāļŦāļĢāļąāļšāļ•āļēāļĢāļēāļ‡
āđāļĨāļ°āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļ­āļ‡āđƒāļŦāđ‰āļˆāļģāļ™āļ§āļ™āđ„āļšāļ•āđŒāļ—āļĩāđˆāļŠāļđāļāđ€āļ›āļĨāđˆāļēāļŠāļđāļ‡āļŠāļļāļ”āļŠāļģāļŦāļĢāļąāļšāļ”āļąāļŠāļ™āļĩ āļ—āļĩāđˆāļŠāļĩāđˆ
āļšāļĢāļĢāļ—āļąāļ”āđƒāļŦāđ‰āļŠāļ·āđˆāļ­āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ āļŠāļ·āđˆāļ­āļ•āļēāļĢāļēāļ‡ āđāļĨāļ°āļ‚āđ‰āļ­āļĄāļđāļĨāļŠāļ·āđˆāļ­āļ”āļąāļŠāļ™āļĩ āļ–āđ‰āļēāļ„āļļāļ“āļ•āđ‰āļ­āļ‡āļāļēāļĢ
āļŠāđˆāļ‡āļ­āļ­āļāļ­āļąāļ•āļĢāļēāļŠāđˆāļ§āļ™āļāļēāļĢāļ‚āļĒāļēāļĒāļ•āļąāļ§āđāļ—āļ™ (āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒāļĄāļĩāļ‚āļ™āļēāļ”āđƒāļŦāļāđˆāļāļ§āđˆāļēāđ€āļĄāļ·āđˆāļ­āđ€āļ›āļĢāļĩāļĒāļšāđ€āļ—āļĩāļĒāļšāļāļąāļšāļ­āļĒāđˆāļēāļ‡āđ„āļĢ
āđƒāļŦāļāđˆāļ„āļ§āļĢāđ€āļ›āđ‡āļ™) āđ€āļžāļĩāļĒāļ‡āđāļ„āđˆāļŠāđˆāļ‡āđƒāļ™ "--mrtg=ratio"

āļ”āđˆāļēāļ™
("symlink: check_postgres_checkpoint") āļāļģāļŦāļ™āļ”āļĢāļ°āļĒāļ°āđ€āļ§āļĨāļēāļ—āļĩāđˆāļ”āđˆāļēāļ™āļŠāļļāļ”āļ—āđ‰āļēāļĒāļĄāļĩ
āļ–āļđāļāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰ āļ•āđ‰āļ­āļ‡āļĢāļąāļ™āļšāļ™āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāđ€āļ”āļĩāļĒāļ§āļāļąāļ™āļāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļāļģāļĨāļąāļ‡āļ•āļĢāļ§āļˆāļŠāļ­āļš (āđ€āļŠāđˆāļ™
-h āđāļŸāļĨāđ‡āļāļˆāļ°āđ„āļĄāđˆāļ—āļģāļ‡āļēāļ™) āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ™āļĩāđ‰āļĄāļĩāļ‚āļķāđ‰āļ™āđ€āļžāļ·āđˆāļ­āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļšāļ™āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒ "āļŠāđāļ•āļ™āļ”āđŒāļšāļēāļĒāļ—āļĩāđˆāļ­āļšāļ­āļļāđˆāļ™" āļ™āļąāđˆāļ™āļ„āļ·āļ­
āļāļģāļĨāļąāļ‡āļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāđ„āļŸāļĨāđŒ WAL āļ—āļĩāđˆāļˆāļąāļ”āļŠāđˆāļ‡āđāļĨāļ°āļĄāļĩāđ„āļ§āđ‰āđ€āļžāļ·āđˆāļ­āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļē warm standby āļ‚āļ­āļ‡āļ„āļļāļ“āļ„āļ·āļ­
'āļ­āļšāļ­āļļāđˆāļ™' āļ­āļĒāđˆāļēāļ‡āđāļ—āđ‰āļˆāļĢāļīāļ‡ āļ•āđ‰āļ­āļ‡āļ•āļąāđ‰āļ‡āļ„āđˆāļēāđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩāļ‚āđ‰āļ­āļĄāļđāļĨāđ„āļĄāđˆāļ§āđˆāļēāļˆāļ°āđ‚āļ”āļĒāļ•āļąāļ§āđāļ›āļĢāļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄ
"PGDATA" āļŦāļĢāļ·āļ­āļŠāđˆāļ‡āļœāđˆāļēāļ™āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒ "--datadir" āļŠāđˆāļ‡āļāļĨāļąāļšāļˆāļģāļ™āļ§āļ™āļ§āļīāļ™āļēāļ—āļĩāļ•āļąāđ‰āļ‡āđāļ•āđˆ the
āļ”āđˆāļēāļ™āļŠāļļāļ”āļ—āđ‰āļēāļĒāļ–āļđāļāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļ•āļēāļĄāļ—āļĩāđˆāļāļģāļŦāļ™āļ”āđ‚āļ”āļĒāđāļĒāļāļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒāļāļēāļĢāđ€āļĢāļĩāļĒāļāđ„āļ›āļ—āļĩāđˆ "pg_controldata" āđ€āļžāļĢāļēāļ°āļ§āđˆāļē
āļŠāļīāđˆāļ‡āļ™āļĩāđ‰ āđ„āļŸāļĨāđŒāđ€āļĢāļĩāļĒāļāļ—āļģāļ‡āļēāļ™ pg_controldata āļ•āđ‰āļ­āļ‡āļĄāļĩāļ­āļĒāļđāđˆāđƒāļ™āļžāļēāļ˜āļ›āļąāļˆāļˆāļļāļšāļąāļ™ āļ­āļĩāļāļ—āļēāļ‡āļŦāļ™āļķāđˆāļ‡
āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļĢāļ°āļšāļļ "PGBINDIR" āđ€āļ›āđ‡āļ™āđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩāļ—āļĩāđˆāļĄāļĩāļ­āļĒāļđāđˆ āđāļĨāļ°āļĒāļąāļ‡āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļžāļīāđ€āļĻāļĐ --āļŠāļĄāļĄāļ•āļīāļœāļĨāļīāļ•āļ āļąāļ“āļ‘āđŒ or --āļŠāļĄāļĄāļ•āļīāđ‚āļŦāļĄāļ”āļŠāđāļ•āļ™āļ”āđŒāļšāļēāļĒ, āļŦāļēāļāđ‚āļŦāļĄāļ”āļ—āļĩāđˆāļžāļšāđ„āļĄāđˆāđƒāļŠāđˆ
āļ­āļĒāđˆāļēāļ‡āđƒāļ”āļ­āļĒāđˆāļēāļ‡āļŦāļ™āļķāđˆāļ‡āļ—āļĩāđˆāļ„āļēāļ”āļŦāļ§āļąāļ‡ āļ—āļĩāđˆāļŠāļģāļ„āļąāļāļˆāļ°āļ–āļđāļāļ›āļĨāđˆāļ­āļĒāļ­āļ­āļāļĄāļē

āļ•āđ‰āļ­āļ‡āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ„āļģāđ€āļ•āļ·āļ­āļ™āļŦāļĢāļ·āļ­āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒāļ—āļĩāđˆāļŠāļģāļ„āļąāļāļ­āļĒāđˆāļēāļ‡āļ™āđ‰āļ­āļĒāļŦāļ™āļķāđˆāļ‡āļĢāļēāļĒāļāļēāļĢ

āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰āđ‚āļĄāļ”āļđāļĨ Date::Parse

āļŠāļģāļŦāļĢāļąāļš MRTG āļŦāļĢāļ·āļ­āđ€āļ­āļēāļ•āđŒāļžāļļāļ•āđāļšāļšāļ˜āļĢāļĢāļĄāļ”āļē āđƒāļŦāđ‰āļ„āļ·āļ™āļ„āđˆāļēāļˆāļģāļ™āļ§āļ™āļ§āļīāļ™āļēāļ—āļĩ

āļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒ_id
("symlink: check_postgres_cluster-id") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļĄāļĩāļ•āļąāļ§āļĢāļ°āļšāļļāļĢāļ°āļšāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđƒāļŦāđ‰
āđ‚āļ”āļĒ pg_controldata āļˆāļ°āđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļšāļ„āļĢāļąāđ‰āļ‡āļŠāļļāļ”āļ—āđ‰āļēāļĒāļ—āļĩāđˆāļ„āļļāļ“āļ•āļĢāļ§āļˆāļŠāļ­āļš āļŠāļīāđˆāļ‡āļ™āļĩāđ‰āļˆāļ°āļ•āđ‰āļ­āļ‡āļ—āļģāļ‡āļēāļ™āļšāļ™āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāđ€āļ”āļĩāļĒāļ§āļāļąāļ™
āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļāļģāļĨāļąāļ‡āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ­āļĒāļđāđˆ (āđ€āļŠāđˆāļ™ āđāļŸāļĨāđ‡āļ -h āļˆāļ°āđ„āļĄāđˆāļ—āļģāļ‡āļēāļ™) āđ„āļĄāđˆāļ§āđˆāļēāļˆāļ°āđ€āļ›āđ‡āļ™
--āļ„āļģāđ€āļ•āļ·āļ­āļ™ āļŦāļĢāļ·āļ­ --āļ§āļīāļāļĪāļ• āļ„āļ§āļĢāđƒāļŦāđ‰āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ āđāļ•āđˆāđ„āļĄāđˆāđƒāļŠāđˆāļ—āļąāđ‰āļ‡āļŠāļ­āļ‡āļ­āļĒāđˆāļēāļ‡ āļ„āđˆāļēāļ‚āļ­āļ‡āđāļ•āđˆāļĨāļ°āļ•āļąāļ§āļ„āļ·āļ­
āļ•āļąāļ§āļĢāļ°āļšāļļāļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒ āļ„āđˆāļēāļˆāļģāļ™āļ§āļ™āđ€āļ•āđ‡āļĄ āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļ”āđ‰āļ§āļĒ "--critical=0" āļžāļīāđ€āļĻāļĐ
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđ€āļžāļ·āđˆāļ­āļ„āđ‰āļ™āļŦāļēāļ•āļąāļ§āļĢāļ°āļšāļļāļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒāļ—āļĩāđˆāļĄāļĩāļ­āļĒāļđāđˆ

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āļ„āđ‰āļ™āļŦāļēāļ•āļąāļ§āļĢāļ°āļšāļļāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™

check_postgres_cluster_id --critical=0 --datadir=/var//lib/postgresql/9.0/main

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āļ•āļĢāļ§āļˆāļŠāļ­āļšāđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒāđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļ™ āđāļĨāļ°āđ€āļ•āļ·āļ­āļ™āļŦāļēāļāđ„āļĄāđˆāđ€āļ›āđ‡āļ™āđ€āļŠāđˆāļ™āļ™āļąāđ‰āļ™ āđ‚āļ”āļĒāđƒāļŠāđ‰āļœāļĨāļĨāļąāļžāļ˜āđŒāļˆāļēāļāļ”āđ‰āļēāļ™āļšāļ™

check_postgres_cluster_id --critical=5633695740047915135

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļŠāđˆāļ‡āļ„āļ·āļ™ 1 āļŦāļĢāļ·āļ­ 0 āļ—āļĩāđˆāļĢāļ°āļšāļļāļ„āļ§āļēāļĄāļŠāļģāđ€āļĢāđ‡āļˆāļ‚āļ­āļ‡āļ„āļ§āļēāļĄāļĨāđ‰āļĄāđ€āļŦāļĨāļ§āļ‚āļ­āļ‡āļ•āļąāļ§āļĢāļ°āļšāļļāđ€āļ›āđ‡āļ™
āļˆāļąāļšāļ„āļđāđˆ. āļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļāļ•āļąāļ§āļĢāļ°āļšāļļāđ€āļ›āđ‡āļ™āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒ "--mrtg" āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆāđ€āļŠāļĄāļ­
āđƒāļŦāđ‰āļ•āļąāļ§āļĢāļ°āļšāļļāļ›āļąāļˆāļˆāļļāļšāļąāļ™

āļ„āļ§āļēāļĄāļĄāļļāđˆāļ‡āļĄāļąāđˆāļ™
("symlink: check_postgres_commitratio") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ­āļąāļ•āļĢāļēāļŠāđˆāļ§āļ™āļāļēāļĢāļŠāđˆāļ‡āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āđāļĨāļ°
āļšāđˆāļ™āđ€āļĄāļ·āđˆāļ­āļžāļ§āļāđ€āļ‚āļēāļ•āđˆāļģāđ€āļāļīāļ™āđ„āļ› āđ„āļĄāđˆāļˆāļģāđ€āļ›āđ‡āļ™āļ•āđ‰āļ­āļ‡āļĢāļąāļ™āļ„āļģāļŠāļąāđˆāļ‡āļ™āļĩāđ‰āļĄāļēāļāļāļ§āđˆāļēāļŦāļ™āļķāđˆāļ‡āļ„āļĢāļąāđ‰āļ‡āļ•āđˆāļ­
āļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āļ”āđ‰āļ§āļĒ --āļĢāļ§āļĄ āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđ
āđƒāļ™āļŠāđˆāļ§āļ™ "āļāļēāļĢāļāļĢāļ­āļ‡āļžāļ·āđ‰āļ™āļāļēāļ™" āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ āļžāļ§āļāđ€āļ‚āļēāļĒāļąāļ‡āļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āđ‚āļ”āļĒāđ€āļˆāđ‰āļēāļ‚āļ­āļ‡
āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļāļąāļš --includeuser āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄāļœāļđāđ‰āđƒāļŠāđ‰ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđ "āļŠāļ·āđˆāļ­āļœāļđāđ‰āđƒāļŠāđ‰
āļāļēāļĢāļāļĢāļ­āļ‡" āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ

āļ„āļ§āļĢāļĢāļ°āļšāļļāļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ—āļĩāđˆāļŠāļģāļ„āļąāļāđ€āļ›āđ‡āļ™āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒ āđ„āļĄāđˆāļĄāļĩ
āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰: āļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļāļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ§āļīāļāļĪāļ•āļī āļ„āđˆāļēāđ€āļ•āļ·āļ­āļ™
āđ„āļĄāđˆāļŠāļēāļĄāļēāļĢāļ–āļĄāļēāļāļāļ§āđˆāļēāļ„āđˆāļēāļ§āļīāļāļĪāļ• āļœāļĨāļĨāļąāļžāļ˜āđŒāļˆāļ°āļŠāđˆāļ‡āļ„āļ·āļ™āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļˆāļąāļ”āđ€āļĢāļĩāļĒāļ‡āđ‚āļ”āļĒ
Commitration āļ™āđ‰āļ­āļĒāļ—āļĩāđˆāļŠāļļāļ”āļāđˆāļ­āļ™

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡: āđ€āļ•āļ·āļ­āļ™āļ–āđ‰āļēāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđƒāļ” āđ† āļšāļ™āđ‚āļŪāļŠāļ•āđŒ flagg āļĄāļĩāļ„āđˆāļēāļ„āļ­āļĄāļĄāļīāļŠāļŠāļąāļ™āļ™āđ‰āļ­āļĒāļāļ§āđˆāļē 90% āđāļĨāļ°āļ§āļīāļāļĪāļ•
āļ–āđ‰āļēāļ™āđ‰āļ­āļĒāļāļ§āđˆāļē 80%

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

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļŠāđˆāļ‡āļ„āļ·āļ™āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ”āđ‰āļ§āļĒāļ„āđˆāļēāļ„āļ­āļĄāļĄāļīāļŠāļŠāļąāļ™ on . āļ—āļĩāđˆāļ™āđ‰āļ­āļĒāļ—āļĩāđˆāļŠāļļāļ”
āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļāđāļĨāļ°āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆ

āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­
("symlink: check_postgres_connection") āđ€āļžāļĩāļĒāļ‡āđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­ āļ­āļ­āļ 'SELECT āļĢāļļāđˆāļ™ ()'āđāļĨāļ°
āļ­āļ­āļāļˆāļēāļ. āđ„āļĄāđˆāđƒāļŠāđ‰ --āļ„āļģāđ€āļ•āļ·āļ­āļ™ or --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āđ€āļžāļĩāļĒāļ‡āļŠāđˆāļ‡āļ­āļ­āļ 1 (āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļ—āļĩāđˆāļ”āļĩ) āļŦāļĢāļ·āļ­ 0 (āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āđ„āļĄāđˆāļ”āļĩ) āđƒāļ™āļ„āļĢāļąāđ‰āļ‡āđāļĢāļ
āđ€āļŠāđ‰āļ™

custom_query
("symlink: check_postgres_custom_query") āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āđāļšāļšāļŠāļ­āļšāļ–āļēāļĄāļ—āļĩāđˆāļāļģāļŦāļ™āļ”āđ€āļ­āļ‡āļ—āļĩāđˆāļ„āļļāļ“āđ€āļĨāļ·āļ­āļāđāļĨāļ°āđāļĒāļāļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒ
āļœāļĨāļĨāļąāļžāļ˜āđŒ āđāļšāļšāļŠāļ­āļšāļ–āļēāļĄāđ€āļ­āļ‡āļ–āļđāļāļŠāđˆāļ‡āļœāđˆāļēāļ™āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒ "āđāļšāļšāļŠāļ­āļšāļ–āļēāļĄ" āđāļĨāļ°āļ„āļ§āļĢāđ€āļ›āđ‡āļ™
āđƒāļŦāđ‰āđ€āļĢāļĩāļĒāļšāļ‡āđˆāļēāļĒāļ—āļĩāđˆāļŠāļļāļ” āļ–āđ‰āļēāđ€āļ›āđ‡āļ™āđ„āļ›āđ„āļ”āđ‰ āđƒāļŦāđ‰āļŦāđˆāļ­āđ„āļ§āđ‰āđƒāļ™āļĄāļļāļĄāļĄāļ­āļ‡āļŦāļĢāļ·āļ­āļŸāļąāļ‡āļāđŒāļŠāļąāļ™āļ—āļĩāđˆāļˆāļ°āđ€āļāđ‡āļšāđ„āļ§āđ‰
āļŠāļīāđˆāļ‡āļ•āđˆāļēāļ‡ āđ† āļˆāļąāļ”āļāļēāļĢāđ„āļ”āđ‰āļ‡āđˆāļēāļĒāļ‚āļķāđ‰āļ™ āđāļšāļšāļŠāļ­āļšāļ–āļēāļĄāļ„āļ§āļĢāļŠāđˆāļ‡āļ„āļ·āļ™āļŦāļ™āļķāđˆāļ‡āļŦāļĢāļ·āļ­āļŠāļ­āļ‡āļ„āļ­āļĨāļąāļĄāļ™āđŒ āļĄāļąāļ™āđ€āļ›āđ‡āļ™āļŠāļīāđˆāļ‡āļˆāļģāđ€āļ›āđ‡āļ™āļ—āļĩāđˆ
āļ„āļ­āļĨāļąāļĄāļ™āđŒāđƒāļ”āļ„āļ­āļĨāļąāļĄāļ™āđŒāļŦāļ™āļķāđˆāļ‡āļĄāļĩāļŠāļ·āđˆāļ­āļ§āđˆāļē "āļœāļĨāļĨāļąāļžāļ˜āđŒ" āđāļĨāļ°āđ€āļ›āđ‡āļ™āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāļˆāļ°āļ•āļĢāļ§āļˆāļŠāļ­āļšāļāļąāļš .āļ‚āļ­āļ‡āļ„āļļāļ“
āļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ„āđˆāļēāļ™āļīāļĒāļĄāļ—āļĩāđˆāļŠāļģāļ„āļąāļ āļ„āļ­āļĨāļąāļĄāļ™āđŒāļ—āļĩāđˆāļŠāļ­āļ‡āļŠāļģāļŦāļĢāļąāļšāļ‚āđ‰āļ­āļĄāļđāļĨāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāđāļĨāļ°āļŠāļ·āđˆāļ­āđƒāļ”āđ†
āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āđ„āļ”āđ‰: āļ™āļĩāđˆāļˆāļ°āđ€āļ›āđ‡āļ™ 'āļ„āđˆāļē' āđƒāļ™āļŠāđˆāļ§āļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž

āļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļāļ„āļģāđ€āļ•āļ·āļ­āļ™āļŦāļĢāļ·āļ­āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒāļ—āļĩāđˆāļŠāļģāļ„āļąāļāļ­āļĒāđˆāļēāļ‡āļ™āđ‰āļ­āļĒāļŦāļ™āļķāđˆāļ‡āļĢāļēāļĒāļāļēāļĢ āļŠāļīāđˆāļ‡āđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļ–āļđāļāļāļģāļŦāļ™āļ”āđƒāļŦāđ‰āļ‚āļķāđ‰āļ™āļ­āļĒāļđāđˆāļāļąāļš
āļ•āļēāļĄāļ›āļĢāļ°āđ€āļ āļ—āļ‚āļ­āļ‡āđāļšāļšāļŠāļ­āļšāļ–āļēāļĄāļ—āļĩāđˆāļ„āļļāļ“āļāļģāļĨāļąāļ‡āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰ custom_queries āļĄāļĩāļŠāļĩāđˆāļ›āļĢāļ°āđ€āļ āļ—āļ—āļĩāđˆāļŠāļēāļĄāļēāļĢāļ–āđ€āļ›āđ‡āļ™
āļĢāļąāļ™ āļĢāļ°āļšāļļāđ‚āļ”āļĒāļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒ "valtype" āļŦāļēāļāđ„āļĄāđˆāđ„āļ”āđ‰āļĢāļ°āļšāļļāđ„āļ§āđ‰ āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļˆāļ°āļĄāļĩāļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āđ€āļ›āđ‡āļ™
'āļˆāļģāļ™āļ§āļ™āđ€āļ•āđ‡āļĄ'. āļŠāļĩāđˆāļ›āļĢāļ°āđ€āļ āļ—āļ„āļ·āļ­:

āļˆāļģāļ™āļ§āļ™āđ€āļ•āđ‡āļĄ: āđ€āļ›āļĢāļĩāļĒāļšāđ€āļ—āļĩāļĒāļšāļˆāļģāļ™āļ§āļ™āđ€āļ•āđ‡āļĄāļ­āļĒāđˆāļēāļ‡āļ‡āđˆāļēāļĒāļŦāļĢāļ·āļ­āđ„āļĄāđˆ āļ„āļ­āļĨāļąāļĄāļ™āđŒāđāļĢāļāļ„āļ§āļĢāđ€āļ›āđ‡āļ™āļˆāļģāļ™āļ§āļ™āđ€āļ•āđ‡āļĄāļ­āļĒāđˆāļēāļ‡āļ‡āđˆāļēāļĒ
āđāļĨāļ°āļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ„āđˆāļēāļ§āļīāļāļĪāļ•āļ„āļ§āļĢāđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļ™

āđ€āļŠāļ·āļ­āļ: āļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ§āļīāļāļĪāļ•āļīāđ€āļ›āđ‡āļ™āļŠāļ•āļĢāļīāļ‡ āđāļĨāļ°āļ—āļĢāļīāļāđ€āļāļ­āļĢāđŒāļāđ‡āļ•āđˆāļ­āđ€āļĄāļ·āđˆāļ­āļ„āđˆāļēāđƒāļ™
āļ„āļ­āļĨāļąāļĄāļ™āđŒāđāļĢāļāļ•āļĢāļ‡āļāļąāļšāļĄāļąāļ™āļ—āļļāļāļ›āļĢāļ°āļāļēāļĢ āđ‚āļ”āļĒāļ„āļģāļ™āļķāļ‡āļ–āļķāļ‡āļ•āļąāļ§āļžāļīāļĄāļžāđŒāđ€āļĨāđ‡āļāđāļĨāļ°āļ•āļąāļ§āļžāļīāļĄāļžāđŒāđƒāļŦāļāđˆ

āđ€āļ§āļĨāļē: āļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ§āļīāļāļĪāļ•āļ„āļ·āļ­āļ„āļĢāļąāđ‰āļ‡ āđāļĨāļ°āļŠāļēāļĄāļēāļĢāļ–āļĄāļĩāļŦāļ™āđˆāļ§āļĒāļ§āļīāļ™āļēāļ—āļĩ āļ™āļēāļ—āļĩ
āļŠāļąāđˆāļ§āđ‚āļĄāļ‡āļŦāļĢāļ·āļ­āļ§āļąāļ™ āđāļ•āđˆāļĨāļ°āļĢāļēāļĒāļāļēāļĢāļ­āļēāļˆāđ€āļ‚āļĩāļĒāļ™āđ€āļ›āđ‡āļ™āđ€āļ­āļāļžāļˆāļ™āđŒāļŦāļĢāļ·āļ­āļĒāđˆāļ­āđƒāļŦāđ‰āđ€āļŦāļĨāļ·āļ­āđāļ„āđˆāļ­āļąāļāļĐāļĢāļ•āļąāļ§āđāļĢāļ āļ–āđ‰āļē
āđ„āļĄāđˆāđ„āļ”āđ‰āļāļģāļŦāļ™āļ”āļŦāļ™āđˆāļ§āļĒ āđƒāļŦāđ‰āļ–āļ·āļ­āļ§āđˆāļēāļ§āļīāļ™āļēāļ—āļĩ āļ„āļ­āļĨāļąāļĄāļ™āđŒāđāļĢāļāļ„āļ§āļĢāđ€āļ›āđ‡āļ™āļˆāļģāļ™āļ§āļ™āđ€āļ•āđ‡āļĄ
āđāļ—āļ™āļˆāļģāļ™āļ§āļ™āļ§āļīāļ™āļēāļ—āļĩāļ—āļĩāđˆāļˆāļ°āļ•āļĢāļ§āļˆāļŠāļ­āļš

āļ‚āļ™āļēāļ”: āļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ§āļīāļāļĪāļ•āļ„āļ·āļ­āļ‚āļ™āļēāļ” āđāļĨāļ°āļŠāļēāļĄāļēāļĢāļ–āļĄāļĩāļŦāļ™āđˆāļ§āļĒāļ‚āļ­āļ‡āđ„āļšāļ•āđŒ āļāļīāđ‚āļĨāđ„āļšāļ•āđŒ
āđ€āļĄāļāļ°āđ„āļšāļ•āđŒ āļāļīāļāļ°āđ„āļšāļ•āđŒ āđ€āļ—āļĢāļēāđ„āļšāļ•āđŒ āļŦāļĢāļ·āļ­āđ€āļ­āđ‡āļāļ‹āļēāđ„āļšāļ•āđŒ āđāļ•āđˆāļĨāļ°āļ•āļąāļ§āļ­āļēāļˆāļĒāđˆāļ­āļĄāļēāļˆāļēāļāļ­āļąāļāļĐāļĢāļ•āļąāļ§āđāļĢāļ
āļŦāļēāļāđ„āļĄāđˆāđ„āļ”āđ‰āļĢāļ°āļšāļļāļŦāļ™āđˆāļ§āļĒ āļˆāļ°āļ–āļ·āļ­āļ§āđˆāļēāđ„āļšāļ•āđŒ āļ„āļ­āļĨāļąāļĄāļ™āđŒāđāļĢāļāļ„āļ§āļĢāđ€āļ›āđ‡āļ™āļˆāļģāļ™āļ§āļ™āđ€āļ•āđ‡āļĄ
āđāļ—āļ™āļˆāļģāļ™āļ§āļ™āđ„āļšāļ•āđŒāļ—āļĩāđˆāļˆāļ°āļ•āļĢāļ§āļˆāļŠāļ­āļš

āđ‚āļ”āļĒāļ›āļāļ•āļī āļˆāļ°āļĄāļĩāļāļēāļĢāđāļˆāđ‰āļ‡āđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļ„āđˆāļēāļ—āļĩāđˆāļŠāđˆāļ‡āļāļĨāļąāļšāđ€āļ›āđ‡āļ™ āļĄāļēāļāļ‚āļķāđ‰āļ™ āļāļ§āđˆāļē āļŦāļĢāļ·āļ­āđ€āļ—āđˆāļēāļāļąāļš
āļ„āđˆāļēāļ§āļīāļāļĪāļ•āļŦāļĢāļ·āļ­āļ„āđˆāļēāđ€āļ•āļ·āļ­āļ™ āļ­āļĒāđˆāļēāļ‡āđ„āļĢāļāđ‡āļ•āļēāļĄ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ‚āļ­āļ‡ --āļĒāđ‰āļ­āļ™āļāļĨāļąāļš āļˆāļ°āļ—āļĢāļīāļāđ€āļāļ­āļĢāđŒāļāļēāļĢāđāļˆāđ‰āļ‡āđ€āļ•āļ·āļ­āļ™āļŦāļēāļ
āļ„āđˆāļēāļ—āļĩāđˆāļŠāđˆāļ‡āļ„āļ·āļ™āļ„āļ·āļ­ āļĨāļ” āļāļ§āđˆāļē āļŦāļĢāļ·āļ­āđ€āļ—āđˆāļēāļāļąāļšāļ„āđˆāļēāļ§āļīāļāļĪāļ•āļŦāļĢāļ·āļ­āļ„āđˆāļēāđ€āļ•āļ·āļ­āļ™

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđ€āļ•āļ·āļ­āļ™āļ§āđˆāļēāļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒāđƒāļ” āđ† āļ—āļĩāđˆāđ€āļāļīāļ™ 100 āļŦāļ™āđ‰āļēāļĄāļĩāļŠāļ·āđˆāļ­āļ§āđˆāļē "rad" āđƒāļŦāđ‰āđƒāļŠāđˆāļˆāļģāļ™āļ§āļ™āļŦāļ™āđ‰āļē
āļ āļēāļĒāđƒāļ™āļŠāđˆāļ§āļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž

check_postgres_custom_query --valtype=string -w "rad" --query=
"āđ€āļĨāļ·āļ­āļāļœāļĨāļĨāļąāļžāļ˜āđŒ relname AS, relpages AS āļŦāļ™āđ‰āļēāļˆāļēāļ pg_class āđ‚āļ”āļĒāļ—āļĩāđˆ relpages > 100"

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āđƒāļŦāđ‰āļ„āđˆāļēāļ§āļīāļāļĪāļ•āļŦāļēāļāļŸāļąāļ‡āļāđŒāļŠāļąāļ™ "foobar" āļŠāđˆāļ‡āļāļĨāļąāļšāļ•āļąāļ§āđ€āļĨāļ‚āļ—āļĩāđˆāđ€āļāļīāļ™ 5MB:

check_postgres_custom_query --critical='5MB'--valtype=size --query="SELECT foobar() AS result"

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļŸāļąāļ‡āļāđŒāļŠāļąāļ™ "snazzo" āļ„āļ·āļ™āļ„āđˆāļēāļ™āđ‰āļ­āļĒāļāļ§āđˆāļē 42:

check_postgres_custom_query --critical=42 --query="SELECT snazzo() AS result" --reverse

āļŦāļēāļāļ„āļļāļ“āļžāļš custom_query āļ—āļĩāđˆāļĄāļĩāļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒ āđƒāļŦāđ‰āļĨāļ­āļ‡āļŠāđˆāļ‡āđ‚āļ›āļĢāđāļāļĢāļĄāđāļāđ‰āđ„āļ‚āđ„āļ›āļĒāļąāļ‡āđ‚āļ›āļĢāđāļāļĢāļĄāļ™āļĩāđ‰āđ„āļ›āļ—āļĩāđˆ
āļ—āļģāđƒāļŦāđ‰āđ€āļ›āđ‡āļ™āļāļēāļĢāļāļĢāļ°āļ—āļģāļĄāļēāļ•āļĢāļāļēāļ™āļ—āļĩāđˆāļœāļđāđ‰āļ­āļ·āđˆāļ™āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āđ„āļ”āđ‰

āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļĒāļąāļ‡āđ„āļĄāđˆāļĢāļ­āļ‡āļĢāļąāļš MRTG āļŦāļĢāļ·āļ­āđ€āļ­āļēāļ•āđŒāļžāļļāļ•āđāļšāļšāļ˜āļĢāļĢāļĄāļ”āļē

āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ_āļ‚āļ™āļēāļ”
("symlink: check_postgres_database_size") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ‚āļ™āļēāļ”āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āđāļĨāļ°āļšāđˆāļ™
āđ€āļĄāļ·āđˆāļ­āļĄāļĩāļ‚āļ™āļēāļ”āđƒāļŦāļāđˆāđ€āļāļīāļ™āđ„āļ› āđ„āļĄāđˆāļˆāļģāđ€āļ›āđ‡āļ™āļ•āđ‰āļ­āļ‡āļĢāļąāļ™āļ„āļģāļŠāļąāđˆāļ‡āļ™āļĩāđ‰āļĄāļēāļāļāļ§āđˆāļēāļŦāļ™āļķāđˆāļ‡āļ„āļĢāļąāđ‰āļ‡āļ•āđˆāļ­āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ
āļāļĨāļļāđˆāļĄ. āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āļ”āđ‰āļ§āļĒ --āļĢāļ§āļĄ āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđ
āļŠāđˆāļ§āļ™ "āļāļēāļĢāļāļĢāļ­āļ‡āļžāļ·āđ‰āļ™āļāļēāļ™" āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ āļžāļ§āļāđ€āļ‚āļēāļĒāļąāļ‡āļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āđ‚āļ”āļĒāđ€āļˆāđ‰āļēāļ‚āļ­āļ‡
āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļāļąāļš --includeuser āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄāļœāļđāđ‰āđƒāļŠāđ‰ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđ "āļāļēāļĢāļāļĢāļ­āļ‡āļŠāļ·āđˆāļ­āļœāļđāđ‰āđƒāļŠāđ‰"
āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ

āļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ—āļĩāđˆāļŠāļģāļ„āļąāļāļŠāļēāļĄāļēāļĢāļ–āļĢāļ°āļšāļļāđ€āļ›āđ‡āļ™āđ„āļšāļ•āđŒ āļāļīāđ‚āļĨāđ„āļšāļ•āđŒ āđ€āļĄāļāļ°āđ„āļšāļ•āđŒ
āļāļīāļāļ°āđ„āļšāļ•āđŒ āđ€āļ—āļĢāļēāđ„āļšāļ•āđŒ āļŦāļĢāļ·āļ­āđ€āļ­āđ‡āļāļ‹āļēāđ„āļšāļ•āđŒ āđāļ•āđˆāļĨāļ°āļ•āļąāļ§āļ­āļēāļˆāļĒāđˆāļ­āļĄāļēāļˆāļēāļāļ­āļąāļāļĐāļĢāļ•āļąāļ§āđāļĢāļāđ€āļŠāđˆāļ™āļāļąāļ™
āļŦāļēāļāđ„āļĄāđˆāļĄāļĩāļŦāļ™āđˆāļ§āļĒāđƒāļ”āđ„āļ”āđ‰āļĢāļąāļš āļŦāļ™āđˆāļ§āļĒāļˆāļ°āļ–āļ·āļ­āļ§āđˆāļēāļŦāļ™āđˆāļ§āļĒāđ€āļ›āđ‡āļ™āđ„āļšāļ•āđŒ āđ„āļĄāđˆāļĄāļĩāļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļŠāļģāļŦāļĢāļąāļšāļŠāļīāđˆāļ‡āļ™āļĩāđ‰
āļāļēāļĢāļāļĢāļ°āļ—āļģ: āļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļāļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ§āļīāļāļĪāļ•āļī āļ„āđˆāļēāđ€āļ•āļ·āļ­āļ™āļ•āđ‰āļ­āļ‡āđ„āļĄāđˆāļĄāļēāļāļāļ§āđˆāļē
āļāļ§āđˆāļēāļ„āđˆāļēāļ§āļīāļāļĪāļ• āļœāļĨāļĨāļąāļžāļ˜āđŒāļˆāļ°āļŠāđˆāļ‡āļ„āļ·āļ™āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāđ€āļĢāļĩāļĒāļ‡āļ•āļēāļĄāļ‚āļ™āļēāļ”āļ—āļĩāđˆāđƒāļŦāļāđˆāļ—āļĩāđˆāļŠāļļāļ”āļāđˆāļ­āļ™
āđāļŠāļ”āļ‡āļ—āļąāđ‰āļ‡āđ„āļšāļ•āđŒāļ”āļīāļšāđāļĨāļ°āļ‚āļ™āļēāļ”āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™ "āļŠāļ§āļĒ"

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđƒāļ” āđ† āļšāļ™āđ‚āļŪāļŠāļ•āđŒ flagg āļĄāļĩāļ‚āļ™āļēāļ”āđ€āļāļīāļ™ 1 TB āđāļĨāļ°āļŠāļģāļ„āļąāļāļŦāļēāļāđ€āļāļīāļ™
1.1 TB

check_postgres_database_size --host=flagg --warning='1 TB' --critical='1.1 t'

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āđƒāļŦāđ‰āļ„āđˆāļēāļ§āļīāļāļĪāļ•āļŦāļēāļ template1 āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļšāļ™āļžāļ­āļĢāđŒāļ• 5432 āļĄāļĩāļ‚āļ™āļēāļ”āđ€āļāļīāļ™ 10 MB

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 GB' --critical='10 GB'

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļŠāđˆāļ‡āļ„āļ·āļ™āļ‚āļ™āļēāļ”āđ€āļ›āđ‡āļ™āđ„āļšāļ•āđŒāļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāđƒāļŦāļāđˆāļ—āļĩāđˆāļŠāļļāļ”āđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļ āđāļĨāļ°
āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆ

dbstats
("symlink: check_postgres_dbstats") āļĢāļēāļĒāļ‡āļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļˆāļēāļāļĄāļļāļĄāļĄāļ­āļ‡ pg_stat_database
āđāļĨāļ°āļŠāđˆāļ‡āļ­āļ­āļāđƒāļ™āļĨāļąāļāļĐāļ“āļ°āļ—āļĩāđˆāđ€āļ›āđ‡āļ™āļĄāļīāļ•āļĢāļ•āđˆāļ­āļāļĢāļ°āļšāļ­āļ‡āđ€āļžāļŠāļĢ āđ„āļĄāđˆāļĢāļ­āļ‡āļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ•āļ­āļ·āđˆāļ™ āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāđ€āļ­āļēāļ•āđŒāļžāļļāļ•āđ€āļ›āđ‡āļ™
āđƒāļŦāđ‰āļ‚āđ‰āļ­āļĄāļđāļĨāđāļĨāļ°āđ„āļĄāđˆāđƒāļŦāđ‰āļĒāļ·āļĄāļ•āļąāļ§āđ€āļ­āļ‡āđ€āļžāļ·āđˆāļ­āļāļēāļĢāđāļˆāđ‰āļ‡āđ€āļ•āļ·āļ­āļ™ āđ€āļŠāđˆāļ™ āđƒāļŠāđ‰āļāļąāļš Nagios āļ–āđ‰āļēāđ„āļĄāđˆāļĄāļĩāļ•āļąāļ§āđ€āļĨāļ·āļ­āļ
āļˆāļ°āđ„āļ”āđ‰āļĢāļąāļš āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļˆāļ°āļ–āļđāļāļŠāđˆāļ‡āļāļĨāļąāļš āļŦāļ™āļķāđˆāļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ•āđˆāļ­āļšāļĢāļĢāļ—āļąāļ” āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļĢāļ§āļĄāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļ‰āļžāļēāļ°
āđ‚āļ”āļĒāđƒāļŠāđ‰āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ "--include" āļŦāļĢāļ·āļ­āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ "--dbname"

āļĄāļĩāļāļēāļĢāļŠāđˆāļ‡āļ„āļ·āļ™ XNUMX āļĢāļēāļĒāļāļēāļĢāđƒāļ™āđāļ•āđˆāļĨāļ°āļšāļĢāļĢāļ—āļąāļ” āđƒāļ™āļĢāļđāļ›āđāļšāļš name:value āļ„āļąāđˆāļ™āļ”āđ‰āļ§āļĒ single
āļŠāđˆāļ­āļ‡āļ§āđˆāļēāļ‡. āļĢāļēāļĒāļāļēāļĢāļ„āļ·āļ­:

āđāļšāđ‡āļāđ€āļ­āļ™āļ”āđŒ
āļˆāļģāļ™āļ§āļ™āđāļšāđ‡āļāđ€āļ­āļ™āļ”āđŒāļ—āļĩāđˆāļĢāļąāļ™āļ­āļĒāļđāđˆāđƒāļ™āļ›āļąāļˆāļˆāļļāļšāļąāļ™āļŠāļģāļŦāļĢāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ™āļĩāđ‰

āļĄāļļāđˆāļ‡āļĄāļąāđˆāļ™
āļˆāļģāļ™āļ§āļ™āļāļēāļĢāļ„āļ­āļĄāļĄāļīāļ•āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļŠāļģāļŦāļĢāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ™āļĩāđ‰āļ•āļąāđ‰āļ‡āđāļ•āđˆāļŠāļĢāđ‰āļēāļ‡āļŦāļĢāļ·āļ­āļĢāļĩāđ€āļ‹āđ‡āļ•

āļĒāđ‰āļ­āļ™āļāļĨāļąāļš
āļˆāļģāļ™āļ§āļ™āļāļēāļĢāļĒāđ‰āļ­āļ™āļāļĨāļąāļšāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļŠāļģāļŦāļĢāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ™āļĩāđ‰āļ•āļąāđ‰āļ‡āđāļ•āđˆāļŠāļĢāđ‰āļēāļ‡āļŦāļĢāļ·āļ­āļĢāļĩāđ€āļ‹āđ‡āļ•

āļ­āđˆāļēāļ™
āļˆāļģāļ™āļ§āļ™āļšāļĨāđ‡āļ­āļ„āļ”āļīāļŠāļāđŒāļ—āļĩāđˆāļ­āđˆāļēāļ™āļ—āļąāđ‰āļ‡āļŦāļĄāļ”

hit āļˆāļģāļ™āļ§āļ™āļšāļąāļŸāđ€āļŸāļ­āļĢāđŒāļ—āļąāđ‰āļ‡āļŦāļĄāļ”

ret āļˆāļģāļ™āļ§āļ™āđāļ–āļ§āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļŠāđˆāļ‡āļ„āļ·āļ™

āļ™āļģāļĄāļē
āļˆāļģāļ™āļ§āļ™āđāļ–āļ§āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļ”āļķāļ‡āļ­āļ­āļāļĄāļē

ins āļˆāļģāļ™āļ§āļ™āđāļ–āļ§āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāđāļ—āļĢāļ

upd āļˆāļģāļ™āļ§āļ™āđāļ–āļ§āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļ­āļąāļ›āđ€āļ”āļ•

del āļˆāļģāļ™āļ§āļ™āđāļ–āļ§āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļ–āļđāļāļĨāļš

āļŠāļ·āđˆāļ­āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ
āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ

āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļšāļ§āđˆāļēāļĢāļēāļĒāļāļēāļĢ ret, fetch, ins, upd āđāļĨāļ° del āļˆāļ°āđ€āļ›āđ‡āļ™ 0 āđ€āļŠāļĄāļ­ āļŦāļēāļ Postgres āđ€āļ›āđ‡āļ™āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™ 8.2
āļŦāļĢāļ·āļ­āļ•āđˆāļģāļāļ§āđˆāļē āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļŠāļ–āļīāļ•āļīāđ€āļŦāļĨāđˆāļēāļ™āļąāđ‰āļ™āđ„āļĄāđˆāļĄāļĩāđƒāļ™āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āđ€āļŦāļĨāđˆāļēāļ™āļąāđ‰āļ™

āļŦāļēāļāđ„āļ”āđ‰āļĢāļąāļšāļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒ dbname āļˆāļ°āļĄāļĩāļāļēāļĢāļŠāđˆāļ‡āļ„āļ·āļ™āļŠāļīāļ™āļ„āđ‰āļēāđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄāđ€āļˆāđ‡āļ”āļĢāļēāļĒāļāļēāļĢ:

idxscan
āļˆāļģāļ™āļ§āļ™āļāļēāļĢāļŠāđāļāļ™āļ”āļąāļŠāļ™āļĩāļœāļđāđ‰āđƒāļŠāđ‰āļ—āļąāđ‰āļ‡āļŦāļĄāļ”

āļĢāļŦāļąāļŠāļ›āļĢāļ°āļˆāļģāļ•āļąāļ§
āļˆāļģāļ™āļ§āļ™āļĢāļēāļĒāļāļēāļĢāļ”āļąāļŠāļ™āļĩāļœāļđāđ‰āđƒāļŠāđ‰āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļŠāđˆāļ‡āļ„āļ·āļ™

idxtupfetch
āļˆāļģāļ™āļ§āļ™āđāļ–āļ§āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļ”āļķāļ‡āđ‚āļ”āļĒāļāļēāļĢāļŠāđāļāļ™āļ”āļąāļŠāļ™āļĩāļœāļđāđ‰āđƒāļŠāđ‰āļ­āļĒāđˆāļēāļ‡āļ‡āđˆāļēāļĒ

idxblksread.php
āļˆāļģāļ™āļ§āļ™āļšāļĨāđ‡āļ­āļāļ”āļīāļŠāļāđŒāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļ­āđˆāļēāļ™āļŠāļģāļŦāļĢāļąāļšāļ”āļąāļŠāļ™āļĩāļœāļđāđ‰āđƒāļŠāđ‰āļ—āļąāđ‰āļ‡āļŦāļĄāļ”

idxblkhit
āļˆāļģāļ™āļ§āļ™āļšāļąāļŸāđ€āļŸāļ­āļĢāđŒ Hit āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļŠāļģāļŦāļĢāļąāļšāļ”āļąāļŠāļ™āļĩāļœāļđāđ‰āđƒāļŠāđ‰āļ—āļąāđ‰āļ‡āļŦāļĄāļ”

āļŠāđāļāļ™
āļˆāļģāļ™āļ§āļ™āļāļēāļĢāļŠāđāļāļ™āļ•āļēāļĄāļĨāļģāļ”āļąāļšāđ€āļ—āļĩāļĒāļšāļāļąāļšāļ•āļēāļĢāļēāļ‡āļœāļđāđ‰āđƒāļŠāđ‰āļ—āļąāđ‰āļ‡āļŦāļĄāļ”

āļ•āļīāļ”āļ•āļēāļĄ
āļˆāļģāļ™āļ§āļ™āļ—āļđāđ€āļžāļīāļĨāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļŠāđˆāļ‡āļ„āļ·āļ™āļˆāļēāļāļ•āļēāļĢāļēāļ‡āļœāļđāđ‰āđƒāļŠāđ‰āļ—āļąāđ‰āļ‡āļŦāļĄāļ”

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āļ„āļ§āđ‰āļēāļŠāļ–āļīāļ•āļīāļŠāļģāļŦāļĢāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļŠāļ·āđˆāļ­ "āļœāļĨāļīāļ•āļ āļąāļ“āļ‘āđŒ" āļšāļ™āđ‚āļŪāļŠāļ•āđŒ "āļ§āļīāļĨāđ‚āļĨāļ§āđŒ":

check_postgres_dbstats --dbhost willow --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

āļ›āļīāļ”āļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™_āļ—āļĢāļīāļāđ€āļāļ­āļĢāđŒ
("symlink: check_postgres_disabled_triggers") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļˆāļģāļ™āļ§āļ™āļ—āļĢāļīāļāđ€āļāļ­āļĢāđŒāļ—āļĩāđˆāļ›āļīāļ”āđƒāļŠāđ‰āļ‡āļēāļ™
āļ āļēāļĒāđƒāļ™āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ NS --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ„āļ·āļ­āļˆāļģāļ™āļ§āļ™āļ‚āļ­āļ‡āļ—āļĢāļīāļāđ€āļāļ­āļĢāđŒāļ”āļąāļ‡āļāļĨāđˆāļēāļ§
āļžāļšāđāļĨāļ°āļ—āļąāđ‰āļ‡āļŠāļ­āļ‡āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āđ€āļ›āđ‡āļ™ "1" āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āļ›āļāļ•āļīāļ—āļĩāđˆāļĄāļĩāļ—āļĢāļīāļāđ€āļāļ­āļĢāđŒāļ—āļĩāđˆāļ›āļīāļ”āđƒāļŠāđ‰āļ‡āļēāļ™āļ™āļąāđ‰āļ™āđ€āļ›āđ‡āļ™āļ­āļąāļ™āļ•āļĢāļēāļĒ
āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒ. āļŦāļēāļāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļ•āļĢāļ§āļˆāļŠāļ­āļšāđ€āļ›āđ‡āļ™ 8.3 āļŦāļĢāļ·āļ­āļŠāļđāļ‡āļāļ§āđˆāļē āđƒāļŦāđ‰āļ•āļĢāļ§āļˆāļŠāļ­āļšāđ€āļ›āđ‡āļ™āļ•āļąāļ§āđ€āļĨāļ‚
āļ—āļĢāļīāļāđ€āļāļ­āļĢāđŒāļ—āļĩāđˆāļ­āļĒāļđāđˆāđƒāļ™āļŠāļ–āļēāļ™āļ° 'āļ›āļīāļ”āļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™' (āļ•āļĢāļ‡āļ‚āđ‰āļēāļĄāļāļąāļšāļŠāļ–āļēāļ™āļ° 'āđ€āļŠāļĄāļ­' āļŦāļĢāļ·āļ­ 'āļˆāļģāļĨāļ­āļ‡') NS
āđ€āļ­āļēāļ•āđŒāļžāļļāļ•āļˆāļ°āđāļŠāļ”āļ‡āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļ•āļēāļĢāļēāļ‡āđāļĨāļ°āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļ—āļĢāļīāļāđ€āļāļ­āļĢāđŒāļŠāļģāļŦāļĢāļąāļšāļœāļđāđ‰āļžāļīāļāļēāļĢāđāļ•āđˆāļĨāļ°āļ„āļ™
āļ—āļĢāļīāļāđ€āļāļ­āļĢāđŒ

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āļ•āļĢāļ§āļˆāļŠāļ­āļšāđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāđ„āļĄāđˆāļĄāļĩāļ—āļĢāļīāļāđ€āļāļ­āļĢāđŒāļ—āļĩāđˆāļ›āļīāļ”āđƒāļŠāđ‰āļ‡āļēāļ™

check_postgres_disabled_triggers

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļŠāđˆāļ‡āļ„āļ·āļ™āļˆāļģāļ™āļ§āļ™āļ—āļĢāļīāļāđ€āļāļ­āļĢāđŒāļ—āļĩāđˆāļ›āļīāļ”āđƒāļŠāđ‰āļ‡āļēāļ™āđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļ

disk_space
("symlink: check_postgres_disk_space") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļžāļ·āđ‰āļ™āļ—āļĩāđˆāļ§āđˆāļēāļ‡āđƒāļ™āļ”āļīāļŠāļāđŒāļ—āļĩāđˆāļĄāļĩāļ­āļĒāļđāđˆāļˆāļĢāļīāļ‡āļ‹āļķāđˆāļ‡āđƒāļŠāđ‰āđ‚āļ”āļĒ
āđ‚āļžāļŠāđ€āļāļĢāļŠ āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļ•āđ‰āļ­āļ‡āļāļēāļĢāđƒāļŦāđ‰āļ„āļļāļ“āļĄāļĩāđ„āļŸāļĨāđŒāļ›āļāļīāļšāļąāļ•āļīāļāļēāļĢ "/bin/df" āļžāļĢāđ‰āļ­āļĄāđƒāļŦāđ‰āļĢāļēāļĒāļ‡āļēāļ™
āļšāļ™āļ‚āļ™āļēāļ”āļ”āļīāļŠāļāđŒ āđāļĨāļ°āļĒāļąāļ‡āļ•āđ‰āļ­āļ‡āļĢāļąāļ™āđ€āļ›āđ‡āļ™ superuser āļ”āļąāļ‡āļ™āļąāđ‰āļ™āļˆāļķāļ‡āļŠāļēāļĄāļēāļĢāļ–āļ•āļĢāļ§āļˆāļŠāļ­āļš
data_directory āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ āļēāļĒāđƒāļ™ Postgres NS --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļĄāļĩāļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđƒāļŦāđ‰
āđƒāļ™āļ‚āļ™āļēāļ”āļŦāļĢāļ·āļ­āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāļŦāļĢāļ·āļ­āļ—āļąāđ‰āļ‡āļŠāļ­āļ‡āļ­āļĒāđˆāļēāļ‡ āļŦāļēāļāđƒāļŠāđ‰āļ‚āļ™āļēāļ” āļ›āļĢāļ°āđ€āļ āļ—āļŦāļ™āđˆāļ§āļĒāļĄāļēāļ•āļĢāļāļēāļ™āļ„āļ·āļ­
āļ­āļ™āļļāļāļēāļ•: āđ„āļšāļ•āđŒ āļāļīāđ‚āļĨāđ„āļšāļ•āđŒ āļāļīāļāļ°āđ„āļšāļ•āđŒ āđ€āļĄāļāļ°āđ„āļšāļ•āđŒ āļāļīāļāļ°āđ„āļšāļ•āđŒ āđ€āļ—āļĢāļēāđ„āļšāļ•āđŒ āļŦāļĢāļ·āļ­āđ€āļ­āđ‡āļāļ‹āļēāđ„āļšāļ•āđŒ āđāļ•āđˆāļĨāļ°
āļ­āļēāļˆāđƒāļŠāđ‰āļ­āļąāļāļĐāļĢāļĒāđˆāļ­āļ•āļąāļ§āđāļĢāļāđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™ āđ„āļĄāđˆāļĄāļĩāļŦāļ™āđˆāļ§āļĒāđƒāļ”āļšāđˆāļ‡āļŠāļĩāđ‰ 'āđ„āļšāļ•āđŒ' NS
āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ„āļ·āļ­ '90%' āđāļĨāļ° '95%'

āļ„āļģāļŠāļąāđˆāļ‡āļ™āļĩāđ‰āļˆāļ°āļ•āļĢāļ§āļˆāļŠāļ­āļšāļŠāļīāđˆāļ‡āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰āđ€āļžāļ·āđˆāļ­āļāļģāļŦāļ™āļ”āļŸāļīāļŠāļīāļ„āļąāļĨāļ”āļīāļŠāļāđŒāļ—āļĩāđˆāđāļ•āļāļ•āđˆāļēāļ‡āļāļąāļ™āļ—āļąāđ‰āļ‡āļŦāļĄāļ”
āļ–āļđāļāđƒāļŠāđ‰āđ‚āļ”āļĒ Postgres

data_directory - āļ”āļīāļŠāļāđŒāļ—āļĩāđˆāđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩāļ‚āđ‰āļ­āļĄāļđāļĨāļŦāļĨāļąāļāđ€āļ›āļīāļ”āļ­āļĒāļđāđˆ

āđ€āļ‚āđ‰āļēāļŠāļđāđˆāļĢāļ°āļšāļš āđ„āļ”āđ€āļĢāļāļ—āļ­āļĢāļĩ - āļ”āļīāļŠāļāđŒāļ—āļĩāđˆāđ„āļŸāļĨāđŒāļšāļąāļ™āļ—āļķāļāđ€āļ›āļīāļ”āļ­āļĒāļđāđˆ

WAL āđ„āļŸāļĨāđŒ āđ„āļ”āđ€āļĢāļāļ—āļ­āļĢāļĩ - āļ”āļīāļŠāļāđŒāļ—āļĩāđˆāļšāļąāļ™āļ—āļķāļāļāļēāļĢāđ€āļ‚āļĩāļĒāļ™āļĨāđˆāļ§āļ‡āļŦāļ™āđ‰āļēāđ€āļ›āļīāļ”āļ­āļĒāļđāđˆ (āđ€āļŠāđˆāļ™ āđ€āļŠāļ·āđˆāļ­āļĄāđ‚āļĒāļ‡ pg_xlog)

āļŠāđ‰āļ­āļ™āđ‚āļ•āđŠāļ° - āđāļ•āđˆāļĨāļ° tablespace āļ—āļĩāđˆāļ­āļĒāļđāđˆāđƒāļ™āļ”āļīāļŠāļāđŒāđāļĒāļāļ•āđˆāļēāļ‡āļŦāļēāļ

āđ€āļ­āļēāļ•āđŒāļžāļļāļ•āđāļŠāļ”āļ‡āļ‚āļ™āļēāļ”āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāđƒāļŠāđ‰āđāļĨāļ°āļžāļĢāđ‰āļ­āļĄāđƒāļŠāđ‰āļ‡āļēāļ™āđƒāļ™āđāļ•āđˆāļĨāļ°āļ”āļīāļŠāļāđŒ āļĢāļ§āļĄāļ–āļķāļ‡
āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒ āđ€āļĢāļĩāļĒāļ‡āļ•āļēāļĄāđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāļŠāļđāļ‡āļŠāļļāļ”āđ„āļ›āļ•āđˆāļģāļŠāļļāļ”āļ—āļĩāđˆāđƒāļŠāđ‰ āđāļ•āđˆāļĨāļ°āļĢāļēāļĒāļāļēāļĢāļ”āđ‰āļēāļ™āļšāļ™āđāļĄāļ›āļāļąāļšāđ„āļŸāļĨāđŒ
āļĢāļ°āļšāļš: āļŠāļīāđˆāļ‡āđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļŠāļēāļĄāļēāļĢāļ–āļĢāļ§āļĄāļŦāļĢāļ·āļ­āđāļĒāļāļ­āļ­āļāđ„āļ”āđ‰ āļ”āļđāļŠāđˆāļ§āļ™ "āļāļēāļĢāļāļĢāļ­āļ‡āļžāļ·āđ‰āļ™āļāļēāļ™" āļŠāļģāļŦāļĢāļąāļšāļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ
āļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āļ•āļĢāļ§āļˆāļŠāļ­āļšāđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāđ„āļĄāđˆāļĄāļĩāļĢāļ°āļšāļšāđ„āļŸāļĨāđŒāđƒāļ”āđ€āļāļīāļ™ 90% āļŠāļģāļŦāļĢāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļšāļ™āļžāļ­āļĢāđŒāļ• 5432

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

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļĢāļ°āļšāļšāđ„āļŸāļĨāđŒāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļ‚āļķāđ‰āļ™āļ•āđ‰āļ™āļ”āđ‰āļ§āļĒ /dev/sda āļĄāļĩāļ‚āļ™āļēāļ”āđ€āļĨāđ‡āļāļāļ§āđˆāļē 10 GB āđāļĨāļ°
11 GB (āļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ§āļīāļāļĪāļ•āļī)

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

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 4: āļ•āļĢāļ§āļˆāļŠāļ­āļšāđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāđ„āļĄāđˆāļĄāļĩāļĢāļ°āļšāļšāđ„āļŸāļĨāđŒāđƒāļ”āđ€āļāļīāļ™ 50% āđāļĨāļ° āļĄāļĩāļĄāļēāļāļāļ§āđˆāļē 15 GB

check_postgres_disk_space --critical='50% āđāļĨāļ° 15 GB'

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 5: āļ­āļ­āļāļ„āļģāđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļĢāļ°āļšāļšāđ„āļŸāļĨāđŒāđƒāļ”āļĄāļĩāļĄāļēāļāļāļ§āđˆāļē 70% āđ€āļ•āđ‡āļĄ or āļĄāļĩāļĄāļēāļāļāļ§āđˆāļē 1T

check_postgres_disk_space --warning='1T āļŦāļĢāļ·āļ­ 75'

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļŠāđˆāļ‡āļ„āļ·āļ™āļ‚āļ™āļēāļ”āđ€āļ›āđ‡āļ™āđ„āļšāļ•āđŒāļ‚āļ­āļ‡āļĢāļ°āļšāļšāđ„āļŸāļĨāđŒāđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļ āđāļĨāļ°āļ„āđˆāļē
āļŠāļ·āđˆāļ­āļĢāļ°āļšāļšāđ„āļŸāļĨāđŒāđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆ

fsm_pages
("symlink: check_postgres_fsm_pages") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒāļ­āļĒāļđāđˆāđƒāļāļĨāđ‰āļāļąāļš Postgres āļĄāļēāļāđ€āļžāļĩāļĒāļ‡āđƒāļ”
max_fsm_pages āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļˆāļ°āđƒāļŠāđ‰āđ„āļ”āđ‰āđ€āļ‰āļžāļēāļ°āļāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ 8.2 āļŦāļĢāļ·āļ­āļŠāļđāļ‡āļāļ§āđˆāļē āđāļĨāļ°āļĄāļąāļ™
āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰āđ‚āļĄāļ”āļđāļĨāļĄāļĩāļŠāđˆāļ§āļ™āļĢāđˆāļ§āļĄ pg_freespacemap āļˆāļ°āļ–āļđāļāļ•āļīāļ”āļ•āļąāđ‰āļ‡ NS --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ•
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ„āļ§āļĢāđāļŠāļ”āļ‡āđ€āļ›āđ‡āļ™āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒ āļˆāļģāļ™āļ§āļ™āļŦāļ™āđ‰āļēāļ—āļĩāđˆāđƒāļŠāđ‰āđƒāļ™ free-space-map
āļ–āļđāļāļāļģāļŦāļ™āļ”āđ‚āļ”āļĒāļ”āļđāđƒāļ™āļĄāļļāļĄāļĄāļ­āļ‡ pg_freespacemap_relations āđāļĨāļ°āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļŠāļđāļ•āļĢ
āļ•āļēāļĄāļŠāļđāļ•āļĢāļ—āļĩāđˆāđƒāļŠāđ‰āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ•āđ€āļžāļˆāļĨāđ‡āļ­āļ•āļ‚āļ­āļ‡āđāļœāļ™āļ—āļĩāđˆāļžāļ·āđ‰āļ™āļ—āļĩāđˆāļ§āđˆāļēāļ‡āđƒāļ™ verbose āļŠāļļāļāļāļēāļāļēāļĻ
āļŠāļąāđˆāļ‡āļāļēāļĢ. āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ„āļ·āļ­ āļĨāļ” 85% āđ€āļžāļ·āđˆāļ­āđ€āļ›āđ‡āļ™āļ­āļļāļ—āļēāļŦāļĢāļ“āđŒāđāļĨāļ° āļĨāļ” 95% āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ§āļīāļˆāļēāļĢāļ“āđŒ

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđƒāļŦāđ‰āļ„āļģāđ€āļ•āļ·āļ­āļ™āđ€āļĄāļ·āđˆāļ­āļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒāļ‚āļ­āļ‡āđ€āļĢāļēāđƒāļŠāđ‰āļŠāđˆāļ­āļ‡āđ€āļžāļˆāļžāļ·āđ‰āļ™āļ—āļĩāđˆāļ§āđˆāļēāļ‡āļ–āļķāļ‡ 76%
āļ”āđ‰āļ§āļĒ pg_freespacemap āļ•āļīāļ”āļ•āļąāđ‰āļ‡āļ­āļĒāļđāđˆāđƒāļ™āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ robert

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

āđāļĄāđ‰āļ§āđˆāļēāļ„āļļāļ“āļˆāļ°āļ•āđ‰āļ­āļ‡āļŠāđˆāļ‡āļœāđˆāļēāļ™āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļ•āļīāļ”āļ•āļąāđ‰āļ‡ pg_freespacemap āļ„āļļāļ“
āļ•āđ‰āļ­āļ‡āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ™āļĩāđ‰āđ€āļžāļĩāļĒāļ‡āļ„āļĢāļąāđ‰āļ‡āđ€āļ”āļĩāļĒāļ§āļ•āđˆāļ­āļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒ āļ™āļ­āļāļˆāļēāļāļ™āļĩāđ‰āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ‚āđ‰āļ­āļĄāļđāļĨāļ™āļĩāđ‰āļĒāļąāļ‡āđ„āļĄāđˆāļˆāļģāđ€āļ›āđ‡āļ™
āļĢāļąāļšāļĨāđ‡āļ­āļ„āļžāļīāđ€āļĻāļĐāļšāļ™āđāļœāļ™āļ—āļĩāđˆāļžāļ·āđ‰āļ™āļ—āļĩāđˆāļ§āđˆāļēāļ‡āļ”āļąāļ‡āļ™āļąāđ‰āļ™āļ‚āļ­āđāļ™āļ°āļ™āļģāļ­āļĒāđˆāļēāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰
āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ”āđ‰āļ§āļĒāļŠāđˆāļ§āļ‡āđ€āļ§āļĨāļēāļŠāļąāđ‰āļ™ āđ†

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļŠāđˆāļ‡āļ„āļ·āļ™āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāļ‚āļ­āļ‡āđāļœāļ™āļœāļąāļ‡āļžāļ·āđ‰āļ™āļ—āļĩāđˆāļ§āđˆāļēāļ‡āđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļāđāļĨāļ°āļ•āļąāļ§āđ€āļĨāļ‚
āļ‚āļ­āļ‡āļŦāļ™āđ‰āļēāļ—āļĩāđˆāđƒāļŠāđ‰āļ­āļĒāļđāđˆāđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļ­āļ‡

fsm_relations
("symlink: check_postgres_fsm_relations") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒāļ­āļĒāļđāđˆāđƒāļāļĨāđ‰āļāļąāļš Postgres āļĄāļēāļāđ€āļžāļĩāļĒāļ‡āđƒāļ”
max_fsm_relations āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļˆāļ°āđƒāļŠāđ‰āđ„āļ”āđ‰āđ€āļ‰āļžāļēāļ°āļāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ 8.2 āļŦāļĢāļ·āļ­āļŠāļđāļ‡āļāļ§āđˆāļē āđāļĨāļ°
āļĄāļąāļ™āļ•āđ‰āļ­āļ‡āļĄāļĩāđ‚āļĄāļ”āļđāļĨāļāļēāļĢāļĄāļĩāļŠāđˆāļ§āļ™āļĢāđˆāļ§āļĄ pg_freespacemap āļˆāļ°āļ–āļđāļāļ•āļīāļ”āļ•āļąāđ‰āļ‡ NS --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ•
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ„āļ§āļĢāđāļŠāļ”āļ‡āđ€āļ›āđ‡āļ™āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒ āļˆāļģāļ™āļ§āļ™āļ‚āļ­āļ‡āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒāļ—āļĩāđˆāđƒāļŠāđ‰āđƒāļ™āļŸāļĢāļĩ-
space-map āļ–āļđāļāļāļģāļŦāļ™āļ”āđ‚āļ”āļĒāļ”āļđāđƒāļ™āļĄāļļāļĄāļĄāļ­āļ‡ pg_freespacemap_relations āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™
āļ„āđˆāļēāļ„āļ·āļ­ āļĨāļ” 85% āđ€āļžāļ·āđˆāļ­āđ€āļ›āđ‡āļ™āļ­āļļāļ—āļēāļŦāļĢāļ“āđŒāđāļĨāļ° āļĨāļ” 95% āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ§āļīāļˆāļēāļĢāļ“āđŒ

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđƒāļŦāđ‰āļ„āļģāđ€āļ•āļ·āļ­āļ™āđ€āļĄāļ·āđˆāļ­āļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒāļ‚āļ­āļ‡āđ€āļĢāļēāđƒāļŠāđ‰āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒāļ‚āļ­āļ‡āļžāļ·āđ‰āļ™āļ—āļĩāđˆāļ§āđˆāļēāļ‡āļ–āļķāļ‡ 80%
āļ”āđ‰āļ§āļĒ pg_freespacemap āļ•āļīāļ”āļ•āļąāđ‰āļ‡āļ­āļĒāļđāđˆāđƒāļ™āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ dylan

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

āđāļĄāđ‰āļ§āđˆāļēāļ„āļļāļ“āļˆāļ°āļ•āđ‰āļ­āļ‡āļŠāđˆāļ‡āļœāđˆāļēāļ™āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļ•āļīāļ”āļ•āļąāđ‰āļ‡ pg_freespacemap āļ„āļļāļ“
āļ•āđ‰āļ­āļ‡āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ™āļĩāđ‰āđ€āļžāļĩāļĒāļ‡āļ„āļĢāļąāđ‰āļ‡āđ€āļ”āļĩāļĒāļ§āļ•āđˆāļ­āļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒ āļ™āļ­āļāļˆāļēāļāļ™āļĩāđ‰āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ‚āđ‰āļ­āļĄāļđāļĨāļ™āļĩāđ‰āļĒāļąāļ‡āđ„āļĄāđˆāļˆāļģāđ€āļ›āđ‡āļ™
āļĢāļąāļšāļĨāđ‡āļ­āļ„āļžāļīāđ€āļĻāļĐāļšāļ™āđāļœāļ™āļ—āļĩāđˆāļžāļ·āđ‰āļ™āļ—āļĩāđˆāļ§āđˆāļēāļ‡āļ”āļąāļ‡āļ™āļąāđ‰āļ™āļ‚āļ­āđāļ™āļ°āļ™āļģāļ­āļĒāđˆāļēāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰
āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ”āđ‰āļ§āļĒāļŠāđˆāļ§āļ‡āđ€āļ§āļĨāļēāļŠāļąāđ‰āļ™ āđ†

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļŠāđˆāļ‡āļ„āļ·āļ™āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāļ‚āļ­āļ‡āđāļœāļ™āļœāļąāļ‡āļžāļ·āđ‰āļ™āļ—āļĩāđˆāļ§āđˆāļēāļ‡āđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļ āļˆāļģāļ™āļ§āļ™
āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒāļ—āļĩāđˆāđƒāļŠāđ‰āļ­āļĒāļđāđˆāđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļ­āļ‡

āļ­āļąāļ•āļĢāļēāļŠāđˆāļ§āļ™āļāļēāļĢāļ•āļĩ
("symlink: check_postgres_hitratio") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ­āļąāļ•āļĢāļēāļŠāđˆāļ§āļ™āļāļēāļĢāļ•āļĩāļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āđāļĨāļ°āļšāđˆāļ™
āđ€āļĄāļ·āđˆāļ­āļžāļ§āļāđ€āļ‚āļēāļ•āđˆāļģāđ€āļāļīāļ™āđ„āļ› āđ„āļĄāđˆāļˆāļģāđ€āļ›āđ‡āļ™āļ•āđ‰āļ­āļ‡āļĢāļąāļ™āļ„āļģāļŠāļąāđˆāļ‡āļ™āļĩāđ‰āļĄāļēāļāļāļ§āđˆāļēāļŦāļ™āļķāđˆāļ‡āļ„āļĢāļąāđ‰āļ‡āļ•āđˆāļ­āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ
āļāļĨāļļāđˆāļĄ. āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āļ”āđ‰āļ§āļĒ --āļĢāļ§āļĄ āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđ
āļŠāđˆāļ§āļ™ "āļāļēāļĢāļāļĢāļ­āļ‡āļžāļ·āđ‰āļ™āļāļēāļ™" āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ āļžāļ§āļāđ€āļ‚āļēāļĒāļąāļ‡āļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āđ‚āļ”āļĒāđ€āļˆāđ‰āļēāļ‚āļ­āļ‡
āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļāļąāļš --includeuser āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄāļœāļđāđ‰āđƒāļŠāđ‰ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđ "āļāļēāļĢāļāļĢāļ­āļ‡āļŠāļ·āđˆāļ­āļœāļđāđ‰āđƒāļŠāđ‰"
āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ

āļ„āļ§āļĢāļĢāļ°āļšāļļāļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ—āļĩāđˆāļŠāļģāļ„āļąāļāđ€āļ›āđ‡āļ™āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒ āđ„āļĄāđˆāļĄāļĩ
āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰: āļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļāļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ§āļīāļāļĪāļ•āļī āļ„āđˆāļēāđ€āļ•āļ·āļ­āļ™
āđ„āļĄāđˆāļŠāļēāļĄāļēāļĢāļ–āļĄāļēāļāļāļ§āđˆāļēāļ„āđˆāļēāļ§āļīāļāļĪāļ• āļœāļĨāļĨāļąāļžāļ˜āđŒāļˆāļ°āļŠāđˆāļ‡āļ„āļ·āļ™āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļˆāļąāļ”āđ€āļĢāļĩāļĒāļ‡āđ‚āļ”āļĒ
hitratio āļ™āđ‰āļ­āļĒāļ—āļĩāđˆāļŠāļļāļ”āļāđˆāļ­āļ™

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡: āđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđƒāļ” āđ† āļšāļ™āđ‚āļŪāļŠāļ•āđŒ flagg āļĄāļĩāļ­āļąāļ•āļĢāļē Hitratio āļ™āđ‰āļ­āļĒāļāļ§āđˆāļē 90% āđāļĨāļ°āļ§āļīāļāļĪāļ• if
āļ™āđ‰āļ­āļĒāļāļ§āđˆāļē 80%

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

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļŠāđˆāļ‡āļ„āļ·āļ™āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļĄāļĩ hitratio āļ™āđ‰āļ­āļĒāļ—āļĩāđˆāļŠāļļāļ”āļšāļ™
āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļāđāļĨāļ°āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆ

hot_standby_delay
("symlink: check_hot_standby_delay") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ§āļēāļĄāļĨāđˆāļēāļŠāđ‰āļēāļāļēāļĢāļˆāļģāļĨāļ­āļ‡āđāļšāļšāļŠāļ•āļĢāļĩāļĄāļĄāļīāđˆāļ‡āđ‚āļ”āļĒāļāļēāļĢāļ„āļģāļ™āļ§āļ“
āđ€āļ”āļĨāļ•āđ‰āļēāļĢāļ°āļŦāļ§āđˆāļēāļ‡āļ•āļģāđāļŦāļ™āđˆāļ‡ xlog āļ›āļąāļˆāļˆāļļāļšāļąāļ™āļ‚āļ­āļ‡āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāļŦāļĨāļąāļāđāļĨāļ°āļ•āļģāđāļŦāļ™āđˆāļ‡āđ€āļĨāđˆāļ™āļ‹āđ‰āļģāļ‚āļ­āļ‡a
āļ—āļēāļŠāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļāļąāļšāļĄāļąāļ™ āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāļ—āļēāļŠāļ•āđ‰āļ­āļ‡āļ­āļĒāļđāđˆāđƒāļ™āđ‚āļŦāļĄāļ” hot_standby (āđ€āļŠāđˆāļ™ āļ­āđˆāļēāļ™āļ­āļĒāđˆāļēāļ‡āđ€āļ”āļĩāļĒāļ§)
āļ”āļąāļ‡āļ™āļąāđ‰āļ™āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ‚āļąāđ‰āļ™āļ•āđˆāļģāļ—āļĩāđˆāļˆāļ°āđƒāļŠāđ‰āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļ„āļ·āļ­ Postgres 9.0 NS --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ°
--āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ„āļ·āļ­āđ€āļ”āļĨāļ•āđ‰āļēāļĢāļ°āļŦāļ§āđˆāļēāļ‡āļ•āļģāđāļŦāļ™āđˆāļ‡ xlog āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļ„āđˆāļēāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āđ€āļ›āđ‡āļ™ byte
āļ­āļ­āļŸāđ€āļ‹āđ‡āļ•āđƒāļ™ WAL āļ„āļ§āļĢāļ•āļĢāļ‡āļāļąāļšāļ›āļĢāļīāļĄāļēāļ“āļ˜āļļāļĢāļāļĢāļĢāļĄāļ—āļĩāđˆāļ„āļēāļ”āđ„āļ§āđ‰āļ‚āļ­āļ‡āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āļ‚āļ­āļ‡āļ„āļļāļ“
āđ€āļžāļ·āđˆāļ­āļ›āđ‰āļ­āļ‡āļāļąāļ™āļœāļĨāļšāļ§āļāļĨāļ§āļ‡āļŦāļĢāļ·āļ­āļœāļĨāļĨāļš

āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ "--dbname", "--host" āđāļĨāļ° "--port" āđāļĢāļ āļŊāļĨāļŊ āļ–āļ·āļ­āđ€āļ›āđ‡āļ™āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļŦāļĨāļąāļ NS
āļ—āļĩāđˆāļŠāļ­āļ‡āđ€āļ›āđ‡āļ™āļ‚āļ­āļ‡āļ—āļēāļŠ

āļ„āđˆāļēāđ„āļšāļ•āđŒāļ„āļ§āļĢāļ‚āļķāđ‰āļ™āļ­āļĒāļđāđˆāļāļąāļšāļ›āļĢāļīāļĄāļēāļ“āļ˜āļļāļĢāļāļĢāļĢāļĄāļ—āļĩāđˆāļˆāļģāđ€āļ›āđ‡āļ™āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļŠāļ•āļĢāļĩāļĄ
āļāļēāļĢāļˆāļģāļĨāļ­āļ‡āđāļšāļšāļĒāļāđ€āļĨāļīāļāļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļˆāļēāļāļ•āđ‰āļ™āđāļšāļšāđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļ„āļ§āļēāļĄāļĨāđˆāļēāļŠāđ‰āļēāļĄāļēāļāđ€āļāļīāļ™āđ„āļ› āļāļģāļŦāļ™āļ”āđ‚āļ”āļĒ Postgres
āļ•āļąāļ§āđāļ›āļĢāļāļēāļĢāļāļģāļŦāļ™āļ”āļ„āđˆāļē wal_keep_segments. āļŠāļģāļŦāļĢāļąāļšāļŦāļ™āđˆāļ§āļĒāđ€āļ§āļĨāļē āļŦāļ™āđˆāļ§āļĒāļ—āļĩāđˆāđƒāļŠāđ‰āđ„āļ”āđ‰āļ„āļ·āļ­ 'āļ§āļīāļ™āļēāļ—āļĩ'
'āļ™āļēāļ—āļĩ' 'āļŠāļąāđˆāļ§āđ‚āļĄāļ‡' āļŦāļĢāļ·āļ­ 'āļ§āļąāļ™' āđāļ•āđˆāļĨāļ°āļ„āļģāļ­āļēāļˆāđ€āļ‚āļĩāļĒāļ™āđ€āļ›āđ‡āļ™āđ€āļ­āļāļžāļˆāļ™āđŒāļŦāļĢāļ·āļ­āļĒāđˆāļ­āđ€āļ›āđ‡āļ™
āļˆāļ”āļŦāļĄāļēāļĒāļ‰āļšāļąāļšāđāļĢāļ. āđ€āļĄāļ·āđˆāļ­āļĢāļ°āļšāļļāļ—āļąāđ‰āļ‡āļŠāļ­āļ‡āļ­āļĒāđˆāļēāļ‡ āđƒāļ™āļĢāļđāļ›āđāļšāļš 'āđ„āļšāļ•āđŒ āđāļĨāļ° āđ€āļ§āļĨāļē' āļ—āļąāđ‰āļ‡āļŠāļ­āļ‡āđ€āļ‡āļ·āđˆāļ­āļ™āđ„āļ‚āļ•āđ‰āļ­āļ‡āđ€āļ›āđ‡āļ™
āļˆāļĢāļīāļ‡āđ€āļžāļ·āđˆāļ­āđƒāļŦāđ‰āđ€āļ›āđ‡āļ™āđ„āļ›āļ•āļēāļĄāđ€āļāļ“āļ‘āđŒ

āļ„āļļāļ“āļ•āđ‰āļ­āļ‡āđƒāļŦāđ‰āļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļ§āļīāļ˜āļĩāļāļēāļĢāđ€āļ‚āđ‰āļēāļ–āļķāļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđ‚āļ”āļĒāđƒāļŦāđ‰āļ„āļąāđˆāļ™āļ”āđ‰āļ§āļĒāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļŦāļĄāļēāļĒāļˆāļļāļĨāļ āļēāļ„
āđāļŠāļ”āļ‡āļĢāļēāļĒāļāļēāļĢāļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒ --dbhost āđāļĨāļ° --dbport āđ€āļŠāđˆāļ™ "--dbport=5432,5543" āļ–āđ‰āļēāđ„āļĄāđˆāđƒāļŦāđ‰
āļāļēāļĢāļāļĢāļ°āļ—āļģāļĨāđ‰āļĄāđ€āļŦāļĨāļ§

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđ€āļ•āļ·āļ­āļ™āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļĄāļĩāļāļēāļĢāļˆāļģāļĨāļ­āļ‡āđāļšāļšāđ‚āļĨāļ„āļąāļĨāļšāļ™āļžāļ­āļĢāđŒāļ• 5433 āļ­āļĒāļđāđˆāđ€āļšāļ·āđ‰āļ­āļ‡āļŦāļĨāļąāļ‡āđƒāļ™ xlog replay
āđ€āļĨāļĒ

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

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āđƒāļŦāđ‰āļ„āđˆāļēāļ§āļīāļāļĪāļ•āļŦāļēāļāļ•āļąāļ§āļˆāļģāļĨāļ­āļ‡āļ˜āļļāļĢāļāļĢāļĢāļĄāļĨāđˆāļēāļŠāļļāļ” 1 āđ„āļ”āđ‰āļĢāļąāļšāļĄāļēāļāļāļ§āđˆāļē 10
āļ™āļēāļ—āļĩāļ—āļĩāđˆāđāļĨāđ‰āļ§

check_hot_standby_delay --dbhost=master,replica1 --critical='10 āļ™āļēāļ—āļĩ'

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 3: āļ­āļ™āļļāļāļēāļ•āđƒāļŦāđ‰ replica1 āđ€āļ›āđ‡āļ™ 1 āļŠāđˆāļ§āļ™ WAL āļ—āļĩāđˆāļ­āļĒāļđāđˆāđ€āļšāļ·āđ‰āļ­āļ‡āļŦāļĨāļąāļ‡ āļŦāļēāļāļ•āđ‰āļ™āđāļšāļšāđ€āļŦāđ‡āļ™āļŠāļąāđˆāļ§āļ‚āļ“āļ°
āļāļīāļˆāļāļĢāļĢāļĄāļĄāļēāļāļāļ§āđˆāļēāļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļāļēāļĢāļˆāļģāļĨāļ­āļ‡āđāļšāļšāļŠāļ•āļĢāļĩāļĄāļĄāļīāđˆāļ‡āļŠāļēāļĄāļēāļĢāļ–āļˆāļąāļ”āļāļēāļĢāđ„āļ”āđ‰āļŦāļĢāļ·āļ­āļŠāđ‰āļēāļāļ§āđˆāļē 10 āļ™āļēāļ—āļĩ
āļ–āđ‰āļēāļ­āļēāļˆāļēāļĢāļĒāđŒāđ€āļŦāđ‡āļ™āļāļīāļˆāļāļĢāļĢāļĄāļ™āđ‰āļ­āļĒāļĄāļēāļāđāļĨāļ°āđ„āļĄāđˆāļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāļ˜āļļāļĢāļāļĢāļĢāļĄāđƒāļ” āđ† āđāļ•āđˆāđ„āļĄāđˆāđƒāļŠāđˆ
āļ—āļąāđ‰āļ‡āļŠāļ­āļ‡āļ­āļĒāđˆāļēāļ‡ āļ‹āļķāđˆāļ‡āļˆāļ°āļšāđˆāļ‡āļšāļ­āļāļ–āļķāļ‡āļ›āļąāļāļŦāļēāļ–āļēāļ§āļĢāļāļąāļšāļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļāļēāļĢāļˆāļģāļĨāļ­āļ‡āđāļšāļš

check_hot_standby_delay --dbhost=master,replica1 --warning='1048576 and 2 min' --critical='16777216 and 10 min'

āļ”āļąāļŠāļ™āļĩ_āļ‚āļ™āļēāļ”
āļ•āļēāļĢāļēāļ‡_āļ‚āļ™āļēāļ”
āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒ_āļ‚āļ™āļēāļ”
(āļĨāļīāļ‡āļāđŒāđ€āļŠāļ·āđˆāļ­āļĄāđ‚āļĒāļ‡: "check_postgres_index_size", "check_postgres_table_size" āđāļĨāļ°
"check_postgres_relation_size") āļāļēāļĢāļāļĢāļ°āļ—āļģ āļ•āļēāļĢāļēāļ‡_āļ‚āļ™āļēāļ” āđāļĨāļ° āļ”āļąāļŠāļ™āļĩ_āļ‚āļ™āļēāļ” āđ€āļ›āđ‡āļ™āđ€āļžāļĩāļĒāļ‡
āļĢāļđāļ›āđāļšāļšāļ‚āļ­āļ‡ āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒ_āļ‚āļ™āļēāļ” āļāļēāļĢāļāļĢāļ°āļ—āļģāļ—āļĩāđˆāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒāļ—āļĩāđˆāđ€āļ•āļīāļšāđ‚āļ•āļ‚āļķāđ‰āļ™āļ”āđ‰āļ§āļĒ
āđƒāļŦāļāđˆ. āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒ (āđƒāļ™āļ„āļģāļ­āļ·āđˆāļ™ āđ† āļ•āļēāļĢāļēāļ‡āđāļĨāļ°āļ”āļąāļŠāļ™āļĩ) āļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āļ”āđ‰āļ§āļĒ --āļĢāļ§āļĄ
āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđāļŠāđˆāļ§āļ™ "āļāļēāļĢāļāļĢāļ­āļ‡āļžāļ·āđ‰āļ™āļāļēāļ™" āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒāļŠāļēāļĄāļēāļĢāļ–
āļĒāļąāļ‡āļ–āļđāļāļāļĢāļ­āļ‡āđ‚āļ”āļĒāļœāļđāđ‰āđƒāļŠāđ‰āļ—āļĩāđˆāđ€āļ›āđ‡āļ™āđ€āļˆāđ‰āļēāļ‚āļ­āļ‡āļžāļ§āļāđ€āļ‚āļēāđ‚āļ”āļĒāđƒāļŠāđ‰ --includeuser āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄāļœāļđāđ‰āđƒāļŠāđ‰
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđāļŠāđˆāļ§āļ™ "āļāļēāļĢāļāļĢāļ­āļ‡āļŠāļ·āđˆāļ­āļœāļđāđ‰āđƒāļŠāđ‰" āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ

āļ„āđˆāļēāļŠāļģāļŦāļĢāļąāļš --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ„āļ·āļ­āļ‚āļ™āļēāļ”āđ„āļŸāļĨāđŒāđāļĨāļ°āļ­āļēāļˆāļĄāļĩāļŦāļ™āđˆāļ§āļĒāđ€āļ›āđ‡āļ™
āđ„āļšāļ•āđŒ āļāļīāđ‚āļĨāđ„āļšāļ•āđŒ āđ€āļĄāļāļ°āđ„āļšāļ•āđŒ āļāļīāļāļ°āđ„āļšāļ•āđŒ āđ€āļ—āļĢāļēāđ„āļšāļ•āđŒ āļŦāļĢāļ·āļ­āđ€āļ­āđ‡āļāļ‹āļēāđ„āļšāļ•āđŒ āđāļ•āđˆāļĨāļ°āļ„āļ™āļŠāļēāļĄāļēāļĢāļ–āļĒāđˆāļ­āđ„āļ”āđ‰
āļ–āļķāļ‡āļ•āļąāļ§āļ­āļąāļāļĐāļĢāļ•āļąāļ§āđāļĢāļ āļŦāļēāļāđ„āļĄāđˆāđ„āļ”āđ‰āļĢāļ°āļšāļļāļŦāļ™āđˆāļ§āļĒ āļˆāļ°āļ–āļ·āļ­āļ§āđˆāļēāđ„āļšāļ•āđŒ āđ„āļĄāđˆāļĄāļĩāļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™
āļ„āđˆāļē: āļ•āđ‰āļ­āļ‡āđƒāļŦāđ‰āļ—āļąāđ‰āļ‡āļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ—āļĩāđˆāļŠāļģāļ„āļąāļ āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļŠāđˆāļ‡āļ„āļ·āļ™āđāļŠāļ”āļ‡āđƒāļŦāđ‰āđ€āļŦāđ‡āļ™āļ§āđˆāļē
āļ‚āļ™āļēāļ”āļ‚āļ­āļ‡āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒāļ—āļĩāđˆāđƒāļŦāļāđˆāļ—āļĩāđˆāļŠāļļāļ”āļ—āļĩāđˆāļžāļš

āļ–āđ‰āļē --āđ‚āļŠāļ§āđŒāđ€āļžāļ­āļĢāđŒāļŸ āđ€āļ›āļīāļ”āđƒāļŠāđ‰āļ‡āļēāļ™āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđāļĨāđ‰āļ§ āļ—āļąāđ‰āļ‡āļŦāļĄāļ” āļ‚āļ­āļ‡āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒāļāļąāļšāļ‚āļ™āļēāļ”āļ‚āļ­āļ‡āļžāļ§āļāđ€āļ‚āļēāļˆāļ°āđ„āļ”āđ‰āļĢāļąāļš
āđ€āļžāļ·āđˆāļ­āļ›āđ‰āļ­āļ‡āļāļąāļ™āļŠāļīāđˆāļ‡āļ™āļĩāđ‰ āļ‚āļ­āđāļ™āļ°āļ™āļģāđƒāļŦāđ‰āļ„āļļāļ“āļ•āļąāđ‰āļ‡āļ„āđˆāļē --āđ€āļžāļ­āļĢāđŒāļŸāļĨāļīāļĄāļīāļ• āļ—āļēāļ‡āđ€āļĨāļ·āļ­āļāļ‹āļķāđˆāļ‡āļˆāļ°āļ—āļģāđƒāļŦāđ‰
āđāļšāļšāļŠāļ­āļšāļ–āļēāļĄāđ€āļžāļ·āđˆāļ­āļ—āļģ "ORDER BY size DESC LIMIT (perflimit)"

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđƒāļŦāđ‰āļ„āļģāļ§āļīāļˆāļēāļĢāļ“āđŒāļ–āđ‰āļēāļ•āļēāļĢāļēāļ‡āđƒāļ”āļĄāļĩāļ‚āļ™āļēāļ”āđƒāļŦāļāđˆāļāļ§āđˆāļē 600MB āļšāļ™āđ‚āļŪāļŠāļ•āđŒāđ€āļšāļ­āļĢāđŒāļĢāļīāļ

check_postgres_table_size --critical='600 MB' --warning='600 MB' --host=burrick

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļœāļĨāļīāļ•āļ āļąāļ“āļ‘āđŒāļ•āļēāļĢāļēāļ‡āļĄāļĩāļ‚āļ™āļēāļ”āđƒāļŦāļāđˆāļāļ§āđˆāļē 4 GB āđāļĨāļ°āđƒāļŦāđ‰āļ„āđˆāļēāļ§āļīāļāļĪāļ•āļ—āļĩāđˆ 4.5 GB

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

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 3: āđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļ”āļąāļŠāļ™āļĩāđƒāļ” āđ† āļ—āļĩāđˆāđ„āļĄāđˆāđ„āļ”āđ‰āđ€āļ›āđ‡āļ™āđ€āļˆāđ‰āļēāļ‚āļ­āļ‡āđ‚āļ”āļĒ postgres āļĄāļĩāļ‚āļ™āļēāļ”āđ€āļāļīāļ™ 500 MB

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

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļŠāđˆāļ‡āļ„āļ·āļ™āļ‚āļ™āļēāļ”āđ€āļ›āđ‡āļ™āđ„āļšāļ•āđŒāļ‚āļ­āļ‡āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒāļ—āļĩāđˆāđƒāļŦāļāđˆāļ—āļĩāđˆāļŠāļļāļ” āđāļĨāļ°āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡
āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđāļĨāļ°āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒāđ€āļ›āđ‡āļ™āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆ

āļŠāļļāļ”āļ—āđ‰āļēāļĒ_āļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒ
Last_vacuum
Last_āļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļī
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 āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄāļœāļđāđ‰āđƒāļŠāđ‰ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđāļŠāđˆāļ§āļ™ "āļāļēāļĢāļāļĢāļ­āļ‡āļŠāļ·āđˆāļ­āļœāļđāđ‰āđƒāļŠāđ‰" āļŠāļģāļŦāļĢāļąāļšāļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ
āļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”

āļŦāļ™āđˆāļ§āļĒāļŠāļģāļŦāļĢāļąāļš --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ–āļđāļāļāļģāļŦāļ™āļ”āđ€āļ›āđ‡āļ™āļ„āļĢāļąāđ‰āļ‡ āļŦāļ™āđˆāļ§āļĒāļ—āļĩāđˆāļ–āļđāļāļ•āđ‰āļ­āļ‡āļ„āļ·āļ­āļ§āļīāļ™āļēāļ—āļĩ
āļ™āļēāļ—āļĩ āļŠāļąāđˆāļ§āđ‚āļĄāļ‡ āđāļĨāļ°āļ§āļąāļ™ āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļŠāļēāļĄāļēāļĢāļ–āļĒāđˆāļ­āļĄāļēāļˆāļēāļāļ•āļąāļ§āļ­āļąāļāļĐāļĢāļ•āļąāļ§āđāļĢāļ āļŦāļēāļāđ„āļĄāđˆāļĄāļĩāļŦāļ™āđˆāļ§āļĒāđ€āļ›āđ‡āļ™
āđƒāļŦāđ‰āļ–āļ·āļ­āļ§āđˆāļē 'āļ§āļīāļ™āļēāļ—āļĩ' āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ„āļ·āļ­ '1 āļ§āļąāļ™' āđāļĨāļ° '2 āļ§āļąāļ™' āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļš
āļ§āđˆāļēāļĄāļĩāļšāļēāļ‡āļāļĢāļ“āļĩāļ—āļĩāđˆāļŸāļīāļĨāļ”āđŒāļ™āļĩāđ‰āđ„āļĄāđˆāđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāđ€āļ•āļīāļĄāđ‚āļ”āļĒāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļī āļ–āđ‰āļēāđāļ™āđˆ
āđ‚āļ•āđŠāļ°āļāļģāļĨāļąāļ‡āļŠāļĢāđ‰āļēāļ‡āļ›āļąāļāļŦāļēāđƒāļŦāđ‰āļ„āļļāļ“ āļ•āļĢāļ§āļˆāļŠāļ­āļšāđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāđ‚āļ•āđŠāļ°āđ€āļŦāļĨāđˆāļēāļ™āļąāđ‰āļ™āļĄāļĩāļŠāđˆāļ­āļ‡āļ§āđˆāļēāļ‡āđƒāļŦāđ‰āļ”āļđāļ”āļāļļāđˆāļ™ āļŦāļĢāļ·āļ­āđ€āļžāļĩāļĒāļ‡āđāļ„āđˆ
āđāļĒāļāļžāļ§āļāđ€āļ‚āļēāļ­āļ­āļāļˆāļēāļāļāļēāļĢāļ—āļ”āļŠāļ­āļš

āļŠāļ„āļĩāļĄāļēāļŠāļ·āđˆāļ­ 'information_schema' āđ„āļĄāđˆāļĢāļ§āļĄāļ­āļĒāļđāđˆāđƒāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ™āļĩāđ‰ āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāđ€āļ›āđ‡āļ™āđ€āļžāļĩāļĒāļ‡āļ•āļēāļĢāļēāļ‡āđ€āļ”āļĩāļĒāļ§
āļ›āļĢāļ°āļāļ­āļšāļ”āđ‰āļ§āļĒāļĄāļĩāļ‚āļ™āļēāļ”āđ€āļĨāđ‡āļāđāļĨāļ°āđ„āļĄāđˆāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡

āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļšāļ§āđˆāļēāđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ—āļĩāđˆāđ„āļĄāđˆāđƒāļŠāđˆ 'āļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļī' āļˆāļ°āļ•āļĢāļ§āļˆāļŠāļ­āļšāđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļīāļ”āđ‰āļ§āļĒ āđƒāļ™āļ­āļ·āđˆāļ™āđ†
āļ„āļģāļ—āļĩāđˆāđƒāļŠāđ‰last_vacuumāļˆāļ°āļĢāļēāļĒāļ‡āļēāļ™āļŠāļđāļāļāļēāļāļēāļĻāļ„āļĢāļąāđ‰āļ‡āļŠāļļāļ”āļ—āđ‰āļēāļĒāđ„āļĄāđˆāļ§āđˆāļēāļˆāļ°āđ€āļ›āđ‡āļ™āļŠāļđāļāļāļēāļāļēāļĻāļ›āļāļ•āļī,
āļŦāļĢāļ·āļ­āļŦāļ™āļķāđˆāļ‡āļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđ‚āļ”āļĒāļ āļđāļ• autovacuum

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđ€āļ•āļ·āļ­āļ™āļŦāļēāļāđ‚āļ•āđŠāļ°āđƒāļ”āđ„āļĄāđˆāđ„āļ”āđ‰āļ”āļđāļ”āļāļļāđˆāļ™āđƒāļ™ 3 āļ§āļąāļ™ āđāļĨāļ°āđƒāļŦāđ‰āļ„āđˆāļēāļ§āļīāļāļĪāļ•āļ—āļĩāđˆ a
āļŠāļąāļ›āļ”āļēāļŦāđŒāļŠāļģāļŦāļĢāļąāļšāđ€āļˆāđ‰āļēāļšāđ‰āļēāļ™āļšāļ­āļĢāļ°āđ€āļžāđ‡āļ”

check_postgres_last_vacuum --host=wormwood --warning='3d' --critical='7d'

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļšāļ”āđ‰āļēāļ™āļšāļ™ āđāļ•āđˆāļ‚āđ‰āļēāļĄāļ•āļēāļĢāļēāļ‡āļ—āļĩāđˆāđ€āļ›āđ‡āļ™āļ‚āļ­āļ‡āļœāļđāđ‰āđƒāļŠāđ‰ 'āļ­āļĩāļŸ' āļŦāļĢāļ·āļ­ 'āļĄāļąāļĨāļĨāļ­āļĢāļĩāđˆ'

check_postgres_last_vacuum --host=wormwood --warning='3d' --critical='7d' --excludeusers=eve, mallory

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļŠāđˆāļ‡āļ„āļ·āļ™ (āđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļ) āļˆāļģāļ™āļ§āļ™āđ€āļ§āļĨāļēāļ™āđ‰āļ­āļĒāļ—āļĩāđˆāļŠāļļāļ”āđƒāļ™āļŦāļ™āđˆāļ§āļĒāļ§āļīāļ™āļēāļ—āļĩāļ•āļąāđ‰āļ‡āđāļ•āđˆ a
āļ•āļēāļĢāļēāļ‡āļ–āļđāļāļ”āļđāļ”āļāļļāđˆāļ™āļŦāļĢāļ·āļ­āļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒāļ„āļĢāļąāđ‰āļ‡āļŠāļļāļ”āļ—āđ‰āļēāļĒ āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆāļŠāđˆāļ‡āļ„āļ·āļ™āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđāļĨāļ°
āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļ•āļēāļĢāļēāļ‡

āļœāļđāđ‰āļŸāļąāļ‡
("symlink: 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 āļ—āļĩāđˆāļ„āđˆāļēāđāļĢāļ āļ‹āļķāđˆāļ‡āļšāđˆāļ‡āļŠāļĩāđ‰āļ§āđˆāļēāļŠāļģāđ€āļĢāđ‡āļˆāļŦāļĢāļ·āļ­āļĨāđ‰āļĄāđ€āļŦāļĨāļ§ āļŠāļ·āđˆāļ­
āļ‚āļ­āļ‡āļ„āļģāļšāļ­āļāļāļĨāđˆāļēāļ§āļˆāļ°āļ•āđ‰āļ­āļ‡āđƒāļŦāđ‰āļœāđˆāļēāļ™āļ—āļēāļ‡ --mrtg āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ

āļĨāđ‡āļ­āļ„
("symlink: check_postgres_locks") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļˆāļģāļ™āļ§āļ™āļĨāđ‡āļ­āļ„āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āđƒāļ™āļŦāļ™āļķāđˆāļ‡āļĢāļēāļĒāļāļēāļĢāļ‚āļķāđ‰āļ™āđ„āļ›
āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ āđ„āļĄāđˆāļˆāļģāđ€āļ›āđ‡āļ™āļ•āđ‰āļ­āļ‡āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļŠāļīāđˆāļ‡āļ™āļĩāđ‰āļĄāļēāļāļāļ§āđˆāļēāļŦāļ™āļķāđˆāļ‡āļ„āļĢāļąāđ‰āļ‡āļ•āđˆāļ­āļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļŠāļēāļĄāļēāļĢāļ–
āļ–āļđāļāļāļĢāļ­āļ‡āļ”āđ‰āļ§āļĒ --āļĢāļ§āļĄ āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđāļŠāđˆāļ§āļ™ "āļāļēāļĢāļāļĢāļ­āļ‡āļžāļ·āđ‰āļ™āļāļēāļ™"
.

āļžāļ·āđ‰āļ™āļ—āļĩāđˆ --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļŠāļēāļĄāļēāļĢāļ–āļĢāļ°āļšāļļāļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđ€āļ›āđ‡āļ™āļ•āļąāļ§āđ€āļĨāļ‚āļ‡āđˆāļēāļĒ āđ† āļ‹āļķāđˆāļ‡āđ€āļ›āđ‡āļ™āļ•āļąāļ§āđāļ—āļ™āļ‚āļ­āļ‡
āļˆāļģāļ™āļ§āļ™āļĨāđ‡āļ­āļ„āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļŦāļĢāļ·āļ­āđāļĒāļāļ•āļēāļĄāļ›āļĢāļ°āđ€āļ āļ—āļ‚āļ­āļ‡āļĨāđ‡āļ­āļ„ āļŠāļ·āđˆāļ­āļĨāđ‡āļ­āļ„āļ—āļĩāđˆāļ–āļđāļāļ•āđ‰āļ­āļ‡
āļ„āļ·āļ­ 'āļœāļĨāļĢāļ§āļĄ', 'āļāļģāļĨāļąāļ‡āļĢāļ­' āļŦāļĢāļ·āļ­āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļ›āļĢāļ°āđ€āļ āļ—āļāļēāļĢāļĨāđ‡āļ­āļ„āļ—āļĩāđˆ Postgres āđƒāļŠāđ‰ āļŠāļ·āđˆāļ­āđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļ„āļ·āļ­
āļ•āļąāļ§āļžāļīāļĄāļžāđŒāđ€āļĨāđ‡āļāđāļĨāļ°āļ•āļąāļ§āļžāļīāļĄāļžāđŒāđƒāļŦāļāđˆāđāļĨāļ°āđ„āļĄāđˆāļ•āđ‰āļ­āļ‡āļāļēāļĢāļŠāđˆāļ§āļ™ "āļĨāđ‡āļ­āļ„" āļ—āļĩāđˆāļŠāđˆāļ§āļ™āļ—āđ‰āļēāļĒāļ”āļąāļ‡āļ™āļąāđ‰āļ™ āļžāļīāđ€āļĻāļĐ āļˆāļ°āļ•āļĢāļ‡āļāļąāļ™
'āļĨāđ‡āļ­āļ„āļžāļīāđ€āļĻāļĐ' āļĢāļđāļ›āđāļšāļšāļ„āļ·āļ­ name=number āđ‚āļ”āļĒāļĄāļĩāļĢāļēāļĒāļāļēāļĢāļ•āđˆāļēāļ‡āđ† āļ„āļąāđˆāļ™āļ”āđ‰āļ§āļĒāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļŦāļĄāļēāļĒāļ—āļ§āļīāļ āļēāļ„āļŦāļĢāļ·āļ­
āļ­āļąāļ’āļ āļēāļ„ (āļŦāļĢāļ·āļ­āļŠāļąāļāļĨāļąāļāļĐāļ“āđŒāļ­āļ·āđˆāļ™ āđ† )

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđ€āļ•āļ·āļ­āļ™āļ–āđ‰āļēāļˆāļģāļ™āļ§āļ™āļĨāđ‡āļ­āļ„āļ„āļ·āļ­ 100 āļŦāļĢāļ·āļ­āļĄāļēāļāļāļ§āđˆāļē āđāļĨāļ°āļ§āļīāļāļĪāļ•āļ–āđ‰āļē 200 āļŦāļĢāļ·āļ­āļĄāļēāļāļāļ§āđˆāļē āļšāļ™
āđ‚āļŪāļŠāļ•āđŒāļāļēāļĢāđŒāđ€āļĢāđ‡āļ•āļ•āđŒ

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

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āļšāļ™āļ­āļēāļĢāđŒāđ€āļ—āļĄāļąāļŠāđ‚āļŪāļŠāļ•āđŒ āđ€āļ•āļ·āļ­āļ™āļ§āđˆāļē 200 āļĨāđ‡āļ­āļ„āļŦāļĢāļ·āļ­āļĄāļēāļāļāļ§āđˆāļēāļ™āļąāđ‰āļ™āļĄāļĩāļ­āļĒāļđāđˆ āđāļĨāļ°āđƒāļŦāđ‰ if . āļ§āļīāļāļĪāļ•āļī
āļĄāļĩāļĨāđ‡āļ­āļ„āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļĄāļēāļāļāļ§āđˆāļē 250 āļ•āļąāļ§ āļŦāļĢāļ·āļ­āļ–āđ‰āļēāļĄāļĩāļĨāđ‡āļ­āļ„āļžāļīāđ€āļĻāļĐāļĄāļēāļāļāļ§āđˆāļē 20 āļ•āļąāļ§ āļŦāļĢāļ·āļ­āļŦāļēāļāļĄāļĩāļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļĄāļēāļāļāļ§āđˆāļē 5 āļ•āļąāļ§
āļāļģāļĨāļąāļ‡āļĢāļ­āļāļēāļĢāļĨāđ‡āļ­āļ„

check_postgres_locks --host=artemus --warning=200 --critical="total=250:waiting=5:exclusive=20"

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļŠāđˆāļ‡āļ„āļ·āļ™āļˆāļģāļ™āļ§āļ™āļāļēāļĢāļĨāđ‡āļ­āļāđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļāđāļĨāļ°āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡
āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆ

āđ„āļŸāļĨāđŒāļšāļąāļ™āļ—āļķāļ
("symlink: check_postgres_logfile") āļ•āļĢāļ§āļˆāļŠāļ­āļšāđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāđ„āļŸāļĨāđŒāļšāļąāļ™āļ—āļķāļāļ­āļĒāļđāđˆāđƒāļ™āļ•āļģāđāļŦāļ™āđˆāļ‡āļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āļāļēāļĢ
āđāļĨāļ°āļāļģāļĨāļąāļ‡āđ€āļ‚āđ‰āļēāļŠāļđāđˆ āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļ­āļ­āļāļ„āļģāļŠāļąāđˆāļ‡āļ—āļĩāđˆāļŠāđˆāļ‡āļ‚āđ‰āļ­āļœāļīāļ”āļžāļĨāļēāļ”āđƒāļ™āđāļ•āđˆāļĨāļ°
āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļāļģāļĨāļąāļ‡āļ•āļĢāļ§āļˆāļŠāļ­āļšāđāļĨāļ°āđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ›āļĢāļēāļāļāđƒāļ™āļšāļąāļ™āļ—āļķāļ āļĄāļąāļ™āļŠāđāļāļ™
āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē log_* āļ•āđˆāļēāļ‡āđ† āļ āļēāļĒāđƒāļ™ Postgres āđ€āļžāļ·āđˆāļ­āļ„āđ‰āļ™āļŦāļēāļ§āđˆāļēāļšāļąāļ™āļ—āļķāļāļ„āļ§āļĢāļ­āļĒāļđāđˆāļ—āļĩāđˆāđƒāļ” āļ–āđ‰āļēāļ„āļļāļ“
āļāļģāļĨāļąāļ‡āđƒāļŠāđ‰ syslog āļĄāļąāļ™āļ—āļģāļāļēāļĢāļŠāđāļāļ™āļ„āļĢāđˆāļēāļ§āđ† (āđāļ•āđˆāđ„āļĄāđˆāđ€āļ‚āđ‰āļēāđƒāļˆāļœāļīāļ”) āļ‚āļ­āļ‡ /etc/syslog.conf.
āļ­āļĩāļāļ§āļīāļ˜āļĩāļŦāļ™āļķāđˆāļ‡ āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļĢāļ°āļšāļļāļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āđ„āļŸāļĨāđŒāļšāļąāļ™āļ—āļķāļāļ”āđ‰āļ§āļĒāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļŦāļĄāļēāļĒ --āļĨāđ‡āļ­āļāđ„āļŸāļĨāđŒ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ™āļĩāđˆāļ„āļ·āļ­
āļĄāļĩāļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒāļ­āļĒāđˆāļēāļ‡āļĒāļīāđˆāļ‡āļŦāļēāļāļšāļąāļ™āļ—āļķāļāļĄāļĩāļĢāļđāļ›āđāļšāļšāļāļēāļĢāļŦāļĄāļļāļ™āļ—āļĩāđˆāļāļģāļŦāļ™āļ”āđ€āļ­āļ‡āļ‹āļķāđˆāļ‡āļ‚āļąāļšāđ€āļ„āļĨāļ·āđˆāļ­āļ™āļ”āđ‰āļ§āļĒāđ‚āļ›āļĢāđāļāļĢāļĄāļ āļēāļĒāļ™āļ­āļ
āļžāļ·āđ‰āļ™āļ—āļĩāđˆ --āļĨāđ‡āļ­āļāđ„āļŸāļĨāđŒ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļĢāļ­āļ‡āļĢāļąāļšāļ­āļąāļāļ‚āļĢāļ°āļŦāļĨāļĩāļāļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰: "%Y %m %d %H" āļ‹āļķāđˆāļ‡
āđāļ—āļ™āļ›āļĩ āđ€āļ”āļ·āļ­āļ™ āļ§āļąāļ™āļ—āļĩāđˆ āđāļĨāļ°āļŠāļąāđˆāļ§āđ‚āļĄāļ‡āļ›āļąāļˆāļˆāļļāļšāļąāļ™āļ•āļēāļĄāļĨāļģāļ”āļąāļš āļœāļīāļ”āļžāļĨāļēāļ”āđ€āļŠāļĄāļ­
āļĢāļēāļĒāļ‡āļēāļ™āļ§āđˆāļēāļĄāļĩāļ„āļ§āļēāļĄāļŠāļģāļ„āļąāļ āđ€āļ§āđ‰āļ™āđāļ•āđˆāļˆāļ°āļĄāļĩāļāļēāļĢāļŠāđˆāļ‡āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļāļēāļĢāđ€āļ•āļ·āļ­āļ™āđ€āļ›āđ‡āļ™āļ„āđˆāļēāļ—āļĩāđˆāđ„āļĄāđˆāđƒāļŠāđˆāļĻāļđāļ™āļĒāđŒ
āļ™āļ­āļāđ€āļŦāļ™āļ·āļ­āļˆāļēāļāļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āđ€āļ‰āļžāļēāļ°āļ™āļąāđ‰āļ™ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ "--āļ„āļģāđ€āļ•āļ·āļ­āļ™" āđāļĨāļ° "-āļ§āļīāļāļĪāļ•" āļ„āļ§āļĢ āđ„āļĄāđˆ be
āļĄāļ·āļ­āļŠāļ­āļ‡

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āļšāļ™āļžāļ­āļĢāđŒāļ• 5432 āļ•āļĢāļ§āļˆāļŠāļ­āļšāđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāđ„āļŸāļĨāđŒāļšāļąāļ™āļ—āļķāļāļāļģāļĨāļąāļ‡āļ–āļđāļāđ€āļ‚āļĩāļĒāļ™āđ„āļ›āļĒāļąāļ‡āđ„āļŸāļĨāđŒ
/home/greg/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 āđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļ āļ‹āļķāđˆāļ‡āļšāđˆāļ‡āļŠāļĩāđ‰āļ§āđˆāļēāļŠāļģāđ€āļĢāđ‡āļˆāļŦāļĢāļ·āļ­āļĨāđ‰āļĄāđ€āļŦāļĨāļ§ āđƒāļ™
āļāļĢāļ“āļĩāļ‚āļ­āļ‡āļ„āļ§āļēāļĄāļĨāđ‰āļĄāđ€āļŦāļĨāļ§ āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆāļˆāļ°āđƒāļŦāđ‰āļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄāđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļ„āļ§āļēāļĄāļĨāđ‰āļĄāđ€āļŦāļĨāļ§āļ—āļĩāđˆāļžāļš

new_version_bc
("symlink: check_postgres_new_version_bc") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļē Bucardo āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āđƒāļŦāļĄāđˆāļāļ§āđˆāļēāļŦāļĢāļ·āļ­āđ„āļĄāđˆ
āđ‚āļ›āļĢāđāļāļĢāļĄāđ„āļ”āđ‰ āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ›āļąāļˆāļˆāļļāļšāļąāļ™āđ„āļ”āđ‰āļĄāļēāļˆāļēāļāļāļēāļĢāļĢāļąāļ™ "bucardo_ctl --version"
āļŦāļēāļāļĄāļĩāļāļēāļĢāļ­āļąāļžāđ€āļāļĢāļ”āļ—āļĩāđˆāļŠāļģāļ„āļąāļ āļ„āļģāđ€āļ•āļ·āļ­āļ™āļˆāļ°āļ–āļđāļāļŠāđˆāļ‡āļāļĨāļąāļš āļŦāļēāļāļāļēāļĢāļ›āļĢāļąāļšāļ›āļĢāļļāļ‡āđāļāđ‰āđ„āļ‚āļ„āļ·āļ­
āđƒāļŠāđ‰āđ„āļ”āđ‰ āļĄāļĩāļāļēāļĢāļŠāđˆāļ‡āļ„āļĢāļīāļ•āļīāļ„āļ­āļĨāļāļĨāļąāļš (āļšāļđāļ„āļēāļĢāđŒāđ‚āļ”āđ€āļ›āđ‡āļ™āļ™āļēāļĒāļ•āđˆāļ­āļ—āļēāļŠ āđāļĨāļ°āđ€āļ›āđ‡āļ™āļ™āļēāļĒāļ•āđˆāļ­āļ™āļēāļĒ
āļĢāļ°āļšāļšāļāļēāļĢāļˆāļģāļĨāļ­āļ‡āđāļšāļšāļŠāļģāļŦāļĢāļąāļš Postgres: āļ”āļđ http://bucardo.org āļŠāļģāļŦāļĢāļąāļšāļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ). āļ”āļđāļŠāļīāđˆāļ‡āļ™āļĩāđ‰āļ”āđ‰āļ§āļĒ
āļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļ•āļąāļ§āđ€āļĨāļ·āļ­āļ "--get_method"

āđƒāļŦāļĄāđˆ_āļĢāļļāđˆāļ™_āļāļĨāđˆāļ­āļ‡
("symlink: check_postgres_new_version_box") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļē boxinfo āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āđƒāļŦāļĄāđˆāļāļ§āđˆāļēāļŦāļĢāļ·āļ­āđ„āļĄāđˆ
āđ‚āļ›āļĢāđāļāļĢāļĄāđ„āļ”āđ‰ āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ›āļąāļˆāļˆāļļāļšāļąāļ™āđ„āļ”āđ‰āļĄāļēāļˆāļēāļāļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰ "boxinfo.pl --version"
āļŦāļēāļāļĄāļĩāļāļēāļĢāļ­āļąāļžāđ€āļāļĢāļ”āļ—āļĩāđˆāļŠāļģāļ„āļąāļ āļ„āļģāđ€āļ•āļ·āļ­āļ™āļˆāļ°āļ–āļđāļāļŠāđˆāļ‡āļāļĨāļąāļš āļŦāļēāļāļāļēāļĢāļ›āļĢāļąāļšāļ›āļĢāļļāļ‡āđāļāđ‰āđ„āļ‚āļ„āļ·āļ­
āđƒāļŠāđ‰āđ„āļ”āđ‰ āļĄāļĩāļāļēāļĢāļŠāđˆāļ‡āļ„āļĢāļīāļ•āļīāļ„āļ­āļĨāļāļĨāļąāļš (boxinfo āđ€āļ›āđ‡āļ™āđ‚āļ›āļĢāđāļāļĢāļĄāļŠāļģāļŦāļĢāļąāļšāļˆāļąāļšāļ‚āļ­āļ‡āļŠāļģāļ„āļąāļ
āļ‚āđ‰āļ­āļĄāļđāļĨāļˆāļēāļāđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāđāļĨāļ°āđƒāļŠāđˆāļĨāļ‡āđƒāļ™āļĢāļđāļ›āđāļšāļš HTML: see
http://bucardo.org/wiki/boxinfo āļŠāļģāļŦāļĢāļąāļšāļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ). āļ”āļđāļ‚āđ‰āļ­āļĄāļđāļĨāđ„āļ”āđ‰āļ—āļĩāđˆ
"--get_method" āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ

āđƒāļŦāļĄāđˆ_āļĢāļļāđˆāļ™_cp
("symlink: check_postgres_new_version_cp") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāđ€āļ›āđ‡āļ™āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ—āļĩāđˆāđƒāļŦāļĄāđˆāļāļ§āđˆāļēāļ‚āļ­āļ‡āđ‚āļ›āļĢāđāļāļĢāļĄāļ™āļĩāđ‰āļŦāļĢāļ·āļ­āđ„āļĄāđˆ
(check_postgres) āļžāļĢāđ‰āļ­āļĄāđƒāļŠāđ‰āļ‡āļēāļ™āđ‚āļ”āļĒāļ„āļ§āđ‰āļēāđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļˆāļēāļāđ„āļŸāļĨāđŒāļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ‚āļ™āļēāļ”āđ€āļĨāđ‡āļāļšāļ™ main
āļŦāļ™āđ‰āļēāđ‚āļŪāļĄāđ€āļžāļˆāļ‚āļ­āļ‡āđ‚āļ„āļĢāļ‡āļāļēāļĢ āļŠāđˆāļ‡āļ„āļ·āļ™āļ„āļģāđ€āļ•āļ·āļ­āļ™āļŦāļēāļāđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ—āļĩāđˆāļŠāđˆāļ‡āļ„āļ·āļ™āđ„āļĄāđˆ
āļ•āļĢāļ‡āļāļąāļšāļ—āļĩāđˆāļ„āļļāļ“āļāļģāļĨāļąāļ‡āļ§āļīāđˆāļ‡ āļŠāđˆāļ§āļ‡āđ€āļ§āļĨāļēāļ—āļĩāđˆāđāļ™āļ°āļ™āļģāđƒāļŦāđ‰āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ·āļ­āļ§āļąāļ™āļĨāļ°āļ„āļĢāļąāđ‰āļ‡ āļ”āļđāđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄāļ—āļĩāđˆ
āļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļ•āļąāļ§āđ€āļĨāļ·āļ­āļ "--get_method"

new_version_pg
("symlink: check_postgres_new_version_pg") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļē Postgres āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āđƒāļŦāļĄāđˆāļāļ§āđˆāļēāļ™āļąāđ‰āļ™āļĄāļĩāļ­āļĒāļđāđˆāļŦāļĢāļ·āļ­āđ„āļĄāđˆ
āļŠāļģāļŦāļĢāļąāļšāđāļ•āđˆāļĨāļ°āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­ āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļšāļ§āđˆāļēāļ™āļĩāđˆāđ€āļ›āđ‡āļ™āđ€āļžāļĩāļĒāļ‡āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļāļēāļĢāđāļāđ‰āđ„āļ‚āđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™ āđ€āļŠāđˆāļ™ āđ„āļ›āļˆāļēāļ
8.3.6 āļ–āļķāļ‡ 8.3.7 āļāļēāļĢāđāļāđ‰āđ„āļ‚āļ™āļąāđ‰āļ™āđ€āļ‚āđ‰āļēāļāļąāļ™āđ„āļ”āđ‰āļāļąāļšāđ„āļšāļ™āļēāļĢāļĩ 100% āđ€āļŠāļĄāļ­āđāļĨāļ°āđ„āļĄāđˆāđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡āļāļąāļšāļāļēāļĢāļ–āđˆāļēāļĒāđ‚āļ­āļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđāļĨāļ°
āļāļđāđ‰āļ„āļ·āļ™āđ€āļžāļ·āđˆāļ­āļ­āļąāļ›āđ€āļāļĢāļ” āļĄāļĩāļāļēāļĢāđāļāđ‰āđ„āļ‚āļ‚āđ‰āļ­āļšāļāļžāļĢāđˆāļ­āļ‡ āļ”āļąāļ‡āļ™āļąāđ‰āļ™āļ„āļ§āļĢāļ­āļąāļ›āđ€āļāļĢāļ”āđ‚āļ”āļĒāđ€āļĢāđ‡āļ§āļ—āļĩāđˆāļŠāļļāļ”
āļ‚āļ­āđāļ™āļ°āļ™āļģāđ€āļŠāļĄāļ­ āļŠāđˆāļ‡āļāļĨāļąāļšāļ„āļģāđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļ„āļļāļ“āđ„āļĄāđˆāļĄāļĩāļāļēāļĢāđāļāđ‰āđ„āļ‚āļĨāđˆāļēāļŠāļļāļ” āļĄāļąāļ™āļ„āļ·āļ­
āļ‚āļ­āđāļ™āļ°āļ™āļģāđƒāļŦāđ‰āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ™āļĩāđ‰āļ­āļĒāđˆāļēāļ‡āļ™āđ‰āļ­āļĒāļ§āļąāļ™āļĨāļ°āļ„āļĢāļąāđ‰āļ‡ āļ”āļđāļ‚āđ‰āļ­āļĄāļđāļĨāđ„āļ”āđ‰āļ—āļĩāđˆ
"--get_method" āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ

new_version_tnm
("symlink: 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_login
pgb_pool_maxwait
(symlinks: "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_" āļ•āļēāļĄāļĨāļģāļ”āļąāļš āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āđ„āļ„āļĨāđ€āļ­āđ‡āļ™āļ•āđŒāļ—āļĩāđˆāđƒāļŠāđ‰āļ‡āļēāļ™āļ­āļĒāļđāđˆāļ„āļ·āļ­āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļ—āļĩāđˆāđ€āļŠāļ·āđˆāļ­āļĄāđ‚āļĒāļ‡āļ­āļĒāļđāđˆāđƒāļ™āļ›āļąāļˆāļˆāļļāļšāļąāļ™
āļ”āđ‰āļ§āļĒāļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāļ—āļĩāđˆāđƒāļŠāđ‰āļ‡āļēāļ™āļ­āļĒāļđāđˆ āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āđ„āļ„āļĨāđ€āļ­āđ‡āļ™āļ•āđŒāļ­āļēāļˆāđ€āļ›āđ‡āļ™ "āļĢāļ­" āļ‹āļķāđˆāļ‡āļŦāļĄāļēāļĒāļ„āļ§āļēāļĄāļ§āđˆāļē
āļĒāļąāļ‡āđ„āļĄāđˆāđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļˆāļąāļ”āļŠāļĢāļĢāļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒ āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒ "āđƒāļŠāđ‰āļ‡āļēāļ™āļ­āļĒāļđāđˆ" (āđ€āļŠāļ·āđˆāļ­āļĄāđ‚āļĒāļ‡
āđ„āļ›āļĒāļąāļ‡āđ„āļ„āļĨāđ€āļ­āļ™āļ•āđŒ), "āđ„āļĄāđˆāđ„āļ”āđ‰āđƒāļŠāđ‰āļ‡āļēāļ™" (āļĒāļ·āļ™āđ‚āļ”āļĒāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āđ„āļ„āļĨāđ€āļ­āļ™āļ•āđŒāļ—āļĩāđˆāļˆāļ°āđ€āļŠāļ·āđˆāļ­āļĄāđ‚āļĒāļ‡āļ”āđ‰āļ§āļĒ), "āđƒāļŠāđ‰āđāļĨāđ‰āļ§" (just
āļĒāļāđ€āļĨāļīāļāļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāđ‚āļĒāļ‡āļˆāļēāļāļĨāļđāļāļ„āđ‰āļēāđāļĨāļ°āļĒāļąāļ‡āđ„āļĄāđˆāđ„āļ”āđ‰āļāļĨāļąāļšāđ„āļ›āļ—āļĩāđˆāļžāļđāļĨāļ§āđˆāļēāļ‡) "āļ—āļ”āļŠāļ­āļšāđāļĨāđ‰āļ§" (āļ‚āļ“āļ°āļ™āļĩāđ‰āļ­āļĒāļđāđˆāļĢāļ°āļŦāļ§āđˆāļēāļ‡
āļ—āļ”āļŠāļ­āļšāđāļĨāđ‰āļ§) āđāļĨāļ° "āđ€āļ‚āđ‰āļēāļŠāļđāđˆāļĢāļ°āļšāļš" (āļ­āļĒāļđāđˆāđƒāļ™āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļāļēāļĢāđ€āļ‚āđ‰āļēāļŠāļđāđˆāļĢāļ°āļšāļš) āļ„āđˆāļē maxwait āđāļŠāļ”āļ‡āļĢāļ°āļĒāļ°āđ€āļ§āļĨāļēāđƒāļ™
āļ§āļīāļ™āļēāļ—āļĩāļ—āļĩāđˆāļāļēāļĢāļĢāļ­āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āđ„āļ„āļĨāđ€āļ­āđ‡āļ™āļ•āđŒāļ—āļĩāđˆāđ€āļāđˆāļēāļ—āļĩāđˆāļŠāļļāļ”āļāļģāļĨāļąāļ‡āļĢāļ­āļ­āļĒāļđāđˆ

pgbouncer_backends
("symlink: check_postgres_pgbouncer_backends") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļˆāļģāļ™āļ§āļ™āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļ›āļąāļˆāļˆāļļāļšāļąāļ™
āļŠāļģāļŦāļĢāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ­āļĒāđˆāļēāļ‡āļ™āđ‰āļ­āļĒāļŦāļ™āļķāđˆāļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļœāđˆāļēāļ™ pgbouncer āđāļĨāļ°āđ€āļĨāļ·āļ­āļāļ—āļĩāđˆāļˆāļ°āđ€āļ›āļĢāļĩāļĒāļšāđ€āļ—āļĩāļĒāļšāļāļąāļšāļ„āđˆāļēāļŠāļđāļ‡āļŠāļļāļ”
āļ­āļ™āļļāļāļēāļ• āļ‹āļķāđˆāļ‡āļāļģāļŦāļ™āļ”āđ‚āļ”āļĒāļ•āļąāļ§āđāļ›āļĢāļāļēāļĢāļāļģāļŦāļ™āļ”āļ„āđˆāļē pgbouncer max_client_conn.
--āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļĢāļđāļ›āđāļšāļšāđƒāļ”āļĢāļđāļ›āđāļšāļšāļŦāļ™āļķāđˆāļ‡āļˆāļēāļāļŠāļēāļĄāļĢāļđāļ›āđāļšāļš āļ­āļĒāđˆāļēāļ‡āđāļĢāļ āļ•āļąāļ§āđ€āļĨāļ‚āļ‡āđˆāļēāļĒāđ† āļŠāļēāļĄāļēāļĢāļ–
āļˆāļ°āđ„āļ”āđ‰āļĢāļąāļš āļ‹āļķāđˆāļ‡āđāļŠāļ”āļ‡āļ–āļķāļ‡āļˆāļģāļ™āļ§āļ™āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļ—āļĩāđˆāļˆāļ°āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāđāļˆāđ‰āļ‡āđ€āļ•āļ·āļ­āļ™
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ™āļĩāđ‰āđ„āļĄāđˆāđƒāļŠāđ‰ the max_connections āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē āļ›āļĢāļ°āļāļēāļĢāļ—āļĩāđˆāļŠāļ­āļ‡ āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāļ‚āļ­āļ‡āļ—āļĩāđˆāļĄāļĩāļ­āļĒāļđāđˆ
āļŠāļēāļĄāļēāļĢāļ–āđƒāļŦāđ‰āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­ āļ›āļĢāļ°āļāļēāļĢāļ—āļĩāđˆāļŠāļēāļĄ āļŠāļēāļĄāļēāļĢāļ–āđƒāļŦāđ‰āļˆāļģāļ™āļ§āļ™āļĨāļšāļ‹āļķāđˆāļ‡āđāļŠāļ”āļ‡āļ–āļķāļ‡
āļˆāļģāļ™āļ§āļ™āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļ—āļĩāđˆāđ€āļŦāļĨāļ·āļ­āļˆāļ™āļ–āļķāļ‡ max_connections āļ–āļķāļ‡. āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļŠāļģāļŦāļĢāļąāļš
--āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ„āļ·āļ­ '90%' āđāļĨāļ° '95%' āļ„āļļāļ“āļĒāļąāļ‡āļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđ‚āļ”āļĒāđƒāļŠāđ‰
--āļĢāļ§āļĄ āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđāļŠāđˆāļ§āļ™ "āļāļēāļĢāļāļĢāļ­āļ‡āļžāļ·āđ‰āļ™āļāļēāļ™" āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ

āļŦāļēāļāļ•āđ‰āļ­āļ‡āļāļēāļĢāļ”āļđāđ€āļ‰āļžāļēāļ°āļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāļ—āļĩāđˆāđ„āļĄāđˆāđ„āļ”āđ‰āđƒāļŠāđ‰āļ‡āļēāļ™ āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļ›āļļāđˆāļĄ --āļ™āļ­āļĒāļ”āđŒ āļāļēāļĢāđ‚āļ•āđ‰āđāļĒāđ‰āļ‡. āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļšāļ§āđˆāļēāļœāļđāđ‰āđƒāļŠāđ‰āļ„āļļāļ“
āļāļģāļĨāļąāļ‡āđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļ•āļēāļĄāļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āđ€āļ›āđ‡āļ™ superuser āđ€āļžāļ·āđˆāļ­āđƒāļŦāđ‰āļ—āļģāļ‡āļēāļ™āđ„āļ”āđ‰āļ­āļĒāđˆāļēāļ‡āļ–āļđāļāļ•āđ‰āļ­āļ‡

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđāļˆāđ‰āļ‡āđ€āļ•āļ·āļ­āļ™āđ€āļĄāļ·āđˆāļ­āļˆāļģāļ™āļ§āļ™āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļšāļ™āđ‚āļŪāļŠāļ•āđŒ quirm āļ–āļķāļ‡ 120 āđāļĨāļ° a
āļŠāļģāļ„āļąāļāļ–āđ‰āļēāļĄāļąāļ™āļ–āļķāļ‡ 150

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

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āđƒāļŦāđ‰āļ„āļ§āļēāļĄāļŠāļģāļ„āļąāļāđ€āļĄāļ·āđˆāļ­āđ€āļĢāļēāļ•āļąāđ‰āļ‡āļ„āđˆāļē max_connections āļ–āļķāļ‡ 75% āļšāļ™āđ‚āļŪāļŠāļ•āđŒ
lancre āļŦāļĢāļ·āļ­ lancre2

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=plasmid -p 6432 -u pgbouncer

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļˆāļģāļ™āļ§āļ™āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļˆāļ°āļ–āļđāļāļĢāļēāļĒāļ‡āļēāļ™āđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļāđāļĨāļ°āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆ
āļšāļĢāļĢāļ—āļąāļ”āđƒāļŦāđ‰āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ āļšāļ§āļāļāļąāļš max_client_conn āļ›āļąāļˆāļˆāļļāļšāļąāļ™ āļŦāļēāļāļĄāļĩāļĄāļēāļāļāļ§āđˆāļēāļŦāļ™āļķāđˆāļ‡
āļĄāļĩāļāļēāļĢāļŠāļ­āļšāļ–āļēāļĄāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđāļĨāđ‰āļ§ āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāļĄāļĩāļˆāļģāļ™āļ§āļ™āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļŠāļđāļ‡āļŠāļļāļ”āļ„āļ·āļ­āđ€āļ­āļēāļ•āđŒāļžāļļāļ•

pgbouncer_checksum
("symlink: check_postgres_pgbouncer_checksum") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē pgBouncer āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āđ€āļ›āđ‡āļ™
āđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļšāļ„āļĢāļąāđ‰āļ‡āļĨāđˆāļēāļŠāļļāļ”āļ—āļĩāđˆāļ„āļļāļ“āļ•āļĢāļ§āļˆāļŠāļ­āļš āļ—āļģāđ„āļ”āđ‰āđ‚āļ”āļĒāļāļēāļĢāļŠāļĢāđ‰āļēāļ‡āđ€āļŠāđ‡āļ„āļ‹āļąāļĄāļ‚āļ­āļ‡āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāđ€āļĢāļĩāļĒāļ‡āļĨāļģāļ”āļąāļš
āļ‚āļ­āļ‡āļāļēāļĢāļ•āļąāđ‰āļ‡āļŠāļ·āđˆāļ­āđāļĨāļ°āļ„āđˆāļēāļ‚āļ­āļ‡āļĄāļąāļ™ āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļšāļ§āđˆāļēāļ„āļļāļ“āđ„āļĄāđˆāļ„āļ§āļĢāļĢāļ°āļšāļļāļŠāļ·āđˆāļ­āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ āļĄāļąāļ™
āļˆāļ°āļ•āļąāđ‰āļ‡āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āđ€āļ›āđ‡āļ™ pgbouncer āđ‚āļ”āļĒāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļī āđ„āļĄāđˆāļ§āđˆāļēāļˆāļ°āđ€āļ›āđ‡āļ™ --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āļŦāļĢāļ·āļ­ --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ
āļ„āļ§āļĢāđƒāļŦāđ‰āđāļ•āđˆāđ„āļĄāđˆāđƒāļŠāđˆāļ—āļąāđ‰āļ‡āļŠāļ­āļ‡āļ­āļĒāđˆāļēāļ‡ āļ„āđˆāļēāļ‚āļ­āļ‡āđāļ•āđˆāļĨāļ°āļĢāļēāļĒāļāļēāļĢāļ„āļ·āļ­āļœāļĨāļĢāļ§āļĄāļ‚āļ­āļ‡āđ€āļŠāđ‡āļ„āļ‹āļąāļĄ 32 āļ­āļąāļāļ‚āļĢāļ°
āļ„āđˆāļēāđ€āļĨāļ‚āļāļēāļ™āļŠāļīāļšāļŦāļ āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļ”āđ‰āļ§āļĒāļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļžāļīāđ€āļĻāļĐ "--critical=0" āđ€āļžāļ·āđˆāļ­āļ„āđ‰āļ™āļŦāļē an
āđ€āļŠāđ‡āļ„āļ‹āļąāļĄāļ—āļĩāđˆāļĄāļĩāļ­āļĒāļđāđˆ

āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰āđ‚āļĄāļ”āļđāļĨ 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 āļ‹āļķāđˆāļ‡āļšāđˆāļ‡āļŠāļĩāđ‰āļ„āļ§āļēāļĄāļŠāļģāđ€āļĢāđ‡āļˆāļ‚āļ­āļ‡āļ„āļ§āļēāļĄāļĨāđ‰āļĄāđ€āļŦāļĨāļ§āļ‚āļ­āļ‡āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāđƒāļ™āļāļēāļĢāļˆāļąāļšāļ„āļđāđˆ
āļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļ checksum āđ€āļ›āđ‡āļ™āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒ "--mrtg" āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆāđƒāļŦāđ‰ .āđ€āļŠāļĄāļ­
āđ€āļŠāđ‡āļ„āļ‹āļąāļĄāļ›āļąāļˆāļˆāļļāļšāļąāļ™

pgagent_jobs
("symlink: 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
("symlink: check_postgres_prepared_txns") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ­āļēāļĒāļļāļ‚āļ­āļ‡āļŠāļīāđˆāļ‡āļ—āļĩāđˆāđ€āļ•āļĢāļĩāļĒāļĄāđ„āļ§āđ‰
āļāļēāļĢāļ—āļģāļ˜āļļāļĢāļāļĢāļĢāļĄ āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļšāļ§āđˆāļēāļ„āļ™āļŠāđˆāļ§āļ™āđƒāļŦāļāđˆāļˆāļ°āđ„āļĄāđˆāđƒāļŠāđ‰āļ˜āļļāļĢāļāļĢāļĢāļĄāļ—āļĩāđˆāđ€āļ•āļĢāļĩāļĒāļĄāđ„āļ§āđ‰ āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļžāļ§āļāđ€āļ‚āļēāđ€āļ›āđ‡āļ™āļŠāđˆāļ§āļ™āļŦāļ™āļķāđˆāļ‡
āļ‚āļ­āļ‡āļāļēāļĢāļœāļđāļāļĄāļąāļ”āļŠāļ­āļ‡āļŠāđˆāļ§āļ™āđāļĨāļ°āļ‹āļąāļšāļ‹āđ‰āļ­āļ™āđƒāļ™āļāļēāļĢāļĢāļąāļāļĐāļē āļžāļ§āļāđ€āļ‚āļēāđ„āļĄāđˆāļ„āļ§āļĢāļŠāļąāļšāļŠāļ™āļāļąāļš
āļ‡āļšāļ—āļĩāđˆāđ€āļ•āļĢāļĩāļĒāļĄāđ„āļ§āđ‰ āļ‹āļķāđˆāļ‡āđ€āļ›āđ‡āļ™āļŠāļīāđˆāļ‡āļ—āļĩāđˆāļ„āļ™āļŠāđˆāļ§āļ™āđƒāļŦāļāđˆāļ™āļķāļāļ–āļķāļ‡āđ€āļĄāļ·āđˆāļ­āđ„āļ”āđ‰āļĒāļīāļ™āļāļēāļĢāđ€āļ•āļĢāļĩāļĒāļĄāļ•āļąāļ§ NS
āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļŠāļģāļŦāļĢāļąāļšāļ„āļģāđ€āļ•āļ·āļ­āļ™āļ„āļ·āļ­ 1 āļ§āļīāļ™āļēāļ—āļĩ āđ€āļžāļ·āđˆāļ­āļ•āļĢāļ§āļˆāļˆāļąāļšāļāļēāļĢāđƒāļŠāđ‰āļ˜āļļāļĢāļāļĢāļĢāļĄāļ—āļĩāđˆāđ€āļ•āļĢāļĩāļĒāļĄāđ„āļ§āđ‰āļ‹āļķāđˆāļ‡
āļ™āđˆāļēāļˆāļ°āđ€āļ›āđ‡āļ™āļ„āļ§āļēāļĄāļœāļīāļ”āļžāļĨāļēāļ”āđƒāļ™āļĢāļ°āļšāļšāļŠāđˆāļ§āļ™āđƒāļŦāļāđˆ āļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ§āļīāļāļĪāļ•āļ„āļ·āļ­āļˆāļģāļ™āļ§āļ™āļ§āļīāļ™āļēāļ—āļĩ a
āđ€āļ›āļīāļ”āļ˜āļļāļĢāļāļĢāļĢāļĄāļ—āļĩāđˆāđ€āļ•āļĢāļĩāļĒāļĄāđ„āļ§āđ‰āļāđˆāļ­āļ™āļ—āļĩāđˆāļˆāļ°āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāđāļˆāđ‰āļ‡āđ€āļ•āļ·āļ­āļ™

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 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
("symlink: check_postgres_query_runtime") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļāļēāļĢāļŠāļ·āļšāļ„āđ‰āļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļ‰āļžāļēāļ°āđƒāļŠāđ‰āđ€āļ§āļĨāļēāļ™āļēāļ™āđ€āļ—āđˆāļēāđƒāļ”āļˆāļķāļ‡āļˆāļ°āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰
āđ‚āļ”āļĒāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢ "āļ­āļ˜āļīāļšāļēāļĒāļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒ" āļāļąāļšāļĄāļąāļ™ NS --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ„āļ·āļ­
āļĢāļ°āļĒāļ°āđ€āļ§āļĨāļēāļŠāļđāļ‡āļŠāļļāļ”āļ—āļĩāđˆāđāļšāļšāļŠāļ­āļšāļ–āļēāļĄāļ„āļ§āļĢāđƒāļŠāđ‰ āļŦāļ™āđˆāļ§āļĒāļ—āļĩāđˆāđƒāļŠāđ‰āđ„āļ”āđ‰āļ„āļ·āļ­āļ§āļīāļ™āļēāļ—āļĩ āļ™āļēāļ—āļĩ āđāļĨāļ°āļŠāļąāđˆāļ§āđ‚āļĄāļ‡
any āļŠāļēāļĄāļēāļĢāļ–āļĒāđˆāļ­āļĄāļēāļˆāļēāļāļ­āļąāļāļĐāļĢāļ•āļąāļ§āđāļĢāļāđ„āļ”āđ‰ āļ–āđ‰āļēāđ„āļĄāđˆāļĄāļĩāļŦāļ™āđˆāļ§āļĒāđƒāļ”āđ„āļ”āđ‰āļĢāļąāļš āļˆāļ°āļ–āļ·āļ­āļ§āđˆāļē 'āļ§āļīāļ™āļēāļ—āļĩ'
āļ•āđ‰āļ­āļ‡āđƒāļŦāđ‰āļ—āļąāđ‰āļ‡āļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ—āļĩāđˆāļŠāļģāļ„āļąāļ āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļĄāļļāļĄāļĄāļ­āļ‡āļŦāļĢāļ·āļ­āļŸāļąāļ‡āļāđŒāļŠāļąāļ™
āļ—āļĩāđˆāļˆāļ°āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļˆāļ°āļ•āđ‰āļ­āļ‡āļŠāđˆāļ‡āļœāđˆāļēāļ™āđ„āļ›āļĒāļąāļ‡ --āļŠāļ·āđˆāļ­āđāļšāļšāļŠāļ­āļšāļ–āļēāļĄ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ•āđ‰āļ­āļ‡āļ›āļĢāļ°āļāļ­āļšāļ”āđ‰āļ§āļĒāļ„āļģāđ€āļ”āļĩāļĒāļ§
(āļŦāļĢāļ·āļ­ schema.word) āđ‚āļ”āļĒāļĄāļĩāļ§āļ‡āđ€āļĨāđ‡āļšāđ€āļŠāļĢāļīāļĄāļ•āđˆāļ­āļ—āđ‰āļēāļĒ

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđƒāļŦāđ‰āļ„āļ§āļēāļĄāļŠāļģāļ„āļąāļāļŦāļēāļāļŸāļąāļ‡āļāđŒāļŠāļąāļ™āļŠāļ·āđˆāļ­ "speedtest" āđ„āļĄāđˆāļ—āļģāļ‡āļēāļ™āđƒāļ™ 10 āļ§āļīāļ™āļēāļ—āļĩāļŦāļĢāļ·āļ­
āļ™āđ‰āļ­āļĒāļāļ§āđˆāļē

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

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļĢāļēāļĒāļ‡āļēāļ™āđ€āļ§āļĨāļēāđ€āļ›āđ‡āļ™āļ§āļīāļ™āļēāļ—āļĩāđ€āļžāļ·āđˆāļ­āđƒāļŦāđ‰āļāļēāļĢāļŠāļ·āļšāļ„āđ‰āļ™āđ€āļŠāļĢāđ‡āļˆāļŠāļīāđ‰āļ™āđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļ
āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆāđāļŠāļ”āļ‡āļĢāļēāļĒāļāļēāļĢāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ

āđāļšāļšāļŠāļ­āļšāļ–āļēāļĄ_āđ€āļ§āļĨāļē
("symlink: check_postgres_query_time") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ§āļēāļĄāļĒāļēāļ§āļ‚āļ­āļ‡āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ„āđ‰āļ™āļŦāļēāļ—āļĩāđˆāļ—āļģāļ‡āļēāļ™āļ­āļĒāļđāđˆāļ•āļąāđ‰āļ‡āđāļ•āđˆāļŦāļ™āļķāđˆāļ‡āļĢāļēāļĒāļāļēāļĢāļ‚āļķāđ‰āļ™āđ„āļ›
āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ āđ„āļĄāđˆāļˆāļģāđ€āļ›āđ‡āļ™āļ•āđ‰āļ­āļ‡āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļŠāļīāđˆāļ‡āļ™āļĩāđ‰āļĄāļēāļāļāļ§āđˆāļēāļŦāļ™āļķāđˆāļ‡āļ„āļĢāļąāđ‰āļ‡āļšāļ™āļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļ”āļĩāļĒāļ§āļāļąāļ™ āļšāļąāļ™āļ—āļķāļ
āļ§āđˆāļēāļŠāļīāđˆāļ‡āļ™āļĩāđ‰āđ„āļĄāđˆāļĢāļ§āļĄāļāļēāļĢāļŠāļ·āļšāļ„āđ‰āļ™āļ—āļĩāđˆ "āđ„āļĄāđˆāđ„āļ”āđ‰āđƒāļŠāđ‰āļ‡āļēāļ™āđƒāļ™āļāļēāļĢāļ—āļģāļ˜āļļāļĢāļāļĢāļĢāļĄ" āđāļĨāđ‰āļ§ āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļŠāļēāļĄāļēāļĢāļ–
āļāļĢāļ­āļ‡āđ‚āļ”āļĒāđƒāļŠāđ‰ --āļĢāļ§āļĄ āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđāļŠāđˆāļ§āļ™ "āļāļēāļĢāļāļĢāļ­āļ‡āļžāļ·āđ‰āļ™āļāļēāļ™"
āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ āļ„āļļāļ“āļĒāļąāļ‡āļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āļœāļđāđ‰āđƒāļŠāđ‰āļ—āļĩāđˆāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āđāļšāļšāļŠāļ­āļšāļ–āļēāļĄāļ”āđ‰āļ§āļĒ --includeuser
āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄāļœāļđāđ‰āđƒāļŠāđ‰ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđāļŠāđˆāļ§āļ™ "āļāļēāļĢāļāļĢāļ­āļ‡āļŠāļ·āđˆāļ­āļœāļđāđ‰āđƒāļŠāđ‰" āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ

āļ„āđˆāļēāļŠāļģāļŦāļĢāļąāļš --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ„āļ·āļ­āļĢāļ°āļĒāļ°āđ€āļ§āļĨāļē āđāļĨāļ°āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āđ€āļ›āđ‡āļ™ '2
āļ™āļēāļ—āļĩ' āđāļĨāļ° '5 āļ™āļēāļ—āļĩ' āļ•āļēāļĄāļĨāļģāļ”āļąāļš āļŦāļ™āđˆāļ§āļĒāļ—āļĩāđˆāļ–āļđāļāļ•āđ‰āļ­āļ‡āļ„āļ·āļ­ 'āļ§āļīāļ™āļēāļ—āļĩ', 'āļ™āļēāļ—āļĩ', 'āļŠāļąāđˆāļ§āđ‚āļĄāļ‡' āļŦāļĢāļ·āļ­
'āļ§āļąāļ™' āđāļ•āđˆāļĨāļ°āļĢāļēāļĒāļāļēāļĢāļ­āļēāļˆāđ€āļ‚āļĩāļĒāļ™āđ€āļ›āđ‡āļ™āđ€āļ­āļāļžāļˆāļ™āđŒāļŦāļĢāļ·āļ­āļĒāđˆāļ­āđƒāļŦāđ‰āđ€āļŦāļĨāļ·āļ­āđāļ„āđˆāļ­āļąāļāļĐāļĢāļ•āļąāļ§āđāļĢāļ āļ–āđ‰āļēāđ„āļĄāđˆāļĄāļĩāļŦāļ™āđˆāļ§āļĒ
āđ„āļ”āđ‰āļĢāļąāļš āļŦāļ™āđˆāļ§āļĒāļˆāļ°āļ–āļ·āļ­āļ§āđˆāļēāđ€āļ›āđ‡āļ™āļ§āļīāļ™āļēāļ—āļĩ

āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰ Postgres 8.1 āļŦāļĢāļ·āļ­āļ”āļĩāļāļ§āđˆāļē

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđƒāļŦāđ‰āļ„āļģāđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļĄāļĩāļāļēāļĢāļŠāļ·āļšāļ„āđ‰āļ™āđƒāļ” āđ† āđƒāļŠāđ‰āđ€āļ§āļĨāļēāļ™āļēāļ™āļāļ§āđˆāļē 3 āļ™āļēāļ—āļĩāđāļĨāļ° a
āļŠāļģāļ„āļąāļāļ–āđ‰āļēāļ™āļēāļ™āļāļ§āđˆāļē 5 āļ™āļēāļ—āļĩ

check_postgres_query_time --port=5432 --warning='3 minutes' --critical='5 minutes'

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āļāļēāļĢāđƒāļŠāđ‰āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™ (2 āđāļĨāļ° 5 āļ™āļēāļ—āļĩ) āļ•āļĢāļ§āļˆāļŠāļ­āļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļĒāļāđ€āļ§āđ‰āļ™āđ€āļŦāļĨāđˆāļēāļ™āļąāđ‰āļ™
āđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ”āđ‰āļ§āļĒ 'āđāļĄāđˆāđāļšāļš'

check_postgres_query_time --port=5432 --exclude=~^āđ€āļ—āļĄāđ€āļžāļĨāļ•

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 3: āđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļœāļđāđ‰āđƒāļŠāđ‰ 'don' āļĄāļĩāļāļēāļĢāļŠāļ·āļšāļ„āđ‰āļ™āļ—āļĩāđˆāļ—āļģāļ‡āļēāļ™āđ€āļāļīāļ™ 20 āļ§āļīāļ™āļēāļ—āļĩ

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

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļŠāđˆāļ‡āļ„āļ·āļ™āļ„āļ§āļēāļĄāļĒāļēāļ§āđƒāļ™āļŦāļ™āđˆāļ§āļĒāļ§āļīāļ™āļēāļ—āļĩāļ‚āļ­āļ‡āļ„āļīāļ§āļĢāļĩāļ—āļĩāđˆāļĒāļēāļ§āļ—āļĩāđˆāļŠāļļāļ”āđƒāļ™āļ•āļąāļ§āđāļĢāļ
āđ„āļĨāļ™āđŒ. āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆāļĢāļ°āļšāļļāļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ

āļ—āļģāļ‹āđ‰āļģ_row
("symlink: check_postgres_replicate_row") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļāļēāļĢāļˆāļģāļĨāļ­āļ‡āđāļšāļš master-slave āļ—āļģāļ‡āļēāļ™
āđāļāđˆāļ—āļēāļŠāļŦāļ™āļķāđˆāļ‡āļ„āļ™āļŦāļĢāļ·āļ­āļĄāļēāļāļāļ§āđˆāļēāļ™āļąāđ‰āļ™

āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ "--dbname", "--host" āđāļĨāļ° "--port" āđāļĢāļ āļŊāļĨāļŊ āļ–āļ·āļ­āđ€āļ›āđ‡āļ™āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļŦāļĨāļąāļ
āđƒāļŠāđ‰āđƒāļ™āļ āļēāļĒāļŦāļĨāļąāļ‡āđ€āļ›āđ‡āļ™āļ—āļēāļŠ āļ„āđˆāļēāļŦāļĢāļ·āļ­ --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ„āļ·āļ­
āļŦāļ™āđˆāļ§āļĒāđ€āļ§āļĨāļē āđāļĨāļ°āļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļāļ­āļĒāđˆāļēāļ‡āļ™āđ‰āļ­āļĒāļŦāļ™āļķāđˆāļ‡āļŦāļ™āđˆāļ§āļĒ (āđ„āļĄāđˆāļĄāļĩāļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™) āļŦāļ™āđˆāļ§āļĒāļ—āļĩāđˆāļ–āļđāļāļ•āđ‰āļ­āļ‡āļ„āļ·āļ­ 'āļ§āļīāļ™āļēāļ—āļĩ'
'āļ™āļēāļ—āļĩ' 'āļŠāļąāđˆāļ§āđ‚āļĄāļ‡' āļŦāļĢāļ·āļ­ 'āļ§āļąāļ™' āđāļ•āđˆāļĨāļ°āļ„āļģāļ­āļēāļˆāđ€āļ‚āļĩāļĒāļ™āđ€āļ›āđ‡āļ™āđ€āļ­āļāļžāļˆāļ™āđŒāļŦāļĢāļ·āļ­āļĒāđˆāļ­āđ€āļ›āđ‡āļ™
āļˆāļ”āļŦāļĄāļēāļĒāļ‰āļšāļąāļšāđāļĢāļ. āļ–āđ‰āļēāđ„āļĄāđˆāļĄāļĩāļŦāļ™āđˆāļ§āļĒāđƒāļ”āđ„āļ”āđ‰āļĢāļąāļš āļŦāļ™āđˆāļ§āļĒāļˆāļ°āļ–āļ·āļ­āļ§āđˆāļēāđ€āļ›āđ‡āļ™āļ§āļīāļ™āļēāļ—āļĩ

āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ™āļĩāđ‰āļˆāļ°āļ­āļąāļ›āđ€āļ”āļ•āđāļ–āļ§āđ€āļ”āļĩāļĒāļ§āļšāļ™āļ•āđ‰āļ™āđāļšāļš āđāļĨāđ‰āļ§āļ§āļąāļ”āļĢāļ°āļĒāļ°āđ€āļ§āļĨāļēāļ—āļĩāđˆāđƒāļŠāđ‰āđƒāļ™āļāļēāļĢāđ€āļ›āđ‡āļ™
āļ™āļģāđ„āļ›āđƒāļŠāđ‰āļāļąāļšāļ—āļēāļŠ āđƒāļ™āļāļēāļĢāļ—āļģāđ€āļŠāđˆāļ™āļ™āļĩāđ‰ āļ„āļļāļ“āļ•āđ‰āļ­āļ‡āđ€āļĨāļ·āļ­āļāļ•āļēāļĢāļēāļ‡āļ—āļĩāđˆāļāļģāļĨāļąāļ‡āļˆāļģāļĨāļ­āļ‡ āļˆāļēāļāļ™āļąāđ‰āļ™
āļŦāļēāđāļ–āļ§āļ—āļĩāđˆāļŠāļēāļĄāļēāļĢāļ–āđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡āđ„āļ”āđ‰ āđāļĨāļ°āļˆāļ°āđ„āļĄāđˆāļ–āļđāļāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡āđ‚āļ”āļĒāļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāļ­āļ·āđˆāļ™āđƒāļ” NS
āļ„āļ­āļĨāļąāļĄāļ™āđŒāđ€āļ‰āļžāļēāļ°āļ‚āļ­āļ‡āđāļ–āļ§āļ™āļĩāđ‰āļˆāļ°āđ€āļ›āļĨāļĩāđˆāļĒāļ™āļˆāļēāļāļ„āđˆāļēāļŦāļ™āļķāđˆāļ‡āđ€āļ›āđ‡āļ™āļ­āļĩāļāļ„āđˆāļēāļŦāļ™āļķāđˆāļ‡ āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ™āļĩāđ‰āļ–āļđāļāđ€āļĨāļĩāđ‰āļĒāļ‡
āđ„āļ›āļ—āļĩāđˆāļ•āļąāļ§āđ€āļĨāļ·āļ­āļ "repinfo" āđāļĨāļ°āļ„āļ§āļĢāļ›āļĢāļ°āļāļ­āļšāļ”āđ‰āļ§āļĒāļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰ āđ‚āļ”āļĒāļ„āļąāđˆāļ™āļ”āđ‰āļ§āļĒāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļŦāļĄāļēāļĒāļˆāļļāļĨāļ āļēāļ„:
āļŠāļ·āđˆāļ­āļ•āļēāļĢāļēāļ‡ āļ„āļĩāļĒāđŒāļŦāļĨāļąāļ āļĢāļŦāļąāļŠāļ„āļĩāļĒāđŒ āļ„āļ­āļĨāļąāļĄāļ™āđŒ āļ„āđˆāļēāđāļĢāļ āļ„āđˆāļēāļ—āļĩāđˆāļŠāļ­āļ‡

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: Slony āļāļģāļĨāļąāļ‡āļˆāļģāļĨāļ­āļ‡āļ•āļēāļĢāļēāļ‡āļŠāļ·āđˆāļ­ 'orders' āļˆāļēāļāđ‚āļŪāļŠāļ•āđŒ 'alpha' āđ„āļ›āļĒāļąāļ‡āđ‚āļŪāļŠāļ•āđŒ 'beta'
āđƒāļ™āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ 'āļāļēāļĢāļ‚āļēāļĒ' āļ„āļĩāļĒāđŒāļŦāļĨāļąāļāļ‚āļ­āļ‡āļ•āļēāļĢāļēāļ‡āļŠāļ·āđˆāļ­ id āđāļĨāļ°āđ€āļĢāļēāļāļģāļĨāļąāļ‡āļˆāļ°āđ„āļ›āļ—āļĩāđˆ
āļ—āļ”āļŠāļ­āļšāđāļ–āļ§āļ”āđ‰āļ§āļĒāļĢāļŦāļąāļŠ 3 (āļ‹āļķāđˆāļ‡āđ€āļ›āđ‡āļ™āļ›āļĢāļ°āļ§āļąāļ•āļīāđāļĨāļ°āđ„āļĄāđˆāđ€āļ„āļĒāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡) āļĄāļĩāļ„āļ­āļĨāļąāļĄāļ™āđŒ
āļŠāļ·āđˆāļ­ 'salesrep' āļ—āļĩāđˆāđ€āļĢāļēāļˆāļ°āļŠāļĨāļąāļšāļˆāļēāļāļ„āđˆāļē 'slon' āđ€āļ›āđ‡āļ™ 'nol' āđ€āļžāļ·āđˆāļ­āļ•āļĢāļ§āļˆāļŠāļ­āļš
āļāļēāļĢāļˆāļģāļĨāļ­āļ‡āđāļšāļš āđ€āļĢāļēāļ•āđ‰āļ­āļ‡āļāļēāļĢāļŠāđˆāļ‡āļ„āļģāđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļāļēāļĢāļˆāļģāļĨāļ­āļ‡āđāļšāļšāđ„āļĄāđˆāđ€āļāļīāļ”āļ‚āļķāđ‰āļ™āļ āļēāļĒāđƒāļ™ 10
āļ§āļīāļ™āļēāļ—āļĩ

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

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: Bucardo āļāļģāļĨāļąāļ‡āļˆāļģāļĨāļ­āļ‡āļ•āļēāļĢāļēāļ‡āļŠāļ·āđˆāļ­ 'receipt' āļˆāļēāļāđ‚āļŪāļŠāļ•āđŒ 'green' āđ„āļ›āļĒāļąāļ‡āđ‚āļŪāļŠāļ•āđŒ
'āļŠāļĩāđāļ”āļ‡' 'āļŠāļĩāļ™āđ‰āļģāđ€āļ‡āļīāļ™' āđāļĨāļ° 'āļŠāļĩāđ€āļŦāļĨāļ·āļ­āļ‡' āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļŠāļģāļŦāļĢāļąāļšāļ—āļąāđ‰āļ‡āļŠāļ­āļ‡āļāđˆāļēāļĒāđ€āļ›āđ‡āļ™ 'āļŠāļēāļ˜āļēāļĢāļ“āļ°' āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļēāļŠ
āļāļģāļĨāļąāļ‡āļ—āļģāļ‡āļēāļ™āļšāļ™āļžāļ­āļĢāđŒāļ• 5455 āļ„āļĩāļĒāđŒāļŦāļĨāļąāļāļŠāļ·āđˆāļ­ 'receipt_id' āļ‹āļķāđˆāļ‡āđ€āļ›āđ‡āļ™āđāļ–āļ§āļ—āļĩāđˆāđ€āļĢāļēāļ•āđ‰āļ­āļ‡āļāļēāļĢāđƒāļŠāđ‰
āļĄāļĩāļ„āđˆāļēāđ€āļ—āđˆāļēāļāļąāļš 9 āđāļĨāļ°āļ„āļ­āļĨāļąāļĄāļ™āđŒāļ—āļĩāđˆāđ€āļĢāļēāļ•āđ‰āļ­āļ‡āļāļēāļĢāđ€āļ›āļĨāļĩāđˆāļĒāļ™āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ€āļĢāļĩāļĒāļāļ§āđˆāļē 'āđ‚āļ‹āļ™' āļ”āļĩ
āļŠāļĨāļąāļšāļĢāļ°āļŦāļ§āđˆāļēāļ‡ 'āđ€āļŦāļ™āļ·āļ­' āđāļĨāļ° 'āđƒāļ•āđ‰' āļŠāļģāļŦāļĢāļąāļšāļ„āđˆāļēāļ‚āļ­āļ‡āļ„āļ­āļĨāļąāļĄāļ™āđŒāļ™āļĩāđ‰ āđāļĨāļ°āđ‚āļĒāļ™ if . āļ§āļīāļāļĪāļ•āļī
āļāļēāļĢāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡āđ„āļĄāđˆāđ„āļ”āđ‰āđ€āļāļīāļ”āļ‚āļķāđ‰āļ™āļāļąāļšāļ—āļēāļŠāļ—āļąāđ‰āļ‡āļŠāļēāļĄāļ āļēāļĒāđƒāļ™ 5 āļ§āļīāļ™āļēāļ—āļĩ

check_postgres_replicate_row --host=green --port=5455 --host=red,blue,yellow
--critical=5 --repinfo=receipt,receipt_id,9,āđ‚āļ‹āļ™,āđ€āļŦāļ™āļ·āļ­,āđƒāļ•āđ‰

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļˆāļ°āļŠāđˆāļ‡āļāļĨāļąāļšāļšāļĢāļĢāļ—āļąāļ”āđāļĢāļāļ•āļēāļĄāđ€āļ§āļĨāļēāđƒāļ™āļŦāļ™āđˆāļ§āļĒāļ§āļīāļ™āļēāļ—āļĩāļ—āļĩāđˆāļāļēāļĢāļˆāļģāļĨāļ­āļ‡āđāļšāļšāđƒāļŠāđ‰āđ„āļ›āļĒāļąāļ‡
āđ€āļŠāļĢāđ‡āļˆāļŠāļīāđ‰āļ™. āđ€āļ§āļĨāļēāļŠāļđāļ‡āļŠāļļāļ”āļ•āļąāđ‰āļ‡āđ„āļ§āđ‰āļ—āļĩāđˆ 4 āļ™āļēāļ—āļĩ 30 āļ§āļīāļ™āļēāļ—āļĩ: āļŦāļēāļāđ„āļĄāđˆāļĄāļĩāļāļēāļĢāļˆāļģāļĨāļ­āļ‡āđāļšāļš
āļœāļīāļ”āđ„āļ›āđ€āļŠāļĩāļĒāļ™āļēāļ™

Same_schema
("symlink: check_postgres_same_schema") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ•āļąāđ‰āļ‡āđāļ•āđˆāļŠāļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ‚āļķāđ‰āļ™āđ„āļ›āđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļ™
āđ€āļ—āđˆāļēāļ—āļĩāđˆāļŠāļ„āļĩāļĄāļēāļ‚āļ­āļ‡āļžāļ§āļāđ€āļ‚āļē (āđāļ•āđˆāđ„āļĄāđˆāđƒāļŠāđˆāļ‚āđ‰āļ­āļĄāļđāļĨāļ āļēāļĒāđƒāļ™) āļ™āļĩāđ‰āļŠāļ°āļ”āļ§āļāļ­āļĒāđˆāļēāļ‡āļĒāļīāđˆāļ‡āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ—āļģ
āļ•āļĢāļ§āļˆāļŠāļ­āļšāđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāļ—āļēāļŠāļ‚āļ­āļ‡āļ„āļļāļ“āđ„āļĄāđˆāđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāđāļāđ‰āđ„āļ‚āļŦāļĢāļ·āļ­āđ€āļŠāļĩāļĒāļŦāļēāļĒ āđāļ•āđˆāļ­āļĒāđˆāļēāļ‡āđƒāļ”āđ€āļĄāļ·āđˆāļ­āđƒāļŠāđ‰ master to slave
āļāļēāļĢāļˆāļģāļĨāļ­āļ‡āđāļšāļš āđ„āļĄāđˆāđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļšāļāļēāļĢāļāļĢāļ°āļ—āļģāļ­āļ·āđˆāļ™āđ† āļŠāđˆāļ§āļ™āđƒāļŦāļāđˆ āļŠāļīāđˆāļ‡āļ™āļĩāđ‰āđ„āļĄāđˆāļĄāļĩāļ„āļģāđ€āļ•āļ·āļ­āļ™āļŦāļĢāļ·āļ­āđ€āļāļ“āļ‘āđŒāļ—āļĩāđˆāļŠāļģāļ„āļąāļ - the
āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļĄāļĩāļāļēāļĢāļ‹āļīāļ‡āđ‚āļ„āļĢāđ„āļ™āļ‹āđŒāļŦāļĢāļ·āļ­āđ„āļĄāđˆ āļŦāļēāļāđāļ•āļāļ•āđˆāļēāļ‡āļāļąāļ™ āļĢāļēāļĒāļāļēāļĢāđ‚āļ”āļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āļ‚āļ­āļ‡
āļ„āļ§āļēāļĄāđāļ•āļāļ•āđˆāļēāļ‡āļ–āļđāļāļ™āļģāđ€āļŠāļ™āļ­

āļ„āļļāļ“āļ­āļēāļˆāļ•āđ‰āļ­āļ‡āļāļēāļĢāļĒāļāđ€āļ§āđ‰āļ™āļŦāļĢāļ·āļ­āļāļĢāļ­āļ‡āļ„āļ§āļēāļĄāđāļ•āļāļ•āđˆāļēāļ‡āļšāļēāļ‡āļ­āļĒāđˆāļēāļ‡āļ­āļ­āļ āļ§āļīāļ˜āļĩāļ—āļģāļ„āļ·āļ­āđ€āļžāļīāđˆāļĄ
āļŠāļ•āļĢāļīāļ‡āđ„āļ›āļĒāļąāļ‡āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ "--filter" āļŦāļēāļāļ•āđ‰āļ­āļ‡āļāļēāļĢāđāļĒāļāļ›āļĢāļ°āđ€āļ āļ—āļ‚āļ­āļ‡āļ§āļąāļ•āļ–āļļ āđƒāļŦāđ‰āđƒāļŠāđ‰ "noname" āđ‚āļ”āļĒāļ—āļĩāđˆ 'name'
āđ€āļ›āđ‡āļ™āļ›āļĢāļ°āđ€āļ āļ—āļ‚āļ­āļ‡āļ­āđ‡āļ­āļšāđ€āļˆāļāļ•āđŒ āđ€āļŠāđˆāļ™ "noschema" āđ€āļžāļ·āđˆāļ­āđāļĒāļāļ§āļąāļ•āļ–āļļāļšāļēāļ‡āļ›āļĢāļ°āđ€āļ āļ—āđ‚āļ”āļĒ
āļ™āļīāļžāļˆāļ™āđŒāļ—āļąāđˆāļ§āđ„āļ›āđ€āļ—āļĩāļĒāļšāļāļąāļšāļŠāļ·āđˆāļ­ āđƒāļŠāđ‰ "noname=regex" āļ”āļđāļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ”āđ‰āļēāļ™āļĨāđˆāļēāļ‡āļŠāļģāļŦāļĢāļąāļša
āļ„āļ§āļēāļĄāđ€āļ‚āđ‰āļēāđƒāļˆāļ—āļĩāđˆāļ”āļĩāļ‚āļķāđ‰āļ™

āļ›āļĢāļ°āđ€āļ āļ—āļ‚āļ­āļ‡āļ§āļąāļ•āļ–āļļāļ—āļĩāđˆāļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āđ„āļ”āđ‰ āđ„āļ”āđ‰āđāļāđˆ:

āļœāļđāđ‰āđƒāļŠāđ‰āļ‡āļēāļ™
āļ„āļĩ
āļ•āļēāļĢāļēāļ‡
āļ”āļđ
āļ”āļąāļŠāļ™āļĩ
āļĨāļģāļ”āļąāļš
āļāļēāļĢ āļˆāļģāļāļąāļ”
āđ€āļĢāļĩāļĒāļ
āļŸāļąāļ‡āļāđŒāļŠāļąāļ™

āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ•āļąāļ§āļāļĢāļ­āļ‡ "noposition" āļ›āđ‰āļ­āļ‡āļāļąāļ™āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ•āļģāđāļŦāļ™āđˆāļ‡āļ‚āļ­āļ‡āļ„āļ­āļĨāļąāļĄāļ™āđŒāļ āļēāļĒāđƒāļ™ a
āļ•āļēāļĢāļēāļ‡

āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ•āļąāļ§āļāļĢāļ­āļ‡ "nofuncbody" āļŠāđˆāļ§āļĒāļ›āđ‰āļ­āļ‡āļāļąāļ™āļāļēāļĢāđ€āļ›āļĢāļĩāļĒāļšāđ€āļ—āļĩāļĒāļšāđ€āļ™āļ·āđ‰āļ­āļ„āļ§āļēāļĄāļ‚āļ­āļ‡āļŸāļąāļ‡āļāđŒāļŠāļąāļ™āļ—āļąāđ‰āļ‡āļŦāļĄāļ”

āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ•āļąāļ§āļāļĢāļ­āļ‡ "noperm" āļ›āđ‰āļ­āļ‡āļāļąāļ™āļāļēāļĢāđ€āļ›āļĢāļĩāļĒāļšāđ€āļ—āļĩāļĒāļšāļŠāļīāļ—āļ˜āļīāđŒāļ‚āļ­āļ‡āļ§āļąāļ•āļ–āļļ

āđƒāļ™āļāļēāļĢāļˆāļąāļ”āđ€āļ•āļĢāļĩāļĒāļĄāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļŠāļ­āļ‡ āđ€āļžāļĩāļĒāļ‡āļœāļ™āļ§āļāļŠāđˆāļ§āļ™āļ•āđˆāļēāļ‡āļāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđāļĢāļāđ‚āļ”āļĒāđ‚āļ—āļĢāđ„āļ›āļ—āļĩāđˆ
āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒāļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļ—āļĩāđˆāđ€āļŦāļĄāļēāļ°āļŠāļĄ āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđ€āļŠāđˆāļ™ āđ€āļžāļ·āđˆāļ­āđ€āļ›āļĢāļĩāļĒāļšāđ€āļ—āļĩāļĒāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļšāļ™āđ‚āļŪāļŠāļ•āđŒ alpha āđāļĨāļ°
āđ„āļŠāđ‚āļĒ āđƒāļŠāđ‰ "--dbhost=alpha,bravo" āļ”āļđāļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ”āđ‰āļēāļ™āļĨāđˆāļēāļ‡āļ”āđ‰āļ§āļĒ

āļŦāļēāļāđ„āļ”āđ‰āļĢāļąāļšāđ‚āļŪāļŠāļ•āđŒāđ€āļžāļĩāļĒāļ‡āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āđ€āļ”āļĩāļĒāļ§ āļˆāļ°āļ–āļ·āļ­āļ§āđˆāļēāđ€āļĢāļēāļāļģāļĨāļąāļ‡āļˆāļąāļ”āļ—āļģāļĢāļēāļĒāļ‡āļēāļ™āđāļšāļš "āļ•āļēāļĄāđ€āļ§āļĨāļē" NS
āļ„āļĢāļąāđ‰āļ‡āđāļĢāļāļ—āļĩāđˆāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļŠāđāļ™āđ‡āļ›āļŠāđ‡āļ­āļ•āļ‚āļ­āļ‡āļĢāļēāļĒāļāļēāļĢāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āđƒāļ™āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļˆāļ°āļ–āļđāļāļšāļąāļ™āļ—āļķāļāļĨāļ‡āđƒāļ™āđ€āļ„āļĢāļ·āđˆāļ­āļ‡
āđ„āļŸāļĨāđŒ. āđ€āļĄāļ·āđˆāļ­āļ„āļļāļ“āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļ­āļĩāļāļ„āļĢāļąāđ‰āļ‡ āļŠāđāļ™āđ‡āļ›āļŠāđ‡āļ­āļ•āļ™āļąāđ‰āļ™āļˆāļ°āļ–āļđāļāļ­āđˆāļēāļ™āđāļĨāļ°āļāļĨāļēāļĒāđ€āļ›āđ‡āļ™ "āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ #2" āđāļĨāļ°āđ€āļ›āđ‡āļ™
āđ€āļ—āļĩāļĒāļšāļāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ›āļąāļˆāļˆāļļāļšāļąāļ™

āļŦāļēāļāļ•āđ‰āļ­āļ‡āļāļēāļĢāđāļ—āļ™āļ—āļĩāđˆāđ„āļŸāļĨāđŒāđ€āļāđˆāļēāļ—āļĩāđˆāđ€āļāđ‡āļšāđ„āļ§āđ‰āļ”āđ‰āļ§āļĒāđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āđƒāļŦāļĄāđˆ āđƒāļŦāđ‰āđƒāļŠāđ‰āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒ --replace

āļŦāļēāļāļ•āđ‰āļ­āļ‡āļāļēāļĢāđ€āļ›āļīāļ”āđƒāļŠāđ‰āļ‡āļēāļ™āļŠāđāļ™āđ‡āļ›āļŠāđ‡āļ­āļ• āļ“ āļˆāļļāļ”āļ•āđˆāļēāļ‡āđ† āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒ "--suffix" āđ€āļžāļ·āđˆāļ­āļŠāļĢāđ‰āļēāļ‡
āļŠāļ·āđˆāļ­āđ„āļŸāļĨāđŒāđ„āļĄāđˆāļ‹āđ‰āļģāļāļąāļ™āđƒāļ™āļāļēāļĢāļĢāļąāļ™āđāļ•āđˆāļĨāļ°āļ„āļĢāļąāđ‰āļ‡ āļ”āļđāļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ”āđ‰āļēāļ™āļĨāđˆāļēāļ‡

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļŠāļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļšāļ™āđ‚āļŪāļŠāļ•āđŒ star āđāļĨāļ° line āđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļ™:

check_postgres_same_schema --dbhost=star,āļšāļĢāļĢāļ—āļąāļ”

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 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: āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ§āļēāļĄāđāļ•āļāļ•āđˆāļēāļ‡āļŠāļģāļŦāļĢāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ "battlestar" āļšāļ™āļžāļ­āļĢāđŒāļ•āļ•āđˆāļēāļ‡āđ†

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

āļĨāļģāļ”āļąāļš
("symlink: check_postgres_sequence") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļĨāļģāļ”āļąāļšāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āđ€āļŦāļĨāļ·āļ­āđ€āļ—āđˆāļēāđƒāļ”āđƒāļ™
āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ āļ„āđˆāļēāļ™āļĩāđ‰āļ§āļąāļ”āđ€āļ›āđ‡āļ™āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāļ‚āļ­āļ‡āļ„āđˆāļēāļ—āļĩāđˆāđ€āļ›āđ‡āļ™āđ„āļ›āđ„āļ”āđ‰āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāđƒāļŠāđ‰
āļŠāļģāļŦāļĢāļąāļšāđāļ•āđˆāļĨāļ°āļĨāļģāļ”āļąāļš NS --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ„āļ§āļĢāđāļŠāļ”āļ‡āđ€āļ›āđ‡āļ™
āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒ āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ„āļ·āļ­ āļĨāļ” 85% āđ€āļžāļ·āđˆāļ­āđ€āļ›āđ‡āļ™āļ­āļļāļ—āļēāļŦāļĢāļ“āđŒāđāļĨāļ° āļĨāļ” 95% āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ§āļīāļˆāļēāļĢāļ“āđŒ āļ„āļļāļ“āļ­āļēāļˆ
āđƒāļŠāđ‰ --include āđāļĨāļ° --exclude āđ€āļžāļ·āđˆāļ­āļ„āļ§āļšāļ„āļļāļĄāļ§āđˆāļēāļ•āđ‰āļ­āļ‡āļ•āļĢāļ§āļˆāļŠāļ­āļšāļĨāļģāļ”āļąāļšāđƒāļ” āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļšāļ§āđˆāļēāļŠāļīāđˆāļ‡āļ™āļĩāđ‰
āđ€āļŠāđ‡āļ„āļ—āļģāļšāļąāļāļŠāļĩāļœāļīāļ”āļ›āļāļ•āļī āļ„āđˆāļēāļ•āđˆāļģāļŠāļļāļ” āđāļĨāļ° āđ€āļžāļīāđˆāļĄāļ‚āļķāđ‰āļ™ by āļ„āđˆāļēāļ™āļīāļĒāļĄ āđāļ•āđˆāđ„āļĄāđˆāļŠāļ™āđƒāļˆāļ§āđˆāļē
āļĨāļģāļ”āļąāļšāļ–āļđāļāļ•āļąāđ‰āļ‡āļ„āđˆāļēāđ€āļ›āđ‡āļ™āļ§āļ‡āļˆāļĢāļŦāļĢāļ·āļ­āđ„āļĄāđˆ

āļœāļĨāļĨāļąāļžāļ˜āđŒāļŠāļģāļŦāļĢāļąāļš Nagios āđƒāļŦāđ‰āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļĨāļģāļ”āļąāļš āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāļ—āļĩāđˆāđƒāļŠāđ‰ āđāļĨāļ°āļ•āļąāļ§āđ€āļĨāļ‚
āļ‚āļ­āļ‡ 'āļāļēāļĢāđ‚āļ—āļĢ' āļ—āļĩāđˆāđ€āļŦāļĨāļ·āļ­ āļĢāļ°āļšāļļāļ§āđˆāļēāļŠāļēāļĄāļēāļĢāļ–āđ€āļĢāļĩāļĒāļ nextval āđ„āļ”āđ‰āļāļĩāđˆāļ„āļĢāļąāđ‰āļ‡āđƒāļ™āļĨāļģāļ”āļąāļšāļ™āļąāđ‰āļ™
āļāđˆāļ­āļ™āļ–āļķāļ‡āļ„āđˆāļēāļŠāļđāļ‡āļŠāļļāļ”

āđ€āļ­āļēāļ•āđŒāļžāļļāļ•āļŠāļģāļŦāļĢāļąāļš MRTG āļˆāļ°āļ„āļ·āļ™āļ„āđˆāļēāđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāļŠāļđāļ‡āļŠāļļāļ”āđƒāļ™āļ—āļļāļāļĨāļģāļ”āļąāļšāđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļ
āđāļĨāļ°āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āđāļ•āđˆāļĨāļ°āļĨāļģāļ”āļąāļšāļ—āļĩāđˆāļĄāļĩāđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāļ™āļąāđ‰āļ™āđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆ āļ„āļąāđˆāļ™āļ”āđ‰āļ§āļĒ "|"
(āļ—āđˆāļ­) āļŦāļēāļāļĄāļĩāļĄāļēāļāļāļ§āđˆāļēāļŦāļ™āļķāđˆāļ‡āļĨāļģāļ”āļąāļšāļ—āļĩāđˆāđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāļ™āļąāđ‰āļ™

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđƒāļŦāđ‰āļ„āļģāđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļĄāļĩāļĨāļģāļ”āļąāļšāđƒāļāļĨāđ‰āļ–āļķāļ‡ 95% āđ€āļ•āđ‡āļĄ

check_postgres_sequence --dbport=5432 --āļ„āļģāđ€āļ•āļ·āļ­āļ™=95%

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļĨāļģāļ”āļąāļšāļ—āļĩāđˆāļŠāļ·āđˆāļ­ "orders_id_seq" āđ„āļĄāđˆāđ€āļ•āđ‡āļĄāđ€āļāļīāļ™āļ„āļĢāļķāđˆāļ‡

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

āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē_āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļœāļĨāļĢāļ§āļĄ
("symlink: check_postgres_settings_checksum") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē Postgres āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āđ€āļ›āđ‡āļ™
āđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļšāļ„āļĢāļąāđ‰āļ‡āļĨāđˆāļēāļŠāļļāļ”āļ—āļĩāđˆāļ„āļļāļ“āļ•āļĢāļ§āļˆāļŠāļ­āļš āļ—āļģāđ„āļ”āđ‰āđ‚āļ”āļĒāļāļēāļĢāļŠāļĢāđ‰āļēāļ‡āđ€āļŠāđ‡āļ„āļ‹āļąāļĄāļ‚āļ­āļ‡āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāđ€āļĢāļĩāļĒāļ‡āļĨāļģāļ”āļąāļš
āļ‚āļ­āļ‡āļāļēāļĢāļ•āļąāđ‰āļ‡āļŠāļ·āđˆāļ­āđāļĨāļ°āļ„āđˆāļēāļ‚āļ­āļ‡āļĄāļąāļ™ āđ‚āļ›āļĢāļ”āļ—āļĢāļēāļšāļ§āđˆāļēāļœāļđāđ‰āđƒāļŠāđ‰āļ—āļĩāđˆāđāļ•āļāļ•āđˆāļēāļ‡āļāļąāļ™āđƒāļ™āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļ”āļĩāļĒāļ§āļāļąāļ™āļ­āļēāļˆāļĄāļĩ
āļœāļĨāļĢāļ§āļĄāļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ—āļĩāđˆāđāļ•āļāļ•āđˆāļēāļ‡āļāļąāļ™ āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļāļēāļĢāđƒāļŠāđ‰ ALTER USER āđāļĨāļ°āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļ superusers āđ€āļŦāđ‡āļ™āļĄāļēāļāļ‚āļķāđ‰āļ™
āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļēāļĄāļēāļāļāļ§āđˆāļēāļœāļđāđ‰āđƒāļŠāđ‰āļ—āļąāđˆāļ§āđ„āļ› āđ„āļĄāđˆāļ§āđˆāļēāļˆāļ°āđ€āļ›āđ‡āļ™ --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āļŦāļĢāļ·āļ­ --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ„āļ§āļĢāđ€āļ›āđ‡āļ™
āđƒāļŦāđ‰āđāļ•āđˆāđ„āļĄāđˆāđƒāļŠāđˆāļ—āļąāđ‰āļ‡āļŠāļ­āļ‡āļ­āļĒāđˆāļēāļ‡ āļ„āđˆāļēāļ‚āļ­āļ‡āđāļ•āđˆāļĨāļ°āļĢāļēāļĒāļāļēāļĢāļ„āļ·āļ­āļœāļĨāļĢāļ§āļĄāļ‚āļ­āļ‡āđ€āļŠāđ‡āļ„ āļ‹āļķāđˆāļ‡āđ€āļ›āđ‡āļ™āđ€āļĨāļ‚āļāļēāļ™āļŠāļīāļšāļŦāļ 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 āļ‹āļķāđˆāļ‡āļšāđˆāļ‡āļŠāļĩāđ‰āļ„āļ§āļēāļĄāļŠāļģāđ€āļĢāđ‡āļˆāļ‚āļ­āļ‡āļ„āļ§āļēāļĄāļĨāđ‰āļĄāđ€āļŦāļĨāļ§āļ‚āļ­āļ‡āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāđƒāļ™āļāļēāļĢāļˆāļąāļšāļ„āļđāđˆ
āļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļ checksum āđ€āļ›āđ‡āļ™āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒ "--mrtg" āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆāđƒāļŦāđ‰ .āđ€āļŠāļĄāļ­
āđ€āļŠāđ‡āļ„āļ‹āļąāļĄāļ›āļąāļˆāļˆāļļāļšāļąāļ™

slony_status
("symlink: check_postgres_slony_status") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļŠāļ–āļēāļ™āļ°āļ‚āļ­āļ‡āļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒ Slony āđ‚āļ”āļĒ
āļ”āļđāļœāļĨāļĨāļąāļžāļ˜āđŒāļ‚āļ­āļ‡āļĄāļļāļĄāļĄāļ­āļ‡ sl_status āļ‚āļ­āļ‡ Slony āļ™āļĩāđ‰āļˆāļ°āļ–āļđāļāļŠāđˆāļ‡āļāļĨāļąāļšāđ€āļ›āđ‡āļ™āļˆāļģāļ™āļ§āļ™
āļ§āļīāļ™āļēāļ—āļĩāļ‚āļ­āļ‡ "āđ€āļ§āļĨāļēāļŦāļ™āđˆāļ§āļ‡" NS --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ„āļ§āļĢāđāļŠāļ”āļ‡āđ€āļ›āđ‡āļ™āđ€āļ§āļĨāļē
āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ„āļ·āļ­ 60 āļ§āļīāļ™āļēāļ—āļĩ āđ€āļžāļ·āđˆāļ­āđ€āļ›āđ‡āļ™āļ­āļļāļ—āļēāļŦāļĢāļ“āđŒāđāļĨāļ° 300 āļ§āļīāļ™āļēāļ—āļĩ āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ§āļīāļˆāļēāļĢāļ“āđŒ

āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒāļ—āļēāļ‡āđ€āļĨāļ·āļ­āļ --āļŠāļ„āļĩāļĄāļē āļĢāļ°āļšāļļāļŠāļ„āļĩāļĄāļēāļ—āļĩāđˆāļ•āļīāļ”āļ•āļąāđ‰āļ‡ Slony āļ–āđ‰āļēāļĄāļąāļ™
āđ„āļĄāđˆāđ„āļ”āđ‰āļĢāļąāļš āļŠāļ„āļĩāļĄāļēāļˆāļ°āļ–āļđāļāļāļģāļŦāļ™āļ”āđ‚āļ”āļĒāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļīāļ—āļļāļāļ„āļĢāļąāđ‰āļ‡āļ—āļĩāđˆāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ™āļĩāđ‰

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđƒāļŦāđ‰āļ„āļģāđ€āļ•āļ·āļ­āļ™āļŦāļēāļ Slony āļĨāđˆāļēāļŠāđ‰āļēāđ€āļāļīāļ™ 20 āļ§āļīāļ™āļēāļ—āļĩ

check_postgres_slony_status --āļ„āļģāđ€āļ•āļ·āļ­āļ™ 20

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āđƒāļŦāđ‰āļ„āđˆāļēāļ§āļīāļāļĪāļ•āļŦāļēāļ Slony āļ•āļīāļ”āļ•āļąāđ‰āļ‡āļ āļēāļĒāđƒāļ•āđ‰āļŠāļ„āļĩāļĄāļē "_slony" āļĄāļĩāļ„āđˆāļēāļĄāļēāļāļāļ§āđˆāļē 10
āļ™āļēāļ—āļĩāļĨāđ‰āļēāļŦāļĨāļąāļ‡

check_postgres_slony_status --schema=_slony --critical=600

āļāļēāļĢāļ‹āļīāļ‡āđ‚āļ„āļĢāđ„āļ™āļ‹āđŒāđ€āļ§āļĨāļē
("symlink: check_postgres_timesync") āđ€āļ›āļĢāļĩāļĒāļšāđ€āļ—āļĩāļĒāļšāđ€āļ§āļĨāļēāļ‚āļ­āļ‡āļĢāļ°āļšāļšāļ—āđ‰āļ­āļ‡āļ–āļīāđˆāļ™āļāļąāļšāđ€āļ§āļĨāļēāļ—āļĩāđˆāļĢāļēāļĒāļ‡āļēāļ™
āđ‚āļ”āļĒāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ­āļĒāđˆāļēāļ‡āļ™āđ‰āļ­āļĒāļŦāļ™āļķāđˆāļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ NS --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđāļŠāļ”āļ‡āļ–āļķāļ‡āļˆāļģāļ™āļ§āļ™
āļ§āļīāļ™āļēāļ—āļĩāļĢāļ°āļŦāļ§āđˆāļēāļ‡āļ—āļąāđ‰āļ‡āļŠāļ­āļ‡āļĢāļ°āļšāļšāļāđˆāļ­āļ™āļ—āļĩāđˆāļˆāļ°āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāđāļˆāđ‰āļ‡āđ€āļ•āļ·āļ­āļ™ āļŦāļēāļāđ„āļĄāđˆāļĢāļ°āļšāļļāđ„āļ§āđ‰
āļĄāļĩāļāļēāļĢāđƒāļŠāđ‰āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™ āļ‹āļķāđˆāļ‡āđ„āļ”āđ‰āđāļāđˆ '2' āđāļĨāļ° '5' āļ„āđˆāļēāđ€āļ•āļ·āļ­āļ™āļ•āđ‰āļ­āļ‡āđ„āļĄāđˆāđ€āļāļīāļ™
āļ„āđˆāļēāļ§āļīāļāļĪāļ• āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ™āļĩāđ‰āļĄāļĩāļĨāļąāļāļĐāļ“āļ°āļ—āļĩāđˆāđ„āļĄāđˆāđāļ™āđˆāļ™āļ­āļ™ āļ„āđˆāļēāļ‚āļ­āļ‡ '0' āļŦāļĢāļ·āļ­ '1' āļˆāļķāļ‡āđ„āļĄāđˆāđƒāļŠāđˆ
āđāļ™āļ°āļ™āļģ

āļŠāļ•āļĢāļīāļ‡āļ—āļĩāđˆāļŠāđˆāļ‡āļ„āļ·āļ™āđāļŠāļ”āļ‡āļ„āļ§āļēāļĄāđāļ•āļāļ•āđˆāļēāļ‡āļ‚āļ­āļ‡āđ€āļ§āļĨāļēāđāļĨāļ°āđ€āļ§āļĨāļēāđƒāļ™āđāļ•āđˆāļĨāļ°āļ”āđ‰āļēāļ™āļ—āļĩāđˆāđ€āļ‚āļĩāļĒāļ™
āļ­āļ­āļ.

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļšāļ™āđ‚āļŪāļŠāļ•āđŒ ankh, morpork āđāļĨāļ° klatch āļ™āļąāđ‰āļ™āđ„āļĄāđˆāđ€āļāļīāļ™ 3
āļ§āļīāļ™āļēāļ—āļĩāļˆāļēāļāđ€āļ§āļĨāļēāļ—āđ‰āļ­āļ‡āļ–āļīāđˆāļ™:

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

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļŠāđˆāļ‡āļ„āļ·āļ™āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļāļˆāļģāļ™āļ§āļ™āļ§āļīāļ™āļēāļ—āļĩāļ—āļĩāđˆāļ•āđˆāļēāļ‡āļāļąāļ™āļĢāļ°āļŦāļ§āđˆāļēāļ‡
āđ€āļ§āļĨāļēāļ—āđ‰āļ­āļ‡āļ–āļīāđˆāļ™āđāļĨāļ°āđ€āļ§āļĨāļēāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆāļŠāđˆāļ‡āļ„āļ·āļ™āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ

txn_idle
("symlink: check_postgres_txn_idle") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļˆāļģāļ™āļ§āļ™āđāļĨāļ°āļĢāļ°āļĒāļ°āđ€āļ§āļĨāļēāļ‚āļ­āļ‡ "idle in
āļ˜āļļāļĢāļāļĢāļĢāļĄ" āļŠāļ·āļšāļ„āđ‰āļ™āļšāļ™āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ•āļąāđ‰āļ‡āđāļ•āđˆāļŦāļ™āļķāđˆāļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ‚āļķāđ‰āļ™āđ„āļ› āđ„āļĄāđˆāļˆāļģāđ€āļ›āđ‡āļ™āļ•āđ‰āļ­āļ‡āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļĄāļēāļāļāļ§āđˆāļēāļŦāļ™āļķāđˆāļ‡āļ„āļĢāļąāđ‰āļ‡
āļšāļ™āļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļ”āļĩāļĒāļ§āļāļąāļ™ āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āđ‚āļ”āļĒāđƒāļŠāđ‰ --āļĢāļ§āļĄ āđāļĨāļ°
--āđ„āļĄāđˆāļĢāļ§āļĄ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđāļŠāđˆāļ§āļ™ "āļāļēāļĢāļāļĢāļ­āļ‡āļžāļ·āđ‰āļ™āļāļēāļ™" āļ”āđ‰āļēāļ™āļĨāđˆāļēāļ‡āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ

āļžāļ·āđ‰āļ™āļ—āļĩāđˆ --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ–āļđāļāļāļģāļŦāļ™āļ”āđ€āļ›āđ‡āļ™āļŦāļ™āđˆāļ§āļĒāļ‚āļ­āļ‡āđ€āļ§āļĨāļē āļˆāļģāļ™āļ§āļ™āđ€āļ•āđ‡āļĄāļĨāļ‡āļ™āļēāļĄ āļŦāļĢāļ·āļ­
āļˆāļģāļ™āļ§āļ™āđ€āļ•āđ‡āļĄāļŠāļģāļŦāļĢāļąāļšāļŦāļ™āđˆāļ§āļĒāđ€āļ§āļĨāļē āđāļĨāļ°āļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļāļ—āļąāđ‰āļ‡āļ„āļđāđˆ (āđ„āļĄāđˆāļĄāļĩāļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™) āļŦāļ™āđˆāļ§āļĒāļ—āļĩāđˆāļ–āļđāļāļ•āđ‰āļ­āļ‡
āļ„āļ·āļ­ 'āļ§āļīāļ™āļēāļ—āļĩ', 'āļ™āļēāļ—āļĩ', 'āļŠāļąāđˆāļ§āđ‚āļĄāļ‡' āļŦāļĢāļ·āļ­ 'āļ§āļąāļ™' āļ­āļēāļˆāđ€āļ‚āļĩāļĒāļ™āđ€āļ›āđ‡āļ™āđ€āļ­āļāļžāļˆāļ™āđŒāļŦāļĢāļ·āļ­āļĒāđˆāļ­āļāđ‡āđ„āļ”āđ‰
āđ€āļ›āđ‡āļ™āđ€āļžāļĩāļĒāļ‡āļ•āļąāļ§āļ­āļąāļāļĐāļĢāļ•āļąāļ§āđāļĢāļ āļŦāļēāļāđ„āļĄāđˆāļĄāļĩāļāļēāļĢāļĢāļ°āļšāļļāļŦāļ™āđˆāļ§āļĒāđāļĨāļ°āđ„āļĄāđˆāđ„āļ”āđ‰āļĨāļ‡āļ™āļēāļĄāļ•āļąāļ§āđ€āļĨāļ‚ āļŦāļ™āđˆāļ§āļĒ
āļˆāļ°āļ–āļ·āļ­āļ§āđˆāļēāđ€āļ›āđ‡āļ™āļ§āļīāļ™āļēāļ—āļĩ

āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰ 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 āļĢāļēāļĒāļāļēāļĢāļ‚āļķāđ‰āļ™āđ„āļ›āļ—āļĩāđˆāđ„āļĄāđˆāđ„āļ”āđ‰āđƒāļŠāđ‰āļ‡āļēāļ™āđƒāļ™āļāļēāļĢāļ—āļģāļ˜āļļāļĢāļāļĢāļĢāļĄāļŠāļģāļŦāļĢāļąāļš more
āļĄāļēāļāļāļ§āđˆāļē 10 āļ§āļīāļ™āļēāļ—āļĩ:

check_postgres_txn_idle --port=5432 --critical='5 āđ€āļ›āđ‡āļ™āđ€āļ§āļĨāļē 10 āļ§āļīāļ™āļēāļ—āļĩ'

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļŠāđˆāļ‡āļ„āļ·āļ™āđ€āļ§āļĨāļēāđ€āļ›āđ‡āļ™āļ§āļīāļ™āļēāļ—āļĩāļ‚āļ­āļ‡āļ˜āļļāļĢāļāļĢāļĢāļĄāļ—āļĩāđˆāđ„āļĄāđˆāđ„āļ”āđ‰āđƒāļŠāđ‰āļ‡āļēāļ™āļ™āļēāļ™āļ—āļĩāđˆāļŠāļļāļ”
āļ§āļīāđˆāļ‡. āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆāļŠāđˆāļ‡āļ„āļ·āļ™āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđāļĨāļ°āļ‚āđ‰āļ­āļĄāļđāļĨāļ­āļ·āđˆāļ™ āđ† āđ€āļāļĩāđˆāļĒāļ§āļāļąāļš
āļ˜āļļāļĢāļāļĢāļĢāļĄāļ—āļĩāđˆāļĒāļēāļ§āļ—āļĩāđˆāļŠāļļāļ”

txn_time
("symlink: check_postgres_txn_time") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ§āļēāļĄāļĒāļēāļ§āļ‚āļ­āļ‡āļ˜āļļāļĢāļāļĢāļĢāļĄāļ—āļĩāđˆāđ€āļ›āļīāļ”āļ­āļĒāļđāđˆāļ•āļąāđ‰āļ‡āđāļ•āđˆāļŦāļ™āļķāđˆāļ‡āļĢāļēāļĒāļāļēāļĢāļ‚āļķāđ‰āļ™āđ„āļ›
āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ āđ„āļĄāđˆāļˆāļģāđ€āļ›āđ‡āļ™āļ•āđ‰āļ­āļ‡āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļ„āļģāļŠāļąāđˆāļ‡āļ™āļĩāđ‰āļĄāļēāļāļāļ§āđˆāļēāļŦāļ™āļķāđˆāļ‡āļ„āļĢāļąāđ‰āļ‡āļ•āđˆāļ­āļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ
āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āđ‚āļ”āļĒāđƒāļŠāđ‰ --āļĢāļ§āļĄ āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđ "āļžāļ·āđ‰āļ™āļāļēāļ™
FILTERING" āļŠāļģāļŦāļĢāļąāļšāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ āđ€āļˆāđ‰āļēāļ‚āļ­āļ‡āļ˜āļļāļĢāļāļĢāļĢāļĄāļĒāļąāļ‡āļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āđ‚āļ”āļĒ
āđƒāļŠāđ‰ --includeuser āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄāļœāļđāđ‰āđƒāļŠāđ‰ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ”āļđāļŠāđˆāļ§āļ™ "āļāļēāļĢāļāļĢāļ­āļ‡āļŠāļ·āđˆāļ­āļœāļđāđ‰āđƒāļŠāđ‰"
.

āļ„āđˆāļēāļŦāļĢāļ·āļ­ --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ„āļ·āļ­āļŦāļ™āđˆāļ§āļĒāļ‚āļ­āļ‡āđ€āļ§āļĨāļēāđāļĨāļ°āļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļ
(āđ„āļĄāđˆāļĄāļĩāļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™). āļŦāļ™āđˆāļ§āļĒāļ—āļĩāđˆāļ–āļđāļāļ•āđ‰āļ­āļ‡āļ„āļ·āļ­ 'āļ§āļīāļ™āļēāļ—āļĩ', 'āļ™āļēāļ—āļĩ', 'āļŠāļąāđˆāļ§āđ‚āļĄāļ‡' āļŦāļĢāļ·āļ­ 'āļ§āļąāļ™' āđāļ•āđˆāļĨāļ°āļ„āļ™āļ­āļēāļˆāļˆāļ°
āđ€āļ‚āļĩāļĒāļ™āđ€āļ­āļāļžāļˆāļ™āđŒāļŦāļĢāļ·āļ­āļĒāđˆāļ­āđāļ„āđˆāļ­āļąāļāļĐāļĢāļ•āļąāļ§āđāļĢāļ āļŦāļēāļāđ„āļĄāđˆāļĄāļĩāļŦāļ™āđˆāļ§āļĒāđƒāļŦāđ‰
āļŦāļ™āđˆāļ§āļĒāļ–āļ·āļ­āđ€āļ›āđ‡āļ™āļ§āļīāļ™āļēāļ—āļĩ

āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰ Postgres 8.3 āļŦāļĢāļ·āļ­āļ”āļĩāļāļ§āđˆāļē

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđƒāļŦāđ‰āļ„āļ§āļēāļĄāļŠāļģāļ„āļąāļāļŦāļēāļāļĄāļĩāļāļēāļĢāđ€āļ›āļīāļ”āļ˜āļļāļĢāļāļĢāļĢāļĄāđƒāļ” āđ† āļ™āļēāļ™āļāļ§āđˆāļē 10 āļ™āļēāļ—āļĩ:

check_postgres_txn_time --port=5432 --critical='10 minutes'

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļœāļđāđ‰āđƒāļŠāđ‰ 'āļ„āļĨāļąāļ‡āļŠāļīāļ™āļ„āđ‰āļē' āļĄāļĩāļ˜āļļāļĢāļāļĢāļĢāļĄāļ—āļĩāđˆāđ€āļ›āļīāļ”āđ€āļāļīāļ™ 30 āļ§āļīāļ™āļēāļ—āļĩ

check_postgres_txn_time --port-5432 --warning = 30s --includeuser = āļ„āļĨāļąāļ‡āļŠāļīāļ™āļ„āđ‰āļē

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļŠāđˆāļ‡āļ„āļ·āļ™āđ€āļ§āļĨāļēāļŠāļđāļ‡āļŠāļļāļ”āđ€āļ›āđ‡āļ™āļ§āļīāļ™āļēāļ—āļĩāļ—āļĩāđˆāđ€āļ›āļīāļ”āļ˜āļļāļĢāļāļĢāļĢāļĄāļšāļ™
āđ€āļŠāđ‰āļ™āđāļĢāļ. āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆāļĢāļ°āļšāļļāļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ

txn_wraparound
("symlink: check_postgres_txn_wraparound") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļāļēāļĢāļ—āļģāļ˜āļļāļĢāļāļĢāļĢāļĄāđāļšāļšāļ§āļ™āļĢāļ­āļšāđƒāļāļĨāđ‰āđāļ„āđˆāđ„āļŦāļ™
āļŦāļĢāļ·āļ­āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļĄāļēāļāļ‚āļķāđ‰āļ™ NS --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļĢāļ°āļšāļļāļˆāļģāļ™āļ§āļ™
āļ‚āļ­āļ‡āļ˜āļļāļĢāļāļĢāļĢāļĄāļ—āļĩāđˆāļ—āļģāđ€āļŠāļĢāđ‡āļˆāđāļĨāđ‰āļ§ āđāļĨāļ°āļ•āđ‰āļ­āļ‡āđ€āļ›āđ‡āļ™āļˆāļģāļ™āļ§āļ™āđ€āļ•āđ‡āļĄāļšāļ§āļ āļŦāļēāļāđ„āļĄāđˆāļĢāļ°āļšāļļāļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđƒāļ”āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļŦāļ™āļķāđˆāļ‡
āđƒāļŠāđ‰āļ„āđˆāļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™ 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 āļĢāļ°āļšāļļāļ§āđˆāļēāđ€āļ›āđ‡āļ™āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđƒāļ”

āļĢāļļāđˆāļ™
("symlink: check_postgres_version") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļē Postgres āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āļāļēāļĢāļ„āļ·āļ­
āļ§āļīāđˆāļ‡. NS --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ (āļ•āđ‰āļ­āļ‡āļāļēāļĢāđ€āļžāļĩāļĒāļ‡āļ•āļąāļ§āđ€āļ”āļĩāļĒāļ§āđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™) āļˆāļ°āļ•āđ‰āļ­āļ‡āļ­āļĒāļđāđˆāđƒāļ™āļĢāļđāļ›āđāļšāļš
XY or XYZ āļ—āļĩāđˆāđ„āļŦāļ™ X āļ„āļ·āļ­āļŦāļĄāļēāļĒāđ€āļĨāļ‚āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļŦāļĨāļąāļ Y āļ„āļ·āļ­āļŦāļĄāļēāļĒāđ€āļĨāļ‚āļĢāļļāđˆāļ™āļĢāļ­āļ‡ āđāļĨāļ° Z is
āļāļēāļĢāđāļāđ‰āđ„āļ‚

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āđƒāļŦāđ‰āļ„āļģāđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļšāļ™āļžāļ­āļĢāđŒāļ• 5678 āđ„āļĄāđˆāđƒāļŠāđˆāđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™ 8.4.10:

check_postgres_version --port=5678 -w=8.4.10

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 2: āđƒāļŦāđ‰āļ„āļģāđ€āļ•āļ·āļ­āļ™āļŦāļēāļāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđƒāļ” āđ† āļšāļ™āđ‚āļŪāļŠāļ•āđŒ Valley, Grain āļŦāļĢāļ·āļ­ Sunshine āđ„āļĄāđˆāđƒāļŠāđˆ 8.3:

check_postgres_version -H āļŦāļļāļšāđ€āļ‚āļē, āđ€āļĄāļĨāđ‡āļ”āļžāļ·āļŠ, āđāļŠāļ‡āđāļ”āļ” --critical=8.3

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļĢāļēāļĒāļ‡āļēāļ™ 1 āļŦāļĢāļ·āļ­ 0 āļ—āļĩāđˆāļĢāļ°āļšāļļāļ§āđˆāļēāļŠāļģāđ€āļĢāđ‡āļˆāļŦāļĢāļ·āļ­āļĨāđ‰āļĄāđ€āļŦāļĨāļ§āđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āđāļĢāļ NS
āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆāļŠāļĩāđˆāļĢāļ°āļšāļļāđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ›āļąāļˆāļˆāļļāļšāļąāļ™ āļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļāđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļœāđˆāļēāļ™ "--mrtg"
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ

āļ§āļ­āļĨ_āđ„āļŸāļĨāđŒ
("symlink: check_postgres_wal_files") āļ•āļĢāļ§āļˆāļŠāļ­āļšāļˆāļģāļ™āļ§āļ™āđ„āļŸāļĨāđŒ WAL āļ—āļĩāđˆāļĄāļĩāļ­āļĒāļđāđˆāđƒāļ™āđ„āļŸāļĨāđŒ pg_xlog
āđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩāļ‹āļķāđˆāļ‡āļžāļšāļˆāļēāļ your data_directory, āļšāļēāļ‡āļ„āļĢāļąāđ‰āļ‡āļāđ‡āđ€āļ›āļĢāļĩāļĒāļšāđ€āļŠāļĄāļ·āļ­āļ™āđ€āļ›āđ‡āļ™āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āđ€āļŠāļ·āđˆāļ­āļĄāļ–āļķāļ‡āļāļąāļ™
āļŸāļīāļŠāļīāļ„āļąāļĨāļ”āļīāļŠāļāđŒāļ”āđ‰āļ§āļĒāđ€āļŦāļ•āļļāļœāļĨāļ”āđ‰āļēāļ™āļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļ•āđ‰āļ­āļ‡āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āđƒāļ™āļāļēāļ™āļ° superuser āđ€āļžāļ·āđˆāļ­
āđ€āļ‚āđ‰āļēāļ–āļķāļ‡āđ€āļ™āļ·āđ‰āļ­āļŦāļēāļ‚āļ­āļ‡ pg_xlog āđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩ āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ‚āļąāđ‰āļ™āļ•āđˆāļģāļ—āļĩāđˆāļˆāļ°āđƒāļŠāđ‰āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļ„āļ·āļ­
āđ‚āļžāļŠāđ€āļāļĢāļŠ 8.1 NS --āļ„āļģāđ€āļ•āļ·āļ­āļ™ āđāļĨāļ° --āļ§āļīāļāļĪāļ• āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđ€āļ›āđ‡āļ™āđ€āļžāļĩāļĒāļ‡āļˆāļģāļ™āļ§āļ™āđ„āļŸāļĨāđŒāđƒāļ™
pg_xlog āđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩ āļˆāļ°āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ•āļąāļ§āđ€āļĨāļ‚āđƒāļ”āļˆāļ°āđāļ•āļāļ•āđˆāļēāļ‡āļāļąāļ™āđ„āļ› āđāļ•āđˆāđāļ™āļ§āļ—āļēāļ‡āļ—āļąāđˆāļ§āđ„āļ›āļ„āļ·āļ­āđƒāļŦāđ‰āđƒāļŠāđˆ
āļ•āļąāļ§āđ€āļĨāļ‚āļ—āļĩāđˆāļŠāļđāļ‡āļāļ§āđˆāļēāļ›āļāļ•āļīāđ€āļĨāđ‡āļāļ™āđ‰āļ­āļĒāđ€āļžāļ·āđˆāļ­āļˆāļąāļšāļ›āļąāļāļŦāļēāđāļ•āđˆāđ€āļ™āļīāđˆāļ™āđ†

āđ‚āļ”āļĒāļ›āļāļ•āļī āđ„āļŸāļĨāđŒ WAL āļˆāļ°āļ–āļđāļāļ›āļīāļ”āđāļĨāļ°āļ™āļģāļāļĨāļąāļšāļĄāļēāđƒāļŠāđ‰āđƒāļŦāļĄāđˆ āđāļ•āđˆāđ€āļ›āđ‡āļ™āļ˜āļļāļĢāļāļĢāļĢāļĄāļ—āļĩāđˆāđ€āļ›āļīāļ”āđ€āļ›āđ‡āļ™āđ€āļ§āļĨāļēāļ™āļēāļ™ āļŦāļĢāļ·āļ­ a
āļ„āļ§āļēāļĄāļœāļīāļ”āļžāļĨāļēāļ” archive_command āļŠāļ„āļĢāļīāļ›āļ•āđŒāļ­āļēāļˆāļ—āļģāđƒāļŦāđ‰ Postgres āļŠāļĢāđ‰āļēāļ‡āđ„āļŸāļĨāđŒāļĄāļēāļāđ€āļāļīāļ™āđ„āļ› āđƒāļ™āļ—āļĩāđˆāļŠāļļāļ”
āļāļēāļĢāļ—āļģāđ€āļŠāđˆāļ™āļ™āļĩāđ‰āļˆāļ°āļ—āļģāđƒāļŦāđ‰āļžāļ·āđ‰āļ™āļ—āļĩāđˆāļ”āļīāļŠāļāđŒāļ—āļĩāđˆāđƒāļŠāđ‰āļ­āļĒāļđāđˆāļŦāļĄāļ” āļ‹āļķāđˆāļ‡ Postgres āļˆāļ°
āļ›āļīāļ”āļ•āļąāļ§āļĨāļ‡.

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆ 1: āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ§āđˆāļēāļˆāļģāļ™āļ§āļ™āđ„āļŸāļĨāđŒ WAL āļ„āļ·āļ­ 20 āļŦāļĢāļ·āļ­āļ™āđ‰āļ­āļĒāļāļ§āđˆāļēāļšāļ™āđ‚āļŪāļŠāļ•āđŒ "pluto"

check_postgres_wal_files --host=āļžāļĨāļđāđ‚āļ• --critical=20

āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āļēāļ•āđŒāļžāļļāļ• MRTG āļĢāļēāļĒāļ‡āļēāļ™āļˆāļģāļ™āļ§āļ™āđ„āļŸāļĨāđŒ WAL āđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆ 1

āļŠāļĢāđ‰āļēāļ‡āđƒāļŦāļĄāđˆ_symlinks
āļŠāļĢāđ‰āļēāļ‡āđƒāļŦāļĄāđˆ_symlinks_force
āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āđ„āļĄāđˆāļ•āđ‰āļ­āļ‡āļāļēāļĢāļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒāļ­āļ·āđˆāļ™ āđ† āđāļĨāļ°āđ„āļĄāđˆāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļāļąāļšāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāđƒāļ” āđ† āđāļ•āđˆāđ€āļžāļĩāļĒāļ‡āđāļ„āđˆ
āļŠāļĢāđ‰āļēāļ‡ symlink āđƒāļ™āđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩāļ›āļąāļˆāļˆāļļāļšāļąāļ™āļŠāļģāļŦāļĢāļąāļšāđāļ•āđˆāļĨāļ°āļāļēāļĢāļāļĢāļ°āļ—āļģāđƒāļ™āļĢāļđāļ›āđāļšāļš
check_postgres_. āļŦāļēāļāđ„āļŸāļĨāđŒāļ™āļąāđ‰āļ™āļĄāļĩāļ­āļĒāļđāđˆāđāļĨāđ‰āļ§ āđ„āļŸāļĨāđŒāļ™āļąāđ‰āļ™āļˆāļ°āđ„āļĄāđˆāļ–āļđāļāđ€āļ‚āļĩāļĒāļ™āļ—āļąāļš āļ–āđ‰āļē
āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ„āļ·āļ­ rebuild_symlinks_force āļˆāļēāļāļ™āļąāđ‰āļ™ symlink āļˆāļ°āļ–āļđāļāđ€āļ‚āļĩāļĒāļ™āļ—āļąāļš āļ—āļēāļ‡āđ€āļĨāļ·āļ­āļ
--symlinks āđ€āļ›āđ‡āļ™āļ§āļīāļ˜āļĩāļ—āļĩāđˆāļŠāļąāđ‰āļ™āļāļ§āđˆāļēāđƒāļ™āļāļēāļĢāļžāļđāļ” --action=rebuild_symlinks

āļžāļ·āđ‰āļ™āļāļēāļ™ āļāļēāļĢāļāļĢāļ­āļ‡


āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ•āđˆāļēāļ‡āđ† --āļĢāļ§āļĄ āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄ āļŠāļēāļĄāļēāļĢāļ–āļĢāļ§āļĄāļāļąāļ™āđ€āļžāļ·āđˆāļ­āļˆāļģāļāļąāļ”āļŠāļīāđˆāļ‡āļ—āļĩāđˆāļ•āļĢāļ§āļˆāļŠāļ­āļšāđ„āļ”āđ‰
āļ‚āļķāđ‰āļ™āļ­āļĒāļđāđˆāļāļąāļšāļāļēāļĢāļāļĢāļ°āļ—āļģ āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āđ„āļ”āđ‰āđ€āļĄāļ·āđˆāļ­āđƒāļŠāđ‰āļ”āļąāļ‡āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰
āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢ: āđāļšāđ‡āļāđ€āļ­āļ™āļ”āđŒ, database_size, āļĨāđ‡āļ­āļ, query_time, txn_idle āđāļĨāļ° txn_time āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡
āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒāļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āđ„āļ”āđ‰āđ€āļĄāļ·āđˆāļ­āđƒāļŠāđ‰āļāļēāļĢāļāļĢāļ°āļ—āļģāļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰: bloat, index_size,
table_size,relation_size,last_vacuum,last_autovacuum,last_analyze āđāļĨāļ°
Last_autoanalyze. āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļēāļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āđ„āļ”āđ‰āđ€āļĄāļ·āđˆāļ­āđƒāļŠāđ‰ settings_checksum
āļāļēāļĢāļāļĢāļ°āļ—āļģ. āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļĢāļ°āļšāļšāđ„āļŸāļĨāđŒāļŠāļēāļĄāļēāļĢāļ–āļāļĢāļ­āļ‡āđ„āļ”āđ‰āđ€āļĄāļ·āđˆāļ­āđƒāļŠāđ‰āđāļ­āđ‡āļ„āļŠāļąāļ™ disk_space

āļŦāļēāļāđƒāļŦāđ‰āđ€āļ‰āļžāļēāļ°āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļāļēāļĢāļĢāļ§āļĄ āļĢāļ°āļšāļšāļˆāļ°āļ•āļĢāļ§āļˆāļŠāļ­āļšāđ€āļ‰āļžāļēāļ°āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāļ•āļĢāļ‡āļāļąāļ™āđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™
āļ­āļĒāđˆāļēāļ‡āđ„āļĢāļāđ‡āļ•āļēāļĄ āļŦāļēāļāđƒāļŦāđ‰āļ—āļąāđ‰āļ‡āđ„āļĄāđˆāļĢāļ§āļĄāđāļĨāļ°āļĢāļ§āļĄ āļāļēāļĢāļĒāļāđ€āļ§āđ‰āļ™āļˆāļ°āļāļĢāļ°āļ—āļģāļāđˆāļ­āļ™ āđāļĨāļ°āļāļēāļĢāļĢāļ§āļĄ
āļŦāļĨāļąāļ‡āļˆāļēāļāļ™āļąāđ‰āļ™āđ€āļžāļ·āđˆāļ­āļ„āļ·āļ™āļŠāļ–āļēāļ™āļ°āļŠāļīāđˆāļ‡āļ—āļĩāđˆāļ­āļēāļˆāđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļĒāļāđ€āļ§āđ‰āļ™ āļ—āļąāđ‰āļ‡āļ„āļđāđˆ --āļĢāļ§āļĄ āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄ āļŠāļēāļĄāļēāļĢāļ–
āđƒāļŦāđ‰āļŦāļĨāļēāļĒāļ„āļĢāļąāđ‰āļ‡ āđāļĨāļ°/āļŦāļĢāļ·āļ­āđ€āļ›āđ‡āļ™āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāļ„āļąāđˆāļ™āļ”āđ‰āļ§āļĒāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļŦāļĄāļēāļĒāļˆāļļāļĨāļ āļēāļ„ āļ•āļąāļ§āļŦāļ™āļ­āļ™āļŠāļąāđ‰āļ™āļ™āļģāļˆāļ°āļ•āļĢāļ‡āļāļąāļš
āļ„āļģāļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰āđ€āļ›āđ‡āļ™āļ™āļīāļžāļˆāļ™āđŒāļ—āļąāđˆāļ§āđ„āļ›

āļŦāļēāļāļ•āđ‰āļ­āļ‡āļāļēāļĢāļˆāļąāļšāļ„āļđāđˆāļŠāļ„āļĩāļĄāļē āđƒāļŦāđ‰āļŠāļīāđ‰āļ™āļŠāļļāļ”āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ„āđ‰āļ™āļŦāļēāļ”āđ‰āļ§āļĒāļˆāļļāļ”āđ€āļ”āļĩāļĒāļ§ āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļ•āļąāļ§āļŦāļ™āļ­āļ™āļŠāļąāđ‰āļ™āļ™āļģāđ„āļ”āđ‰
āļŠāļģāļŦāļĢāļąāļšāļŠāļ„āļĩāļĄāļēāđ€āļŠāđˆāļ™āļāļąāļ™

āđ‚āļ›āļĢāļ”āđƒāļŠāđ‰āļ„āļ§āļēāļĄāļĢāļ°āļĄāļąāļ”āļĢāļ°āļ§āļąāļ‡āđ€āļĄāļ·āđˆāļ­āđƒāļŠāđ‰āļāļēāļĢāļāļĢāļ­āļ‡: āļāļŽāļāļēāļĢāļĢāļ§āļĄāļ—āļĩāđˆāđāļšāđ‡āļāđ€āļ­āļ™āļ”āđŒ āđ€āļŠāđˆāļ™ may
āļĢāļēāļĒāļ‡āļēāļ™āļ§āđˆāļēāđ„āļĄāđˆāļĄāļĩāļ›āļąāļāļŦāļēāđ€āļžāļĩāļĒāļ‡āđ€āļžāļĢāļēāļ°āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļ•āļĢāļ‡āļāļąāļ™āđ„āļĄāđˆāļĄāļĩāđāļšāđ‡āļāđ€āļ­āļ™āļ”āđŒ āđāļ•āđˆāđ€āļžāļĢāļēāļ°āļ„āļļāļ“
āļŠāļ°āļāļ”āļŠāļ·āđˆāļ­āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļœāļīāļ”!

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡:

āļ•āļĢāļ§āļˆāļŠāļ­āļšāđ€āļ‰āļžāļēāļ°āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāļŠāļ·āđˆāļ­ pg_class:

--include=pg_class

āļ•āļĢāļ§āļˆāļŠāļ­āļšāđ€āļ‰āļžāļēāļ°āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāļĄāļĩāļ•āļąāļ§āļ­āļąāļāļĐāļĢ 'pg_':

--āļĢāļ§āļĄ=~pg_

āļ•āļĢāļ§āļˆāļŠāļ­āļšāđ€āļ‰āļžāļēāļ°āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāļ‚āļķāđ‰āļ™āļ•āđ‰āļ™āļ”āđ‰āļ§āļĒ 'pg_':

--āļĢāļ§āļĄ=~^pg_

āļĒāļāđ€āļ§āđ‰āļ™āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāļŠāļ·āđˆāļ­ 'test':

--exclude=āļ—āļ”āļŠāļ­āļš

āļĒāļāđ€āļ§āđ‰āļ™āļĢāļēāļĒāļāļēāļĢāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļĄāļĩāļ•āļąāļ§āļ­āļąāļāļĐāļĢ 'test:

--exclude=~āļ—āļ”āļŠāļ­āļš

āļĒāļāđ€āļ§āđ‰āļ™āļĢāļēāļĒāļāļēāļĢāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āđƒāļ™āļŠāļ„āļĩāļĄāļē 'pg_catalog':

--exclude='pg_catalog'

āļĒāļāđ€āļ§āđ‰āļ™āļĢāļēāļĒāļāļēāļĢāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļĄāļĩāļ•āļąāļ§āļ­āļąāļāļĐāļĢ 'āđ€āļ­āļ‹' āđāļ•āđˆāļ­āļ™āļļāļāļēāļ•āđƒāļŦāđ‰āļĢāļēāļĒāļāļēāļĢ 'āļ›āļīāļ”āļŦāļ™āđ‰āļē':

--exclude=~āđ€āļ­āļ‹ --include=faceoff

āđ„āļĄāđˆāļĢāļ§āļĄāļĢāļēāļĒāļāļēāļĢāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāļ‚āļķāđ‰āļ™āļ•āđ‰āļ™āļ”āđ‰āļ§āļĒāļ•āļąāļ§āļ­āļąāļāļĐāļĢ 'pg_' āļ—āļĩāđˆāļĄāļĩāļ•āļąāļ§āļ­āļąāļāļĐāļĢ 'slon' āļŦāļĢāļ·āļ­
āļ‹āļķāđˆāļ‡āļĄāļĩāļŠāļ·āđˆāļ­āļ§āđˆāļē 'sql_settings' āļŦāļĢāļ·āļ­ 'green' āļ•āļĢāļ§āļˆāļŠāļ­āļšāļĢāļēāļĒāļāļēāļĢāļ”āđ‰āļ§āļĒāļ•āļąāļ§āļ­āļąāļāļĐāļĢāđ‚āļ”āļĒāđ€āļ‰āļžāļēāļ°
'prod' āđƒāļ™āļŠāļ·āđˆāļ­āļ‚āļ­āļ‡āļžāļ§āļāđ€āļ‚āļē āđāļĨāļ°āļ•āļĢāļ§āļˆāļŠāļ­āļšāļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāļŠāļ·āđˆāļ­ 'pg_relname' āđ€āļŠāļĄāļ­:

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

USER āļŠāļ·āđˆāļ­ āļāļēāļĢāļāļĢāļ­āļ‡


āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ•āđˆāļēāļ‡āđ† --includeuser āđāļĨāļ° --āđ„āļĄāđˆāļĢāļ§āļĄāļœāļđāđ‰āđƒāļŠāđ‰ āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļāļąāļšāļāļēāļĢāļāļĢāļ°āļ—āļģāļšāļēāļ‡āļ­āļĒāđˆāļēāļ‡āđ€āļžāļ·āđˆāļ­āļ•āļĢāļ§āļˆāļŠāļ­āļšāđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™
āļ­āļ­āļšāđ€āļˆāđ‡āļāļ•āđŒāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāđ€āļ›āđ‡āļ™āļ‚āļ­āļ‡ (āļŦāļĢāļ·āļ­āđ„āļĄāđˆāđ„āļ”āđ‰āđ€āļ›āđ‡āļ™āđ€āļˆāđ‰āļēāļ‚āļ­āļ‡) āļœāļđāđ‰āđƒāļŠāđ‰āļ•āļąāđ‰āļ‡āđāļ•āđˆāļŦāļ™āļķāđˆāļ‡āļĢāļēāļĒāļ‚āļķāđ‰āļ™āđ„āļ› āļŦāļ™āļķāđˆāļ‡ --includeuser āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ
āđ€āļŠāļĄāļ­āļŠāļģāļ„āļąāļāļāļ§āđˆāļē an --āđ„āļĄāđˆāļĢāļ§āļĄāļœāļđāđ‰āđƒāļŠāđ‰ āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āđƒāļŦāđ‰āđāļ•āđˆāļĨāļ°āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđ„āļ”āđ‰āļĄāļēāļāļāļ§āđˆāļēāļŦāļ™āļķāđˆāļ‡āļ„āļĢāļąāđ‰āļ‡āļŠāļģāļŦāļĢāļąāļš
āļœāļđāđ‰āđƒāļŠāđ‰āļŦāļĨāļēāļĒāļ„āļ™ āļŦāļĢāļ·āļ­āļ„āļļāļ“āļˆāļ°āļĢāļ°āļšāļļāļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāļ„āļąāđˆāļ™āļ”āđ‰āļ§āļĒāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļŦāļĄāļēāļĒāļˆāļļāļĨāļ āļēāļ„āļāđ‡āđ„āļ”āđ‰ āļāļēāļĢāļāļĢāļ°āļ—āļģāļ—āļĩāđˆāđƒāļŠāđ‰āļ­āļĒāļđāđˆāđƒāļ™āļ›āļąāļˆāļˆāļļāļšāļąāļ™
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļ„āļ·āļ­:

āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ_āļ‚āļ™āļēāļ”
āļŠāļļāļ”āļ—āđ‰āļēāļĒ_āļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒ
Last_āļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļī
Last_vacuum
Last_autovacuum
āđāļšāļšāļŠāļ­āļšāļ–āļēāļĄ_āđ€āļ§āļĨāļē
āļ„āļ§āļēāļĄāļŠāļąāļĄāļžāļąāļ™āļ˜āđŒ_āļ‚āļ™āļēāļ”
txn_time

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡:

āļ•āļĢāļ§āļˆāļŠāļ­āļšāđ€āļ‰āļžāļēāļ°āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāđ€āļ›āđ‡āļ™āđ€āļˆāđ‰āļēāļ‚āļ­āļ‡āđ‚āļ”āļĒāļœāļđāđ‰āđƒāļŠāđ‰āļŠāļ·āđˆāļ­ greg:

--includeuser=greg

āļ•āļĢāļ§āļˆāļŠāļ­āļšāđ€āļ‰āļžāļēāļ°āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāđ€āļ›āđ‡āļ™āđ€āļˆāđ‰āļēāļ‚āļ­āļ‡āđ‚āļ”āļĒāļ§āļąāļ•āļŠāļąāļ™āļŦāļĢāļ·āļ­āļ„āļĢāļīāļ:

--includeuser=āļ§āļąāļ•āļŠāļąāļ™,āļ„āļĢāļīāļ

āļ•āļĢāļ§āļˆāļŠāļ­āļšāđ€āļ‰āļžāļēāļ°āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāđ€āļ›āđ‡āļ™āļ‚āļ­āļ‡ crick,franklin, watson āļŦāļĢāļ·āļ­ wilkins:

--includeuser=watson --includeuser=āđāļŸāļĢāļ‡āļ„āļĨāļīāļ™ --includeuser=crick,wilkins

āļ•āļĢāļ§āļˆāļŠāļ­āļšāļĢāļēāļĒāļāļēāļĢāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļĒāļāđ€āļ§āđ‰āļ™āļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāđ€āļ›āđ‡āļ™āļ‚āļ­āļ‡āļœāļđāđ‰āđƒāļŠāđ‰āļŠāļāļ­āļ•āļ•āđŒ:

--excludeuser=scott

āļ—āļ”āļŠāļ­āļš āđ‚āļŦāļĄāļ”


āđ€āļžāļ·āđˆāļ­āļŠāđˆāļ§āļĒāđƒāļ™āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē āđ‚āļ›āļĢāđāļāļĢāļĄāļ™āļĩāđ‰āļŠāļēāļĄāļēāļĢāļ–āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āđƒāļ™ "āđ‚āļŦāļĄāļ”āļ—āļ”āļŠāļ­āļš" āđ‚āļ”āļĒāļĢāļ°āļšāļļ
--āļ—āļ”āļŠāļ­āļš āļ•āļąāļ§āđ€āļĨāļ·āļ­āļ. āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ™āļĩāđ‰āļˆāļ°āļ—āļģāļāļēāļĢāļ—āļ”āļŠāļ­āļšāļžāļ·āđ‰āļ™āļāļēāļ™āļšāļēāļ‡āļ­āļĒāđˆāļēāļ‡āđ€āļžāļ·āđˆāļ­āđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļŠāļēāļĄāļēāļĢāļ–
āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļ•āļīāļ”āļ•āđˆāļ­ āđāļĨāļ°āđ€āļ›āđ‡āļ™āđ„āļ›āļ•āļēāļĄāļ‚āđ‰āļ­āļāļģāļŦāļ™āļ”āđ€āļšāļ·āđ‰āļ­āļ‡āļ•āđ‰āļ™āļ‚āļ­āļ‡āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļšāļēāļ‡āļ­āļĒāđˆāļēāļ‡ āđ€āļŠāđˆāļ™ āļœāļđāđ‰āđƒāļŠāđ‰āđ€āļ›āđ‡āļ™ .āļŦāļĢāļ·āļ­āđ„āļĄāđˆ
superuser āļŦāļēāļ Postgres āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āđƒāļŦāļĄāđˆāđ€āļžāļĩāļĒāļ‡āļžāļ­ āđāļĨāļ°āļŦāļēāļāđ€āļ›āļīāļ”āđƒāļŠāđ‰āļ‡āļēāļ™ stats_row_level

āđƒāļŠāđ‰ check_postgres_connectionp āļ­āļ­āļ™āđ„āļĨāļ™āđŒāđ‚āļ”āļĒāđƒāļŠāđ‰āļšāļĢāļīāļāļēāļĢ onworks.net


āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāđāļĨāļ°āđ€āļ§āļīāļĢāđŒāļāļŠāđ€āļ•āļŠāļąāļ™āļŸāļĢāļĩ

āļ”āļēāļ§āļ™āđŒāđ‚āļŦāļĨāļ”āđāļ­āļž Windows & Linux

  • 1
    āļŠāļ§āļ
    āļŠāļ§āļ
    SWIG āļ„āļ·āļ­āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­āļžāļąāļ’āļ™āļēāļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒ
    āļ—āļĩāđˆāđ€āļŠāļ·āđˆāļ­āļĄāđ‚āļ›āļĢāđāļāļĢāļĄāļ—āļĩāđˆāđ€āļ‚āļĩāļĒāļ™āļ”āđ‰āļ§āļĒāļ āļēāļĐāļē C āđāļĨāļ°
    C++ āļ—āļĩāđˆāļĄāļĩāļĢāļ°āļ”āļąāļšāļŠāļđāļ‡āļŦāļĨāļēāļāļŦāļĨāļēāļĒ
    āļ āļēāļĐāļēāđ‚āļ›āļĢāđāļāļĢāļĄ SWIG āđƒāļŠāđ‰āļāļąāļš
    āđāļ•āļāļ•āđˆāļēāļ‡...
    āļ”āļēāļ§āļ™āđŒāđ‚āļŦāļĨāļ” SWIG
  • 2
    WooCommerce Nextjs āļ•āļ­āļšāļŠāļ™āļ­āļ‡āļ˜āļĩāļĄ
    WooCommerce Nextjs āļ•āļ­āļšāļŠāļ™āļ­āļ‡āļ˜āļĩāļĄ
    āļ•āļ­āļšāļŠāļ™āļ­āļ‡āļ˜āļĩāļĄ WooCommerce āļ—āļĩāđˆāļŠāļĢāđ‰āļēāļ‡āļ‚āļķāđ‰āļ™āļ”āđ‰āļ§āļĒ
    JS, Webpack, Babel, Node āđāļĨāļ° . āļ–āļąāļ”āđ„āļ›
    Express āđ‚āļ”āļĒāđƒāļŠāđ‰ GraphQL āđāļĨāļ° Apollo
    āļĨāļđāļāļ„āđ‰āļē. āļĢāđ‰āļēāļ™āļ„āđ‰āļē WooCommerce āđƒāļ™ React (
    āļ›āļĢāļ°āļāļ­āļšāļ”āđ‰āļ§āļĒ: āļŠāļīāļ™āļ„āđ‰āļē...
    āļ”āļēāļ§āļ™āđŒāđ‚āļŦāļĨāļ” WooCommerce Nextjs React Theme
  • 3
    Archlabs_repo
    Archlabs_repo
    āđāļžāđ‡āļ„āđ€āļāļˆ repo āļŠāļģāļŦāļĢāļąāļš ArchLabs āļ™āļĩāđˆāļ„āļ·āļ­
    āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āļ—āļĩāđˆāļŠāļēāļĄāļēāļĢāļ–āļ”āļķāļ‡āļ‚āđ‰āļ­āļĄāļđāļĨāđ„āļ”āđ‰
    āļĢāļēāļ„āļēāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ—āļĩāđˆ
    https://sourceforge.net/projects/archlabs-repo/.
    āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāđ‚āļŪāļŠāļ•āđŒāđƒāļ™ OnWorks āđƒāļ™...
    āļ”āļēāļ§āļ™āđŒāđ‚āļŦāļĨāļ” archlabs_repo
  • 4
    āđ‚āļ„āļĢāļ‡āļāļēāļĢ Zephyr
    āđ‚āļ„āļĢāļ‡āļāļēāļĢ Zephyr
    āđ‚āļ„āļĢāļ‡āļāļēāļĢ Zephyr āļ„āļ·āļ­āļ„āļ™āļĢāļļāđˆāļ™āđƒāļŦāļĄāđˆ
    āļĢāļ°āļšāļšāļ›āļāļīāļšāļąāļ•āļīāļāļēāļĢāđāļšāļšāđ€āļĢāļĩāļĒāļĨāđ„āļ—āļĄāđŒ (RTOS) āļ—āļĩāđˆ
    āļĢāļ­āļ‡āļĢāļąāļšāļŪāļēāļĢāđŒāļ”āđāļ§āļĢāđŒāļŦāļĨāļēāļĒāļ•āļąāļ§
    āļŠāļ–āļēāļ›āļąāļ•āļĒāļāļĢāļĢāļĄ āļĄāļąāļ™āļ‚āļķāđ‰āļ™āļ­āļĒāļđāđˆāļāļąāļš
    āđ€āļ„āļ­āļĢāđŒāđ€āļ™āļĨāļ‚āļ™āļēāļ”āđ€āļĨāđ‡āļ...
    āļ”āļēāļ§āļ™āđŒāđ‚āļŦāļĨāļ”āđ‚āļ„āļĢāļ‡āļāļēāļĢ Zephyr
  • 5
    SCCons
    SCCons
    SCons āđ€āļ›āđ‡āļ™āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­āļŠāļĢāđ‰āļēāļ‡āļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒ
    āļ—āļĩāđˆāđ€āļ›āđ‡āļ™āļ—āļēāļ‡āđ€āļĨāļ·āļ­āļāļ—āļĩāđˆāđ€āļŦāļ™āļ·āļ­āļāļ§āđˆāļē
    āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­āļŠāļĢāđ‰āļēāļ‡ "Make" āđāļšāļšāļ„āļĨāļēāļŠāļŠāļīāļāļ—āļĩāđˆ
    āđ€āļĢāļēāļ—āļļāļāļ„āļ™āļĢāļđāđ‰āļˆāļąāļāđāļĨāļ°āļŠāļ·āđˆāļ™āļŠāļ­āļš SCCons āļ„āļ·āļ­
    āļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ...
    āļ”āļēāļ§āļ™āđŒāđ‚āļŦāļĨāļ” SCCons
  • 6
    āļžāļĩāđ€āļ­āļŠāļ­āļīāļ™āļ—āđŒ
    āļžāļĩāđ€āļ­āļŠāļ­āļīāļ™āļ—āđŒ
    PSeInt āđ€āļ›āđ‡āļ™āļĨāđˆāļēāļĄāļĢāļŦāļąāļŠāļŦāļĨāļ­āļāļŠāļģāļŦāļĢāļąāļš
    āļ™āļąāļāļĻāļķāļāļĐāļēāļāļēāļĢāđ€āļ‚āļĩāļĒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄāļ—āļĩāđˆāļžāļđāļ”āļ āļēāļĐāļēāļŠāđ€āļ›āļ™
    āļˆāļļāļ”āļ›āļĢāļ°āļŠāļ‡āļ„āđŒāļŦāļĨāļąāļāļ„āļ·āļ­āđ€āļžāļ·āđˆāļ­āđ€āļ›āđ‡āļ™āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­āļŠāļģāļŦāļĢāļąāļš
    āļāļēāļĢāđ€āļĢāļĩāļĒāļ™āļĢāļđāđ‰āđāļĨāļ°āļ—āļģāļ„āļ§āļēāļĄāđ€āļ‚āđ‰āļēāđƒāļˆāļžāļ·āđ‰āļ™āļāļēāļ™
    āđāļ™āļ§āļ„āļīāļ”...
    āļ”āļēāļ§āļ™āđŒāđ‚āļŦāļĨāļ” PSeInt
  • āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄÂŧ

āļ„āļģāļŠāļąāđˆāļ‡ Linux

Ad