From 317cea174946e71e14109971e2811e543eb973bb Mon Sep 17 00:00:00 2001 From: Masaru Hoshi Date: Tue, 1 Jun 2021 21:33:17 -0300 Subject: [PATCH 1/3] adjust percona-toolkit commit --- exporter/collstats_collector.go | 5 ++++- go.mod | 2 +- go.sum | 4 ++-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/exporter/collstats_collector.go b/exporter/collstats_collector.go index b11aa2325..85cca019d 100644 --- a/exporter/collstats_collector.go +++ b/exporter/collstats_collector.go @@ -63,7 +63,10 @@ func (d *collstatsCollector) Collect(ch chan<- prometheus.Metric) { collection := parts[1] aggregation := bson.D{ - {Key: "$collStats", Value: bson.M{"latencyStats": bson.E{Key: "histograms", Value: true}}}, + {Key: "$collStats", Value: bson.M{ + "latencyStats": bson.E{Key: "histograms", Value: true}, + "storageStats": bson.E{Key: "scale", Value: 1}, + }}, } cursor, err := d.client.Database(database).Collection(collection).Aggregate(d.ctx, mongo.Pipeline{aggregation}) diff --git a/go.mod b/go.mod index b807dce6d..0f2975ea8 100644 --- a/go.mod +++ b/go.mod @@ -9,7 +9,7 @@ require ( github.com/AlekSi/pointer v1.1.0 github.com/alecthomas/kong v0.2.16 github.com/percona/exporter_shared v0.7.2 - github.com/percona/percona-toolkit v0.0.0-20210504134948-4dd72d96b10d + github.com/percona/percona-toolkit v0.0.0-20210422154412-6917c5dd8594 github.com/pkg/errors v0.9.1 github.com/prometheus/client_golang v1.10.0 github.com/prometheus/client_model v0.2.0 diff --git a/go.sum b/go.sum index bd0e5014a..4a390ce44 100644 --- a/go.sum +++ b/go.sum @@ -306,8 +306,8 @@ github.com/pelletier/go-toml v1.7.0/go.mod h1:vwGMzjaWMwyfHwgIBhI2YUM4fB6nL6lVAv github.com/percona/exporter_shared v0.7.2 h1:8eNBht83bgFagdiIm3b4HbsOFc5du6OUBCUVenTumdw= github.com/percona/exporter_shared v0.7.2/go.mod h1:AWk9lgTPzI7tC5PzpeBGvhhqjSJNxpPNFaF7qLIJqmo= github.com/percona/go-mysql v0.0.0-20190903141930-197f4ad8db8d/go.mod h1:/SGLf9OMxlnK6jq4mkFiImBcJXXk5jwD+lDrwDaGXcw= -github.com/percona/percona-toolkit v0.0.0-20210504134948-4dd72d96b10d h1:RCnD2c2+ur6z0Lee/VLEXuGT1TKvZs/i3nYrWZ4WrT0= -github.com/percona/percona-toolkit v0.0.0-20210504134948-4dd72d96b10d/go.mod h1:uGrhLglXccEIplDyzQSJfv3UWG5J7ACFjaZebntKStQ= +github.com/percona/percona-toolkit v0.0.0-20210422154412-6917c5dd8594 h1:qzmPRDROQ0l0sZI0jMMM79n24aFHu+Z0dPJF3iidwYg= +github.com/percona/percona-toolkit v0.0.0-20210422154412-6917c5dd8594/go.mod h1:uGrhLglXccEIplDyzQSJfv3UWG5J7ACFjaZebntKStQ= github.com/performancecopilot/speed v3.0.0+incompatible/go.mod h1:/CLtqpZ5gBg1M9iaPbIdPPGyKcA8hKdoy6hAWba7Yac= github.com/pierrec/lz4 v1.0.2-0.20190131084431-473cd7ce01a1/go.mod h1:3/3N9NVKO0jef7pBehbT1qWhCMrIgbYNnFAZCqQ5LRc= github.com/pierrec/lz4 v2.0.5+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY= From 3f9cc274c8fbfbabc728d2a127f0f441cc30a616 Mon Sep 17 00:00:00 2001 From: Masaru Hoshi Date: Tue, 1 Jun 2021 21:51:21 -0300 Subject: [PATCH 2/3] finally fixing percona-toolkit dep --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 0f2975ea8..d21ff1287 100644 --- a/go.mod +++ b/go.mod @@ -9,7 +9,7 @@ require ( github.com/AlekSi/pointer v1.1.0 github.com/alecthomas/kong v0.2.16 github.com/percona/exporter_shared v0.7.2 - github.com/percona/percona-toolkit v0.0.0-20210422154412-6917c5dd8594 + github.com/percona/percona-toolkit v0.0.0-20210503082911-610ab8c66a81 github.com/pkg/errors v0.9.1 github.com/prometheus/client_golang v1.10.0 github.com/prometheus/client_model v0.2.0 diff --git a/go.sum b/go.sum index 4a390ce44..bcb27cec0 100644 --- a/go.sum +++ b/go.sum @@ -306,8 +306,8 @@ github.com/pelletier/go-toml v1.7.0/go.mod h1:vwGMzjaWMwyfHwgIBhI2YUM4fB6nL6lVAv github.com/percona/exporter_shared v0.7.2 h1:8eNBht83bgFagdiIm3b4HbsOFc5du6OUBCUVenTumdw= github.com/percona/exporter_shared v0.7.2/go.mod h1:AWk9lgTPzI7tC5PzpeBGvhhqjSJNxpPNFaF7qLIJqmo= github.com/percona/go-mysql v0.0.0-20190903141930-197f4ad8db8d/go.mod h1:/SGLf9OMxlnK6jq4mkFiImBcJXXk5jwD+lDrwDaGXcw= -github.com/percona/percona-toolkit v0.0.0-20210422154412-6917c5dd8594 h1:qzmPRDROQ0l0sZI0jMMM79n24aFHu+Z0dPJF3iidwYg= -github.com/percona/percona-toolkit v0.0.0-20210422154412-6917c5dd8594/go.mod h1:uGrhLglXccEIplDyzQSJfv3UWG5J7ACFjaZebntKStQ= +github.com/percona/percona-toolkit v0.0.0-20210503082911-610ab8c66a81 h1:3BEeXQbahNJpMioM2PGDpf1RqGQt3UNe0xOPkP93Bco= +github.com/percona/percona-toolkit v0.0.0-20210503082911-610ab8c66a81/go.mod h1:uGrhLglXccEIplDyzQSJfv3UWG5J7ACFjaZebntKStQ= github.com/performancecopilot/speed v3.0.0+incompatible/go.mod h1:/CLtqpZ5gBg1M9iaPbIdPPGyKcA8hKdoy6hAWba7Yac= github.com/pierrec/lz4 v1.0.2-0.20190131084431-473cd7ce01a1/go.mod h1:3/3N9NVKO0jef7pBehbT1qWhCMrIgbYNnFAZCqQ5LRc= github.com/pierrec/lz4 v2.0.5+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY= From 0550af0b73a56eff70cfa3ec0a1aeb9743876a82 Mon Sep 17 00:00:00 2001 From: Masaru Hoshi Date: Tue, 1 Jun 2021 23:36:58 -0300 Subject: [PATCH 3/3] filter storageStats results --- exporter/collstats_collector.go | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/exporter/collstats_collector.go b/exporter/collstats_collector.go index 85cca019d..eaf084bc0 100644 --- a/exporter/collstats_collector.go +++ b/exporter/collstats_collector.go @@ -63,13 +63,23 @@ func (d *collstatsCollector) Collect(ch chan<- prometheus.Metric) { collection := parts[1] aggregation := bson.D{ - {Key: "$collStats", Value: bson.M{ - "latencyStats": bson.E{Key: "histograms", Value: true}, - "storageStats": bson.E{Key: "scale", Value: 1}, - }}, + { + Key: "$collStats", Value: bson.M{ + "latencyStats": bson.E{Key: "histograms", Value: true}, + "storageStats": bson.E{Key: "scale", Value: 1}, + }, + }, + } + project := bson.D{ + { + Key: "$project", Value: bson.M{ + "storageStats.wiredTiger": 0, + "storageStats.indexDetails": 0, + }, + }, } - cursor, err := d.client.Database(database).Collection(collection).Aggregate(d.ctx, mongo.Pipeline{aggregation}) + cursor, err := d.client.Database(database).Collection(collection).Aggregate(d.ctx, mongo.Pipeline{aggregation, project}) if err != nil { d.logger.Errorf("cannot get $collstats cursor for collection %s.%s: %s", database, collection, err) continue