انگلیسیفرانسویاسپانیایی

Ad


فاویکون OnWorks

check_postgres_sequencep - آنلاین در ابر

check_postgres_sequencep را در ارائه دهنده هاست رایگان OnWorks از طریق Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا کنید.

این دستور check_postgres_sequencep است که می تواند در ارائه دهنده هاست رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان ما مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.

برنامه:

نام


check_postgres - یک اسکریپت نظارت Postgres برای Nagios، MRTG، Cacti و دیگران

این اسناد check_postgres نسخه 2.22.0 را شرح می دهد

خلاصه


## همه پیوندهای نمادین را ایجاد کنید
check_postgres --symlinks

## اتصال به پایگاه داده Postgres 'pluto' را بررسی کنید:
check_postgres --action=connection --db=pluto

## چیزهای مشابه، اما با استفاده از Symlink
check_postgres_connection --db=pluto

## هشدار اگر > 100 قفل، حیاتی اگر > 200، یا > 20 انحصاری
check_postgres_locks --warning=100 --critical="total=200:exclusive=20"

## تعداد فعلی اتصالات بیکار را در پورت 6543 نشان دهید:
check_postgres_txn_idle --port=6543 --output=ساده

## بسیاری از اقدامات و گزینه های دیگر وجود دارد، لطفا به خواندن ادامه دهید.

آخرین اخبار و اسناد را همیشه می توانید در این آدرس بیابید:
http://bucardo.org/check_postgres/

شرح


check_postgres یک اسکریپت پرل است که تست های مختلفی را بر روی یک یا چند تست اجرا می کند
پایگاه های داده Postgres از برنامه psql برای جمع آوری اطلاعات استفاده می کند و خروجی می دهد
در یکی از سه فرمت: Nagios، MRTG، یا ساده نتیجه می گیرد.

تولید حالت های
خروجی را می توان با استفاده از گزینه "--output" تغییر داد. خروجی پیش فرض nagios است،
اگر چه در صورت تمایل می توان این را در بالای اسکریپت تغییر داد. گزینه فعلی
انتخاب ها هستند nagios, mrtgو ساده. برای جلوگیری از وارد کردن آرگومان خروجی هر کدام
در زمان، در صورتی که آرگومان --output داده نشود، نوع خروجی به طور خودکار تنظیم می شود، و اگر a
فهرست فعلی یکی از گزینه های خروجی را به نام خود دارد. به عنوان مثال، ایجاد یک
دایرکتوری به نام mrtg و پر کردن آن با پیوندهای علامت از طریق -- پیوندهای نمادین استدلال خواهد شد
اطمینان حاصل کنید که هر اقدامی که از آن دایرکتوری اجرا می شود همیشه به صورت پیش فرض خروجی "mrtg" باشد.
به عنوان یک میانبر برای --output=simple، می توانید --simple را وارد کنید، که آن را نیز لغو می کند
ترفند نامگذاری دایرکتوری

Nagios تولید

فرمت خروجی پیش‌فرض برای Nagios است که یک خط اطلاعاتی است به همراه
چهار کد خروجی خاص:

0 (خوب)
1 (هشدار)
2 (بسیار مهم)
3 (ناشناخته)

خط خروجی یکی از کلمات بالا، یک دونقطه، و سپس توضیح کوتاهی از چیست است
اندازه گیری شد. اطلاعات آماری اضافی، و همچنین کل زمان فرمان
گرفت، می تواند خروجی نیز باشد: مستندات مربوط به آرگومان ها را ببینید --نمایشگر,
-- Perflimitو --زمان نمایش.

MRTG تولید

خروجی MRTG چهار خط است که خط اول همیشه یک عدد از آن را می دهد
اهمیت. در صورت امکان، این عدد یک مقدار واقعی مانند یک عدد را نشان می دهد
بایت، اما همچنین ممکن است 1 یا 0 برای اقداماتی باشد که فقط "درست" یا "نادرست" را برمی گرداند، مانند
به عنوان check_postgres_version. خط دوم یک آمار اضافی است و فقط برای استفاده می شود
برخی اقدامات خط سوم نشان‌دهنده یک "uptime" است و استفاده نمی‌شود. خط چهارم الف است
توضیحات و معمولاً نام پایگاه داده آمار را از خط اول نشان می دهد
از بیرون کشیده شد، اما ممکن است بسته به عمل متفاوت باشد.

برخی از اقدامات اختیاری را می پذیرند --mrtg آرگومان برای کنترل بیشتر خروجی.

برای جزئیات بیشتر در مورد خروجی دقیق MRTG برای هر یک، به مستندات مربوط به هر عملکرد مراجعه کنید.

ساده تولید

خروجی ساده به سادگی یک نسخه کوتاه شده از MRTG است و به سادگی آن را برمی گرداند
شماره اول و هیچ چیز دیگر این بسیار مفید است زمانی که شما فقط می خواهید وضعیت را بررسی کنید
از چیزی، صرف نظر از هر آستانه ای. شما می توانید خروجی عددی را بر اساس تبدیل کنید
اضافه کردن KB، MB، GB، TB، یا EB به آرگومان خروجی، برای مثال:

--output=ساده، مگابایت

کوکتی تولید

خروجی کاکتوس ها از یک یا چند آیتم در یک خط با یک نام ساده، a
دو نقطه و سپس یک عدد. در حال حاضر، تنها اقدام با خروجی واضح کاکتوس ها است
'dbstats'، و استفاده از گزینه --output در این مورد مورد نیاز نیست، زیرا کاکتوس ها تنها هستند
خروجی این عمل برای بسیاری از اقدامات دیگر، استفاده از --simple برای ساختن کاکتوس ها کافی است
خوشحال.

DATABASE ارتباط OPTIONS


همه اقدامات یک مجموعه مشترک از گزینه های پایگاه داده را می پذیرند.

-H نام or --host=NAME
به میزبان مشخص شده توسط NAME متصل شوید. می تواند فهرست اسامی جدا شده با کاما باشد.
چندین آرگومان میزبان مجاز است. اگر میزبانی داده نشود، به طور پیش فرض روی "PGHOST" قرار می گیرد.
متغیر محیطی یا اصلا میزبانی وجود ندارد (که نشان دهنده استفاده از سوکت محلی یونیکس است).
همچنین می توانید از "--dbhost" استفاده کنید.

-p PORT or --port=PORT
با استفاده از شماره PORT مشخص شده متصل می شود. می تواند یک لیست پورت جدا شده با کاما باشد
اعداد و چندین آرگومان پورت مجاز هستند. اگر شماره پورتی داده نشود، پیش‌فرض است
به متغیر محیطی "PGPORT". اگر تنظیم نشده باشد، پیش‌فرض 5432 است. می‌توانید
همچنین از "--dbport" استفاده کنید

-db نام or --dbname=NAME
مشخص می کند که به کدام پایگاه داده متصل شود. می تواند لیستی از اسامی جدا شده با کاما باشد، و
چندین آرگومان dbname مجاز است. اگر گزینه dbname ارائه نشده باشد، به طور پیش فرض به حالت پیش فرض در می آید
متغیر محیطی "PGDATABASE". اگر تنظیم نشده باشد، به طور پیش فرض روی "postgres" قرار می گیرد.
اگر psql نسخه 8 یا بالاتر باشد و در غیر این صورت 'template1'.

-u USERNAME or --dbuser=USERNAME
نام کاربر پایگاه داده برای اتصال به عنوان. می تواند یک لیست جدا شده با کاما باشد
نام های کاربری و آرگومان های متعدد dbuser مجاز هستند. اگر این ارائه نشده باشد
به طور پیش فرض متغیر محیطی "PGUSER" است، در غیر این صورت پیش فرض "postgres" است.

--dbpass=PASSWORD
رمز عبور برای اتصال به پایگاه داده را ارائه می دهد. استفاده از این گزینه بسیار زیاد است
دلسرد. در عوض، باید از یک فایل .pgpass یا pg_service.conf استفاده کنید.

--dbservice=NAME
نام یک سرویس داخل فایل pg_service.conf. قبل از نسخه 9.0 از
Postgres، این یک فایل جهانی است که معمولاً در /etc/pg_service.conf یافت می شود. اگر شما
با استفاده از نسخه 9.0 یا بالاتر Postgres، می توانید از فایل ".pg_service.conf" در
فهرست اصلی کاربر که اسکریپت را اجرا می کند، به عنوان مثال nagios.

این فایل شامل یک لیست ساده از گزینه های اتصال است. همچنین می توانید اضافی را پاس کنید
اطلاعاتی در هنگام استفاده از این گزینه مانند --dbservice="maindatabase sslmode=require"

مستندات این فایل را می توان در این آدرس یافت
http://www.postgresql.org/docs/current/static/libpq-pgservice.html

گزینه های اتصال پایگاه داده را می توان گروه بندی کرد: --host=a,b -- میزبان = c --port=1234
--port=3344 به a-1234، b-1234 و c-3344 متصل می شود. توجه داشته باشید که پس از تنظیم، یک گزینه
ادامه می یابد تا زمانی که دوباره تغییر کند.

مثال:

--host=a,b --port=5433 --db=c
با استفاده از پایگاه داده c، دو بار به پورت 5433 به هاست a و b متصل می شود: a-5433-c b-5433-c

--host=a,b --port=5433 --db=c,d
چهار بار متصل می شود: a-5433-c a-5433-d b-5433-c b-5433-d

--host=a,b --host=foo --port=1234 --port=5433 --db=e,f
شش بار متصل می شود: a-1234-e a-1234-f b-1234-e b-1234-f foo-5433-e foo-5433-f

--host=a,b --host=x --port=5432,5433 --dbuser=alice --dbuser=bob -db=baz
سه بار متصل می شود: a-5432-alice-baz b-5433-alice-baz x-5433-bob-baz

--dbservice="foo" --port=5433
با استفاده از سرویس نامگذاری شده "foo" در فایل pg_service.conf متصل می شود، اما پورت را لغو می کند.

OTHER OPTIONS


گزینه های دیگر عبارتند از:

--action=NAME
بیان می کند که چه اقدامی انجام می دهیم. مورد نیاز است مگر اینکه از یک فایل پیوندی استفاده کنید که در آن
در مورد نام فایل برای پی بردن به عمل استفاده می شود.

--warning=VAL or -w VAL
آستانه ای را که در آن یک هشدار هشدار پخش می شود را تعیین می کند. گزینه های معتبر برای این
گزینه بستگی به عمل مورد استفاده دارد.

-- بحرانی = VAL or -c VAL
آستانه ای را تنظیم می کند که در آن یک هشدار بحرانی اجرا می شود. گزینه های معتبر برای این
گزینه بستگی به عمل مورد استفاده دارد.

-t VAL or --timeout=VAL
مهلت زمانی را در چند ثانیه تنظیم می کند که پس از آن اسکریپت هر کاری را که انجام می دهد لغو می شود و
یک وضعیت ناشناخته را برگردانید. فاصله زمانی در هر خوشه Postgres است، نه برای کل
اسکریپت مقدار پیش فرض 10 است. واحدها همیشه در ثانیه هستند.

- حالت آماده به کار را فرض کنید
اگر مشخص شده باشد، ابتدا بررسی کنید که آیا سرور در حالت آماده به کار (--datadir
لازم است)، در این صورت، تمام بررسی هایی که به پرس و جوهای SQL نیاز دارند نادیده گرفته می شوند و "سرور
در حالت آماده به کار" با وضعیت OK به جای آن بازگردانده می شود.

مثال:

postgres@db$./check_postgres --action=نسخه --warning=8.1 --datadir /var/lib/postgresql/8.3/main/ -- فرض حالت آماده به کار
POSTGRES_VERSION OK: سرور در حالت آماده به کار | زمان = 0.00

-- فرض - تولید
اگر مشخص شده است، بررسی کنید که آیا سرور در حالت تولید انجام می شود (--datadir مورد نیاز است).
این گزینه فقط مربوط به ("symlink: check_postgres_checkpoint") است.

مثال:

postgres@db $./check_postgres-Action = بازرسی-datadir /var/lib/postgresql/8.3/main/-ASSUME-PROD
POSTGRES_CHECKPOINT خوب: آخرین ایست بازرسی 72 ثانیه پیش بود | age=72;;300 mode=MASTER

-h or --کمک
یک صفحه راهنما را با خلاصه ای از تمام اقدامات و گزینه ها نمایش می دهد.

