Usage
Configuration
All remote-connection details are configured via environment-variables. The
only “core” environment variable is PGFLUX_POSTGRES_DSN. This is used to
open a connection to the PostgreSQL cluster to fetch the statistics. Example:
PGFLUX_POSTGRES_DSN=postgresql://postgres:mys3cr37@localhost/postgres
Quickstart
With only the PGFLUX_POSTGRES_DSN value set you can run:
pgflux --all
This runs all available queries against the given database cluster and writes
the result to stdout.
Outputs
pgflux supports different outputs. By default it bundles with stdout,
http and https. To see the available outputs, run:
pgflux --list-outputs
This will also include any environment variables needed by that output.
The bundled outputs are:
stdoutWrite data to standard output
http/httpsWrite the data directly into InfluxDB using HTTP(s) POST requests. This requires additional environment variables (see the output of
--list-outputs).
Queries
pgflux comes with a set of bundled queries. To select queries, specify them
one by one on the command-line. For example:
pgflux db:disk_io cluster:query_ages
To list all available queries, run:
pgflux --list-queries
Some queries may appear multiple times in case the implementation changed between PostgreSQL versions.
The queries fall into two categories, identified by their prefix:
- db (Database-Local)
 These queries are relative to the current connection. As such, to fetch these statistics, a new connection to the database needs to be opened.
- cluster
 Tese queries are independent of the current connection and work for the whole database cluster.
Additionally, each query has a minimum version attached representing the PostgreSQL version where this query starts being supported.