# netdata python.d.plugin configuration for postgresql
#
# This file is in YaML format. Generally the format is:
#
# name: value
#
# There are 2 sections:
#  - global variables
#  - one or more JOBS
#
# JOBS allow you to collect values from multiple sources.
# Each source will have its own set of charts.
#
# JOB parameters have to be indented (using spaces only, example below).

# ----------------------------------------------------------------------
# Global Variables
# These variables set the defaults for all JOBs, however each JOB
# may define its own, overriding the defaults.

# update_every sets the default data collection frequency.
# If unset, the python.d.plugin default is used.
# update_every: 1

# priority controls the order of charts at the netdata dashboard.
# Lower numbers move the charts towards the top of the page.
# If unset, the default for python.d.plugin is used.
# priority: 60000

# penalty indicates whether to apply penalty to update_every in case of failures.
# Penalty will increase every 5 failed updates in a row. Maximum penalty is 10 minutes.
# penalty: yes

# autodetection_retry sets the job re-check interval in seconds.
# The job is not deleted if check fails.
# Attempts to start the job are made once every autodetection_retry.
# This feature is disabled by default.
# autodetection_retry: 0

# ----------------------------------------------------------------------
# JOBS (data collection sources)
#
# The default JOBS share the same *name*. JOBS with the same name
# are mutually exclusive. Only one of them will be allowed running at
# any time. This allows autodetection to try several alternatives and
# pick the one that works.
#
# Any number of jobs is supported.
#
# All python.d.plugin JOBS (for all its modules) support a set of
# predefined parameters. These are:
#
# job_name:
#     name: myname            # the JOB's name as it will appear at the
#                             # dashboard (by default is the job_name)
#                             # JOBs sharing a name are mutually exclusive
#     update_every: 1         # the JOB's data collection frequency
#     priority: 60000         # the JOB's order on the dashboard
#     penalty: yes            # the JOB's penalty
#     autodetection_retry: 0  # the JOB's re-check interval in seconds
#
# A single connection is required in order to pull statistics.
#
# Connections can be configured with the following options:
#
#     dsn                 : 'connection URI'  # see https://www.postgresql.org/docs/current/libpq-connect.html#LIBPQ-CONNSTRING
#
#     OR
#
#     database            : 'example_db_name'
#     user                : 'example_user'
#     password            : 'example_pass'
#     host                : 'localhost'
#     port                : 5432
#     connect_timeout     : 2                  # in seconds, default is 2
#     statement_timeout   : 2000               # in ms, default is 2000
#     sslmode             : mode               # one of [disable, allow, prefer, require, verify-ca, verify-full]
#     sslrootcert         : path/to/rootcert   # the location of the root certificate file
#     sslcrl              : path/to/crl        # the location of the CRL file
#     sslcert             : path/to/cert       # the location of the client certificate file
#     sslkey              : path/to/key        # the location of the client key file
#
# SSL connection parameters description: https://www.postgresql.org/docs/current/libpq-ssl.html
# 
# Additionally, the following options allow selective disabling of charts
#
#     table_stats : false
#     index_stats : false
#     database_poll : 'dbase_name1 dbase_name2' # poll only specified databases (all other will be excluded from charts)
#
# Postgres permissions are configured at its pg_hba.conf file. You can
# "trust" local clients to allow netdata to connect, or you can create
# a postgres user for netdata and add its password below to allow
# netdata connect.
#
# Please note that when running Postgres from inside the container, 
# the client (Netdata) is not considered local, unless it runs from inside
# the same container. 
#
# Superuser access is needed for these charts:
#   Write-Ahead Logs
#   Archive Write-Ahead Logs
#
# Autovacuum charts is allowed since Postgres 9.4
# ----------------------------------------------------------------------

socket:
    name     : 'local'
    user     : 'postgres'
    database : 'postgres'

tcp:
    name     : 'local'
    database : 'postgres'
    user     : 'postgres'
    password : 'postgres'
    host     : 'localhost'
    port     : 5432

tcpipv4:
    name     : 'local'
    database : 'postgres'
    user     : 'postgres'
    password : 'postgres'
    host     : '127.0.0.1'
    port     : 5432

tcpipv6:
    name     : 'local'
    database : 'postgres'
    user     : 'postgres'
    password : 'postgres'
    host     : '::1'
    port     : 5432