https://github.com/membrane/postgres-operator-monitor
https://github.com/membrane/postgres-operator-monitor
Last synced: 7 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/membrane/postgres-operator-monitor
- Owner: membrane
- License: apache-2.0
- Created: 2021-07-05T09:59:20.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2021-08-20T12:30:01.000Z (about 4 years ago)
- Last Synced: 2025-02-06T10:29:54.638Z (8 months ago)
- Language: Java
- Size: 53.7 KB
- Stars: 0
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Monitoring Operator for Postgres Operator
A tool to continuously collects metrics from [Postgres Operator](https://github.com/zalando/postgres-operator) and provide them to Prometheus with low latency
## Metrics
pg-op-mon exposes these metrics:
```
patroni_instances_wanted{namespace='demo',database='demo'} 3
patroni_running{namespace='demo',database='demo',no='0',master='1'} 1
patroni_running{namespace='demo',database='demo',no='1',master='0'} 1
patroni_running{namespace='demo',database='demo',no='2',master='0'} 1
patroni_timeline{namespace='demo',database='demo',no='0',master='1'} 80
patroni_timeline{namespace='demo',database='demo',no='1',master='0'} 80
patroni_timeline{namespace='demo',database='demo',no='2',master='0'} 80
patroni_location{namespace='demo',database='demo',no='0',master='1'} 81002324952
patroni_replayed_location{namespace='demo',database='demo',no='1',master='0'} 81002358616
patroni_replayed_location{namespace='demo',database='demo',no='2',master='0'} 81002358616
patroni_version{namespace='demo',database='demo',no='0',master='1',patroni_version='1.6.3'} 1
patroni_version{namespace='demo',database='demo',no='1',master='0',patroni_version='1.6.3'} 1
patroni_version{namespace='demo',database='demo',no='2',master='0',patroni_version='1.6.3'} 1
patroni_postgres_version{namespace='demo',database='demo',no='0',master='1'} 120007
patroni_postgres_version{namespace='demo',database='demo',no='1',master='0'} 120007
patroni_postgres_version{namespace='demo',database='demo',no='2',master='0'} 120007last_scan 1234567
```
## DeploymentCreate Namespace if not already present
```bash
kubectl apply -f kubernetes/namespace.yaml
```Create Roles
```bash
kubectl apply -f kubernetes/roles.yaml
```Create the actual deployment
```bash
kubectl apply -f kubernetes/template.yaml
```## Prometheus Config
```yaml
- job_name: 'pg-op-mon'
scrape_interval: 150s
metrics_path: '/pgopmetrics'
static_configs:
- targets: [
'pg-op-mon.monitoring.svc.cluster.local:80',
]
```