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: ``stdout`` Write data to standard output ``http`` / ``https`` Write 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.