--مرد
کل دفترچه راهنما را نمایش می دهد.

-V or - نسخه
نسخه فعلی را نشان می دهد.

-v or -- پرحرف
سطح پرحرفی را تنظیم کنید. برای افزایش سطح می توانید بیش از یک بار تماس بگیرید. تنظیم آن به
سه یا بالاتر (به عبارت دیگر، صدور "-v -v -v") اطلاعات اشکال زدایی را روشن می کند.
برای این برنامه که به stderr ارسال می شود.

--showperf=VAL
تعیین می کند که آیا داده های عملکرد اضافی را در قالب استاندارد Nagios خروجی می دهیم (در پایان
رشته، بعد از نماد لوله، با استفاده از name=value). VAL باید 0 یا 1 باشد. پیش فرض
1 است. فقط در صورت استفاده از حالت خروجی Nagios اعمال می شود.

--perflimit=i
محدودیتی را برای تعداد موارد مورد علاقه که هنگام استفاده از آن گزارش می شوند، تعیین می کند
نمایشگر گزینه. این فقط برای اقداماتی تأثیر دارد که تعداد زیادی از آنها را برمی گرداند
مواردی مانند اندازه_جدول. پیش فرض 0 یا بدون محدودیت است. هنگام استفاده از آن مراقب باشید
با --عبارتند از or -- استثناء کردن گزینه ها، زیرا آن محدودیت ها انجام شده است بعد از la
query اجرا شده است، و بنابراین محدودیت شما ممکن است شامل موارد مورد نظر شما نباشد. فقط می گیرد
اثر در صورت استفاده از حالت خروجی Nagios.

--showtime=VAL
تعیین می کند که آیا زمان صرف شده برای اجرای هر کوئری در خروجی نشان داده می شود. VAL باید 0 باشد
یا 1. پیش فرض 1 است. هیچ تأثیری ندارد مگر اینکه نمایشگر روشن است. فقط در صورت استفاده اثر می گذارد
حالت خروجی Nagios.

--تست
حالت تست را فعال می کند. بخش "TEST MODE" را در زیر ببینید.

--PGBINDIR=مسیر
به اسکریپت می گوید که کجا باید باینری های psql را پیدا کند. اگر بیش از یکی دارید مفید است
نسخه‌ای از فایل‌های اجرایی PostgreSQL در سیستم شما، یا اگر در سیستم شما وجود ندارد
مسیر. توجه داشته باشید که این گزینه با حروف بزرگ است. به طور پیش فرض، این گزینه است نه
مجاز. برای فعال کردن آن، باید $NO_PSQL_OPTION را نزدیک بالای اسکریپت تغییر دهید
به 0. در صورت امکان از استفاده از این گزینه خودداری کنید و در عوض از متغیر محیطی استفاده کنید
ج یا متغیر PGBINDIR با کد سخت، همچنین نزدیک بالای اسکریپت، تنظیم کنید
مسیر PostgreSQL برای استفاده.

--PSQL=PATH
(منسوخ، این انتخاب ممکن است be حذف in a آینده رهایی!) به فیلمنامه می گوید کجاست
برای پیدا کردن برنامه psql اگر بیش از یک نسخه از psql دارید مفید است
قابل اجرا بر روی سیستم شما، یا اگر هیچ برنامه psql در مسیر شما وجود ندارد. توجه داشته باشید که این
گزینه با تمام حروف بزرگ است. به طور پیش فرض، این گزینه است نه مجاز. برای فعال کردن آن، شما
باید $NO_PSQL_OPTION نزدیک بالای اسکریپت را به 0 تغییر دهید. از استفاده از آن خودداری کنید
اگر می توانید گزینه ای را انتخاب کنید و به جای آن مکان psql خود را در متغیر $PSQL کدگذاری کنید.
همچنین نزدیک به بالای فیلمنامه.

-- پیوندهای نمادین
برای هر عمل پیوندهای نمادین به برنامه اصلی ایجاد می کند.

--output=VAL
فرمت خروجی را برای استفاده در برنامه های مختلف تعیین می کند. پیش فرض است
"ناگیوس". گزینه های موجود عبارتند از 'nagios'، 'mrtg'، 'siste' و 'cacti'.

--mrtg=VAL
فقط برای MRTG یا خروجی ساده، برای چند عمل خاص استفاده می شود.

--debugoutput=VAL
خروجی رشته دقیق بازگشتی توسط psql را برای استفاده در اشکال زدایی می دهد. مقدار یک یا است
حروف بیشتر، که تعیین می کند خروجی نمایش داده شود یا نه، جایی که 'a' = همه، 'c'
= انتقادی، 'w' = هشدار، 'o' = خوب، و 'u' = ناشناخته. حروف را می توان ترکیب کرد.

--get_method=VAL
مشخص کردن روش مورد استفاده برای واکشی اطلاعات برای "new_version_cp" را می دهد،
چک های "new_version_pg"، "new_version_bc"، "new_version_box" و "new_version_tnm".
برنامه های زیر برای گرفتن اطلاعات از وب امتحان می شوند: GET،
wget، fetch، curl، lynx، پیوندها. برای اجبار استفاده از تنها یکی (و در نتیجه حذف
سربار امتحان کردن بقیه تا زمانی که یکی از آن ها کار کند)، یکی از نام ها را به عنوان وارد کنید
آرگومان get_method. به عنوان مثال، یک جعبه BSD ممکن است خط زیر را وارد کند
فایل ".check_postgresrc" آنها:

get_method = واکشی

--language=VAL
زبانی را برای استفاده برای همه پیام‌های خروجی تنظیم کنید. به طور معمول، این توسط تشخیص داده می شود
بررسی متغیرهای محیطی LC_ALL، LC_MESSAGES و LANG، اما تنظیم این
گزینه هر گونه تشخیصی را لغو می کند.

اقدامات


اسکریپت یک یا چند اکشن را اجرا می کند. این را می توان با پرچم --action یا توسط
با استفاده از یک پیوند نمادین به فایل اصلی که حاوی نام اکشن داخل آن است. برای
به عنوان مثال، برای اجرای اکشن "timesync"، ممکن است یکی از موارد زیر را صادر کنید:

check_postgres --action=timesync

یا از برنامه ای به نام:

check_postgres_timesync

اگر از گزینه --symlinks استفاده کنید، تمام پیوندها در دایرکتوری فعلی برای شما ایجاد می شوند

perl check_postgres --symlinks

اگر نام فایل از قبل وجود داشته باشد، بازنویسی نخواهد شد. اگر فایل وجود داشته باشد و a
symlink، می توانید با استفاده از "--action=build_symlinks_force" آن را مجبور به بازنویسی کنید.

اکثر اقدامات الف -- هشدار و یک --بحرانی گزینه، نشان می دهد که در چه نقطه ای تغییر می کنیم
از OK به WARNING و چه نقطه ای به CRITICAL می رویم. توجه داشته باشید که چون منتقدان هستند
همیشه ابتدا بررسی می شود، تنظیم اخطار برابر با بحرانی یک راه موثر برای انجام این کار است
هشدارها را خاموش کنید و همیشه انتقاد کنید.

اقدامات پشتیبانی شده فعلی عبارتند از:

آرشیو_آماده
("symlink: check_postgres_archive_ready") تعداد فایل های WAL با پسوند را بررسی می کند .آماده
وجود دارد در pg_xlog/archive_status دایرکتوری که خارج از شما پیدا می شود فهرست_داده.
برای دسترسی به محتویات، این عمل باید به عنوان یک ابرکاربر اجرا شود
pg_xlog/archive_status فهرست راهنما. حداقل نسخه برای استفاده از این اکشن Postgres 8.1 است.
La -- هشدار و --بحرانی گزینه ها به سادگی تعداد هستند .آماده پرونده ها در
pg_xlog/archive_status فهرست راهنما. معمولاً، این مقادیر باید کم باشند، با روشن کردن
مکانیزم بایگانی، معمولاً می‌خواهیم فایل‌های WAL را با بیشترین سرعت ممکن بایگانی کند.

اگر دستور بایگانی ناموفق بود، تعداد WAL در شما pg_xlog دایرکتوری رشد خواهد کرد تا زمانی که
تمام فضای دیسک را خسته کرده و PostgreSQL را مجبور به توقف فوری می کند.

مثال 1: بررسی کنید که تعداد فایل های WAL آماده 10 یا کمتر در میزبان "pluto" باشد.

check_postgres_archive_ready --host=pluto --critical=10

برای خروجی MRTG، تعداد فایل های WAL آماده را در خط 1 گزارش می دهد.

autovac_freeze
("symlink: check_postgres_autovac_freeze") بررسی می کند که هر پایگاه داده چقدر به
پست گرس autovacuum_freeze_max_age تنظیمات. این عمل فقط برای پایگاه های داده کار می کند
نسخه 8.2 یا بالاتر در -- هشدار و --بحرانی گزینه ها باید به صورت بیان شوند
درصدها "سن" تراکنش ها در هر پایگاه داده با آن مقایسه می شود
تنظیم autovacuum_freeze_max_age (به طور پیش فرض 200 میلیون) برای ایجاد یک گرد
درصد مقادیر پیش فرض هستند ٪۱۰۰ برای هشدار و ٪۱۰۰ برای انتقادی پایگاه های داده
را می توان با استفاده از فیلتر کرد --عبارتند از و -- استثناء کردن گزینه ها. به "فیلتر اساسی" مراجعه کنید
بخش برای جزئیات بیشتر

مثال 1: هنگامی که هر پایگاه داده در پورت 5432 بالاتر از 97٪ است، هشدار دهید.

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

برای خروجی MRTG، بالاترین درصد کلی در خط اول گزارش شده است
بالاترین سن در خط دوم گزارش شده است. همه پایگاه های داده که دارای درصد از
خط اول در خط چهارم گزارش می شود که با علامت لوله جدا شده است.

باطن
("symlink: check_postgres_backends") تعداد فعلی اتصالات را برای یک یا
پایگاه‌های اطلاعاتی بیشتری دارد و به صورت اختیاری آن را با حداکثر مجاز مقایسه می‌کند که توسط آن تعیین می‌شود
متغیر پیکربندی Postgres حداکثر اتصالات. -- هشدار و --بحرانی گزینه های
می تواند یکی از سه شکل را داشته باشد. ابتدا می توان یک عدد ساده ارائه داد که نشان دهنده عدد است
تعداد اتصالاتی که در آن هشدار داده خواهد شد. این انتخاب از
حداکثر اتصالات تنظیمات. دوم، درصد اتصالات موجود را می توان ارائه داد.
سوم، یک عدد منفی می توان ارائه داد که نشان دهنده تعداد اتصالات باقی مانده است
تا حداکثر اتصالات رسیده است. مقادیر پیش فرض برای -- هشدار و --بحرانی هستند
'90٪' و '95٪'. همچنین می توانید پایگاه داده ها را با استفاده از فیلتر فیلتر کنید --عبارتند از و -- استثناء کردن
گزینه ها. برای جزئیات بیشتر به بخش «فیلترسازی اساسی» مراجعه کنید.

برای مشاهده فقط فرآیندهای غیر فعال، می توانید از -- نویدل بحث و جدل. توجه داشته باشید که کاربر شما
در حال اتصال هستند همانطور که برای اینکه این کار به درستی کار کند باید یک ابرکاربر باشد.

مثال 1: هنگامی که تعداد اتصالات روی میزبان Quirm به 120 رسید، هشدار دهید، و
بحرانی است اگر به 150 برسد.

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

مثال 2: زمانی که به 75 درصد از حداکثر تنظیم اتصالات خود در هاست رسیدیم، یک مقدار حیاتی بدهید.
لانکر یا لانکر2.

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

مثال 3: زمانی که فقط 10 اسلات اتصال دیگر روی هاست باقی مانده است، هشدار بدهید
پلاسمید، و زمانی بحرانی است که فقط 5 پلاسمید باقی مانده است.

check_postgres_backends --warning=-10 --critical=-5 --host=plasmid

مثال 4: همه پایگاه‌های داده را بررسی کنید، به جز پایگاه‌هایی که "test" در نام آنها وجود دارد، اما به آنهایی که اجازه می‌دهند اجازه دهید
"pg_greatest" نامگذاری شده اند. به عنوان پورت 5432 در دو میزبان اول و به عنوان پورت 5433 متصل شوید
سومی ما می خواهیم همیشه وقتی به 30 اتصال یا بیشتر می رسیم، یک انتقاد پرتاب کنیم.

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

