app-metrics/burrow_exporter: treeclean

Closes: https://bugs.gentoo.org/679086 (pkgremoved)
Closes: https://bugs.gentoo.org/844613 (pkgremoved)
Closes: https://bugs.gentoo.org/948655 (pkgremoved)
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
This commit is contained in:
Arthur Zamarin
2025-03-05 12:42:32 +02:00
parent 52341ebac6
commit 914e08a591
9 changed files with 0 additions and 441 deletions

View File

@@ -1,10 +0,0 @@
DIST burrow_exporter-0.0.6.tar.gz 9966 BLAKE2B 26db3f53fd276073d709a416dd11f29008ee467c8e6deed2e90500044089e4fac34e035fec06323abaf50bec2da6291599799c91ffe140459a701b83ccdbb3c9 SHA512 faccb828a3044474bbd3eff1fc0a6ec163b5bc332a61ee0327832b65ae83ac202ce1f70f6519e2d3014275e995d8f6682245a52cb768491f0159df2f7198892b
DIST github.com-Sirupsen-logrus-ba1b36c82c5e05c4f912a88eab0dcd91a171688f.tar.gz 26698 BLAKE2B 10f98819cf6e8e64e22ead564d8460414818cdfda5159a3e751a6457e531d8b8c34eee8fad5c35db187d52400a93ec7240bbea8821ac39360708b61940c33fcf SHA512 7152a9e355e21de7980a28e915b712103ae1eaaa4142a5c37db00d8d30415cb2ecacf53bbe178cce49a1b9c4ad57336e8438a40f0bb92dd20a2bcabb1980013b
DIST github.com-beorn7-perks-4c0e84591b9aa9e6dcfdf3e020114cd81f89d5f9.tar.gz 10593 BLAKE2B 057738aefe26d3d42ba1bc0906675403512a7bab1161bc1015f6d833296778f2236cb2b99bbebd5c7db2384634fef62d2afbfc8dd59bfb1320bc6184105aa437 SHA512 ecac8d361b4695b1fc32a9aaf9e0785201d1bebbf270226540e2c3fe193ad21f4fe8aed4e01937bd1e7273ca394455ca6fd7cf29418710f279cbb8eb92939e32
DIST github.com-golang-protobuf-2bba0603135d7d7f5cb73b2125beeda19c09f4ef.tar.gz 245411 BLAKE2B 3b4a96035e106ce7e79b6c4b5517d051e5664e0eb163bc63cd52f00ae090dcb7f059d90017c28795a8a4ff639aec8a06b3b704eddd4512e0f9d5d2c3a42bb65c SHA512 0bdd02036cc29cfd2a0dc7bb3d724addf1d8692e3905d719178fa52370d0ff9a4e8798cf5c18924cc265fbf522eeab305faff003efd37295c7bbff2428182ed0
DIST github.com-matttproud-golang_protobuf_extensions-c12348ce28de40eed0136aa2b644d0ee0650e56c.tar.gz 37215 BLAKE2B b3b007f925a4a1c1862c8cbe34c5cd225dfa610ad8c56b5328e6920a44b507680daeea97209370bd6b259654d0ca5791f4bcc54b8bd8970b9aaf994eada16d4f SHA512 2f78290d1448cfc041d10210092d6da6f3df2b9b6c16ff730750e976e450dafe2645ba945319a0a3064c88f9c18652c69c0e0cf69d8931c08d23ffe65a8cc07d
DIST github.com-prometheus-client_golang-42552c195dd3f3089fbf9cf26e139da150af35aa.tar.gz 89835 BLAKE2B c66bacb6e1e33a070e56319f0af87e41b6588af1c200106cc00664e1b4f35d751e8c43fba81252e658f1ce121bc4826c67a253b016017f9ed1bd383b3ce3fdd2 SHA512 fc4dc996f87ed8dbd456f30ca83c1576911379ffc5aceb479f6b9e4b664fbace8359e3aa90249d122221a75357891778415d6dd006d35ceb9544fe1818f8d894
DIST github.com-prometheus-client_model-6f3806018612930941127f2a7c6c453ba2c527d2.tar.gz 54707 BLAKE2B dec697d268b2bc8a2c6f9bb939e702fdc49e887fbe16a5f648f637e0ff425731ef4363707ea7732be27c2dff899d494f61aedd87232f90cdd97383033f4d833e SHA512 5991a5cdb1f1a5f6d67d325e4db37cb8b6994909bbebefdd454a4e42b08271a40b163b56191b45b8c27e5c3e6cfe430354ee13bb38643041e4a17792d59d96bf
DIST github.com-prometheus-common-13ba4ddd0caa9c28ca7b7bffe1dfa9ed8d5ef207.tar.gz 58775 BLAKE2B 05173a41bfaa944e2096b4360e0974f921934b6e6ec8b34cb7322158cabaa73e60ab091d4a5bcc9696b29995e7f71bdf55cb832af140a153452cf66c85c9a3cd SHA512 9d4a937d12a738a7802102415cb061e0009ed43f901420560637e13f7952c26dab52e67011d8b1f8ffe474e223198a23becb65a6eb07cee1be9f6b1add566fd4
DIST github.com-prometheus-procfs-65c1f6f8f0fc1e2185eb9863a3bc751496404259.tar.gz 34890 BLAKE2B f0284354e3782e07371825b3fd6136a5fc516dae97218c90ac333ce749f87b435a55c6545691a7b71f90b98563fdba5f96c238007ee8187d98297edce1124cd5 SHA512 47cafa8b7a4f9496e1cfd6e2d24ae882ed3ac21a2417eb2ece2cfaa2e391d32b60d2ec8c3860988d8fe3af8bfa6d1430e938e5da1331a7e1df2828753dac82bd
DIST github.com-urfave-cli-ab403a54a148f2d857920810291539e1f817ee7b.tar.gz 56233 BLAKE2B e65241a10240c98eae5909a29ea63036583a073c290f613cac1d081534760bb4f0e15c2e02bd5693bae036901f9b029099ebea7679655da14b415332b0a3a93b SHA512 c4af60825c3209850b6a5ce38a86ac0b8cd9bfdbe6ef83dc4a52cb2842465fb12f96a81631646135c0571f404d891867bd401a2182ab3f3586e8b86090648bcc

