Tuesday, 2 December 2014

[postgres] Xem các số liệu thống kê về Postgresql

Postgresql cung cấp rất nhiều thông tin về chính nó, các database, ... đại loại là tất cả các thông số mà bạn sẽ cần.

Postgres có sẵn nhiều view, chỉ việc mở ra và xem, danh sách các view trong bảng này:
http://www.postgresql.org/docs/9.2/static/monitoring-stats.html#MONITORING-STATS-VIEWS-TABLE

Để xem các stats này sử dụng postgres chạy lệnh psql:
# su postgres -s /bin/sh
$ psql
psql (9.2.4)
Type "help" for help.

postgres=#

Gõ một query để xem, ví dụ với view "pg_stat_database":

postgres=# select * from pg_stat_database;

output sẽ khá là khó nhìn. Giống thế này:

datid |  datname   | numbackends | xact_commit | xact_rollback | blks_read | blks_hit | tup_returned | tup_fetched | tup_inserted | tup_updated | tup_deleted | conflicts | temp_files | temp_bytes | deadlocks | blk_read_time | blk_write_time |          stats_reset
-------+------------+-------------+-------------+---------------+-----------+----------+--------------+-------------+--------------+-------------+-------------+-----------+------------+------------+-----------+---------------+----------------+-------------------------------
     1 | template1  |           0 |         291 |             3 |       308 |    16720 |       163722 |        6110 |            0 |           0 |           0 |         0 |          0 |          0 |         0 |             0 |              0 | 2014-12-02 07:25:14.16562+00
Bật chế độ "expanded output":
postgres=# \x on
Expanded display is on.
postgres=# select * from pg_stat_database;
Kết quả sẽ được định dang dễ nhìn hơn:
-[ RECORD 1 ]--+------------------------------
datid          | 1
datname        | template1
numbackends    | 0
xact_commit    | 285
xact_rollback  | 3
blks_read      | 308
blks_hit       | 16555
tup_returned   | 161736
tup_fetched    | 6077
tup_inserted   | 0
tup_updated    | 0
tup_deleted    | 0
conflicts      | 0
temp_files     | 0
temp_bytes     | 0
deadlocks      | 0
blk_read_time  | 0
blk_write_time | 0
stats_reset    | 2014-12-02 07:25:14.16562+00
-[ RECORD 2 ]--+------------------------------
datid          | 12035
datname        | template0


...
Phần giải thích cho từng field đã có ở đây http://www.postgresql.org/docs/9.2/static/monitoring-stats.html#PG-STAT-DATABASE-VIEW

Hết.