برای خروجی MRTG، تعداد اتصالات در خط اول و چهارم گزارش شده است
خط نام پایگاه داده را به اضافه حداکثر_connections فعلی می دهد. اگر بیش از
یک پایگاه داده پرس و جو شده است، یکی با بالاترین تعداد اتصالات خروجی است.

نفخ
("symlink: check_postgres_bloat") میزان نفخ را در جداول و نمایه ها بررسی می کند. (نفخ کردن
به طور کلی مقدار فضای مرده استفاده نشده در یک جدول یا فهرست است. این فضا است
معمولاً با استفاده از دستور VACUUM بازیابی می شود.) این عمل مستلزم آن آمار است
مجموعه در پایگاه داده های هدف فعال باشد و نیاز به اجرای ANALYZE دارد
مکررا. در --عبارتند از و -- استثناء کردن از گزینه ها می توان برای فیلتر کردن جداول استفاده کرد
نگاه کن برای جزئیات بیشتر به بخش «فیلترسازی اساسی» مراجعه کنید.

La -- هشدار و --بحرانی گزینه ها را می توان به عنوان اندازه، درصد یا هر دو مشخص کرد. معتبر
واحدهای اندازه عبارتند از: بایت، کیلوبایت، مگابایت، گیگابایت، ترابایت، اگزابایت، پتابایت و
زتابایت شما می توانید همه آنها را با حرف اول مخفف کنید. اقلام بدون واحد هستند
"بایت" فرض می شود. مقادیر پیش‌فرض «1 گیگابایت» و «5 گیگابایت» هستند. مقدار نشان دهنده
تعداد "بایت های هدر رفته"، یا تفاوت بین آنچه که در واقع توسط جدول استفاده می شود و
شاخص، و آنچه ما محاسبه می کنیم که باید باشد.

توجه داشته باشید که این عمل دارای دو مقدار رمزگذاری شده برای جلوگیری از هشدارهای اشتباه در کوچکتر است
روابط جداول باید حداقل 10 صفحه و نمایه ها حداقل 15 صفحه داشته باشند
توسط این آزمون در نظر گرفته شده است. اگر واقعاً می خواهید این مقادیر را تنظیم کنید، می توانید به دنبال آن باشید
متغیرها $MINPAGES و $MINIPAGES در بالای زیربرنامه "check_bloat". اینها
مقادیر نادیده گرفته می شوند اگر یکی باشد -- استثناء کردن or --عبارتند از استفاده می شود.

فقط 10 رابطه پر نفخ نشان داده شده است. با استفاده از این شماره می توانید تغییر دهید
-- Perflimit گزینه ای برای تعیین حد خود

طرحواره ای با نام 'information_schema' از این آزمایش مستثنی شده است، زیرا تنها جداول آن است.
محتویات کوچک هستند و تغییر نمی کنند.

لطفاً توجه داشته باشید که مقادیر محاسبه شده توسط این عمل دقیق نیستند و باید به عنوان استفاده شوند
فقط یک دستورالعمل تلاش زیادی برای تخمین اندازه صحیح یک جدول انجام شد، اما در
در پایان فقط یک تخمین است. اندازه شاخص صحیح حتی بیشتر از حدس زدن است
اندازه جدول درست است، اما هر دو باید یک ایده کلی از میزان پف کردن چیزها ارائه دهند.

مثال 1: اگر جدولی در پورت 5432 بیش از 100 مگابایت متورم است، هشدار دهید، و اگر بیش از 200 جدول باشد، هشدار دهید.
MB

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

مثال 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 مگابایت نفخ دارد:

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

مثال 5: به یک بحرانی بدهید هر جدولی بیش از 40 درصد نفخ کرده باشد or بیش از 500 مگابایت نفخ دارد:

check_postgres_bloat --port=5432 --warning='500 M or 40%'

برای خروجی MRTG، خط اول بیشترین تعداد بایت های تلف شده را برای جداول نشان می دهد.
و خط دوم بیشترین تعداد بایت های تلف شده را برای ایندکس ها نشان می دهد. چهارمین
خط اطلاعات نام پایگاه داده، نام جدول و نام فهرست را می دهد. اگر شما می خواهید
به جای آن نسبت نفخ را تولید کنید (رابطه چند برابر بزرگتر از چگونه است
باید بزرگ باشد)، فقط "--mrtg=ratio" را عبور دهید.

ایست بازرسی
("symlink: check_postgres_checkpoint") تعیین می کند که چه مدت از آخرین ایست بازرسی گذشته است
اجرا شده است. این باید روی همان سروری که پایگاه داده در حال بررسی است اجرا شود (مثلاً
پرچم -h کار نخواهد کرد). این بررسی برای اجرا در سرور "گرم آماده به کار" است
به طور فعال فایل‌های WAL ارسال‌شده را پردازش می‌کند، و به این منظور بررسی می‌شود که آماده‌باش گرم شما باشد
واقعا "گرم" دایرکتوری داده باید توسط متغیر محیطی تنظیم شود
"PGDATA" یا ارسال آرگومان "--datadir". این تعداد ثانیه از زمان را برمی گرداند
آخرین بازرسی اجرا شد، همانطور که با تجزیه فراخوانی "pg_controldata" مشخص شد. به خاطر اینکه
این، فایل اجرایی pg_controldata باید در مسیر فعلی موجود باشد. متناوبا، از سوی دیگر،
شما می توانید "PGBINDIR" را به عنوان دایرکتوری که در آن زندگی می کند مشخص کنید. استفاده از آن نیز امکان پذیر است
گزینه های خاص -- فرض - تولید or - حالت آماده به کار را فرض کنید، اگر حالت پیدا شده نیست
یک مورد انتظار، یک CRITICAL منتشر می شود.

حداقل یک هشدار یا استدلال انتقادی باید تنظیم شود.

این عمل به ماژول Date::Parse نیاز دارد.

برای خروجی MRTG یا ساده، تعداد ثانیه ها را برمی گرداند.

cluster_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") نسبت تعهد تمامی پایگاه های داده را بررسی می کند و
وقتی خیلی کم هستند شکایت می کند. نیازی به اجرای این دستور در هر بار بیش از یک بار نیست
خوشه پایگاه داده پایگاه های داده را می توان با فیلتر کرد --عبارتند از و -- استثناء کردن گزینه ها. دیدن
برای جزئیات بیشتر، بخش "FILTERING BASIC" را ببینید. آنها همچنین می توانند توسط مالک فیلتر شوند
پایگاه داده با --شامل کاربر و -- استثناکننده گزینه ها. "USER NAME" را ببینید
بخش FILTERING" برای جزئیات بیشتر.

گزینه های هشدار و بحرانی باید به صورت درصد مشخص شوند. وجود ندارد
پیش فرض برای این عمل: هشدار و بحرانی باید مشخص شود. مقدار هشدار
نمی تواند بیشتر از مقدار بحرانی باشد. خروجی تمام پایگاه های داده مرتب شده بر اساس را برمی گرداند
commitratio، ابتدا کوچکترین.

به عنوان مثال: اگر هر پایگاه داده در پرچم میزبان کمتر از 90٪ در تعهد و حیاتی باشد هشدار دهید
اگر کمتر از 80 درصد باشد.

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

برای خروجی MRTG، درصدی از پایگاه داده با کمترین commitratio را برمی‌گرداند
خط اول و نام پایگاه داده در خط چهارم.

ارتباط
("symlink: check_postgres_connection") به سادگی متصل می شود، "SELECT" صادر می کند نسخه ()"، و
برگها. می گیرد نه -- هشدار or --بحرانی گزینه.

برای خروجی MRTG، به سادگی یک خروجی 1 (اتصال خوب) یا 0 (اتصال بد) را در ابتدا صادر می کند.
خط.

custom_query
("symlink: check_postgres_custom_query") یک پرس و جو سفارشی به انتخاب شما را اجرا می کند و تجزیه می کند
نتایج. خود پرس و جو از طریق آرگومان "پرس و جو" ارسال می شود و باید باشد
تا حد امکان ساده نگه داشته شود در صورت امکان، آن را در یک نمای یا تابعی بپیچید تا نگه دارید
مدیریت امور آسان تر است پرس و جو باید یک یا دو ستون برگرداند. لازم است که
یکی از ستون ها "نتیجه" نامیده می شود و موردی است که در مقابل شما بررسی می شود
هشدار و ارزش های بحرانی ستون دوم برای داده های عملکرد و هر نامی است
می توان استفاده کرد: این مقدار در داخل بخش داده عملکرد خواهد بود.

حداقل یک هشدار یا استدلال انتقادی باید مشخص شود. اینها برای چه تنظیم شده اند بستگی دارد
در مورد نوع درخواستی که اجرا می کنید. چهار نوع custom_queries وجود دارد که می تواند باشد
run، که توسط آرگومان "valtype" مشخص شده است. اگر هیچ یک مشخص نشده باشد، این عمل به صورت پیش فرض در نظر گرفته می شود
"عدد صحیح". چهار نوع عبارتند از:

عدد صحیح: یک مقایسه اعداد صحیح ساده انجام می دهد. ستون اول باید یک عدد صحیح ساده باشد،
و مقادیر هشدار و بحرانی باید یکسان باشند.

رشته: اخطار و بحرانی رشته ها هستند و تنها در صورتی فعال می شوند که مقدار در
ستون اول دقیقاً با آن مطابقت دارد. این به حروف کوچک و بزرگ حساس است.

زمان: هشدار و بحرانی زمان هستند و می توانند واحدهای ثانیه، دقیقه،
ساعت ها یا روزها هر کدام ممکن است به صورت مفرد یا مخفف فقط به حرف اول نوشته شوند. اگر
هیچ واحدی داده نمی شود، ثانیه فرض می شود. ستون اول باید یک عدد صحیح باشد
نشان دهنده تعداد ثانیه هایی است که باید بررسی شود.

اندازه: هشدار و بحرانی اندازه هستند و می توانند واحدهای بایت، کیلوبایت،
مگابایت، گیگابایت، ترابایت یا اگزابایت. هر کدام ممکن است به حرف اول مخفف شوند.
اگر واحدی داده نشود، بایت ها در نظر گرفته می شوند. ستون اول باید یک عدد صحیح باشد
نشان دهنده تعداد بایت هایی است که باید بررسی شوند.

به طور معمول، در صورتی که مقادیر بازگردانده شده باشند، یک هشدار فعال می شود بیشتر نسبت به یا برابر با
ارزش بحرانی یا هشدار دهنده با این حال، یک گزینه از --معکوس در صورتی که
مقدار برگشتی است کاهش نسبت به یا برابر با مقدار بحرانی یا هشدار دهنده است.

مثال 1: اخطار اگر هر رابطه ای بیش از 100 صفحه "rad" نام دارد، تعداد صفحات را وارد کنید.
داخل بخش داده های عملکرد

check_postgres_custom_query --valtype=string -w "rad" --query=
"انتخاب تغییر نام به عنوان نتیجه، صفحات مجدد به عنوان صفحات از pg_class WHERE صفحات مجدد > 100"

مثال 2: اگر تابع "foobar" عددی بیش از 5 مگابایت را برمی گرداند، یک مقدار بحرانی بدهید:

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") اندازه همه پایگاه های داده را بررسی می کند و شکایت می کند
وقتی خیلی بزرگ هستند نیازی به اجرای این دستور بیش از یک بار در هر پایگاه داده نیست
خوشه. پایگاه های داده را می توان با فیلتر کرد --عبارتند از و -- استثناء کردن گزینه ها. را ببینید
بخش «فیلترسازی اساسی» برای جزئیات بیشتر. آنها همچنین می توانند توسط مالک فیلتر شوند
پایگاه داده با --شامل کاربر و -- استثناکننده گزینه ها. «فیلتر کردن نام کاربر» را ببینید
بخش برای جزئیات بیشتر

