Skip to content

Instantly share code, notes, and snippets.

@rainly
Created April 25, 2012 07:35
Show Gist options
  • Select an option

  • Save rainly/2487781 to your computer and use it in GitHub Desktop.

Select an option

Save rainly/2487781 to your computer and use it in GitHub Desktop.
User parameters for postgres node monitoring
# Postgresql 9.1 conf
# by http://www.postgresql.org/docs/9.1/interactive/monitoring-stats.html#MONITORING-STATS-FUNCS-TABLE
#
# Server specific parameters
# Example: psql.pg_stat_get_bgwriter_timed_checkpoints
#
UserParameter=psql.pg_stat_get_bgwriter_timed_checkpoints,psql -d neiron -t -c "SELECT pg_stat_get_bgwriter_timed_checkpoints() FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_bgwriter_requested_checkpoints,psql -d neiron -t -c "SELECT pg_stat_get_bgwriter_requested_checkpoints() FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_bgwriter_buf_written_checkpoints,psql -d neiron -t -c "SELECT pg_stat_get_bgwriter_buf_written_checkpoints() FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_bgwriter_buf_written_clean,psql -d neiron -t -c "SELECT pg_stat_get_bgwriter_buf_written_clean() FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_bgwriter_maxwritten_clean,psql -d neiron -t -c "SELECT pg_stat_get_bgwriter_maxwritten_clean() FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_bgwriter_stat_reset_time,psql -d neiron -t -c "SELECT pg_stat_get_bgwriter_stat_reset_time() FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_buf_written_backend,psql -d neiron -t -c "SELECT pg_stat_get_buf_written_backend() FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_buf_alloc,psql -d neiron -t -c "SELECT pg_stat_get_buf_alloc() FROM pg_database WHERE datname='${1-"neiron"}'"
# Database specific parameters database name could be specified. Default database declared by agent configuration
# Arguments:
# $1 - database name (optional) if not specyfied default database would be used
# Example:
# To monitor default database (neiron):
# 1. psql.pg_stat_get_db_numbackends[]
# To monitor specific database:
# 2. psql.pg_stat_get_db_numbackends[gorodechnyj]
#
UserParameter=psql.pg_stat_get_db_numbackends[*],psql -d neiron -t -c "SELECT pg_stat_get_db_numbackends(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_db_xact_commit[*],psql -d neiron -t -c "SELECT pg_stat_get_db_xact_commit(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_db_xact_rollback[*],psql -d neiron -t -c "SELECT pg_stat_get_db_xact_rollback(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_db_blocks_fetched[*],psql -d neiron -t -c "SELECT pg_stat_get_db_blocks_fetched(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_db_blocks_hit[*],psql -d neiron -t -c "SELECT pg_stat_get_db_blocks_hit(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_db_tuples_returned[*],psql -d neiron -t -c "SELECT pg_stat_get_db_tuples_returned(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_db_tuples_fetched[*],psql -d neiron -t -c "SELECT pg_stat_get_db_tuples_fetched(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_db_tuples_inserted[*],psql -d neiron -t -c "SELECT pg_stat_get_db_tuples_inserted(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_db_tuples_updated[*],psql -d neiron -t -c "SELECT pg_stat_get_db_tuples_updated(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_db_tuples_deleted[*],psql -d neiron -t -c "SELECT pg_stat_get_db_tuples_deleted(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_db_conflict_tablespace[*],psql -d neiron -t -c "SELECT pg_stat_get_db_conflict_tablespace(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_db_conflict_lock[*],psql -d neiron -t -c "SELECT pg_stat_get_db_conflict_lock(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_db_conflict_snapshot[*],psql -d neiron -t -c "SELECT pg_stat_get_db_conflict_snapshot(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_db_conflict_bufferpin[*],psql -d neiron -t -c "SELECT pg_stat_get_db_conflict_bufferpin(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_db_conflict_startup_deadlock[*],psql -d neiron -t -c "SELECT pg_stat_get_db_conflict_startup_deadlock(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
UserParameter=psql.pg_stat_get_db_stat_reset_time[*],psql -d neiron -t -c "SELECT pg_stat_get_db_stat_reset_time(oid) FROM pg_database WHERE datname='${1-"neiron"}'"
# Table/index specific params.
# Arguments:
# $1 - table/index name
# $2 - database name (optional) if not specyfied default database would be used
# Example:
# To monitor default database (neiron):
# 1. psql.pg_stat_get_numscans[shops_salepoint]
# To monitor specific database:
# 2. psql.pg_stat_get_numscans[shops_salepoint,gorodechnyj]
#
UserParameter=psql.pg_stat_get_numscans[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_numscans("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_tuples_returned[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_tuples_returned("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_tuples_fetched[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_tuples_fetched("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_tuples_inserted[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_tuples_inserted("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_tuples_updated[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_tuples_updated("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_tuples_deleted[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_tuples_deleted("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_tuples_hot_updated[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_tuples_hot_updated("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_live_tuples[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_live_tuples("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_dead_tuples[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_dead_tuples("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_blocks_fetched[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_blocks_fetched("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_blocks_hit[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_blocks_hit("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_last_vacuum_time[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_last_vacuum_time("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_last_autovacuum_time[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_last_autovacuum_time("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_last_analyze_time[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_last_analyze_time("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_last_autoanalyze_time[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_last_autoanalyze_time("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_vacuum_count[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_vacuum_count("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_autovacuum_count[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_autovacuum_count("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_analyze_count[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_analyze_count("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_autoanalyze_count[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_autoanalyze_count("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_function_calls[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_function_calls("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_function_time[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_function_time("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
UserParameter=psql.pg_stat_get_function_self_time[*],psql -d ${2-"neiron"} -t -c "SELECT pg_stat_get_function_self_time("`oid2name -i -d${2-"neiron"} | grep $1"$" | cut -d' ' -f6`") FROM pg_database WHERE datname='${2-"neiron"}'"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment