PostgreSQL Veritabanı Tablo Boyutu Takibi

postgresql-table-growth-ratios

Bir veritabanındaki tüm tabloların, günlük büyüme oranı belirlemiş olduğumuz limitin üstüne çıkanları bize eposta olarak gönderen bir scripttir. Basit bir monitörleme aracıdır.

Buradan ulaşabilirsiniz.

Kullanım:

[root@travego ~]$ ./dbstats_tracker.sh --db dbname --user dbuser -run

İlk defa çalıştırıyorsanız -run komutunu kullanabilirsiniz. Bu komut ile o anki tablo büyüklüklerini belirtilen yere kaydeder.

[root@travego ~]$ ./dbstats_tracker.sh --max-ratio 1 --db dbname --user dbuser --email user@mail.com -update

Ardından, -update komutuyla çalıştırdığmızda önceki tablo büyüklükleriyle şuankini karşılaştırıp belirttiğimiz oranı geçiyorsa aşağıdaki gibi bir mail gönderir.

Çıktısı:

DB Name: bizimdb | 09.03.13 Table Growth Ratios: desc order ------------------------------- celerytaskmeta %313.51 (2.39 MB) djcelerytaskstate %72.41 (1.17 MB) useruser %23.52 (0.49 MB) smssms %8.88 (3.44 MB) smssmscommand %4.16 (0.39 MB) ordercancellationreason %4.16 (0.19 MB) shelfshelvedproducts %3.40 (0.71 MB) Index Growth Ratios: desc order ------------------------------- celerytaskmetataskidkey %233.33 (1.32 MB) celerytaskmetahidden %134.48 (0.53 MB) djcelerytaskstatehidden %90.47 (0.31 MB) djcelerytaskstatetaskidkey %73.80 (0.57 MB) useruseruserid %14.28 (0.12 MB) useruseruserid %14.28 (0.12 MB) userusercancelledbyid %14.28 (0.12 MB) useruserpkey %7.14 (0.11 MB) mainproductproductcategoryproductidcategoryid_key %2.04 (0.39 MB)

Erkin Çakar

PostgreSQL DBA & Software developer