Use counter values for docker stats in collectd and grafana queries

This commit is contained in:
Johannes Zellner
2022-10-11 19:06:26 +02:00
parent 9d35756db5
commit cbaf86b8c7
2 changed files with 11 additions and 5 deletions

View File

@@ -14,7 +14,7 @@ const apps = require('./apps.js'),
system = require('./system.js');
// for testing locally: curl 'http://${graphite-ip}:8000/graphite-web/render?format=json&from=-1min&target=absolute(collectd.localhost.du-docker.capacity-usage)'
// the datapoint is (value, timestamp) https://buildmedia.readthedocs.org/media/pdf/graphite/0.9.16/graphite.pdf
// the datapoint is (value, timestamp) https://graphite.readthedocs.io/en/latest/
async function getGraphiteUrl() {
const [error, result] = await safe(docker.inspect('graphite'));
if (error && error.reason === BoxError.NOT_FOUND) return { status: exports.SERVICE_STATUS_STOPPED };
@@ -38,10 +38,10 @@ async function getByApp(app, fromMinutes, noNullPoints) {
`summarize(collectd.localhost.docker-stats-${app.id}.gauge-cpu-perc, "${timeBucketSize}min", "avg")`,
`summarize(collectd.localhost.docker-stats-${app.id}.gauge-mem-used, "${timeBucketSize}min", "avg")`,
// `summarize(collectd.localhost.docker-stats-${app.id}.gauge-mem-max, "${timeBucketSize}min", "avg")`,
`summarize(collectd.localhost.docker-stats-${app.id}.gauge-blockio-read, "${timeBucketSize}min", "avg")`,
`summarize(collectd.localhost.docker-stats-${app.id}.gauge-blockio-write, "${timeBucketSize}min", "avg")`,
`summarize(collectd.localhost.docker-stats-${app.id}.gauge-network-read, "${timeBucketSize}min", "avg")`,
`summarize(collectd.localhost.docker-stats-${app.id}.gauge-network-write, "${timeBucketSize}min", "avg")`,
`summarize(collectd.localhost.docker-stats-${app.id}.counter-blockio-read, "${timeBucketSize}min", "sum")`,
`summarize(collectd.localhost.docker-stats-${app.id}.counter-blockio-write, "${timeBucketSize}min", "sum")`,
`summarize(collectd.localhost.docker-stats-${app.id}.counter-network-read, "${timeBucketSize}min", "sum")`,
`summarize(collectd.localhost.docker-stats-${app.id}.counter-network-write, "${timeBucketSize}min", "sum")`,
];
const results = [];