گزینه های هشدار و بحرانی را می توان به صورت بایت، کیلوبایت، مگابایت، تعیین کرد.
گیگابایت، ترابایت یا اگزابایت. هر کدام ممکن است به صورت اختصاری به حرف اول نیز تبدیل شوند.
اگر واحدی داده نشود، واحدها بایتی در نظر گرفته می شوند. پیش فرض هایی برای این وجود ندارد
اقدام: هشدار و بحرانی باید مشخص شود. مقدار هشدار نمی تواند بیشتر باشد
از مقدار بحرانی خروجی همه پایگاه داده‌های مرتب شده بر اساس اندازه را ابتدا برمی‌گرداند،
نمایش بایت های خام و یک نسخه "زیبا" از اندازه.

مثال 1: اخطار اگر هر پایگاه داده در پرچم میزبان بیش از 1 ترابایت اندازه باشد، و اگر بیش از اندازه آن مهم باشد.
1.1 سل

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

مثال 2: اگر قالب پایگاه داده 1 در پورت 5432 بیش از 10 مگابایت است، یک انتقادی بدهید.

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

مثال 3: در صورتی که هر پایگاه داده در میزبان "tardis" متعلق به کاربر "tom" به پایان رسیده است، هشدار دهید.
5 GB

check_postgres_database_size --host=tardis --includeuser=tom --warning='5 گیگابایت' --critical='10 گیگابایت'

برای خروجی MRTG، اندازه بزرگترین پایگاه داده در خط اول را بر حسب بایت برمی گرداند
نام پایگاه داده در خط چهارم.

dbstats
("symlink: check_postgres_dbstats") اطلاعات را از نمای pg_stat_database گزارش می دهد،
و آن را به صورت کاکتوس پسند خروجی می دهد. هیچ خروجی دیگری مانند خروجی پشتیبانی نمی شود
اطلاعاتی است و خود را به هشدارها، مانند استفاده با Nagios، اختصاص نمی دهد. اگر هیچ گزینه ای وجود ندارد
داده می شود، همه پایگاه داده ها، یکی در هر خط، بازگردانده می شوند. شما می توانید یک پایگاه داده خاص را اضافه کنید
با استفاده از گزینه "--include" یا می توانید از گزینه "--dbname" استفاده کنید.

یازده مورد در هر خط، با فرمت name:value، با یک تک جدا شده برگردانده می شود
فضا. موارد عبارتند از:

باطن
تعداد بک‌اندهای در حال اجرا برای این پایگاه داده.

مرتکب می شود
تعداد کل تعهدات این پایگاه داده از زمان ایجاد یا بازنشانی آن.

باریک
تعداد کل بازگشت‌های این پایگاه داده از زمان ایجاد یا بازنشانی آن.

خواندن
تعداد کل بلوک های دیسک خوانده شده.

ضربه تعداد کل بازدیدهای بافر.

ret تعداد کل ردیف های برگشتی.

رفتن و آوردن
تعداد کل ردیف های واکشی شده.

ins تعداد کل ردیف های درج شده.

upd تعداد کل ردیف های به روز شده.

del تعداد کل ردیف های حذف شده.

dbname
نام پایگاه داده.

توجه داشته باشید که اگر Postgres نسخه 0 باشد، موارد ret، fetch، ins، upd و del همیشه 8.2 خواهند بود.
یا پایین تر، زیرا این آمار در آن نسخه ها موجود نبود.

اگر آرگومان dbname داده شود، هفت مورد اضافی برگردانده می شود:

idxscan
تعداد کل اسکن های فهرست کاربر.

idxtupread
تعداد کل ورودی های فهرست کاربر برگردانده شده است.

idxtupfetch
تعداد کل ردیف‌هایی که با اسکن‌های ساده نمایه کاربر واکشی شده‌اند.

idxblksread
تعداد کل بلوک های دیسک خوانده شده برای همه فهرست های کاربر.

idxblkshit
تعداد کل بازدیدهای بافر برای همه نمایه های کاربر.

سیکسان
تعداد کل اسکن های متوالی در برابر همه جداول کاربر.

sequtupread
تعداد کل تاپل های برگشتی از همه جداول کاربر.

مثال 1: گرفتن آمار برای پایگاه داده ای به نام "products" در میزبان "willow":

check_postgres_dbstats --dbhost willow --dbname

خروجی برگشتی به این صورت خواهد بود (همه در یک خط، بسته بندی نشده):

backends:82 commits:58374408 rollbacks:1651 read:268435543 hit:2920381758 idxscan:310931294 idxtupread:2777040927
idxtupfetch:1840241349 idxblksread:62860110 idxblkshit:1107812216 seqscan:5085305 seqtupread:5370500520
ret:0 fetch:0 ins:0 upd:0 del:0 dbname:willow

disabled_triggers
("symlink: check_postgres_disabled_triggers") تعداد محرک های غیرفعال را بررسی می کند
داخل پایگاه داده در -- هشدار و --بحرانی گزینه ها تعداد چنین محرک هایی هستند
پیدا شد، و هر دو به طور پیش فرض روی "1" هستند، همانطور که در استفاده معمولی، غیرفعال کردن تریگرها خطرناک است
رویداد. اگر پایگاه داده در حال بررسی 8.3 یا بالاتر باشد، بررسی برای تعداد است
محرک هایی که در وضعیت «غیرفعال» هستند (بر خلاف «همیشه» یا «مثنی»). در
خروجی نام جدول و نام ماشه را برای هر غیرفعال نشان می دهد
ماشه.

مثال 1: مطمئن شوید که هیچ تریگر غیر فعالی وجود ندارد

check_postgres_disabled_triggers

برای خروجی MRTG، تعداد تریگرهای غیرفعال را در خط اول برمی‌گرداند.

فضای دیسک
("symlink: check_postgres_disk_space") فضای موجود فیزیکی موجود در دیسک مورد استفاده توسط
Postgres. این عمل مستلزم داشتن فایل اجرایی است./bin/df" برای گزارش در دسترس است
در اندازه‌های دیسک، و همچنین باید به‌عنوان سوپرکاربر اجرا شود تا بتواند آن را بررسی کند
فهرست_داده تنظیمات داخل Postgres. در -- هشدار و --بحرانی گزینه ها داده شده است
در اندازه یا درصد یا هر دو. در صورت استفاده از اندازه ها، انواع واحدهای استاندارد هستند
مجاز: بایت، کیلوبایت، گیگابایت، مگابایت، گیگابایت، ترابایت، یا اگزابایت. هر یک
ممکن است فقط به حرف اول مخفف شود. هیچ واحدی به هیچ وجه "بایت" را نشان نمی دهد. در
مقادیر پیش‌فرض '90%' و '95%' هستند.

این دستور موارد زیر را برای تعیین همه دیسک های فیزیکی مختلف بررسی می کند
توسط Postgres استفاده می شود.

فهرست_داده - دیسکی که دایرکتوری اصلی داده روی آن قرار دارد.

ورود به سیستم فهرست راهنما - دیسکی که فایل های گزارش روی آن هستند.

WAL پرونده فهرست راهنما - دیسکی که گزارش‌های پیش‌نویس روی آن هستند (مثلاً pg_xlog پیوند شده)

قاشق غذاخوری - هر جدولی که روی یک دیسک جداگانه قرار دارد.

خروجی اندازه کل استفاده شده و موجود در هر دیسک و همچنین اندازه را نشان می دهد
درصد، مرتب شده بر اساس بیشترین تا کمترین درصد استفاده شده. هر مورد بالا به یک فایل نگاشت می شود
سیستم: اینها را می توان گنجاند یا حذف کرد. برای اطلاعات بیشتر به بخش «فیلترسازی اساسی» مراجعه کنید
جزئیات.

مثال 1: مطمئن شوید که هیچ سیستم فایلی برای پایگاه داده در پورت 90 بیش از 5432 درصد نباشد.

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

مثال 2: بررسی کنید که تمام فایل سیستم هایی که با /dev/sda شروع می شوند کوچکتر از 10 گیگابایت باشند و
11 گیگابایت (هشدار و بحرانی)

check_postgres_disk_space --port=5432 --warning='10 گیگابایت' --critical='11 گیگابایت' --include="~^/dev/sda"

مثال 4: مطمئن شوید که هیچ سیستم فایلی بیش از 50% نباشد و بیش از 15 گیگابایت دارد

check_postgres_disk_space --critical='50% و 15 گیگابایت'

مثال 5: در صورتی که سیستم فایلی بیش از 70 درصد پر است، اخطار صادر کنید or بیش از 1T دارد

check_postgres_disk_space --warning='1T or 75'

برای خروجی MRTG، اندازه فایل سیستم را در خط اول بر حسب بایت برمی‌گرداند
نام فایل سیستم در خط چهارم.

fsm_pages
("symlink: check_postgres_fsm_pages") بررسی می کند که یک خوشه چقدر به Postgres نزدیک است
max_fsm_pages تنظیمات. این عمل فقط برای پایگاه‌های داده 8.2 یا بالاتر کار می‌کند
به ماژول مشارکت نیاز دارد pg_freespacemap نصب شود. در -- هشدار و --بحرانی
گزینه ها باید به صورت درصد بیان شوند. تعداد صفحات استفاده شده در نقشه فضای آزاد
با نگاه کردن به نمای pg_freespacemap_relations و اجرای یک فرمول تعیین می شود
بر اساس فرمول مورد استفاده برای خروجی شیارهای صفحه نقشه فضای آزاد در خلاء کامل
فرمان مقادیر پیش فرض هستند ٪۱۰۰ برای هشدار و ٪۱۰۰ برای انتقادی

مثال 1: زمانی که خوشه ما 76 درصد از فضای خالی صفحه اسلات ها را مصرف کرده است، هشدار بدهید.
با pg_freespacemap نصب شده در پایگاه داده رابرت

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 نصب شود. در -- هشدار و --بحرانی
گزینه ها باید به صورت درصد بیان شوند. تعداد روابط استفاده شده در آزاد
space-map با نگاه کردن به نمای pg_freespacemap_relations تعیین می‌شود. پیشفرض
ارزشها هستند ٪۱۰۰ برای هشدار و ٪۱۰۰ برای انتقادی

مثال 1: زمانی که خوشه ما 80 درصد از روابط فضای آزاد را مصرف کرده است، هشدار بدهید.
با pg_freespacemap نصب شده در دیتابیس دیلان

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

در حالی که باید نام پایگاه داده ای را که pg_freespacemap در آن نصب شده است بنویسید، شما
فقط باید این بررسی را یک بار در هر خوشه اجرا کنید. همچنین، بررسی این اطلاعات نیاز دارد
به دست آوردن قفل های ویژه بر روی نقشه فضای آزاد، بنابراین توصیه می شود این را اجرا نکنید
با فواصل کوتاه بررسی کنید

برای خروجی MRTG، درصد نقشه فضای آزاد در خط اول، تعداد را برمی‌گرداند
روابط در حال حاضر در خط دوم استفاده می شود.

ضربه زدن
("symlink: check_postgres_hitratio") نسبت بازدید همه پایگاه های داده را بررسی می کند و شکایت می کند
وقتی خیلی کم هستند نیازی به اجرای این دستور بیش از یک بار در هر پایگاه داده نیست
خوشه. پایگاه های داده را می توان با فیلتر کرد --عبارتند از و -- استثناء کردن گزینه ها. را ببینید
بخش «فیلترسازی اساسی» برای جزئیات بیشتر. آنها همچنین می توانند توسط مالک فیلتر شوند
پایگاه داده با --شامل کاربر و -- استثناکننده گزینه ها. «فیلتر کردن نام کاربر» را ببینید
بخش برای جزئیات بیشتر

گزینه های هشدار و بحرانی باید به صورت درصد مشخص شوند. وجود ندارد
پیش فرض برای این عمل: هشدار و بحرانی باید مشخص شود. مقدار هشدار
نمی تواند بیشتر از مقدار بحرانی باشد. خروجی تمام پایگاه های داده مرتب شده بر اساس را برمی گرداند
hitratio، ابتدا کوچکترین.

به عنوان مثال: اگر هر پایگاه داده در پرچم میزبان کمتر از 90٪ در ضریب ضربه باشد، هشدار دهید، و در صورت حیاتی بودن
کمتر از 80 درصد

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

برای خروجی MRTG، درصدی از پایگاه داده با کمترین ضریب ضربه را بر می گرداند
خط اول و نام پایگاه داده در خط چهارم.

