From 287289cd80d6e54816de4fcdf79ad5bd623543c5 Mon Sep 17 00:00:00 2001 From: Lukasz Raczylo Date: Fri, 22 May 2026 23:34:09 +0100 Subject: [PATCH] fix(telemetry): inject appVersion at build + auto-resolve at runtime The released v0.45.1 binary shipped with the source default appVersion="dev" because .goreleaser.yaml had ldflags="-s -w" only, so every startup ping was rejected by the receiver with HTTP 400 (invalid version: regex requires leading digit). Two-layer fix: 1. .goreleaser.yaml now passes -X main.appVersion={{.Version}} so goreleaser-built binaries report the actual release version. 2. Switch to telemetry.SendForModule which prefers debug.ReadBuildInfo Main/Deps when available, falling back to appVersion. This means `go install github.com/lukaszraczylo/ graphql-monitoring-proxy@vX.Y.Z` users also get correct versions without relying on the ldflag. Bumps oss-telemetry to v0.2.1 for SendForModule. --- .goreleaser.yaml | 1 + go.mod | 2 +- go.sum | 4 ++-- main.go | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.goreleaser.yaml b/.goreleaser.yaml index c5dea95..23994a7 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -19,6 +19,7 @@ builds: - arm64 ldflags: - -s -w + - -X main.appVersion={{.Version}} archives: - id: graphql-proxy diff --git a/go.mod b/go.mod index 7c2e47a..e870892 100644 --- a/go.mod +++ b/go.mod @@ -18,7 +18,7 @@ require ( github.com/lukaszraczylo/ask v0.0.0-20240916204100-6e9ef53a62d9 github.com/lukaszraczylo/go-ratecounter v0.1.12 github.com/lukaszraczylo/go-simple-graphql v1.2.89 - github.com/lukaszraczylo/oss-telemetry v0.0.0-20260521005811-e02d51419c52 + github.com/lukaszraczylo/oss-telemetry v0.2.1 github.com/redis/go-redis/v9 v9.18.0 github.com/sony/gobreaker v1.0.0 github.com/stretchr/testify v1.11.1 diff --git a/go.sum b/go.sum index 2f86ee4..68f05a9 100644 --- a/go.sum +++ b/go.sum @@ -76,8 +76,8 @@ github.com/lukaszraczylo/go-ratecounter v0.1.12 h1:VO6hHYGw/Jy9JUizXf/bS0AI2QX1u github.com/lukaszraczylo/go-ratecounter v0.1.12/go.mod h1:TqXEOCtFJStk1i0tkipprv1kiDHGon1MVUisjSTBSKM= github.com/lukaszraczylo/go-simple-graphql v1.2.89 h1:Xbu1Ny+a0lT2Sr2SaSC8mcHmGQDwGD4TJKk4DDd+PwA= github.com/lukaszraczylo/go-simple-graphql v1.2.89/go.mod h1:PxQYblQDZISmYYj8sNfazAWxAOh1rhAtU208y+uPV8s= -github.com/lukaszraczylo/oss-telemetry v0.0.0-20260521005811-e02d51419c52 h1:HAm1OV/1uYN3VA/HdDNFjwh8KerTLwl1SoxF+IiNf/M= -github.com/lukaszraczylo/oss-telemetry v0.0.0-20260521005811-e02d51419c52/go.mod h1:+Cn78qZo8rc3T9eZt0v3oICYRdd75wORtSidc8lNjDQ= +github.com/lukaszraczylo/oss-telemetry v0.2.1 h1:6ULyfzXplpdmIY/i01OPM1jeod9+L1RAhI0jtbVnJI0= +github.com/lukaszraczylo/oss-telemetry v0.2.1/go.mod h1:+Cn78qZo8rc3T9eZt0v3oICYRdd75wORtSidc8lNjDQ= github.com/mattn/go-colorable v0.1.14 h1:9A9LHSqF/7dyVVX6g0U9cwm9pG3kP9gSzcuIPHPsaIE= github.com/mattn/go-colorable v0.1.14/go.mod h1:6LmQG8QLFO4G5z1gPvYEzlUgJ2wF+stgPZH1UqBm1s8= github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= diff --git a/main.go b/main.go index a400153..9f0a42a 100644 --- a/main.go +++ b/main.go @@ -518,7 +518,7 @@ func parseConfig() { } func main() { - telemetry.Send("graphql-monitoring-proxy", appVersion) + telemetry.SendForModule("graphql-monitoring-proxy", "github.com/lukaszraczylo/graphql-monitoring-proxy", appVersion) // Parse configuration parseConfig()