From e8cf28e949a75b442d3091012bf41e8e69d7f9c9 Mon Sep 17 00:00:00 2001 From: rluisr Date: Sun, 29 Oct 2023 00:35:19 +0900 Subject: [PATCH] feat(main): add service name for MySQL Router --- .github/workflows/release.yml | 2 +- .pre-commit-config.yaml | 5 ----- README.md | 1 + gauges.go | 3 ++- main.go | 3 ++- 5 files changed, 6 insertions(+), 8 deletions(-) delete mode 100644 .pre-commit-config.yaml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a25d516..e95311c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -34,7 +34,7 @@ jobs: with: images: ghcr.io/rluisr/mysqlrouter_exporter - name: Set up QEMU - uses: docker/setup-qemu-action@v2 + uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v2 - name: Login to GitHub Container Registry diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml deleted file mode 100644 index ea9225f..0000000 --- a/.pre-commit-config.yaml +++ /dev/null @@ -1,5 +0,0 @@ -repos: - - repo: https://github.com/golangci/golangci-lint - rev: 2b73b3a9dffbcd4258bf79e901130a595520f1ee - hooks: - - id: golangci-lint-full \ No newline at end of file diff --git a/README.md b/README.md index ce5e776..fb050b3 100644 --- a/README.md +++ b/README.md @@ -62,6 +62,7 @@ Application Options: --user= Username for REST API [$MYSQLROUTER_EXPORTER_USER] --pass= Password for REST API [$MYSQLROUTER_EXPORTER_PASS] -p, --listen-port= Listen port (default: 49152) + --service-name= Service name for MySQL Router [$MYSQLROUTER_EXPORTER_SERVICE_NAME] --tls-ca-cert-path= TLS CA cacert path [$MYSQLROUTER_TLS_CACERT_PATH] --tls-cert-path= TLS cert path [$MYSQLROUTER_TLS_CERT_PATH] --tls-key-path= TLS key path [$MYSQLROUTER_TLS_KEY_PATH] diff --git a/gauges.go b/gauges.go index 480bb55..51bbfb3 100644 --- a/gauges.go +++ b/gauges.go @@ -15,7 +15,8 @@ var ( Namespace: nameSpace, Name: "router_status", Help: "MySQL Router information", - }, []string{"process_id", "product_edition", "time_started", "version", "hostname"}) + }, []string{"process_id", "product_edition", "time_started", "version", "hostname", "service"}) + metadataGauge = promauto.NewGaugeVec(prometheus.GaugeOpts{ Namespace: nameSpace, Name: "metadata", diff --git a/main.go b/main.go index d87efb4..8c3fc79 100644 --- a/main.go +++ b/main.go @@ -30,6 +30,7 @@ var args struct { RestAPIUser string `short:"" long:"user" required:"false" env:"MYSQLROUTER_EXPORTER_USER" description:"Username for REST API"` RestAPIPass string `short:"" long:"pass" required:"false" env:"MYSQLROUTER_EXPORTER_PASS" description:"Password for REST API"` ListenPort int `short:"p" long:"listen-port" default:"49152" description:"Listen port"` + ServiceName string `short:"" long:"service-name" required:"true" env:"MYSQLROUTER_EXPORTER_SERVICE_NAME" description:"Service name for MySQL Router"` TLSCACertPath string `short:"" long:"tls-ca-cert-path" required:"false" env:"MYSQLROUTER_TLS_CACERT_PATH" description:"TLS CA cacert path"` TLSCertPath string `short:"" long:"tls-cert-path" required:"false" env:"MYSQLROUTER_TLS_CERT_PATH" description:"TLS cert path"` TLSKeyPath string `short:"" long:"tls-key-path" required:"false" env:"MYSQLROUTER_TLS_KEY_PATH" description:"TLS key path"` @@ -151,7 +152,7 @@ func collectRouterMetrics() (*mysqlrouter.Router, error) { } routerUpGauge.Set(1) - routerStatusGauge.WithLabelValues(strconv.Itoa(router.ProcessID), router.ProductEdition, router.TimeStarted.String(), router.Version, router.Hostname) + routerStatusGauge.WithLabelValues(strconv.Itoa(router.ProcessID), router.ProductEdition, router.TimeStarted.String(), router.Version, router.Hostname, args.ServiceName) lastRouter = router