No description
Find a file
Kumi 776c98fb47
feat: Enhance config flexibility and setup
Introduced command-line flags for improved configuration management, including the creation of a default config file, and specified listening address override capabilities. This update facilitates easier and more flexible setup and deployment processes for the PostgreSQL connection exporter. The `.gitignore` and documentation were updated to align with these changes, reflecting the new command-line options and the removal of the `config.dist.yaml` in favor of creating a default configuration through the tool itself.

- Command-line flags `--create-config`, `--config`, `--host`, and `--port` added to streamline customization.
- Configuration now supports naming database hosts for clearer metrics identification.
- Documentation revised to guide through the new configuration and setup process.
- Changelog introduced to track project evolution.

These enhancements aim to make the exporter more adaptable to various deployment environments and to simplify the initial setup for users.
2024-05-16 06:33:21 +02:00
src/postgres_connection_exporter feat: Enhance config flexibility and setup 2024-05-16 06:33:21 +02:00
.gitignore feat: Enhance config flexibility and setup 2024-05-16 06:33:21 +02:00
CHANGELOG.md feat: Enhance config flexibility and setup 2024-05-16 06:33:21 +02:00
LICENSE feat: Initial implementation of a PostgreSQL connection exporter 2024-05-15 22:41:26 +02:00
pyproject.toml feat: Enhance config flexibility and setup 2024-05-16 06:33:21 +02:00
README.md feat: Enhance config flexibility and setup 2024-05-16 06:33:21 +02:00

PostgreSQL Connection Exporter for Prometheus

This is a simple server that exports PostgreSQL connection metrics in a format that can be scraped by Prometheus.

It outputs the following metrics:

  • The number of connections per database
  • The number of connections per user
  • The number of connections per client address
  • The number of connections per state

Installation

You can install the exporter from PyPI. Within a virtual environment, run:

pip install postgres-connection-exporter

Configuration

The exporter is configured using a config.yaml. You can create a default configuration file in the current working directory with:

postgres-connection-exporter --create-config

Now, edit the config.yaml file to match your PostgreSQL connection settings. Here is an example configuration:

hosts:
  host: localhost
  port: 5432
  user: postgres
  password: postgres

The user must have the pg_monitor role to access the pg_stat_activity view.

Usage

After you have created your config.yaml, you can start the exporter with:

postgres-connection-exporter

By default, the exporter listens on localhost:8989. You can change the address in the config.yaml file, or using the --host and --port flags:

postgres-connection-exporter --host 0.0.0.0 --port 9898

You can also specify a different configuration file with the --config flag:

postgres-connection-exporter --config /path/to/config.yaml

License

This project is licensed under the MIT License. See the LICENSE file for details.