Kumi
776c98fb47
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.
62 lines
No EOL
1.6 KiB
Markdown
62 lines
No EOL
1.6 KiB
Markdown
# 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:
|
|
|
|
```bash
|
|
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:
|
|
|
|
```bash
|
|
postgres-connection-exporter --create-config
|
|
```
|
|
|
|
Now, edit the `config.yaml` file to match your PostgreSQL connection settings. Here is an example configuration:
|
|
|
|
```yaml
|
|
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:
|
|
|
|
```bash
|
|
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:
|
|
|
|
```bash
|
|
postgres-connection-exporter --host 0.0.0.0 --port 9898
|
|
```
|
|
|
|
You can also specify a different configuration file with the `--config` flag:
|
|
|
|
```bash
|
|
postgres-connection-exporter --config /path/to/config.yaml
|
|
```
|
|
|
|
## License
|
|
|
|
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details. |