Hamdar main database metrics

داشبورد Hamdar main database metrics

روش عمومی خواندن پنل‌ها در راهنمای پنل مانیتورینگ آمده است.

کاربرد داشبورد

این داشبورد دسترس‌پذیری و عملکرد PostgreSQL همدار را از نظر Session، Transaction، Cache، Lock، Deadlock، Temp file و تنظیمات ظرفیت نشان می‌دهد. هنگام کندی دیتابیس یا بروز خطای اتصال در برنامه، بررسی را از این داشبورد آغاز کنید.

پنل‌ها

Counterها، CPU، حافظه و File Descriptor

پنل‌های Version، Start Time، شمار عملیات داده، Max Connections، میانگین CPU و حافظه و File Descriptorهای باز نمای کلی سرویس PostgreSQL را نشان می‌دهند. تغییر Version یا Start Time باید با Change هماهنگ باشد؛ رشد پایدار منابع می‌تواند نشانه Query سنگین یا Leak باشد.

تنظیمات PostgreSQL

پنل‌های Shared Buffers، Effective Cache، Maintenance/Work Mem، Max WAL Size، هزینه Page و Workerها تنظیمات ظرفیت و اجرای Query را نمایش می‌دهند. مقدار نامتناسب با RAM یا تغییر بدون Change باید بازبینی شود.

Session، Transaction و وضعیت پایگاه‌داده

این ردیف Sessionهای Active و Idle، Commit و Rollback، عملیات داده، Lock، Cache Hit، Buffer، Conflict، Deadlock، Temp file و Checkpoint را کنار هم نمایش می‌دهد. نزدیک‌شدن Sessionها به Max، افزایش Rollback، هر Deadlock یا Temp file بزرگ نیازمند بررسی است.

هنگام کندی دیتابیس، ابتدا Session و Transaction و سپس Cache Hit Rate، Temp File و Checkpoint Stats را ببینید؛ هم‌زمان در Hamdar database logs عبارت‌های deadlock و duration را جست‌وجو کنید.

پیوست فنی

این بخش برای نگهداری و Provisioning داشبورد است و در بررسی‌های روزمره کاربردی ندارد.

ویژگی مقدار
پوشه Provisioning hamdar (dashboards/hamdar/hamdar-main-database-metrics.json)
UID 3wWeOiuOK88
Datasource VictoriaMetrics (monitoring-prometheus)
متریک پایه pg_* (PostgreSQL Exporter) با product="hamdar"

Queryهای کلیدی:

هدف Query نمونه
Session فعال pg_stat_activity_count{product="hamdar",state="active"} != 0
Transaction irate(pg_stat_database_xact_commit{product="hamdar"}[5m]) و irate(pg_stat_database_xact_rollback{product="hamdar"}[5m])
Cache Hit Rate pg_stat_database_blks_hit{product="hamdar"} / (pg_stat_database_blks_read{product="hamdar"} + pg_stat_database_blks_hit{product="hamdar"})
Deadlock irate(pg_stat_database_deadlocks{product="hamdar"}[5m])
Temp file irate(pg_stat_database_temp_bytes{product="hamdar"}[5m])
Lock pg_locks_count{product="hamdar",mode=~"$mode"} != 0