hot_standby_delay
("symlink: check_hot_standby_delay") تاخیر تکرار جریان را با محاسبه
دلتا بین موقعیت xlog فعلی یک سرور اصلی و مکان پخش مجدد a
برده به آن متصل است. سرور برده باید در حالت hot_standby (مثلاً فقط خواندنی) باشد،
بنابراین حداقل نسخه برای استفاده از این عمل Postgres 9.0 است. در -- هشدار و
--بحرانی گزینه ها دلتای بین مکان های xlog هستند. از آنجایی که این مقادیر بایت هستند
آفست در WAL باید با حجم تراکنش مورد انتظار برنامه شما مطابقت داشته باشد
برای جلوگیری از مثبت یا منفی کاذب.

اولین گزینه های "--dbname"، "--host" و "--port" و غیره به عنوان اصلی در نظر گرفته می شوند. را
دوم متعلق به غلام است.

مقادیر بایت باید بر اساس حجم تراکنش های مورد نیاز برای داشتن جریان باشد
Replication به دلیل تاخیر بیش از حد، که توسط Postgres تعیین می شود، از Master جدا شود
متغیر پیکربندی wal_keep_segments. برای واحدهای زمان، واحدهای معتبر "ثانیه" هستند،
"دقیقه"، "ساعت" یا "روز". هر کدام ممکن است به صورت مفرد یا به اختصار فقط نوشته شوند
حرف اول هنگام مشخص کردن هر دو، به شکل "بایت و زمانهر دو شرط باید باشد
برای آستانه ای که باید برآورده شود درست است.

شما باید اطلاعاتی در مورد نحوه دسترسی به پایگاه های داده با ارائه یک کاما جدا شده ارائه دهید
لیستی از پارامترهای --dbhost و --dbport، مانند "--dbport=5432,5543". اگر داده نشد،
عمل شکست می خورد

مثال 1: هشدار به یک پایگاه داده با یک کپی محلی در پورت 5433 در هر پخش مجدد xlog عقب است
در همه

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

مثال 2: اگر آخرین تراکنش دریافتی replica1 بیش از 10 باشد، یک بحران بدهید
دقیقه پیش

check_hot_standby_delay --dbhost=master,replica1 --critical='10min'

مثال 3: به replica1 اجازه دهید 1 قطعه WAL عقب باشد، اگر استاد به طور لحظه ای می بیند
فعالیت بیشتری نسبت به اتصال تکرار جریان یا 10 دقیقه عقب تر،
اگر Master فعالیت بسیار کمی می بیند و هیچ تراکنشی را پردازش نمی کند، اما نه
هر دو، که نشان دهنده یک مشکل پایدار در اتصال تکرار است.

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

index_size
اندازه_جدول
رابطه_اندازه
(پیوندهای نمادین: "check_postgres_index_size"، "check_postgres_table_size"، و
"check_postgres_relation_size") اقدامات اندازه_جدول و index_size به سادگی
تغییرات از رابطه_اندازه اقدام، که رابطه ای را که رشد کرده است بررسی می کند
بزرگ. روابط (به عبارت دیگر، جداول و نمایه ها) را می توان با فیلتر فیلتر کرد --عبارتند از
و -- استثناء کردن گزینه ها. برای جزئیات بیشتر به بخش «فیلترسازی اساسی» مراجعه کنید. روابط می تواند
همچنین توسط کاربر مالک آنها با استفاده از فیلتر فیلتر شوند --شامل کاربر و -- استثناکننده
گزینه ها. برای جزئیات بیشتر به بخش «فیلتر کردن نام کاربر» مراجعه کنید.

مقادیر برای -- هشدار و --بحرانی گزینه ها اندازه فایل هستند و ممکن است دارای واحدهایی باشند
بایت، کیلوبایت، مگابایت، گیگابایت، ترابایت یا اگزابایت. هر کدام را می توان مخفف کرد
به حرف اول اگر واحدی داده نشود، بایت ها در نظر گرفته می شوند. هیچ پیش فرضی وجود ندارد
مقادیر: هم گزینه هشدار و هم گزینه بحرانی باید داده شود. متن بازگشتی نشان می دهد
اندازه بزرگترین رابطه یافت شده

اگر --نمایشگر گزینه فعال است، تمام روابط با اندازه آنها داده خواهد شد.
برای جلوگیری از این امر، توصیه می شود که تنظیم کنید -- Perflimit گزینه ای که باعث می شود
پرس و جو برای انجام یک "ORDER BY size DESC LIMIT (perflimit)".

مثال 1: اگر جدولی بزرگتر از 600 مگابایت در بروک میزبان است، یک انتقادی بدهید.

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

مثال 2: اگر اندازه محصولات جدول بیش از 4 گیگابایت است، هشدار دهید، و در 4.5 گیگابایت یک مقدار بحرانی بدهید.

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

مثال 3: اگر هر شاخصی که متعلق به postgres نیست بیش از 500 مگابایت رفت، هشدار دهید.

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

برای خروجی MRTG، اندازه بزرگترین رابطه و نام آن را بر حسب بایت برمی‌گرداند
پایگاه داده و رابطه به عنوان خط چهارم.

last_analyze
last_vacuum
last_autoanalyze
last_autoovacuum
(پیوندهای نمادین: "check_postgres_last_analyze"، "check_postgres_last_vacuum"،
"check_postgres_last_autoanalyze"، و "check_postgres_last_autovacuum") مدت زمان را بررسی می کند
از آخرین باری که خلاء (یا تجزیه و تحلیل) روی هر جدول در یک یا چند پایگاه داده اجرا شده است.
استفاده از این اقدامات مستلزم آن است که پایگاه داده هدف نسخه 8.3 یا بالاتر باشد یا آن
نسخه 8.2 و متغیر پیکربندی است stats_row_level فعال شده است. جداول
را می توان با فیلتر کرد --عبارتند از و -- استثناء کردن گزینه ها. به "فیلتر اساسی" مراجعه کنید
بخش برای جزئیات بیشتر جداول همچنین می توانند توسط صاحب خود با استفاده از فیلتر فیلتر شوند
--شامل کاربر و -- استثناکننده گزینه ها. برای اطلاعات بیشتر به بخش «فیلتر کردن نام کاربر» مراجعه کنید
جزئیات.

واحدها برای -- هشدار و --بحرانی به عنوان زمان مشخص می شوند. واحدهای معتبر ثانیه هستند،
دقیقه، ساعت و روز؛ همه را می توان به حرف اول مخفف کرد. اگر هیچ واحدی وجود ندارد
داده شده، "ثانیه" فرض می شود. مقادیر پیش فرض "1 روز" و "2 روز" هستند. لطفا توجه داشته باشید
که مواردی وجود دارد که این فیلد به طور خودکار پر نمی شود. اگر قطعی است
جداول به شما مشکل می دهند، مطمئن شوید که ردیف های مرده برای جاروبرقی دارند یا فقط
آنها را از آزمون حذف کنید.

طرحواره ای با نام 'information_schema' از این آزمایش مستثنی شده است، زیرا تنها جداول آن است.
محتویات کوچک هستند و تغییر نمی کنند.

توجه داشته باشید که نسخه‌های غیر خودکار، نسخه‌های خودکار را نیز بررسی می‌کنند. در دیگر
کلمات، با استفاده از last_vacuum آخرین خلاء را گزارش می دهد، خواه خلاء معمولی باشد،
یا یکی توسط دیمون autovacuum اجرا می شود.

مثال 1: اگر جدولی در 3 روز جاروبرقی جارو نشده است، هشدار دهید و در
هفته، برای افسنطین میزبان

check_postgres_last_vacuum --host=افسنطین --warning='3d' --critical='7d'

مثال 2: مانند بالا، اما جداول متعلق به کاربران 'eve' یا 'malory' را رد کنید

check_postgres_last_vacuum --host=افسنطین --warning='3d' --critical='7d' --excludeusers=eve,malory

برای خروجی MRTG، (در خط اول) کمترین زمان را در ثانیه پس از a برمی گرداند
جدول آخرین بار خلاء یا تجزیه و تحلیل شد. خط چهارم نام پایگاه داده و را برمی گرداند
نام جدول

شنونده
("symlink: check_postgres_listener") تأیید کنید که شخصی به یک یا چند مورد گوش می دهد
رشته های خاص (با استفاده از سیستم LISTEN/NOTIFY)، با نگاه کردن به جدول pg_listener.
فقط یکی از هشدارها یا بحرانی مورد نیاز است. قالب یک رشته ساده است که نشان دهنده
LISTEN هدف، یا یک کاراکتر tilde و به دنبال آن یک رشته برای بررسی عبارت منظم.
توجه داشته باشید که این بررسی روی نسخه‌های 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=~ grimm

برای خروجی MRTG، 1 یا 0 را در اول نشان می دهد که نشان دهنده موفقیت یا شکست است. نام
اطلاعیه باید از طریق ارائه شود --mrtg گزینه.

قفل
("symlink: check_postgres_locks") تعداد کل قفل های یک یا چند قفل را بررسی کنید
پایگاه های داده نیازی به اجرای بیش از یک بار در هر کلاستر پایگاه داده نیست. پایگاه های داده می توانند
با فیلتر شود --عبارتند از و -- استثناء کردن گزینه ها. بخش «فیلترسازی اساسی» را ببینید
برای جزئیات بیشتر.

La -- هشدار و --بحرانی گزینه ها را می توان به صورت اعداد ساده مشخص کرد که نشان دهنده آن است
تعداد کل قفل ها، یا می توان آنها را بر اساس نوع قفل تقسیم کرد. نام قفل معتبر
عبارتند از "total"، "waiting" یا نام یک نوع قفل که توسط Postgres استفاده می شود. این اسامی هستند
حساس به حروف کوچک و بزرگ نیست و نیازی به بخش "قفل" در انتهای آن نیست، بنابراین انحصاری مطابقت خواهد داشت
'ExclusiveLock'. فرمت آن name=number است، با موارد مختلف که با دو نقطه یا از هم جدا شده اند
نقطه ویرگول (یا هر نماد دیگر).

مثال 1: در صورتی که تعداد قفل ها 100 یا بیشتر باشد و اگر 200 قفل یا بیشتر باشد، هشدار دهید.
میزبان گرت

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

مثال 2: در آرتموس میزبان، در صورت وجود 200 قفل یا بیشتر، هشدار دهید، و در صورتی که
بیش از 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.
همچنین، می‌توانید نام فایل لاگ را با عبارت وارد کنید --ورود به سیستم فایل گزینه. این هست
به خصوص مفید است اگر سیاهههای مربوط دارای یک طرح چرخش سفارشی هدایت شده یک برنامه خارجی باشد.
La --ورود به سیستم فایل گزینه از کاراکترهای فرار زیر پشتیبانی می کند: "%Y %m %d %H" که
به ترتیب سال، ماه، تاریخ و ساعت جاری را نشان می دهد. خطا همیشه هست
به‌عنوان بحرانی گزارش می‌شود، مگر اینکه گزینه هشدار به‌عنوان یک مقدار غیرصفر ارسال شده باشد.
به غیر از آن استفاده خاص، گزینه های "--warning" و "--critical" باید باشند نه 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".

