|
13 | 13 | expr: |||
|
14 | 14 | sum by (%(agg)s) (pg_stat_activity_count{%(postgresExporterSelector)s})
|
15 | 15 | >=
|
16 |
| - sum by (instance) (pg_settings_max_connections{%(postgresExporterSelector)s}) |
| 16 | + sum by (%(agg)s) (pg_settings_max_connections{%(postgresExporterSelector)s}) |
17 | 17 | -
|
18 | 18 | sum by (%(agg)s) (pg_settings_superuser_reserved_connections{%(postgresExporterSelector)s})
|
19 |
| - ||| % $._config { agg: std.join(',', $._config.groupLabels + $._config.instanceLabels) }, |
| 19 | + ||| % $._config { agg: std.join(', ', $._config.groupLabels + $._config.instanceLabels) }, |
20 | 20 | 'for': '1m',
|
21 | 21 | labels: {
|
22 | 22 | severity: 'warning',
|
|
36 | 36 | -
|
37 | 37 | sum by (%(agg)s) (pg_settings_superuser_reserved_connections{%(postgresExporterSelector)s})
|
38 | 38 | ) * 0.8
|
39 |
| - ||| % $._config { agg: std.join(',', $._config.groupLabels + $._config.instanceLabels) }, |
| 39 | + ||| % $._config { agg: std.join(', ', $._config.groupLabels + $._config.instanceLabels) }, |
40 | 40 | 'for': '10m',
|
41 | 41 | labels: {
|
42 | 42 | severity: 'warning',
|
|
63 | 63 | expr: |||
|
64 | 64 | avg by (%(agg)s) (
|
65 | 65 | rate (
|
66 |
| - pg_stat_activity_max_tx_duration{%(dbNameFilter)s,%(postgresExporterSelector)s}[2m] |
| 66 | + pg_stat_activity_max_tx_duration{%(dbNameFilter)s, %(postgresExporterSelector)s}[2m] |
67 | 67 | )
|
68 | 68 | ) > 2 * 60
|
69 |
| - ||| % $._config { agg: std.join(',', $._config.groupLabels + $._config.instanceLabels) }, |
| 69 | + ||| % $._config { agg: std.join(', ', $._config.groupLabels + $._config.instanceLabels) }, |
70 | 70 | 'for': '2m',
|
71 | 71 | labels: {
|
72 | 72 | severity: 'warning',
|
|
81 | 81 | expr: |||
|
82 | 82 | avg by (datname, %(agg)s) (
|
83 | 83 | irate(
|
84 |
| - pg_stat_database_xact_commit{%(dbNameFilter)s,%(postgresExporterSelector)s}[5m] |
| 84 | + pg_stat_database_xact_commit{%(dbNameFilter)s, %(postgresExporterSelector)s}[5m] |
85 | 85 | )
|
86 | 86 | +
|
87 | 87 | irate(
|
88 |
| - pg_stat_database_xact_rollback{%(dbNameFilter)s,%(postgresExporterSelector)s}[5m] |
| 88 | + pg_stat_database_xact_rollback{%(dbNameFilter)s, %(postgresExporterSelector)s}[5m] |
89 | 89 | )
|
90 | 90 | ) > 10000
|
91 |
| - ||| % $._config { agg: std.join(',', $._config.groupLabels + $._config.instanceLabels) }, |
| 91 | + ||| % $._config { agg: std.join(', ', $._config.groupLabels + $._config.instanceLabels) }, |
92 | 92 | 'for': '5m',
|
93 | 93 | labels: {
|
94 | 94 | severity: 'warning',
|
|
102 | 102 | },
|
103 | 103 | expr: |||
|
104 | 104 | avg by (datname, %(agg)s) (
|
105 |
| - rate(pg_stat_database_blks_hit{%(dbNameFilter)s,%(postgresExporterSelector)s}[5m]) |
| 105 | + rate(pg_stat_database_blks_hit{%(dbNameFilter)s, %(postgresExporterSelector)s}[5m]) |
106 | 106 | /
|
107 | 107 | (
|
108 | 108 | rate(
|
109 |
| - pg_stat_database_blks_hit{%(dbNameFilter)s,%(postgresExporterSelector)s}[5m] |
| 109 | + pg_stat_database_blks_hit{%(dbNameFilter)s, %(postgresExporterSelector)s}[5m] |
110 | 110 | )
|
111 | 111 | +
|
112 | 112 | rate(
|
113 |
| - pg_stat_database_blks_read{%(dbNameFilter)s,%(postgresExporterSelector)s}[5m] |
| 113 | + pg_stat_database_blks_read{%(dbNameFilter)s, %(postgresExporterSelector)s}[5m] |
114 | 114 | )
|
115 | 115 | )
|
116 | 116 | ) < 0.98
|
117 |
| - ||| % $._config { agg: std.join(',', $._config.groupLabels + $._config.instanceLabels) }, |
| 117 | + ||| % $._config { agg: std.join(', ', $._config.groupLabels + $._config.instanceLabels) }, |
118 | 118 | 'for': '5m',
|
119 | 119 | labels: {
|
120 | 120 | severity: 'warning',
|
|
159 | 159 | expr: |||
|
160 | 160 | max by(datname, %(agg)s) ((pg_locks_count{%(dbNameFilter)s}) /
|
161 | 161 | on(%(agg)s) group_left(server) (pg_settings_max_locks_per_transaction{} * pg_settings_max_connections{})) > 0.20
|
162 |
| - ||| % $._config { agg: std.join(',', $._config.groupLabels + $._config.instanceLabels) }, |
| 162 | + ||| % $._config { agg: std.join(', ', $._config.groupLabels + $._config.instanceLabels) }, |
163 | 163 | 'for': '5m',
|
164 | 164 | labels: {
|
165 | 165 | severity: 'warning',
|
|
173 | 173 | },
|
174 | 174 | expr: |||
|
175 | 175 | (pg_replication_lag{} > 3600) and on (%(agg)s) (pg_replication_is_replica{} == 1)
|
176 |
| - ||| % $._config { agg: std.join(',', $._config.groupLabels + $._config.instanceLabels) }, |
| 176 | + ||| % $._config { agg: std.join(', ', $._config.groupLabels + $._config.instanceLabels) }, |
177 | 177 | 'for': '5m',
|
178 | 178 | labels: {
|
179 | 179 | severity: 'warning',
|
|
230 | 230 | )
|
231 | 231 | < time() - 36000
|
232 | 232 | )
|
233 |
| - ||| % $._config { agg: std.join(',', $._config.groupLabels + $._config.instanceLabels) }, |
| 233 | + ||| % $._config { agg: std.join(', ', $._config.groupLabels + $._config.instanceLabels) }, |
234 | 234 | 'for': '30m',
|
235 | 235 | labels: {
|
236 | 236 | severity: 'critical',
|
|
0 commit comments