View File

@@ -1,64 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EGO_VENDOR=(
"github.com/beorn7/perks 4c0e84591b9aa9e6dcfdf3e020114cd81f89d5f9"
"github.com/golang/protobuf 2bba0603135d7d7f5cb73b2125beeda19c09f4ef"
"github.com/matttproud/golang_protobuf_extensions c12348ce28de40eed0136aa2b644d0ee0650e56c"
"github.com/prometheus/client_golang 42552c195dd3f3089fbf9cf26e139da150af35aa"
"github.com/prometheus/client_model 6f3806018612930941127f2a7c6c453ba2c527d2"
"github.com/prometheus/common 13ba4ddd0caa9c28ca7b7bffe1dfa9ed8d5ef207"
"github.com/prometheus/procfs 65c1f6f8f0fc1e2185eb9863a3bc751496404259"
"github.com/Sirupsen/logrus ba1b36c82c5e05c4f912a88eab0dcd91a171688f"
"github.com/urfave/cli ab403a54a148f2d857920810291539e1f817ee7b"
)
inherit golang-build golang-vcs-snapshot
EGO_PN="github.com/jirwin/burrow_exporter"
EXPORTER_COMMIT="01f0ef9"
ARCHIVE_URI="https://${EGO_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64"
DESCRIPTION="Prometheus exporter for Burrow"
HOMEPAGE="https://github.com/jirwin/burrow_exporter"
SRC_URI="${ARCHIVE_URI}
${EGO_VENDOR_URI}"
LICENSE="Apache-2.0 BSD BSD-2 MIT"
SLOT="0"
IUSE=""
COMMON_DEPEND="
acct-group/burrow_exporter
acct-user/burrow_exporter
"
DEPEND="${COMMON_DEPEND}"
RDEPEND="${COMMON_DEPEND}"
src_prepare() {
pushd src/${EGO_PN} || die
eapply "${FILESDIR}"/${P}-skippable-metrics.patch "${FILESDIR}"/${P}-fix-metrics.patch
sed -i -e "s/0.0.5/${PV}/" burrow-exporter.go || die
popd || die
default
}
src_compile() {
pushd src/${EGO_PN} || die
GOPATH="${S}" go build -v -o bin/burrow_exporter || die
popd || die
}
src_install() {
pushd src/${EGO_PN} || die
dobin bin/burrow_exporter
dodoc README.md
popd || die
newinitd "${FILESDIR}"/${PN}.initd ${PN}
newconfd "${FILESDIR}"/${PN}.confd ${PN}
insinto /etc/logrotate.d
newins "${FILESDIR}/${PN}.logrotated" ${PN}
keepdir /var/log/burrow_exporter
fowners ${PN}:${PN} /var/log/burrow_exporter
}