new_version_box
("symlink: check_postgres_new_version_box") بررسی می کند که آیا نسخه جدیدتری از boxinfo
برنامه موجود است نسخه فعلی با اجرای "boxinfo.pl --version" به دست می آید.
اگر ارتقاء عمده ای در دسترس باشد، یک هشدار برگردانده می شود. اگر یک ارتقاء تجدید نظر است
موجود است، یک بحرانی برگردانده می شود. (boxinfo برنامه ای برای گرفتن مهم است
اطلاعات از یک سرور و قرار دادن آن در قالب HTML: ببینید
http://bucardo.org/wiki/boxinfo برای اطلاعات بیشتر). همچنین به اطلاعات مربوط به
گزینه "--get_method".

new_version_cp
("symlink: check_postgres_new_version_cp") بررسی می کند که آیا نسخه جدیدتری از این برنامه وجود دارد یا خیر
(check_postgres) با برداشتن نسخه از یک فایل متنی کوچک در قسمت اصلی در دسترس است
صفحه صفحه اصلی پروژه در صورتی که نسخه برگشتی اخطار را برگرداند
با یکی که در حال اجرا هستید مطابقت دهید. فاصله زمانی توصیه شده برای بررسی یک بار در روز است. را نیز ببینید
اطلاعات مربوط به گزینه "--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
(پیوندهای نمادین: "check_postgres_pgb_pool_cl_active"، "check_postgres_pgb_pool_cl_waiting"،
"check_postgres_pgb_pool_sv_active"، "check_postgres_pgb_pool_sv_idle"،
"check_postgres_pgb_pool_sv_used"، "check_postgres_pgb_pool_sv_tested"،
"check_postgres_pgb_pool_sv_login"، و "check_postgres_pgb_pool_maxwait")

آمار استخر pgbouncer را بررسی می کند. هر استخر دارای مجموعه ای از اتصالات "مشتری" است،
اشاره به اتصالات از مشتریان خارجی، و اتصالات "سرور"، با اشاره به
اتصالات به خود PostgreSQL. پیشوندهای check_postgres مربوط به "cl_" است.
و "sv_" به ترتیب. اتصالات کلاینت فعال آن اتصالاتی هستند که در حال حاضر پیوند داده شده اند
با اتصال سرور فعال ارتباطات مشتری همچنین ممکن است "در انتظار" باشد، به این معنی که آنها
هنوز اتصال سرور به آنها اختصاص داده نشده است. اتصالات سرور "فعال" هستند (پیوند شده است
به یک کلاینت)، "بیکار" (در حال حاضر برای اتصال یک مشتری برای پیوند با آن)، "استفاده شده" (فقط
از یک مشتری جدا شده است، و هنوز به استخر بیکار بازنگشته است)، "تست شده" (در حال حاضر
تست شده) و "ورود به سیستم" (در مرحله ورود به سیستم). مقدار maxwait نشان می دهد که چه مدت در
چند ثانیه قدیمی‌ترین اتصال مشتری منتظر در انتظار بوده است.

pgbouncer_backends
("symlink: check_postgres_pgbouncer_backends") تعداد اتصالات فعلی را بررسی می کند
برای یک یا چند پایگاه داده از طریق pgbouncer، و به صورت اختیاری آن را با حداکثر مقایسه می کند
مجاز است که توسط متغیر پیکربندی pgbouncer تعیین می شود max_client_conn.
-- هشدار و --بحرانی گزینه ها می توانند یکی از سه شکل را داشته باشند. اول، یک عدد ساده می تواند
داده شود، که نشان دهنده تعداد اتصالاتی است که در آن هشدار داده می شود.
این انتخاب از حداکثر اتصالات تنظیمات. دوم، درصد موجود
اتصالات می تواند داده شود. سوم، یک عدد منفی می توان ارائه داد که نشان دهنده عدد است
تعداد اتصالات باقی مانده تا حداکثر اتصالات رسیده است. مقادیر پیش فرض برای
-- هشدار و --بحرانی '90٪' و '95٪' هستند. همچنین می توانید پایگاه داده ها را با استفاده از فیلتر کنید
la --عبارتند از و -- استثناء کردن گزینه ها. برای جزئیات بیشتر به بخش «فیلترسازی اساسی» مراجعه کنید.

برای مشاهده فقط فرآیندهای غیر فعال، می توانید از -- نویدل بحث و جدل. توجه داشته باشید که کاربر شما
در حال اتصال هستند همانطور که برای اینکه این کار به درستی کار کند باید یک ابرکاربر باشد.

مثال 1: هنگامی که تعداد اتصالات روی میزبان Quirm به 120 رسید، هشدار دهید، و
بحرانی است اگر به 150 برسد.

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

مثال 2: زمانی که به 75 درصد از حداکثر تنظیم اتصالات خود در هاست رسیدیم، یک مقدار حیاتی بدهید.
لانکر یا لانکر2.

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

مثال 3: زمانی که فقط 10 اسلات اتصال دیگر روی هاست باقی مانده است، هشدار بدهید
پلاسمید، و زمانی بحرانی است که فقط 5 پلاسمید باقی مانده است.

check_postgres_pgbouncer_backends --warning=-10 --critical=-5 --host=plasmid -p 6432 -u pgbouncer

برای خروجی MRTG، تعداد اتصالات در خط اول و چهارم گزارش شده است
خط نام پایگاه داده به اضافه max_client_conn فعلی را می دهد. اگر بیش از یک
پایگاه داده پرس و جو شده است، یکی با بیشترین تعداد اتصال خروجی است.

pgbouncer_checksum
("symlink: check_postgres_pgbouncer_checksum") بررسی می کند که تمام تنظیمات pgBouncer
مثل دفعه قبل که چک کردید این کار با ایجاد یک جمع‌بندی چک از یک لیست مرتب شده انجام می‌شود
تنظیم نام ها و مقادیر آنها توجه داشته باشید که شما نباید نام پایگاه داده، آن را مشخص کنید
به طور خودکار به صورت پیش فرض pgbouncer خواهد بود. یا -- هشدار یا --بحرانی انتخاب
باید داده شود، اما نه هر دو. مقدار هر یک از آنها چک جمع است که 32 کاراکتر است
مقدار هگزادسیمال می توانید با گزینه ویژه "--critical=0" اجرا کنید تا متوجه شوید
چک جمع موجود

این عمل به ماژول Digest::MD5 نیاز دارد.

مثال 1: با استفاده از
کاربر پیش فرض (معمولا postgres)

check_postgres_pgbouncer_checksum --port=6432 --critical=0

مثال 2: مطمئن شوید که هیچ تنظیماتی تغییر نکرده است و در این صورت با استفاده از چک‌جمع از هشدار دهید
در بالا.

check_postgres_pgbouncer_checksum --port=6432 --warning=cd2f3b5e129dc2b4f5c0f6d8d2e64231

برای خروجی MRTG، 1 یا 0 را نشان می دهد که نشان دهنده موفقیت عدم تطابق جمع کنترلی است.
یک چک جمع باید به عنوان آرگومان "--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") سن هر موجود آماده شده را بررسی کنید
معاملات توجه داشته باشید که اکثر مردم از تراکنش های آماده شده استفاده نخواهند کرد، زیرا آنها بخشی هستند
متعهد دو بخشی و نگهداری آن پیچیده است. همچنین نباید آنها را با آنها اشتباه گرفت
بیانیه های آماده شده، چیزی است که اکثر مردم هنگام شنیدن آماده شدن به آن فکر می کنند. در
مقدار پیش‌فرض اخطار 1 ثانیه است، برای تشخیص هرگونه استفاده از تراکنش‌های آماده‌شده، که
احتمالاً در اکثر سیستم ها یک اشتباه است. اخطار و بحرانی تعداد ثانیه است
تراکنش آماده شده قبل از دادن هشدار باز شده است.

مثال 1: در مورد شناسایی هر گونه تراکنش آماده شده هشدار دهید:

check_postgres_prepared_txns -w 0

مثال 2: اگر هر تراکنش آماده شده بیش از 10 باز بوده است، یک نکته مهم ارائه دهید
ثانیه، اما حداکثر 360 ثانیه برای "shrike" پایگاه داده در نظر گرفته شود:

check_postgres_prepared_txns --critical=10 --exclude=shrike
check_postgres_prepared_txns --critical=360 --include=shrike

برای خروجی MRTG، تعداد ثانیه‌هایی را که قدیمی‌ترین تراکنش باز بوده است را به عنوان باز می‌گرداند
خط اول، و از کدام پایگاه داده به عنوان خط نهایی آمده است.

query_runtime
("symlink: check_postgres_query_runtime") بررسی می کند که یک پرس و جوی خاص چقدر طول می کشد تا اجرا شود،
با اجرای "تحلیل توضیحی" در برابر آن. در -- هشدار و --بحرانی گزینه ها هستند
حداکثر زمانی که پرس و جو باید طول بکشد. واحدهای معتبر ثانیه، دقیقه و ساعت هستند.
any را می توان به حرف اول مخفف کرد. اگر هیچ واحدی داده نشود، "ثانیه" در نظر گرفته می شود.
هم اخطار و هم گزینه بحرانی باید داده شود. نام نما یا تابع
برای اجرا باید به آن منتقل شود - نام پرسش گزینه. باید از یک کلمه تشکیل شده باشد
(یا schema.word)، با پرانتز اختیاری در پایان.

مثال 1: اگر تابعی به نام "speedtest" در مدت 10 ثانیه اجرا نشود، یک بحرانی بدهید.
کمتر

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

برای خروجی MRTG، زمان تکمیل پرس و جو را در خط اول بر حسب ثانیه گزارش می کند.
خط چهارم پایگاه داده را فهرست می کند.

query_time
("symlink: check_postgres_query_time") طول پرس و جوهای در حال اجرا را در یک یا چند مورد بررسی می کند
پایگاه های داده نیازی به اجرای بیش از یک بار در یک کلاستر پایگاه داده وجود ندارد. توجه داشته باشید
که این قبلاً عبارت‌هایی را که "بدون کار در تراکنش" هستند، مستثنی می‌کند. پایگاه های داده می تواند باشد
فیلتر شده با استفاده از --عبارتند از و -- استثناء کردن گزینه ها. بخش «فیلترسازی اساسی» را ببینید
برای جزئیات بیشتر همچنین می‌توانید روی کاربری که پرس و جو را با --شامل کاربر
و -- استثناکننده گزینه ها. برای جزئیات بیشتر به بخش «فیلتر کردن نام کاربر» مراجعه کنید.

مقادیر برای -- هشدار و --بحرانی گزینه‌ها مقدار زمان هستند و به طور پیش‌فرض روی '2 هستند
دقیقه" و "5 دقیقه" به ترتیب. واحدهای معتبر «ثانیه»، «دقیقه»، «ساعت» یا
'روزها'. هر کدام ممکن است به صورت مفرد یا مخفف فقط به حرف اول نوشته شوند. اگر واحد نباشد
داده می شود، واحد ثانیه فرض می شود.

این عمل به Postgres 8.1 یا بهتر نیاز دارد.

مثال 1: در صورتی که درخواستی بیش از 3 دقیقه اجرا شده است، اخطار بدهید و الف
حیاتی است اگر بیشتر از 5 دقیقه باشد.

check_postgres_query_time --port=5432 --warning='3 دقیقه' --critical='5 دقیقه'

مثال 2: با استفاده از مقادیر پیش فرض (2 و 5 دقیقه)، تمام پایگاه های داده به جز آن ها را بررسی کنید
با "الگو" شروع می شود.

check_postgres_query_time --port=5432 --exclude=~^template

مثال 3: اگر کاربر 'don' درخواستی بیش از 20 ثانیه دارد، هشدار دهید

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

برای خروجی MRTG، طول طولانی‌ترین پرس‌وجو را بر حسب ثانیه برمی‌گرداند
خط خط چهارم نام پایگاه داده را می دهد.

replicate_row
("symlink: check_postgres_replicate_row") بررسی می کند که نسخه master-slave کار می کند
به یک یا چند برده

اولین گزینه های "--dbname"، "--host" و "--port" و غیره به عنوان اصلی در نظر گرفته می شوند.
کاربردهای بعدی بردگان هستند. ارزش ها یا -- هشدار و --بحرانی گزینه ها هستند
واحد زمان، و حداقل یکی باید ارائه شود (بدون پیش فرض). واحدهای معتبر "ثانیه" هستند،
"دقیقه"، "ساعت" یا "روز". هر کدام ممکن است به صورت مفرد یا به اختصار فقط نوشته شوند
حرف اول اگر هیچ واحدی داده نشود، واحدها ثانیه فرض می شوند.

این بررسی یک سطر را در اصلی به‌روزرسانی می‌کند و سپس مدت زمانی را که طول می‌کشد اندازه‌گیری می‌کند
برای بردگان اعمال می شود. برای انجام این کار، باید جدولی را انتخاب کنید که در حال تکرار است
ردیفی را پیدا کنید که قابل تغییر باشد و با هیچ فرآیند دیگری تغییر نخواهد کرد. آ
ستون خاص این سطر از یک مقدار به مقدار دیگر تغییر خواهد کرد. همه اینها تغذیه می شود
به گزینه "repinfo" و باید حاوی گزینه های زیر باشد که با کاما از هم جدا شده اند:
نام جدول، کلید اصلی، شناسه کلید، ستون، مقدار اول، مقدار دوم.

