@leverege/build-tools 2.96.8 → 2.97.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.vscode/launch.json +21 -1
- package/package.json +10 -10
- package/src/Utils.mjs +6 -1
- package/src/artifacts/Utils.mjs +5 -2
- package/src/build-cnpg-image.mjs +0 -1
- package/src/chart-compass.yaml +1 -1
- package/src/chart-to-registry.mjs +10 -1
- package/src/helm-charts/api-server/values-local.yaml +3 -0
- package/src/helm-charts/cnpg-db-psql-stack/cluster.yaml.ovh +37 -32
- package/src/helm-charts/cnpg-db-psql-stack/pooler.yaml +2 -0
- package/src/helm-charts/cnpg-db-recovery/cluster.yaml.ovh +1 -1
- package/src/helm-charts/cnpg-db-tsdb-basic/cluster.yaml.ovh +50 -46
- package/src/helm-charts/cnpg-db-tsdb-basic/pooler.yaml +2 -0
- package/src/helm-charts/cnpg-db-tsdb-dense/cluster.yaml.ovh +55 -47
- package/src/helm-charts/cnpg-db-tsdb-dense/pooler.yaml +2 -0
- package/src/helm-charts/cnpg-operator/helmup.bootstrap +8 -0
- package/src/helm-charts/cnpg-operator/helmup.plugin +29 -4
- package/src/helm-charts/db-curator/values-local.yaml +9 -1
- package/src/helm-charts/elasticsearch8/elasticsearch-local.yaml +54 -51
- package/src/helm-charts/emailer/values-local.yaml +4 -1
- package/src/helm-charts/messenger/values-local.yaml +1 -5
- package/src/helm-charts/pgbouncer/values-local.yaml +8 -3
- package/src/helm-charts/prom-operator/helmup.bootstrap +8 -5
- package/src/helm-charts/prom-operator/helmup.plugin +1 -1
- package/src/helm-charts/prom-operator/prometheus-stack.yaml.ovh +51 -11
- package/src/helm-charts/prom-operator/rules/elasticsearch-rules.yaml +1 -1
- package/src/helm-charts/prom-operator/rules/kubestate-rules.yaml +1 -1
- package/src/helm-charts/push-notifier/values-local.yaml +8 -0
- package/src/helm-charts/redis/values-local.yaml +2 -1
- package/src/helm-charts/traefik/values-local.yaml +1 -1
- package/src/helm-charts/transponder-dh/values-local.yaml +1 -0
- package/src/helm-charts/transponder-tsdb/values-local.yaml +1 -0
- package/src/helm-charts/velero/helmup.plugin +2 -2
- package/src/helm-charts/velero/values-local.yaml +17 -15
- package/src/helmdn.sh +1 -1
- package/src/helmup.sh +3 -3
- package/src/init-my-chart/Chartwright.mjs +69 -0
- package/src/init-my-chart/init-my-chart-v1.mjs +124 -0
- package/src/init-my-chart/init-my-chart.mjs +80 -0
- package/src/init-my-chart/leaf-chart-templates/Chart.yaml.hbs +10 -0
- package/src/init-my-chart/leaf-chart-templates/templates/configmap.yaml +1 -0
- package/src/init-my-chart/leaf-chart-templates/templates/deployment.yaml +1 -0
- package/src/init-my-chart/leaf-chart-templates/templates/hpa.yaml +1 -0
- package/src/init-my-chart/leaf-chart-templates/templates/pdb.yaml +1 -0
- package/src/init-my-chart/leaf-chart-templates/templates/service.yaml +1 -0
- package/src/init-my-chart/leaf-chart-templates/templates/serviceaccount.yaml +1 -0
- package/src/init-my-chart/leaf-chart-templates/templates/servicemonitor.yaml +1 -0
- package/src/init-my-chart/leaf-chart-templates/values.schema.json +623 -0
- package/src/init-my-chart/leaf-chart-templates/values.yaml.hbs +135 -0
- package/src/init-my-chart/legacy-helm-template/Chart.yaml +5 -0
- package/src/init-my-chart/legacy-helm-template/templates/NOTES.txt +5 -0
- package/src/init-my-chart/legacy-helm-template/templates/_helpers.tpl +135 -0
- package/src/init-my-chart/legacy-helm-template/templates/configmap.yaml +10 -0
- package/src/init-my-chart/legacy-helm-template/templates/deployment.yaml +125 -0
- package/src/init-my-chart/legacy-helm-template/templates/hpa.yaml +26 -0
- package/src/init-my-chart/legacy-helm-template/templates/ingressroute.yaml +18 -0
- package/src/init-my-chart/legacy-helm-template/templates/pdb.yaml +22 -0
- package/src/init-my-chart/legacy-helm-template/templates/service.yaml +15 -0
- package/src/init-my-chart/legacy-helm-template/templates/serviceaccount.yaml +13 -0
- package/src/init-my-chart/legacy-helm-template/templates/servicemonitor.yaml +23 -0
- package/src/init-my-chart/legacy-helm-template/values.yaml +152 -0
- package/src/k8scale.sh +2 -0
- package/src/testOauthLogic.mjs +12 -0
- package/leverege-build-tools-2.21.13.tgz +0 -0
- package/lib/server/build-tools.js +0 -138
- package/lib/server/firebaseDeploy.js +0 -195
- package/lib/server/firebaseServe.js +0 -116
- package/lib/server/getfbcfg.js +0 -25
- package/lib/server/getjson.js +0 -70
- package/lib/server/overwhelm.js +0 -447
- package/lib/server/push-my-chart.js +0 -18
- package/lib/server/refresh-npm-token.js +0 -135
- package/lib/server/tag-release.js +0 -681
- package/lib/server/unleash.js +0 -50
- package/lib/web/build-tools.js +0 -138
- package/lib/web/firebaseDeploy.js +0 -195
- package/lib/web/firebaseServe.js +0 -116
- package/lib/web/getfbcfg.js +0 -25
- package/lib/web/getjson.js +0 -70
- package/lib/web/overwhelm.js +0 -447
- package/lib/web/push-my-chart.js +0 -18
- package/lib/web/refresh-npm-token.js +0 -135
- package/lib/web/tag-release.js +0 -681
- package/lib/web/unleash.js +0 -50
- package/src/helm-charts/prom-operator/rules/awesome-base/elasticsearch-rules.yaml +0 -219
- package/src/helm-charts/prom-operator/rules/awesome-base/google-cadvisor.yaml +0 -108
- package/src/helm-charts/prom-operator/rules/awesome-base/kubestate-exporter.yaml +0 -394
- package/src/helm-charts/prom-operator/rules/awesome-base/prometheus-rules.yaml +0 -318
- package/src/helm-charts/prom-operator/rules/awesome-base/redis-rules.yaml +0 -142
- package/src/helm-charts/prom-operator/rules/awesome-base/traefik-rules.yaml +0 -43
- package/src/init-my-chart.mjs +0 -18
package/lib/web/unleash.js
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
"use strict";
|
|
3
|
-
|
|
4
|
-
var _execa = _interopRequireDefault(require("execa"));
|
|
5
|
-
var _simpleGit = _interopRequireDefault(require("simple-git"));
|
|
6
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
7
|
-
const git = new _simpleGit.default();
|
|
8
|
-
const getCurrentBranchName = async () => {
|
|
9
|
-
const branchInfo = await git.branch();
|
|
10
|
-
|
|
11
|
-
// first check to see if there are no branches - new repo?
|
|
12
|
-
if (Object.keys(branchInfo.branches).length === 0) {
|
|
13
|
-
return '';
|
|
14
|
-
}
|
|
15
|
-
return Object.entries(branchInfo.branches).find(([name, info]) => info.current)[0];
|
|
16
|
-
};
|
|
17
|
-
const isProtected = async () => {
|
|
18
|
-
const theBranch = await getCurrentBranchName();
|
|
19
|
-
const protectedBranches = ['main', 'master', 'development'];
|
|
20
|
-
const additionalProtectedBranches = [...process.argv.slice(2)];
|
|
21
|
-
|
|
22
|
-
// Check if the current branch starts with any of the additional
|
|
23
|
-
// protected branch name
|
|
24
|
-
let matchesAdditionalBranch = false;
|
|
25
|
-
for (let i = 0; i < additionalProtectedBranches.length; i++) {
|
|
26
|
-
matchesAdditionalBranch = matchesAdditionalBranch || theBranch.startsWith(additionalProtectedBranches[i]);
|
|
27
|
-
}
|
|
28
|
-
return protectedBranches.includes(theBranch) || matchesAdditionalBranch;
|
|
29
|
-
};
|
|
30
|
-
const npmRunner = async script => {
|
|
31
|
-
try {
|
|
32
|
-
const results = await (0, _execa.default)('npm', ['run', script], {
|
|
33
|
-
stdio: 'inherit'
|
|
34
|
-
});
|
|
35
|
-
return results;
|
|
36
|
-
} catch (err) {
|
|
37
|
-
process.exit(1);
|
|
38
|
-
}
|
|
39
|
-
return undefined;
|
|
40
|
-
};
|
|
41
|
-
(async () => {
|
|
42
|
-
if (await isProtected()) {
|
|
43
|
-
const script = ['test', 'lint'];
|
|
44
|
-
for (let i = 0; i < script.length; i++) {
|
|
45
|
-
await npmRunner(script[i]); // eslint-disable-line no-await-in-loop
|
|
46
|
-
}
|
|
47
|
-
} else {
|
|
48
|
-
process.exit(0);
|
|
49
|
-
}
|
|
50
|
-
})();
|
|
@@ -1,219 +0,0 @@
|
|
|
1
|
-
# https://samber.github.io/awesome-prometheus-alerts/rules#elasticsearch
|
|
2
|
-
apiVersion: monitoring.coreos.com/v1
|
|
3
|
-
kind: PrometheusRule
|
|
4
|
-
metadata:
|
|
5
|
-
name: prometheus-community-elasticsearch-exporter
|
|
6
|
-
namespace: prometheus
|
|
7
|
-
spec:
|
|
8
|
-
groups:
|
|
9
|
-
- name: Elasticsearch (awesome) # PrometheusCommunityElasticsearchExporter-rules
|
|
10
|
-
rules:
|
|
11
|
-
- alert: ElasticsearchHeapUsageTooHigh
|
|
12
|
-
expr: (elasticsearch_jvm_memory_used_bytes{area="heap"} / elasticsearch_jvm_memory_max_bytes{area="heap"}) * 100 > 90
|
|
13
|
-
for: 2m
|
|
14
|
-
labels:
|
|
15
|
-
severity: critical
|
|
16
|
-
annotations:
|
|
17
|
-
summary: Elasticsearch Heap Usage Too High (instance {{ $labels.instance }})
|
|
18
|
-
description: |-
|
|
19
|
-
The heap usage is over 90%
|
|
20
|
-
VALUE = {{ $value }}
|
|
21
|
-
LABELS = {{ $labels }}
|
|
22
|
-
- alert: ElasticsearchHeapUsageWarning
|
|
23
|
-
expr: (elasticsearch_jvm_memory_used_bytes{area="heap"} / elasticsearch_jvm_memory_max_bytes{area="heap"}) * 100 > 80
|
|
24
|
-
for: 2m
|
|
25
|
-
labels:
|
|
26
|
-
severity: warning
|
|
27
|
-
annotations:
|
|
28
|
-
summary: Elasticsearch Heap Usage warning (instance {{ $labels.instance }})
|
|
29
|
-
description: |-
|
|
30
|
-
The heap usage is over 80%
|
|
31
|
-
VALUE = {{ $value }}
|
|
32
|
-
LABELS = {{ $labels }}
|
|
33
|
-
- alert: ElasticsearchDiskOutOfSpace
|
|
34
|
-
expr: elasticsearch_filesystem_data_available_bytes / elasticsearch_filesystem_data_size_bytes * 100 < 10
|
|
35
|
-
for: 0m
|
|
36
|
-
labels:
|
|
37
|
-
severity: critical
|
|
38
|
-
annotations:
|
|
39
|
-
summary: Elasticsearch disk out of space (instance {{ $labels.instance }})
|
|
40
|
-
description: |-
|
|
41
|
-
The disk usage is over 90%
|
|
42
|
-
VALUE = {{ $value }}
|
|
43
|
-
LABELS = {{ $labels }}
|
|
44
|
-
- alert: ElasticsearchDiskSpaceLow
|
|
45
|
-
expr: elasticsearch_filesystem_data_available_bytes / elasticsearch_filesystem_data_size_bytes * 100 < 20
|
|
46
|
-
for: 2m
|
|
47
|
-
labels:
|
|
48
|
-
severity: warning
|
|
49
|
-
annotations:
|
|
50
|
-
summary: Elasticsearch disk space low (instance {{ $labels.instance }})
|
|
51
|
-
description: |-
|
|
52
|
-
The disk usage is over 80%
|
|
53
|
-
VALUE = {{ $value }}
|
|
54
|
-
LABELS = {{ $labels }}
|
|
55
|
-
- alert: ElasticsearchClusterRed
|
|
56
|
-
expr: elasticsearch_cluster_health_status{color="red"} == 1
|
|
57
|
-
for: 0m
|
|
58
|
-
labels:
|
|
59
|
-
severity: critical
|
|
60
|
-
annotations:
|
|
61
|
-
summary: Elasticsearch Cluster Red (instance {{ $labels.instance }})
|
|
62
|
-
description: |-
|
|
63
|
-
Elastic Cluster Red status
|
|
64
|
-
VALUE = {{ $value }}
|
|
65
|
-
LABELS = {{ $labels }}
|
|
66
|
-
- alert: ElasticsearchClusterYellow
|
|
67
|
-
expr: elasticsearch_cluster_health_status{color="yellow"} == 1
|
|
68
|
-
for: 0m
|
|
69
|
-
labels:
|
|
70
|
-
severity: warning
|
|
71
|
-
annotations:
|
|
72
|
-
summary: Elasticsearch Cluster Yellow (instance {{ $labels.instance }})
|
|
73
|
-
description: |-
|
|
74
|
-
Elastic Cluster Yellow status
|
|
75
|
-
VALUE = {{ $value }}
|
|
76
|
-
LABELS = {{ $labels }}
|
|
77
|
-
- alert: ElasticsearchHealthyNodes
|
|
78
|
-
expr: elasticsearch_cluster_health_number_of_nodes < 3
|
|
79
|
-
for: 0m
|
|
80
|
-
labels:
|
|
81
|
-
severity: critical
|
|
82
|
-
annotations:
|
|
83
|
-
summary: Elasticsearch Healthy Nodes (instance {{ $labels.instance }})
|
|
84
|
-
description: |-
|
|
85
|
-
Missing node in Elasticsearch cluster
|
|
86
|
-
VALUE = {{ $value }}
|
|
87
|
-
LABELS = {{ $labels }}
|
|
88
|
-
- alert: ElasticsearchHealthyDataNodes
|
|
89
|
-
expr: elasticsearch_cluster_health_number_of_data_nodes < 3
|
|
90
|
-
for: 0m
|
|
91
|
-
labels:
|
|
92
|
-
severity: critical
|
|
93
|
-
annotations:
|
|
94
|
-
summary: Elasticsearch Healthy Data Nodes (instance {{ $labels.instance }})
|
|
95
|
-
description: |-
|
|
96
|
-
Missing data node in Elasticsearch cluster
|
|
97
|
-
VALUE = {{ $value }}
|
|
98
|
-
LABELS = {{ $labels }}
|
|
99
|
-
- alert: ElasticsearchRelocatingShards
|
|
100
|
-
expr: elasticsearch_cluster_health_relocating_shards > 0
|
|
101
|
-
for: 0m
|
|
102
|
-
labels:
|
|
103
|
-
severity: info
|
|
104
|
-
annotations:
|
|
105
|
-
summary: Elasticsearch relocating shards (instance {{ $labels.instance }})
|
|
106
|
-
description: |-
|
|
107
|
-
Elasticsearch is relocating shards
|
|
108
|
-
VALUE = {{ $value }}
|
|
109
|
-
LABELS = {{ $labels }}
|
|
110
|
-
- alert: ElasticsearchRelocatingShardsTooLong
|
|
111
|
-
expr: elasticsearch_cluster_health_relocating_shards > 0
|
|
112
|
-
for: 15m
|
|
113
|
-
labels:
|
|
114
|
-
severity: warning
|
|
115
|
-
annotations:
|
|
116
|
-
summary: Elasticsearch relocating shards too long (instance {{ $labels.instance }})
|
|
117
|
-
description: |-
|
|
118
|
-
Elasticsearch has been relocating shards for 15min
|
|
119
|
-
VALUE = {{ $value }}
|
|
120
|
-
LABELS = {{ $labels }}
|
|
121
|
-
- alert: ElasticsearchInitializingShards
|
|
122
|
-
expr: elasticsearch_cluster_health_initializing_shards > 0
|
|
123
|
-
for: 0m
|
|
124
|
-
labels:
|
|
125
|
-
severity: info
|
|
126
|
-
annotations:
|
|
127
|
-
summary: Elasticsearch initializing shards (instance {{ $labels.instance }})
|
|
128
|
-
description: |-
|
|
129
|
-
Elasticsearch is initializing shards
|
|
130
|
-
VALUE = {{ $value }}
|
|
131
|
-
LABELS = {{ $labels }}
|
|
132
|
-
- alert: ElasticsearchInitializingShardsTooLong
|
|
133
|
-
expr: elasticsearch_cluster_health_initializing_shards > 0
|
|
134
|
-
for: 15m
|
|
135
|
-
labels:
|
|
136
|
-
severity: warning
|
|
137
|
-
annotations:
|
|
138
|
-
summary: Elasticsearch initializing shards too long (instance {{ $labels.instance }})
|
|
139
|
-
description: |-
|
|
140
|
-
Elasticsearch has been initializing shards for 15 min
|
|
141
|
-
VALUE = {{ $value }}
|
|
142
|
-
LABELS = {{ $labels }}
|
|
143
|
-
- alert: ElasticsearchUnassignedShards
|
|
144
|
-
expr: elasticsearch_cluster_health_unassigned_shards > 0
|
|
145
|
-
for: 0m
|
|
146
|
-
labels:
|
|
147
|
-
severity: critical
|
|
148
|
-
annotations:
|
|
149
|
-
summary: Elasticsearch unassigned shards (instance {{ $labels.instance }})
|
|
150
|
-
description: |-
|
|
151
|
-
Elasticsearch has unassigned shards
|
|
152
|
-
VALUE = {{ $value }}
|
|
153
|
-
LABELS = {{ $labels }}
|
|
154
|
-
- alert: ElasticsearchPendingTasks
|
|
155
|
-
expr: elasticsearch_cluster_health_number_of_pending_tasks > 0
|
|
156
|
-
for: 15m
|
|
157
|
-
labels:
|
|
158
|
-
severity: warning
|
|
159
|
-
annotations:
|
|
160
|
-
summary: Elasticsearch pending tasks (instance {{ $labels.instance }})
|
|
161
|
-
description: |-
|
|
162
|
-
Elasticsearch has pending tasks. Cluster works slowly.
|
|
163
|
-
VALUE = {{ $value }}
|
|
164
|
-
LABELS = {{ $labels }}
|
|
165
|
-
- alert: ElasticsearchNoNewDocuments
|
|
166
|
-
expr: increase(elasticsearch_indices_indexing_index_total{es_data_node="true"}[10m]) < 1
|
|
167
|
-
for: 0m
|
|
168
|
-
labels:
|
|
169
|
-
severity: warning
|
|
170
|
-
annotations:
|
|
171
|
-
summary: Elasticsearch no new documents (instance {{ $labels.instance }})
|
|
172
|
-
description: |-
|
|
173
|
-
No new documents for 10 min!
|
|
174
|
-
VALUE = {{ $value }}
|
|
175
|
-
LABELS = {{ $labels }}
|
|
176
|
-
- alert: ElasticsearchHighIndexingLatency
|
|
177
|
-
expr: elasticsearch_indices_indexing_index_time_seconds_total / elasticsearch_indices_indexing_index_total > 0.0005
|
|
178
|
-
for: 10m
|
|
179
|
-
labels:
|
|
180
|
-
severity: warning
|
|
181
|
-
annotations:
|
|
182
|
-
summary: Elasticsearch High Indexing Latency (instance {{ $labels.instance }})
|
|
183
|
-
description: |-
|
|
184
|
-
The indexing latency on Elasticsearch cluster is higher than the threshold.
|
|
185
|
-
VALUE = {{ $value }}
|
|
186
|
-
LABELS = {{ $labels }}
|
|
187
|
-
- alert: ElasticsearchHighIndexingRate
|
|
188
|
-
expr: sum(rate(elasticsearch_indices_indexing_index_total[1m]))> 10000
|
|
189
|
-
for: 5m
|
|
190
|
-
labels:
|
|
191
|
-
severity: warning
|
|
192
|
-
annotations:
|
|
193
|
-
summary: Elasticsearch High Indexing Rate (instance {{ $labels.instance }})
|
|
194
|
-
description: |-
|
|
195
|
-
The indexing rate on Elasticsearch cluster is higher than the threshold.
|
|
196
|
-
VALUE = {{ $value }}
|
|
197
|
-
LABELS = {{ $labels }}
|
|
198
|
-
- alert: ElasticsearchHighQueryRate
|
|
199
|
-
expr: sum(rate(elasticsearch_indices_search_query_total[1m])) > 100
|
|
200
|
-
for: 5m
|
|
201
|
-
labels:
|
|
202
|
-
severity: warning
|
|
203
|
-
annotations:
|
|
204
|
-
summary: Elasticsearch High Query Rate (instance {{ $labels.instance }})
|
|
205
|
-
description: |-
|
|
206
|
-
The query rate on Elasticsearch cluster is higher than the threshold.
|
|
207
|
-
VALUE = {{ $value }}
|
|
208
|
-
LABELS = {{ $labels }}
|
|
209
|
-
- alert: ElasticsearchHighQueryLatency
|
|
210
|
-
expr: elasticsearch_indices_search_fetch_time_seconds / elasticsearch_indices_search_fetch_total > 1
|
|
211
|
-
for: 5m
|
|
212
|
-
labels:
|
|
213
|
-
severity: warning
|
|
214
|
-
annotations:
|
|
215
|
-
summary: Elasticsearch High Query Latency (instance {{ $labels.instance }})
|
|
216
|
-
description: |-
|
|
217
|
-
The query latency on Elasticsearch cluster is higher than the threshold.
|
|
218
|
-
VALUE = {{ $value }}
|
|
219
|
-
LABELS = {{ $labels }}
|
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
# https://samber.github.io/awesome-prometheus-alerts/rules#docker-containers
|
|
2
|
-
apiVersion: monitoring.coreos.com/v1
|
|
3
|
-
kind: PrometheusRule
|
|
4
|
-
metadata:
|
|
5
|
-
name: google-cadvisor
|
|
6
|
-
spec:
|
|
7
|
-
groups:
|
|
8
|
-
- name: Google Cadvisor (awesome) # GoogleCadvisor-rules
|
|
9
|
-
rules:
|
|
10
|
-
- alert: ContainerKilled
|
|
11
|
-
expr: time() - container_last_seen > 60
|
|
12
|
-
for: 0m
|
|
13
|
-
labels:
|
|
14
|
-
severity: warning
|
|
15
|
-
annotations:
|
|
16
|
-
summary: Container killed (instance {{ $labels.instance }})
|
|
17
|
-
description: |-
|
|
18
|
-
A container has disappeared
|
|
19
|
-
VALUE = {{ $value }}
|
|
20
|
-
LABELS = {{ $labels }}
|
|
21
|
-
- alert: ContainerAbsent
|
|
22
|
-
expr: absent(container_last_seen)
|
|
23
|
-
for: 5m
|
|
24
|
-
labels:
|
|
25
|
-
severity: warning
|
|
26
|
-
annotations:
|
|
27
|
-
summary: Container absent (instance {{ $labels.instance }})
|
|
28
|
-
description: |-
|
|
29
|
-
A container is absent for 5 min
|
|
30
|
-
VALUE = {{ $value }}
|
|
31
|
-
LABELS = {{ $labels }}
|
|
32
|
-
- alert: ContainerHighCpuUtilization
|
|
33
|
-
expr: (sum(rate(container_cpu_usage_seconds_total{container!=""}[5m])) by (pod, container) / sum(container_spec_cpu_quota{container!=""}/container_spec_cpu_period{container!=""}) by (pod, container) * 100) > 80
|
|
34
|
-
for: 2m
|
|
35
|
-
labels:
|
|
36
|
-
severity: warning
|
|
37
|
-
annotations:
|
|
38
|
-
summary: Container High CPU utilization (instance {{ $labels.instance }})
|
|
39
|
-
description: |-
|
|
40
|
-
Container CPU utilization is above 80%
|
|
41
|
-
VALUE = {{ $value }}
|
|
42
|
-
LABELS = {{ $labels }}
|
|
43
|
-
- alert: ContainerHighMemoryUsage
|
|
44
|
-
expr: (sum(container_memory_working_set_bytes{name!=""}) BY (instance, name) / sum(container_spec_memory_limit_bytes > 0) BY (instance, name) * 100) > 80
|
|
45
|
-
for: 2m
|
|
46
|
-
labels:
|
|
47
|
-
severity: warning
|
|
48
|
-
annotations:
|
|
49
|
-
summary: Container High Memory usage (instance {{ $labels.instance }})
|
|
50
|
-
description: |-
|
|
51
|
-
Container Memory usage is above 80%
|
|
52
|
-
VALUE = {{ $value }}
|
|
53
|
-
LABELS = {{ $labels }}
|
|
54
|
-
- alert: ContainerVolumeUsage
|
|
55
|
-
expr: (1 - (sum(container_fs_inodes_free{name!=""}) BY (instance) / sum(container_fs_inodes_total) BY (instance))) * 100 > 80
|
|
56
|
-
for: 2m
|
|
57
|
-
labels:
|
|
58
|
-
severity: warning
|
|
59
|
-
annotations:
|
|
60
|
-
summary: Container Volume usage (instance {{ $labels.instance }})
|
|
61
|
-
description: |-
|
|
62
|
-
Container Volume usage is above 80%
|
|
63
|
-
VALUE = {{ $value }}
|
|
64
|
-
LABELS = {{ $labels }}
|
|
65
|
-
- alert: ContainerHighThrottleRate
|
|
66
|
-
expr: sum(increase(container_cpu_cfs_throttled_periods_total{container!=""}[5m])) by (container, pod, namespace) / sum(increase(container_cpu_cfs_periods_total[5m])) by (container, pod, namespace) > ( 25 / 100 )
|
|
67
|
-
for: 5m
|
|
68
|
-
labels:
|
|
69
|
-
severity: warning
|
|
70
|
-
annotations:
|
|
71
|
-
summary: Container high throttle rate (instance {{ $labels.instance }})
|
|
72
|
-
description: |-
|
|
73
|
-
Container is being throttled
|
|
74
|
-
VALUE = {{ $value }}
|
|
75
|
-
LABELS = {{ $labels }}
|
|
76
|
-
- alert: ContainerHighLowChangeCpuUsage
|
|
77
|
-
expr: (abs((sum by (instance, name) (rate(container_cpu_usage_seconds_total{name!=""}[1m])) * 100) - (sum by (instance, name) (rate(container_cpu_usage_seconds_total{name!=""}[1m] offset 1m)) * 100)) or abs((sum by (instance, name) (rate(container_cpu_usage_seconds_total{name!=""}[1m])) * 100) - (sum by (instance, name) (rate(container_cpu_usage_seconds_total{name!=""}[5m] offset 1m)) * 100))) > 25
|
|
78
|
-
for: 0m
|
|
79
|
-
labels:
|
|
80
|
-
severity: info
|
|
81
|
-
annotations:
|
|
82
|
-
summary: Container high low change CPU usage (instance {{ $labels.instance }})
|
|
83
|
-
description: |-
|
|
84
|
-
This alert rule monitors the absolute change in CPU usage within a time window and triggers an alert when the change exceeds 25%.
|
|
85
|
-
VALUE = {{ $value }}
|
|
86
|
-
LABELS = {{ $labels }}
|
|
87
|
-
- alert: ContainerLowCpuUtilization
|
|
88
|
-
expr: (sum(rate(container_cpu_usage_seconds_total{container!=""}[5m])) by (pod, container) / sum(container_spec_cpu_quota{container!=""}/container_spec_cpu_period{container!=""}) by (pod, container) * 100) < 20
|
|
89
|
-
for: 7d
|
|
90
|
-
labels:
|
|
91
|
-
severity: info
|
|
92
|
-
annotations:
|
|
93
|
-
summary: Container Low CPU utilization (instance {{ $labels.instance }})
|
|
94
|
-
description: |-
|
|
95
|
-
Container CPU utilization is under 20% for 1 week. Consider reducing the allocated CPU.
|
|
96
|
-
VALUE = {{ $value }}
|
|
97
|
-
LABELS = {{ $labels }}
|
|
98
|
-
- alert: ContainerLowMemoryUsage
|
|
99
|
-
expr: (sum(container_memory_working_set_bytes{name!=""}) BY (instance, name) / sum(container_spec_memory_limit_bytes > 0) BY (instance, name) * 100) < 20
|
|
100
|
-
for: 7d
|
|
101
|
-
labels:
|
|
102
|
-
severity: info
|
|
103
|
-
annotations:
|
|
104
|
-
summary: Container Low Memory usage (instance {{ $labels.instance }})
|
|
105
|
-
description: |-
|
|
106
|
-
Container Memory usage is under 20% for 1 week. Consider reducing the allocated memory.
|
|
107
|
-
VALUE = {{ $value }}
|
|
108
|
-
LABELS = {{ $labels }}
|