View File

@@ -1,49 +0,0 @@
From a40362c95ca5534040d8c29a23b40168a9d70015 Mon Sep 17 00:00:00 2001
From: Guillaume Herail <guillaume@herail.net>
Date: Wed, 16 Jan 2019 18:03:51 +0100
Subject: [PATCH] fix(KafkaConsumerPartitionLag): Use proper current lag
Before this fix, the latest committed lag was used for the metric, it
now uses the current lag on the partition.
Fixes #26
---
burrow_exporter/client.go | 11 ++++++-----
burrow_exporter/exporter.go | 2 +-
2 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/burrow_exporter/client.go b/burrow_exporter/client.go
index daaf84f..f4dc656 100644
--- a/burrow_exporter/client.go
+++ b/burrow_exporter/client.go
@@ -70,11 +70,12 @@ type ConsumerGroupStatus struct {
}
type Partition struct {
- Topic string `json:"topic"`
- Partition int32 `json:"partition"`
- Status string `json:"status"`
- Start Offset `json:"start"`
- End Offset `json:"end"`
+ Topic string `json:"topic"`
+ Partition int32 `json:"partition"`
+ Status string `json:"status"`
+ Start Offset `json:"start"`
+ End Offset `json:"end"`
+ CurrentLag int64 `json:"current_lag"`
}
type ConsumerGroupStatusResp struct {
diff --git a/burrow_exporter/exporter.go b/burrow_exporter/exporter.go
index 8b48b35..153ccbb 100644
--- a/burrow_exporter/exporter.go
+++ b/burrow_exporter/exporter.go
@@ -45,7 +45,7 @@ func (be *BurrowExporter) processGroup(cluster, group string) {
"group": status.Status.Group,
"topic": partition.Topic,
"partition": strconv.Itoa(int(partition.Partition)),
- }).Set(float64(partition.End.Lag))
+ }).Set(float64(partition.CurrentLag))
}
if !be.skipPartitionCurrentOffset {

View File

@@ -1,273 +0,0 @@
From 50db40e49750378e22e2b638754ff07ff29f5362 Mon Sep 17 00:00:00 2001
From: NovaPS6 <NovaPS6@ostmw0195464.bskyb.com>
Date: Wed, 8 Aug 2018 14:43:33 +0100
Subject: [PATCH] make all metrics skippable
Change import back to jirwin
---
.gitignore | 1 +
burrow-exporter.go | 67 +++++++++++++++++------
burrow_exporter/exporter.go | 102 +++++++++++++++++++++---------------
3 files changed, 113 insertions(+), 57 deletions(-)
diff --git a/.gitignore b/.gitignore
index 502219c..a8e0d62 100644
--- a/.gitignore
+++ b/.gitignore
@@ -18,3 +18,4 @@
burrow-exporter
dist/
vendor/
+.idea/
diff --git a/burrow-exporter.go b/burrow-exporter.go
index 1e60d67..b4e871b 100644
--- a/burrow-exporter.go
+++ b/burrow-exporter.go
@@ -14,7 +14,7 @@ import (
"github.com/jirwin/burrow_exporter/burrow_exporter"
)
-var Version = "0.0.4"
+var Version = "0.0.5"
func main() {
app := cli.NewApp()
@@ -22,36 +22,61 @@ func main() {
app.Name = "burrow-exporter"
app.Flags = []cli.Flag{
cli.StringFlag{
- Name: "burrow-addr",
- Usage: "Address that burrow is listening on",
+ Name: "burrow-addr",
+ Usage: "Address that burrow is listening on",
EnvVar: "BURROW_ADDR",
},
cli.StringFlag{
- Name: "metrics-addr",
- Usage: "Address to run prometheus on",
+ Name: "metrics-addr",
+ Usage: "Address to run prometheus on",
EnvVar: "METRICS_ADDR",
},
cli.IntFlag{
- Name: "interval",
- Usage: "The interval(seconds) specifies how often to scrape burrow.",
+ Name: "interval",
+ Usage: "The interval(seconds) specifies how often to scrape burrow.",
EnvVar: "INTERVAL",
},
cli.IntFlag{
- Name: "api-version",
- Usage: "Burrow API version to leverage",
- Value: 2,
+ Name: "api-version",
+ Usage: "Burrow API version to leverage",
+ Value: 2,
EnvVar: "API_VERSION",
},
cli.BoolFlag{
- Name: "skip-partition-status",
- Usage: "Skip exporting the per-partition status",
+ Name: "skip-partition-status",
+ Usage: "Skip exporting the per-partition status",
EnvVar: "SKIP_PARTITION_STATUS",
},
cli.BoolFlag{
- Name: "skip-group-status",
- Usage: "Skip exporting the per-group status",
+ Name: "skip-group-status",
+ Usage: "Skip exporting the per-group status",
EnvVar: "SKIP_GROUP_STATUS",
},
+ cli.BoolFlag{
+ Name: "skip-partition-lag",
+ Usage: "Skip exporting the partition lag",
+ EnvVar: "SKIP_PARTITION_LAG",
+ },
+ cli.BoolFlag{
+ Name: "skip-partition-current-offset",
+ Usage: "Skip exporting the current offset per partition",
+ EnvVar: "SKIP_PARTITION_CURRENT_OFFSET",
+ },
+ cli.BoolFlag{
+ Name: "skip-partition-max-offset",
+ Usage: "Skip exporting the partition max offset",
+ EnvVar: "SKIP_PARTITION_MAX_OFFSET",
+ },
+ cli.BoolFlag{
+ Name: "skip-total-lag",
+ Usage: "Skip exporting the total lag",
+ EnvVar: "SKIP_TOTAL_LAG",
+ },
+ cli.BoolFlag{
+ Name: "skip-topic-partition-offset",
+ Usage: "Skip exporting topic partition offset",
+ EnvVar: "SKIP_TOPIC_PARTITION_OFFSET",
+ },
}
app.Action = func(c *cli.Context) error {
@@ -76,8 +101,18 @@ func main() {
ctx, cancel := context.WithCancel(context.Background())
- exporter := burrow_exporter.MakeBurrowExporter(c.String("burrow-addr"), c.Int("api-version"),
- c.String("metrics-addr"), c.Int("interval"), c.Bool("skip-partition-status"), c.Bool("skip-group-status"))
+ exporter := burrow_exporter.MakeBurrowExporter(
+ c.String("burrow-addr"),
+ c.Int("api-version"),
+ c.String("metrics-addr"),
+ c.Int("interval"),
+ c.Bool("skip-partition-status"),
+ c.Bool("skip-group-status"),
+ c.Bool("skip-partition-lag"),
+ c.Bool("skip-partition-current-offset"),
+ c.Bool("skip-partition-max-offset"),
+ c.Bool("skip-total-lag"),
+ c.Bool("skip-topic-partition-offset"))
go exporter.Start(ctx)
<-done
diff --git a/burrow_exporter/exporter.go b/burrow_exporter/exporter.go
index 7adc398..8b48b35 100644
--- a/burrow_exporter/exporter.go
+++ b/burrow_exporter/exporter.go
@@ -16,12 +16,17 @@ import (
)
type BurrowExporter struct {
- client *BurrowClient
- metricsListenAddr string
- interval int
- wg sync.WaitGroup
- skipPartitionStatus bool
- skipConsumerStatus bool
+ client *BurrowClient
+ metricsListenAddr string
+ interval int
+ wg sync.WaitGroup
+ skipPartitionStatus bool
+ skipConsumerStatus bool
+ skipPartitionLag bool
+ skipPartitionCurrentOffset bool
+ skipPartitionMaxOffset bool
+ skipTotalLag bool
+ skipTopicPartitionOffset bool
}
func (be *BurrowExporter) processGroup(cluster, group string) {
@@ -34,19 +39,23 @@ func (be *BurrowExporter) processGroup(cluster, group string) {
}
for _, partition := range status.Status.Partitions {
- KafkaConsumerPartitionLag.With(prometheus.Labels{
- "cluster": status.Status.Cluster,
- "group": status.Status.Group,
- "topic": partition.Topic,
- "partition": strconv.Itoa(int(partition.Partition)),
- }).Set(float64(partition.End.Lag))
-
- KafkaConsumerPartitionCurrentOffset.With(prometheus.Labels{
- "cluster": status.Status.Cluster,
- "group": status.Status.Group,
- "topic": partition.Topic,
- "partition": strconv.Itoa(int(partition.Partition)),
- }).Set(float64(partition.End.Offset))
+ if !be.skipPartitionLag {
+ KafkaConsumerPartitionLag.With(prometheus.Labels{
+ "cluster": status.Status.Cluster,
+ "group": status.Status.Group,
+ "topic": partition.Topic,
+ "partition": strconv.Itoa(int(partition.Partition)),
+ }).Set(float64(partition.End.Lag))
+ }
+
+ if !be.skipPartitionCurrentOffset {
+ KafkaConsumerPartitionCurrentOffset.With(prometheus.Labels{
+ "cluster": status.Status.Cluster,
+ "group": status.Status.Group,
+ "topic": partition.Topic,
+ "partition": strconv.Itoa(int(partition.Partition)),
+ }).Set(float64(partition.End.Offset))
+ }
if !be.skipPartitionStatus {
KafkaConsumerPartitionCurrentStatus.With(prometheus.Labels{
@@ -57,18 +66,22 @@ func (be *BurrowExporter) processGroup(cluster, group string) {
}).Set(float64(Status[partition.Status]))
}
- KafkaConsumerPartitionMaxOffset.With(prometheus.Labels{
- "cluster": status.Status.Cluster,
- "group": status.Status.Group,
- "topic": partition.Topic,
- "partition": strconv.Itoa(int(partition.Partition)),
- }).Set(float64(partition.End.MaxOffset))
+ if !be.skipPartitionMaxOffset {
+ KafkaConsumerPartitionMaxOffset.With(prometheus.Labels{
+ "cluster": status.Status.Cluster,
+ "group": status.Status.Group,
+ "topic": partition.Topic,
+ "partition": strconv.Itoa(int(partition.Partition)),
+ }).Set(float64(partition.End.MaxOffset))
+ }
}
- KafkaConsumerTotalLag.With(prometheus.Labels{
- "cluster": status.Status.Cluster,
- "group": status.Status.Group,
- }).Set(float64(status.Status.TotalLag))
+ if !be.skipTotalLag {
+ KafkaConsumerTotalLag.With(prometheus.Labels{
+ "cluster": status.Status.Cluster,
+ "group": status.Status.Group,
+ }).Set(float64(status.Status.TotalLag))
+ }
if !be.skipConsumerStatus {
KafkaConsumerStatus.With(prometheus.Labels{
@@ -88,12 +101,14 @@ func (be *BurrowExporter) processTopic(cluster, topic string) {
return
}
- for i, offset := range details.Offsets {
- KafkaTopicPartitionOffset.With(prometheus.Labels{
- "cluster": cluster,
- "topic": topic,
- "partition": strconv.Itoa(i),
- }).Set(float64(offset))
+ if !be.skipTopicPartitionOffset {
+ for i, offset := range details.Offsets {
+ KafkaTopicPartitionOffset.With(prometheus.Labels{
+ "cluster": cluster,
+ "topic": topic,
+ "partition": strconv.Itoa(i),
+ }).Set(float64(offset))
+ }
}
}
@@ -208,12 +223,17 @@ func (be *BurrowExporter) mainLoop(ctx context.Context) {
}
func MakeBurrowExporter(burrowUrl string, apiVersion int, metricsAddr string, interval int, skipPartitionStatus bool,
- skipConsumerStatus bool) *BurrowExporter {
+ skipConsumerStatus bool, skipPartitionLag bool, skipPartitionCurrentOffset bool, skipPartitionMaxOffset bool, skipTotalLag bool, skipTopicPartitionOffset bool) *BurrowExporter {
return &BurrowExporter{
- client: MakeBurrowClient(burrowUrl, apiVersion),
- metricsListenAddr: metricsAddr,
- interval: interval,
- skipPartitionStatus: skipPartitionStatus,
- skipConsumerStatus: skipConsumerStatus,
+ client: MakeBurrowClient(burrowUrl, apiVersion),
+ metricsListenAddr: metricsAddr,
+ interval: interval,
+ skipPartitionStatus: skipPartitionStatus,
+ skipConsumerStatus: skipConsumerStatus,
+ skipPartitionLag: skipPartitionLag,
+ skipPartitionCurrentOffset: skipPartitionCurrentOffset,
+ skipPartitionMaxOffset: skipPartitionMaxOffset,
+ skipTotalLag: skipTotalLag,
+ skipTopicPartitionOffset: skipTopicPartitionOffset,
}
}

View File

@@ -1,2 +0,0 @@
# arguments for prometheus burrow exporter
command_args=""

View File

@@ -1,19 +0,0 @@
#!/sbin/openrc-run
# Copyright 2016-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
description="Prometheus burrow exporter"
pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
user=${user:-${RC_SVCNAME}}
group=${group:-${RC_SVCNAME}}
command="/usr/bin/burrow_exporter"
command_args="${command_args:---burrow-addr http://127.0.0.1:8000 --metrics-addr 0.0.0.0:8080 --interval 30 --api-version 2}"
command_background="true"
start_stop_daemon_args="--user ${user} --group ${group} \
--stdout /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log \
--stderr /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
depend() {
after net
}

View File

@@ -1,7 +0,0 @@
/var/log/burrow_exporter/burrow_exporter.log {
missingok
size 5M
rotate 3
compress
copytruncate
}

View File

@@ -1,11 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>williamh@gentoo.org</email>
<name>William Hubbs</name>
</maintainer>
<upstream>
<remote-id type="github">jirwin/burrow_exporter</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -265,12 +265,6 @@ dev-go/get-ego-vendor
# Removal on 2025-02-23. Bugs #948656, #844577, #694898, #678982.
app-containers/docker-proxy
# Arthur Zamarin <arthurzam@gentoo.org> (2025-01-24)
# EAPI=7, uses depcreated Go eclasses, fails to compile. burrow itself
# has exporter built in since version 1.3.4, which can be used instead.
# Removal on 2025-02-23. Bugs #948655, #844613, #679086.
app-metrics/burrow_exporter
# Andreas Sturmlechner <asturm@gentoo.org> (2025-01-23)
# Qt5 package without any revdeps. Use dev-qt/qttools[qdbus] instead.
dev-qt/qdbusviewer