مثال 1: Slony جدولی به نام "orders" را از میزبان "alpha" به میزبان "بتا" تکرار می کند.
در پایگاه داده "فروش". کلید اصلی جدول id نام دارد و ما به آن می رویم
ردیف را با شناسه 3 تست کنید (که تاریخی است و هرگز تغییر نکرده است). یک ستون وجود دارد
با نام "salesrep" که برای بررسی آن از مقدار "slon" به "nols" تغییر می کنیم.
همانند سازی اگر تکرار در 10 اتفاق نیفتد، می‌خواهیم یک هشدار ارسال کنیم
ثانیه صورت گرفت.

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

مثال 2: بوکاردو جدولی به نام "دریافت" را از میزبان "سبز" به میزبان ها کپی می کند.
"قرمز"، "آبی" و "زرد". پایگاه داده برای هر دو طرف "عمومی" است. پایگاه داده های برده
روی پورت 5455 اجرا می‌شوند. کلید اصلی «receipt_id» نام دارد، ردیفی که می‌خواهیم از آن استفاده کنیم.
مقدار 9 دارد و ستونی که می خواهیم برای آزمایش تغییر دهیم 'zone' نامیده می شود. خوب
برای مقدار این ستون، بین «شمال» و «جنوب» جابه‌جا شوید و یک if حیاتی پرتاب کنید
تغییر در هر سه برده در عرض 5 ثانیه نیست.

check_postgres_replicate_row --host=سبز --port=5455 --host=قرمز،آبی،زرد
--critical=5 --repinfo=receipt,receipt_id,9,zone,شمال,جنوب

برای خروجی MRTG، زمانی را که تکثیر طول می کشد بر حسب ثانیه در خط اول برمی گرداند
تمام کردن حداکثر زمان بر روی 4 دقیقه و 30 ثانیه تنظیم شده است: اگر تکراری انجام نشده باشد
در آن زمان طولانی، یک خطا پرتاب می شود.

same_schema
("symlink: check_postgres_same_schema") تأیید می کند که دو یا چند پایگاه داده یکسان هستند
تا آنجا که طرحواره آنها (اما نه داده های داخل). این به ویژه برای ساختن مفید است
مطمئن شوید که برده های شما در هنگام استفاده از master به slave به هیچ وجه تغییر یا خراب نشده اند
همانند سازی بر خلاف اکثر اقدامات دیگر، این هیچ هشدار یا معیار مهمی ندارد -
پایگاه های داده یا همگام هستند یا نیستند. اگر آنها متفاوت هستند، یک لیست دقیق از
تفاوت ها ارائه شده است.

ممکن است بخواهید برخی از تفاوت ها را حذف یا فیلتر کنید. راه این کار اضافه کردن است
رشته ها را به گزینه "--filter". برای حذف یک نوع شی، از "noname" استفاده کنید، جایی که "name"
نوع شی است، به عنوان مثال، "noschema". برای حذف اشیاء از یک نوع خاص توسط a
عبارت منظم در برابر نام آنها، از "noname=regex" استفاده کنید. نمونه های زیر را برای الف ببینید
فهم بهتر.

انواع اشیایی که می توانند فیلتر شوند عبارتند از:

کاربر
طرح
جدول
دیدن
شاخص
دنباله
محدودیت
ماشه
تابع

گزینه فیلتر "noposition" از تایید موقعیت ستون ها در a جلوگیری می کند
جدول.

گزینه فیلتر "nofuncbody" از مقایسه بدنه همه عملکردها جلوگیری می کند.

گزینه فیلتر "noperm" از مقایسه مجوزهای شی جلوگیری می کند.

برای ارائه پایگاه داده دوم، کافی است تفاوت ها را با یک تماس به پایگاه داده اول اضافه کنید
آرگومان اتصال مناسب به عنوان مثال، برای مقایسه پایگاه های داده در میزبان آلفا و
براوو، از "--dbhost=alpha,bravo" استفاده کنید. همچنین نمونه های زیر را ببینید.

اگر فقط یک هاست داده شود، فرض بر این است که در حال انجام یک گزارش "مبتنی بر زمان" هستیم. در
اولین باری که این کار اجرا می شود، یک عکس فوری از تمام موارد موجود در پایگاه داده در محلی ذخیره می شود
فایل. وقتی دوباره آن را اجرا می کنید، آن عکس فوری خوانده می شود و به "پایگاه داده شماره 2" تبدیل می شود و می شود
در مقایسه با پایگاه داده فعلی

برای جایگزینی فایل ذخیره شده قدیمی با نسخه جدید، از آرگومان --replace استفاده کنید.

برای فعال کردن عکس‌های فوری در زمان‌های مختلف، می‌توانید از آرگومان "--پسوند" برای ساختن استفاده کنید.
نام فایل منحصر به فرد برای هر اجرا نمونه های زیر را ببینید.

مثال 1: بررسی کنید که دو پایگاه داده در ستاره و خط میزبان یکسان هستند:

check_postgres_same_schema --dbhost=star،line

مثال 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 --پسوند=روزانه
check_postgres_same_schema --dbname=cylon --پسوند=هفتگی

مثال 6: مقایسه تاریخی را اجرا کنید، سپس فایل را جایگزین کنید

check_postgres_same_schema --dbname=cylon --پسوند=روزانه -- جایگزین

دنباله
("symlink: check_postgres_sequence") بررسی می کند چه مقدار فضای برای همه دنباله های موجود در
پایگاه داده این به عنوان درصد کل مقادیر ممکن استفاده شده اندازه گیری می شود
برای هر دنباله در -- هشدار و --بحرانی گزینه ها باید به صورت بیان شوند
درصدها مقادیر پیش فرض هستند ٪۱۰۰ برای هشدار و ٪۱۰۰ برای انتقادی شما ممکن است
از --include و --exclude برای کنترل دنباله هایی که باید بررسی شوند استفاده کنید. توجه داشته باشید که این
چک به حساب غیرعادی است ارزش کوچک و افزایش by ارزش دارد، اما اهمیتی نمی دهد که
دنباله روی چرخه تنظیم شده است یا نه.

خروجی Nagios نام دنباله، درصد استفاده شده و تعداد را می دهد
از "تماس" سمت چپ، نشان می دهد که چند بار دیگر nextval را می توان در آن دنباله فراخوانی کرد
قبل از وارد شدن به حداکثر مقدار

خروجی MRTG بالاترین درصد را در تمام دنباله‌های خط اول برمی‌گرداند.
و نام هر دنباله با آن درصد در سطر چهارم، با یک "|" از هم جدا شده است.
(لوله) اگر بیش از یک دنباله در آن درصد وجود داشته باشد.

مثال 1: اگر هر دنباله ای به 95 درصد پر شدن نزدیک می شود، هشدار دهید.

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

مثال 2: بررسی کنید که دنباله ای با نام "orders_id_seq" بیش از نیمه پر نباشد.

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

settings_checksum
("symlink: check_postgres_settings_checksum") بررسی می کند که تمام تنظیمات Postgres
مثل دفعه قبل که چک کردید این کار با ایجاد یک جمع‌بندی چک از یک لیست مرتب شده انجام می‌شود
تنظیم نام ها و مقادیر آنها توجه داشته باشید که کاربران مختلف در یک پایگاه داده ممکن است داشته باشند
چک جمع های مختلف، به دلیل استفاده از ALTER USER، و به دلیل این واقعیت که ابرکاربران بیشتر می بینند
تنظیمات نسبت به کاربران عادی یا -- هشدار یا --بحرانی گزینه باید باشد
داده شده است، اما نه هر دو. مقدار هر یک از آنها چک جمع است، یک هگزادسیمال 32 کاراکتری
ارزش. می توانید با گزینه ویژه "--critical=0" اجرا کنید تا موجودی موجود را پیدا کنید
چک جمع

این عمل به ماژول Digest::MD5 نیاز دارد.

مثال 1: با استفاده از کاربر پیش فرض، کنترل اولیه پایگاه داده را در پورت 5555 بیابید
(معمولا postgres)

check_postgres_settings_checksum --port=5555 --critical=0

مثال 2: مطمئن شوید که هیچ تنظیماتی تغییر نکرده است و در این صورت با استفاده از چک‌جمع از هشدار دهید
در بالا.

check_postgres_settings_checksum --port=5555 --warning=cd2f3b5e129dc2b4f5c0f6d8d2e64231

برای خروجی MRTG، 1 یا 0 را نشان می دهد که نشان دهنده موفقیت عدم تطابق جمع کنترلی است.
یک چک جمع باید به عنوان آرگومان "--mrtg" ارائه شود. خط چهارم همیشه می دهد
جمع چک فعلی

وضعیت slony
("symlink: check_postgres_slony_status") وضعیت یک خوشه Slony را توسط
نگاهی به نتایج نمای sl_status Slony. این به عنوان تعداد بازگردانده می شود
ثانیه های "زمان تاخیر". در -- هشدار و --بحرانی گزینه ها باید به صورت زمان بیان شوند.
مقادیر پیش فرض هستند 60 ثانیه برای هشدار و 300 ثانیه برای انتقادی

آرگومان اختیاری -- طرحواره طرحی که Slony تحت آن نصب شده است را نشان داد. اگر این
داده نمی شود، طرح به طور خودکار هر بار که این بررسی اجرا می شود تعیین می شود.

مثال 1: در صورت تأخیر بیش از 20 ثانیه در اسلونی، اخطار بدهید.

check_postgres_slony_status --warning 20

مثال 2: اگر Slony نصب شده در طرحواره "_slony" بیش از 10 باشد، یک انتقادی بدهید.
دقیقه تاخیر

check_postgres_slony_status --schema=_slony --critical=600

timesync
("symlink: check_postgres_timesync") زمان سیستم محلی را با زمان گزارش شده مقایسه می کند
توسط یک یا چند پایگاه داده در -- هشدار و --بحرانی گزینه ها نشان دهنده تعداد
چند ثانیه بین دو سیستم قبل از اینکه هشدار داده شود. اگر هیچ کدام مشخص نشده باشد،
از مقادیر پیش فرض استفاده می شود که عبارتند از 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" را بررسی می کند
تراکنش" در یک یا چند پایگاه داده است. نیازی به اجرای بیش از یک بار نیست
در همان خوشه پایگاه داده پایگاه های داده را می توان با استفاده از فیلتر کرد --عبارتند از و
-- استثناء کردن گزینه ها. برای جزئیات بیشتر به بخش «فیلترسازی اساسی» در زیر مراجعه کنید.

La -- هشدار و --بحرانی گزینه ها به صورت واحد زمان، اعداد صحیح علامت دار یا
اعداد صحیح برای واحدهای زمان، و هر دو باید ارائه شوند (هیچ پیش فرض وجود ندارد). واحدهای معتبر
"ثانیه"، "دقیقه"، "ساعت" یا "روز" هستند. هر کدام ممکن است به صورت مفرد یا مخفف نوشته شوند
فقط به حرف اول اگر هیچ واحدی داده نشود و اعداد بدون علامت باشند، واحدها
ثانیه فرض می شوند.

این عمل به Postgres 8.3 یا بهتر نیاز دارد.

مثال 1: اگر هر اتصالی بیش از 15 در تراکنش بیکار بوده است، هشدار دهید
ثانیه:

check_postgres_txn_idle --port=5432 --warning='15 ثانیه'

مثال 2: در صورت وجود 50 تراکنش یا بیشتر اخطار بدهید

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

مثال 3: اگر 5 یا بیشتر اتصالات در تراکنش بیکار بوده اند برای تعداد بیشتر، یک نکته مهم را ارائه دهید
بیش از 10 ثانیه:

check_postgres_txn_idle --port=5432 --critical='5 برای 10 ثانیه'

برای خروجی MRTG، زمان طولانی‌ترین تراکنش بی‌حرکتی را بر حسب ثانیه برمی‌گرداند
در حال اجرا خط چهارم نام پایگاه داده و سایر اطلاعات مربوط به آن را برمی گرداند
طولانی ترین معامله

txn_time
("symlink: check_postgres_txn_time") طول تراکنش های باز را در یک یا چند مورد بررسی می کند.
پایگاه های داده نیازی به اجرای این دستور بیش از یک بار در هر کلاستر پایگاه داده نیست.
پایگاه های داده را می توان با استفاده از فیلتر کرد --عبارتند از و -- استثناء کردن گزینه ها. به "BASIC" مراجعه کنید
بخش FILTERING" برای جزئیات بیشتر. مالک معامله را نیز می توان فیلتر کرد، توسط
استفاده از --شامل کاربر و -- استثناکننده گزینه ها. بخش «فیلتر کردن نام کاربری» را ببینید
برای جزئیات بیشتر.

ارزش ها یا -- هشدار و --بحرانی گزینه ها واحدهای زمان هستند و باید ارائه شوند
(بدون پیش فرض). واحدهای معتبر «ثانیه»، «دقیقه»، «ساعت» یا «روز» هستند. هر کدام ممکن است باشد
به صورت مفرد یا مخفف فقط به حرف اول نوشته می شود. اگر واحدی داده نشود،
واحدها ثانیه فرض می شوند.

این عمل به Postgres 8.3 یا بهتر نیاز دارد.

مثال 1: اگر هر تراکنشی بیش از 10 دقیقه باز بوده است، یک نکته مهم بدهید:

check_postgres_txn_time --port=5432 --critical='10 دقیقه'

مثال 1: در صورتی که "انبار" کاربر تراکنش بیش از 30 ثانیه باز باشد، هشدار دهید

check_postgres_txn_time --port-5432 --warning=30s --includeuser=warehouse

برای خروجی MRTG، حداکثر زمانی را بر حسب ثانیه برمی‌گرداند که یک تراکنش در آن باز شده است
خط اول. خط چهارم نام پایگاه داده را می دهد.

txn_wraparound
("symlink: check_postgres_txn_wraparound") بررسی می کند که تا چه حد به تراکنش یک بسته نزدیک است
یا پایگاه داده های بیشتری در حال دریافت هستند. در -- هشدار و --بحرانی گزینه ها عدد را نشان می دهند
از تراکنش های انجام شده، و باید یک عدد صحیح مثبت باشد. اگر هر یک از گزینه ها داده نشد،
مقادیر پیش فرض 1.3 و 1.4 میلیارد استفاده می شود. دیگر نیازی به اجرای این دستور نیست
بیش از یک بار در هر خوشه پایگاه داده برای بحث دقیق تر از این تعداد
نشان می دهد و در مورد آن چه باید کرد، لطفا از صفحه دیدن کنید
<http://www.postgresql.org/docs/current/static/routine-vacuuming.html#جاروبرقی برای بسته بندی>

اخطار و مقادیر بحرانی می‌توانند دارای زیرخط در عدد برای خوانایی باشند، مانند Perl
انجام می دهد.

مثال 1: مقادیر پیش فرض پایگاه داده لوکال هاست را بررسی کنید

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
در حال دویدن -- هشدار و --بحرانی گزینه ها (فقط یکی مورد نیاز است) باید دارای فرمت باشند
XY or XYZ جایی که X شماره نسخه اصلی است، Y شماره نسخه جزئی است و Z is
تجدید نظر

مثال 1: اگر پایگاه داده در پورت 5678 نسخه 8.4.10 نیست، هشدار دهید:

check_postgres_version --port=5678 -w=8.4.10

مثال 2: در صورتی که پایگاه داده های میزبان دره، دانه یا آفتاب 8.3 نباشد، هشدار دهید:

check_postgres_version -H Valley, grain, sunshine --critical=8.3

برای خروجی MRTG، 1 یا 0 را گزارش می دهد که نشان دهنده موفقیت یا شکست در خط اول است. در
خط چهارم نشان دهنده نسخه فعلی است. نسخه باید از طریق "--mrtg" ارائه شود
گزینه.

wal_files
("symlink: check_postgres_wal_files") تعداد فایل های WAL را بررسی می کند pg_xlog
دایرکتوری که خارج از شما پیدا می شود فهرست_داده، گاهی اوقات به عنوان پیوند نمادین به دیگری
دیسک فیزیکی به دلایل عملکرد این عمل باید به عنوان یک ابرکاربر اجرا شود تا بتواند
دسترسی به محتویات pg_xlog فهرست راهنما. حداقل نسخه برای استفاده از این عمل است
Postgres 8.1. در -- هشدار و --بحرانی گزینه ها به سادگی تعداد فایل های موجود در
pg_xlog فهرست راهنما. اینکه چه عددی باید این را تنظیم کرد متفاوت است، اما یک دستورالعمل کلی باید در نظر گرفته شود
عددی کمی بالاتر از آنچه در حالت عادی وجود دارد، تا زودتر مشکلات را پیدا کنید.

به طور معمول، فایل‌های WAL بسته می‌شوند و دوباره مورد استفاده قرار می‌گیرند، اما یک تراکنش باز طولانی‌مدت یا
معیوب archive_command اسکریپت، ممکن است باعث شود Postgres فایل های زیادی ایجاد کند. در نهایت،
این باعث می شود دیسکی که روی آن قرار دارند خالی شود، در این مرحله Postgres این کار را انجام می دهد
خاموش

مثال 1: بررسی کنید که تعداد فایل های WAL 20 یا کمتر در میزبان "pluto" باشد.

check_postgres_wal_files --host=pluto --critical=20

برای خروجی MRTG، تعداد فایل های WAL را در خط 1 گزارش می دهد.

rebuild_symlinks
rebuild_symlinks_force
این عمل به هیچ آرگومان دیگری نیاز ندارد و به هیچ پایگاه داده ای متصل نمی شود، اما به سادگی
پیوندهای نمادین را در دایرکتوری فعلی برای هر عمل، در فرم ایجاد می کند
check_postgres_. اگر فایل از قبل وجود داشته باشد، بازنویسی نمی شود. اگر
عمل rebuild_symlinks_force است، سپس symlinks رونویسی خواهند شد. گزینه
--symlinks راه کوتاه تری برای گفتن --action=rebuild_symlinks است

BASIC فیلتر کردن


گزینه ها --عبارتند از و -- استثناء کردن را می توان برای محدود کردن مواردی که بررسی می شوند ترکیب کرد،
بسته به عمل هنگام استفاده از موارد زیر می توان نام پایگاه داده را فیلتر کرد
اقدامات: backend، database_size، locks، 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 می توان نام یک سیستم فایل را فیلتر کرد.

اگر فقط یک گزینه شامل داده شود، فقط آن ورودی هایی که مطابقت دارند بررسی می شوند.
با این حال، اگر هم exclude و هم شامل داده شود، ابتدا حذف انجام می شود و شامل می شود
بعد، برای بازگرداندن چیزهایی که ممکن است حذف شده باشند. هر دو --عبارتند از و -- استثناء کردن می توان
چندین بار داده شود، و/یا به عنوان لیست های جدا شده با کاما. یک جزر و مد پیشرو با آن مطابقت خواهد داشت
زیر کلمه به عنوان یک عبارت منظم

برای مطابقت با یک طرح، عبارت جستجو را با یک نقطه خاتمه دهید. می توان از تایلدهای پیشرو استفاده کرد
برای طرحواره ها نیز

هنگام استفاده از فیلتر کردن مراقب باشید: برای مثال، یک قانون گنجاندن در backendها ممکن است
مشکلی را گزارش نکنید، نه تنها به این دلیل که پایگاه داده منطبق هیچ باطنی نداشت، بلکه به این دلیل که شما
اسم دیتابیس رو اشتباه نوشتی!

مثال:

فقط مواردی با نام pg_class را بررسی می کند:

--include=pg_class

فقط موارد حاوی حروف 'pg_' را بررسی می کند:

--nlude = ~ pg_

فقط مواردی که با 'pg_' شروع می شوند را بررسی کنید:

--include=~^pg_

موردی با نام "تست" را حذف کنید:

--exclude=آزمایش

تمام موارد حاوی آزمون حروف را حذف کنید:

--exclude=~تست

تمام موارد موجود در طرح "pg_catalog" را حذف کنید:

--exclude='pg_catalog.'

همه موارد حاوی حروف "ace" را حذف کنید، اما به مورد "faceoff" اجازه دهید:

--exclude=~ace --include=faceoff

تمام مواردی که با حروف 'pg_' شروع می شوند که حاوی حروف 'slon' یا هستند را حذف کنید
که 'sql_settings' یا 'green' نامگذاری شده اند. به طور خاص موارد را با حروف بررسی کنید
"prod" در نام آنها، و همیشه مورد با نام "pg_relname" را بررسی کنید:

--exclude=~^pg_,~slon,sql_settings --exclude=سبز --include=~prod,pg_relname

USER نام فیلتر کردن


گزینه ها --شامل کاربر و -- استثناکننده می توان در برخی از اقدامات فقط برای بررسی استفاده کرد
اشیاء پایگاه داده متعلق به (یا غیر متعلق به) یک یا چند کاربر. یک --شامل کاربر انتخاب
همیشه برنده -- استثناکننده گزینه. شما می توانید هر گزینه را بیش از یک بار برای
چند کاربر، یا می توانید یک لیست جدا شده با کاما بدهید. اقداماتی که در حال حاضر استفاده می شود
این گزینه ها عبارتند از:

پایگاه_اندازه
last_analyze
last_autoanalyze
last_vacuum
last_autoovacuum
query_time
رابطه_اندازه
txn_time

مثال:

فقط موارد متعلق به کاربر به نام greg را بررسی کنید:

--includeuser=greg

فقط موارد متعلق به واتسون یا کریک را بررسی کنید:

--includeuser=واتسون،کریک

فقط موارد متعلق به کریک، فرانکلین، واتسون یا ویلکین را بررسی کنید:

--includeuser=واتسون --includeuser=franklin --includeuser=crick,wilkins

همه موارد را بررسی کنید به جز مواردی که متعلق به کاربر اسکات هستند:

--excludeuser=اسکات

تست MODE


برای کمک به تنظیم موارد، این برنامه را می توان در حالت "تست" با مشخص کردن
--تست گزینه. این چند آزمایش اساسی را انجام می دهد تا مطمئن شود که پایگاه داده ها می توانند باشند
تماس گرفته شده است، و اینکه پیش نیازهای خاصی برای هر اقدام برآورده شده است، مانند اینکه آیا کاربر وجود دارد یا خیر
اگر نسخه Postgres به اندازه کافی جدید باشد، و اگر stats_row_level فعال باشد، یک ابرکاربر.

با استفاده از خدمات onworks.net از check_postgres_sequencep به صورت آنلاین استفاده کنید


سرورها و ایستگاه های کاری رایگان

دانلود برنامه های ویندوز و لینوکس

  • 1
    فازر
    فازر
    Phaser یک باز سریع، رایگان و سرگرم کننده است
    منبع چارچوب بازی HTML5 که ارائه می دهد
    WebGL و Canvas Rendering در سراسر
    مرورگرهای وب دسکتاپ و موبایل بازی ها
    می تواند با ...
    دانلود فازر
  • 2
    موتور VASSAL
    موتور VASSAL
    VASSAL یک موتور بازی برای ایجاد است
    نسخه های الکترونیکی تخته سنتی
    و بازی های کارتی پشتیبانی می کند
    رندر و تعامل قطعه بازی،
    و ...
    دانلود VASSAL Engine
  • 3
    OpenPDF - Fork of iText
    OpenPDF - Fork of iText
    OpenPDF یک کتابخانه جاوا برای ایجاد است
    و ویرایش فایل های PDF با LGPL و
    مجوز منبع باز MPL. OpenPDF است
    LGPL/MPL جانشین منبع باز iText،
    و ...
    OpenPDF - Fork of iText را دانلود کنید
  • 4
    GIS SAGA
    GIS SAGA
    SAGA - سیستم برای خودکار
    تجزیه و تحلیل جغرافیایی - یک جغرافیا است
    نرم افزار سیستم اطلاعات (GIS) با
    قابلیت های بسیار زیاد برای داده های جغرافیایی
    پردازش و آنا...
    دانلود SAGA GIS
  • 5
    جعبه ابزار برای جاوا/JTOpen
    جعبه ابزار برای جاوا/JTOpen
    جعبه ابزار IBM برای جاوا / JTOpen یک است
    کتابخانه کلاس های جاوا که از
    کلاینت/سرور و برنامه نویسی اینترنتی
    مدل های سیستمی که دارای OS/400 است،
    i5/OS، o...
    جعبه ابزار را برای جاوا/JTOpen دانلود کنید
  • 6
    D3.js
    D3.js
    D3.js (یا D3 برای اسناد داده محور)
    یک کتابخانه جاوا اسکریپت است که به شما اجازه می دهد
    برای تولید داده های پویا و تعاملی
    تجسم در مرورگرهای وب با D3
    شما...
    D3.js را دانلود کنید
  • بیشتر "

دستورات لینوکس

Ad