From b02ae13024f44fe7d762dcee236e981868ece5c0 Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Wed, 27 Nov 2024 15:18:38 +0100 Subject: [PATCH 001/107] feat(WIP): add otel still needs making it configurable and having an optional /metrics endpoint instead of pushing --- go.mod | 17 +++- go.sum | 37 ++++++++- pkg/edition/java/auth/authenticator.go | 14 ++++ pkg/edition/java/netmc/connection.go | 30 ++++++- pkg/edition/java/proxy/otel.go | 30 +++++++ pkg/edition/java/proxy/proxy.go | 40 ++++++--- pkg/edition/java/proxy/server.go | 20 ++++- pkg/gate/gate.go | 19 ++++- pkg/internal/otelutil/otel.go | 110 +++++++++++++++++++++++++ 9 files changed, 293 insertions(+), 24 deletions(-) create mode 100644 pkg/edition/java/proxy/otel.go create mode 100644 pkg/internal/otelutil/otel.go diff --git a/go.mod b/go.mod index de5ac3f3..84ab81ff 100644 --- a/go.mod +++ b/go.mod @@ -9,6 +9,7 @@ require ( github.com/Tnze/go-mc v1.20.2 github.com/agext/levenshtein v1.2.3 github.com/coder/websocket v1.8.12 + github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc github.com/dboslee/lru v0.0.1 github.com/edwingeng/deque/v2 v2.1.1 github.com/gammazero/deque v1.0.0 @@ -33,6 +34,13 @@ require ( go.minekube.com/brigodier v0.0.1 go.minekube.com/common v0.0.5 go.minekube.com/connect v0.6.2 + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 + go.opentelemetry.io/otel v1.32.0 + go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0 + go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0 + go.opentelemetry.io/otel/sdk v1.32.0 + go.opentelemetry.io/otel/sdk/metric v1.32.0 + go.opentelemetry.io/otel/trace v1.32.0 go.uber.org/atomic v1.11.0 go.uber.org/zap v1.27.0 golang.org/x/exp v0.0.0-20241108190413-2d47ceb2692f @@ -47,13 +55,16 @@ require ( require ( buf.build/gen/go/minekube/connect/protocolbuffers/go v1.35.2-20240220124425-904ce30425c9.1 // indirect + github.com/cenkalti/backoff/v4 v4.3.0 // indirect github.com/cpuguy83/go-md2man/v2 v2.0.5 // indirect - github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/emirpasic/gods v1.18.1 // indirect + github.com/felixge/httpsnoop v1.0.4 // indirect github.com/francoispqt/gojay v1.2.13 // indirect github.com/fsnotify/fsnotify v1.8.0 // indirect github.com/go-gl/mathgl v1.1.0 // indirect + github.com/go-logr/stdr v1.2.2 // indirect github.com/golang/snappy v0.0.4 // indirect + github.com/grpc-ecosystem/grpc-gateway/v2 v2.23.0 // indirect github.com/hashicorp/hcl v1.0.0 // indirect github.com/klauspost/compress v1.17.2 // indirect github.com/lucasb-eyer/go-colorful v1.2.0 // indirect @@ -72,9 +83,13 @@ require ( github.com/subosito/gotenv v1.6.0 // indirect github.com/xo/terminfo v0.0.0-20210125001918-ca9a967f8778 // indirect github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1 // indirect + go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.32.0 // indirect + go.opentelemetry.io/otel/metric v1.32.0 // indirect + go.opentelemetry.io/proto/otlp v1.3.1 // indirect go.uber.org/multierr v1.11.0 // indirect golang.org/x/image v0.18.0 // indirect golang.org/x/sys v0.27.0 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20241104194629-dd2ea8efbc28 // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20241113202542-65e8d215514f // indirect gopkg.in/ini.v1 v1.67.0 // indirect ) diff --git a/go.sum b/go.sum index 89142358..6a55304a 100644 --- a/go.sum +++ b/go.sum @@ -20,6 +20,8 @@ github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239/go.mod h1:2FmKhYU github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/bradfitz/go-smtpd v0.0.0-20170404230938-deb6d6237625/go.mod h1:HYsPBTaaSFSlLx/70C2HPIMNZpVV8+vt/A+FMnYP11g= github.com/buger/jsonparser v0.0.0-20181115193947-bf1c66bbce23/go.mod h1:bbYlZJ7hK1yFx9hf58LP0zeX7UjIGs20ufpu3evjr+s= +github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= +github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/coder/websocket v1.8.12 h1:5bUXkEPPIbewrnkU8LTCLVaxi4N4J8ahufH2vlo4NAo= github.com/coder/websocket v1.8.12/go.mod h1:LNVeNrXQZfe5qhS9ALED3uA+l5pPqvwXg3CKoDBB2gs= @@ -38,6 +40,8 @@ github.com/edwingeng/deque/v2 v2.1.1/go.mod h1:HukI8CQe9KDmZCcURPZRYVYjH79Zy2tIj github.com/emirpasic/gods v1.12.0/go.mod h1:YfzfFFoVP/catgzJb4IKIqXjX78Ha8FMSDh3ymbK86o= github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc= github.com/emirpasic/gods v1.18.1/go.mod h1:8tpGGwCnJ5H4r6BWwaV6OrWmMoPhUl5jm/FMNAnJvWQ= +github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= +github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568/go.mod h1:xEzjJPgXI435gkrCt3MPfRiAkVrwSbHsst4LCFVfpJc= github.com/francoispqt/gojay v1.2.13 h1:d2m3sFjloqoIUQU3TsHBgj6qg/BVGlTBeHDUmyJnXKk= github.com/francoispqt/gojay v1.2.13/go.mod h1:ehT5mTG4ua4581f1++1WLG0vPdaA9HaiDsoyrBGkyDY= @@ -55,8 +59,11 @@ github.com/go-faker/faker/v4 v4.5.0 h1:ARzAY2XoOL9tOUK+KSecUQzyXQsUaZHefjyF8x6YF github.com/go-faker/faker/v4 v4.5.0/go.mod h1:p3oq1GRjG2PZ7yqeFFfQI20Xm61DoBDlCA8RiSyZ48M= github.com/go-gl/mathgl v1.1.0 h1:0lzZ+rntPX3/oGrDzYGdowSLC2ky8Osirvf5uAwfIEA= github.com/go-gl/mathgl v1.1.0/go.mod h1:yhpkQzEiH9yPyxDUGzkmgScbaBVlhC06qodikEM0ZwQ= +github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= +github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= +github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= github.com/go-logr/zapr v1.3.0 h1:XGdV8XW8zdwFiwOA2Dryh1gj2KRQyOOoNmBy4EplIcQ= github.com/go-logr/zapr v1.3.0/go.mod h1:YKepepNBd1u/oyhd/yQmtjVXmm9uML4IXUgMOwR8/Gg= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= @@ -90,6 +97,8 @@ github.com/gookit/color v1.5.4/go.mod h1:pZJOeOS8DM43rXbp4AZo1n9zCU2qjpcRko0b6/Q github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= github.com/grpc-ecosystem/grpc-gateway v1.5.0/go.mod h1:RSKVYQBd5MCa4OVpNdGskqpgL2+G+NZTnrVHpWWfpdw= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.23.0 h1:ad0vkEBuk23VJzZR9nkLVG0YAoN9coASF1GusYX6AlU= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.23.0/go.mod h1:igFoXX2ELCW06bol23DWPB5BEWfZISOzSP5K2sbLea0= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= github.com/jellevandenhooff/dkim v0.0.0-20150330215556-f50fe3d243e1/go.mod h1:E0B/fFc00Y+Rasa88328GlI/XbtyysCtTHZS8h7IrBU= @@ -142,8 +151,8 @@ github.com/prometheus/common v0.0.0-20180801064454-c7de2306084e/go.mod h1:daVV7q github.com/prometheus/procfs v0.0.0-20180725123919-05ee40e3a273/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/robinbraemer/event v0.0.1 h1:2499Bm1c13+//IZyAQpjoTg4vQ+dndE8trxo1aUxWdI= github.com/robinbraemer/event v0.0.1/go.mod h1:fKkjL2UbPajNcxc4oWYyRCcUalss0YtPxwMtZTuNo8o= -github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8= -github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs= +github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII= +github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o= github.com/rs/xid v1.6.0 h1:fV591PaemRlL6JfRxGDEPl69wICngIQ3shQtzfy2gxU= github.com/rs/xid v1.6.0/go.mod h1:7XoLgs4eV+QndskICGsho+ADou8ySMSjJKDIan90Nz0= github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g= @@ -198,8 +207,6 @@ github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+ github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= -github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/subosito/gotenv v1.6.0 h1:9NlTDc1FTs4qu0DDq7AEtTPNw6SVm7uBMsUCUjABIf8= @@ -222,6 +229,26 @@ go.minekube.com/common v0.0.5/go.mod h1:PCdSdTInlQv6ggDIbVjLFs7ehSRP4i9KqYsLAeeN go.minekube.com/connect v0.6.2 h1:RajPc7YgqygcOviV2g4xetL3J0Wzi8b/lsYXUzIltxE= go.minekube.com/connect v0.6.2/go.mod h1:28k11I4RyzUfAL3AkOXt3atzjeOFAC8eqbCMwsYKAb0= go.opencensus.io v0.18.0/go.mod h1:vKdFvxhtzZ9onBp9VKHK8z/sRpBMnKAsufL7wlDrCOA= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 h1:jq9TW8u3so/bN+JPT166wjOI6/vQPF6Xe7nMNIltagk= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0/go.mod h1:p8pYQP+m5XfbZm9fxtSKAbM6oIllS7s2AfxrChvc7iw= +go.opentelemetry.io/otel v1.32.0 h1:WnBN+Xjcteh0zdk01SVqV55d/m62NJLJdIyb4y/WO5U= +go.opentelemetry.io/otel v1.32.0/go.mod h1:00DCVSB0RQcnzlwyTfqtxSm+DRr9hpYrHjNGiBHVQIg= +go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0 h1:j7ZSD+5yn+lo3sGV69nW04rRR0jhYnBwjuX3r0HvnK0= +go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0/go.mod h1:WXbYJTUaZXAbYd8lbgGuvih0yuCfOFC5RJoYnoLcGz8= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.32.0 h1:IJFEoHiytixx8cMiVAO+GmHR6Frwu+u5Ur8njpFO6Ac= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.32.0/go.mod h1:3rHrKNtLIoS0oZwkY2vxi+oJcwFRWdtUyRII+so45p8= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0 h1:9kV11HXBHZAvuPUZxmMWrH8hZn/6UnHX4K0mu36vNsU= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0/go.mod h1:JyA0FHXe22E1NeNiHmVp7kFHglnexDQ7uRWDiiJ1hKQ= +go.opentelemetry.io/otel/metric v1.32.0 h1:xV2umtmNcThh2/a/aCP+h64Xx5wsj8qqnkYZktzNa0M= +go.opentelemetry.io/otel/metric v1.32.0/go.mod h1:jH7CIbbK6SH2V2wE16W05BHCtIDzauciCRLoc/SyMv8= +go.opentelemetry.io/otel/sdk v1.32.0 h1:RNxepc9vK59A8XsgZQouW8ue8Gkb4jpWtJm9ge5lEG4= +go.opentelemetry.io/otel/sdk v1.32.0/go.mod h1:LqgegDBjKMmb2GC6/PrTnteJG39I8/vJCAP9LlJXEjU= +go.opentelemetry.io/otel/sdk/metric v1.32.0 h1:rZvFnvmvawYb0alrYkjraqJq0Z4ZUJAiyYCU9snn1CU= +go.opentelemetry.io/otel/sdk/metric v1.32.0/go.mod h1:PWeZlq0zt9YkYAp3gjKZ0eicRYvOh1Gd+X99x6GHpCQ= +go.opentelemetry.io/otel/trace v1.32.0 h1:WIC9mYrXf8TmY/EXuULKc8hR17vE+Hjv2cssQDe03fM= +go.opentelemetry.io/otel/trace v1.32.0/go.mod h1:+i4rkvCraA+tG6AzwloGaCtkx53Fa+L+V8e9a7YvhT8= +go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= +go.opentelemetry.io/proto/otlp v1.3.1/go.mod h1:0X1WI4de4ZsLrrJNLAQbFeLCm3T7yBkR0XqQ7niQU+8= go.uber.org/atomic v1.11.0 h1:ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE= go.uber.org/atomic v1.11.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= @@ -296,6 +323,8 @@ google.golang.org/genproto v0.0.0-20180831171423-11092d34479b/go.mod h1:JiN7NxoA google.golang.org/genproto v0.0.0-20181029155118-b69ba1387ce2/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20181202183823-bd91e49a0898/go.mod h1:7Ep/1NZk928CDR8SjdVbjWNpdIf6nzjE3BTgJDr2Atg= google.golang.org/genproto v0.0.0-20190306203927-b5d61aea6440/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto/googleapis/api v0.0.0-20241104194629-dd2ea8efbc28 h1:M0KvPgPmDZHPlbRbaNU1APr28TvwvvdUPlSv7PUvy8g= +google.golang.org/genproto/googleapis/api v0.0.0-20241104194629-dd2ea8efbc28/go.mod h1:dguCy7UOdZhTvLzDyt15+rOrawrpM4q7DD9dQ1P11P4= google.golang.org/genproto/googleapis/rpc v0.0.0-20241113202542-65e8d215514f h1:C1QccEa9kUwvMgEUORqQD9S17QesQijxjZ84sO82mfo= google.golang.org/genproto/googleapis/rpc v0.0.0-20241113202542-65e8d215514f/go.mod h1:GX3210XPVPUjJbTUbvwI8f2IpZDMZuPJWDzDuebbviI= google.golang.org/grpc v1.14.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= diff --git a/pkg/edition/java/auth/authenticator.go b/pkg/edition/java/auth/authenticator.go index a474f6eb..0fc15ab4 100644 --- a/pkg/edition/java/auth/authenticator.go +++ b/pkg/edition/java/auth/authenticator.go @@ -20,6 +20,10 @@ import ( "time" "github.com/go-logr/logr" + "go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp" + "go.opentelemetry.io/otel" + "go.opentelemetry.io/otel/attribute" + "go.opentelemetry.io/otel/trace" "go.minekube.com/gate/pkg/edition/java/profile" "go.minekube.com/gate/pkg/version" @@ -134,6 +138,7 @@ func New(options Options) (Authenticator, error) { Timeout: time.Second * 10, } } + cli.Transport = otelhttp.NewTransport(cli.Transport) cli.Transport = withHeader(cli.Transport, version.UserAgentHeader()) hasJoinedURLFn := options.HasJoinedURLFn @@ -181,7 +186,16 @@ func (a *authenticator) DecryptSharedSecret(encrypted []byte) (decrypted []byte, return rsa.DecryptPKCS1v15(rand.Reader, a.private, encrypted) } +var tracer = otel.Tracer("java/auth") + func (a *authenticator) AuthenticateJoin(ctx context.Context, serverID, username, ip string) (Response, error) { + ctx, span := tracer.Start(ctx, "AuthenticateJoin", trace.WithAttributes( + attribute.String("server.id", serverID), + attribute.String("user.name", username), + attribute.String("user.ip", ip), + )) + defer span.End() + hasJoinedURL := a.hasJoinedURLFn(serverID, username, ip) req, err := http.NewRequestWithContext(ctx, http.MethodGet, hasJoinedURL, nil) if err != nil { diff --git a/pkg/edition/java/netmc/connection.go b/pkg/edition/java/netmc/connection.go index a894b5c4..4a380bea 100644 --- a/pkg/edition/java/netmc/connection.go +++ b/pkg/edition/java/netmc/connection.go @@ -6,16 +6,23 @@ import ( "encoding/binary" "errors" "fmt" - "go.minekube.com/gate/pkg/edition/java/proto/state/states" - "go.minekube.com/gate/pkg/edition/java/proto/util/queue" "net" "sync" "time" + "github.com/davecgh/go-spew/spew" + "go.opentelemetry.io/otel" + "go.opentelemetry.io/otel/attribute" + "go.opentelemetry.io/otel/trace" + + "go.minekube.com/gate/pkg/edition/java/proto/state/states" + "go.minekube.com/gate/pkg/edition/java/proto/util/queue" + "github.com/go-logr/logr" - "go.minekube.com/gate/pkg/edition/java/proxy/phase" "go.uber.org/atomic" + "go.minekube.com/gate/pkg/edition/java/proxy/phase" + "go.minekube.com/gate/pkg/edition/java/proto/packet" "go.minekube.com/gate/pkg/edition/java/proto/state" "go.minekube.com/gate/pkg/edition/java/proto/version" @@ -203,6 +210,8 @@ func (c *minecraftConn) startReadLoop() { // Make sure to close connection on return, if not already closed defer func() { _ = c.closeKnown(false) }() + debug := c.log.V(1) + next := func() bool { // Wait until auto reading is enabled, if not already c.autoReading.Wait() @@ -224,8 +233,21 @@ func (c *minecraftConn) startReadLoop() { // - statistics / count bytes // - in turn call session handler + sessionHandler := c.ActiveSessionHandler() + + if debug.Enabled() && packetCtx.KnownPacket() { + _, span := otel.Tracer("netmc").Start(c.ctx, "HandlePacket", trace.WithAttributes( + attribute.String("packet.type", fmt.Sprintf("%T", packetCtx.Packet)), + attribute.String("packet.dump", fmt.Sprintf("%+v", spew.Sdump(packetCtx.Packet))), + attribute.Stringer("packet.direction", c.direction), + attribute.Stringer("conn.state", c.state), + attribute.String("conn.sessionHandler", fmt.Sprintf("%T", sessionHandler)), + )) + defer span.End() + } + // Handle packet by connection's session handler. - c.ActiveSessionHandler().HandlePacket(packetCtx) + sessionHandler.HandlePacket(packetCtx) return true } diff --git a/pkg/edition/java/proxy/otel.go b/pkg/edition/java/proxy/otel.go new file mode 100644 index 00000000..d60038c3 --- /dev/null +++ b/pkg/edition/java/proxy/otel.go @@ -0,0 +1,30 @@ +package proxy + +import ( + "context" + + "go.opentelemetry.io/otel" + "go.opentelemetry.io/otel/metric" +) + +var ( + meter = otel.Meter("java/proxy") + tracer = otel.Tracer("java/proxy") +) + +func (p *Proxy) initMeter() error { + var err error + _, err = meter.Int64ObservableGauge( + "proxy.player_count", + metric.WithInt64Callback(func(ctx context.Context, o metric.Int64Observer) error { + o.Observe(int64(p.PlayerCount())) + return nil + }), + metric.WithDescription("The current total player count on the proxy"), + metric.WithUnit("1"), + ) + if err != nil { + return err + } + return nil +} diff --git a/pkg/edition/java/proxy/proxy.go b/pkg/edition/java/proxy/proxy.go index f0663966..23281af3 100644 --- a/pkg/edition/java/proxy/proxy.go +++ b/pkg/edition/java/proxy/proxy.go @@ -4,8 +4,6 @@ import ( "context" "errors" "fmt" - "go.minekube.com/gate/pkg/edition/java/lite" - "go.minekube.com/gate/pkg/edition/java/proto/state" "net" "reflect" "strings" @@ -13,11 +11,19 @@ import ( "sync/atomic" "time" + "go.opentelemetry.io/otel/attribute" + "go.opentelemetry.io/otel/trace" + + "go.minekube.com/gate/pkg/edition/java/lite" + "go.minekube.com/gate/pkg/edition/java/proto/state" + "github.com/go-logr/logr" "github.com/pires/go-proxyproto" "github.com/robinbraemer/event" "go.minekube.com/common/minecraft/component" "go.minekube.com/common/minecraft/component/codec/legacy" + "golang.org/x/sync/errgroup" + "go.minekube.com/gate/pkg/command" "go.minekube.com/gate/pkg/edition/java/auth" "go.minekube.com/gate/pkg/edition/java/config" @@ -31,7 +37,6 @@ import ( "go.minekube.com/gate/pkg/util/netutil" "go.minekube.com/gate/pkg/util/uuid" "go.minekube.com/gate/pkg/util/validation" - "golang.org/x/sync/errgroup" ) // Proxy is Gate's Java edition Minecraft proxy. @@ -109,6 +114,10 @@ func New(options Options) (p *Proxy, err error) { // Connection & login rate limiters p.initQuota(&options.Config.Quota) + if err = p.initMeter(); err != nil { + return nil, fmt.Errorf("error initializing meter: %w", err) + } + return p, nil } @@ -142,6 +151,9 @@ func (p *Proxy) Start(ctx context.Context) error { p.closeMu.Unlock() return ErrProxyAlreadyRun } + ctx, span := tracer.Start(ctx, "Proxy.Start") + defer span.End() + p.started = true now := time.Now() p.startTime.Store(&now) @@ -516,6 +528,21 @@ func (p *Proxy) HandleConn(raw net.Conn) { return } + // Create context for connection + ctx, ok := raw.(context.Context) + if !ok { + ctx = context.Background() + } + ctx = logr.NewContext(ctx, p.log) + ctx = trace.ContextWithSpan(ctx, trace.SpanFromContext(p.startCtx)) + + // OpenTelemetry span for connection + ctx, span := tracer.Start(ctx, "HandleConn", trace.WithAttributes( + attribute.String("remote.host", netutil.Host(raw.RemoteAddr())), + attribute.Stringer("local.addr", raw.LocalAddr()), + )) + defer span.End() + // Fire connection event if p.event.HasSubscriber((*ConnectionEvent)(nil)) { conn := &connwrap.Conn{Conn: raw} @@ -532,13 +559,6 @@ func (p *Proxy) HandleConn(raw net.Conn) { raw = e.Connection() } - // Create context for connection - ctx, ok := raw.(context.Context) - if !ok { - ctx = context.Background() - } - ctx = logr.NewContext(ctx, p.log) - // Create client connection conn, readLoop := netmc.NewMinecraftConn( ctx, raw, proto.ServerBound, diff --git a/pkg/edition/java/proxy/server.go b/pkg/edition/java/proxy/server.go index f1faa43c..73e9eb5c 100644 --- a/pkg/edition/java/proxy/server.go +++ b/pkg/edition/java/proxy/server.go @@ -5,22 +5,27 @@ import ( "encoding/json" "errors" "fmt" - "go.minekube.com/gate/pkg/edition/java/forge/modernforge" - "go.minekube.com/gate/pkg/edition/java/profile" - "go.minekube.com/gate/pkg/edition/java/proto/state/states" "net" "strings" "sync" "time" + "go.opentelemetry.io/otel/attribute" + "go.opentelemetry.io/otel/trace" + + "go.minekube.com/gate/pkg/edition/java/forge/modernforge" + "go.minekube.com/gate/pkg/edition/java/profile" + "go.minekube.com/gate/pkg/edition/java/proto/state/states" + "github.com/dboslee/lru" "github.com/go-logr/logr" + "go.uber.org/atomic" + "go.minekube.com/gate/pkg/edition/java/internal/protoutil" "go.minekube.com/gate/pkg/edition/java/netmc" "go.minekube.com/gate/pkg/edition/java/proto/version" "go.minekube.com/gate/pkg/edition/java/proxy/phase" "go.minekube.com/gate/pkg/gate/proto" - "go.uber.org/atomic" "go.minekube.com/gate/pkg/edition/java/config" "go.minekube.com/gate/pkg/edition/java/forge" @@ -311,6 +316,12 @@ type ServerDialer interface { } func (s *serverConnection) dial(ctx context.Context) (net.Conn, error) { + ctx, span := tracer.Start(ctx, "serverConnection.dial", trace.WithAttributes( + attribute.String("server.name", s.server.info.Name()), + attribute.Stringer("server.addr", s.server.info.Addr()), + )) + defer span.End() + var ( sd ServerDialer ok bool @@ -318,6 +329,7 @@ func (s *serverConnection) dial(ctx context.Context) (net.Conn, error) { if sd, ok = s.Server().ServerInfo().(ServerDialer); !ok { if sd, ok = s.Server().(ServerDialer); !ok { dstAddr := s.Server().ServerInfo().Addr() + span.SetAttributes(attribute.Stringer("server.addr", dstAddr)) var d net.Dialer conn, err := d.DialContext(ctx, "tcp", dstAddr.String()) if err != nil { diff --git a/pkg/gate/gate.go b/pkg/gate/gate.go index 661128ea..235b1f07 100644 --- a/pkg/gate/gate.go +++ b/pkg/gate/gate.go @@ -14,6 +14,7 @@ import ( "github.com/go-logr/logr" "github.com/robinbraemer/event" "github.com/spf13/viper" + "go.opentelemetry.io/otel" "gopkg.in/yaml.v3" "go.minekube.com/gate/pkg/bridge" @@ -22,6 +23,7 @@ import ( jconfig "go.minekube.com/gate/pkg/edition/java/config" jproxy "go.minekube.com/gate/pkg/edition/java/proxy" "go.minekube.com/gate/pkg/gate/config" + "go.minekube.com/gate/pkg/internal/otelutil" "go.minekube.com/gate/pkg/internal/reload" "go.minekube.com/gate/pkg/runtime/process" connectcfg "go.minekube.com/gate/pkg/util/connectutil/config" @@ -138,7 +140,11 @@ func (g *Gate) Bedrock() *bproxy.Proxy { } // Start starts the Gate instance and all underlying proc. -func (g *Gate) Start(ctx context.Context) error { return g.proc.Start(ctx) } +func (g *Gate) Start(ctx context.Context) error { + ctx, span := otel.Tracer("gate").Start(ctx, "gate.Start") + defer span.End() + return g.proc.Start(ctx) +} // Viper is the default viper instance used by Start to load in a config.Config. var Viper = viper.New() @@ -240,6 +246,17 @@ func Start(ctx context.Context, opts ...StartOption) error { }() } + // Initialize OpenTelemetry + cleanOtel, err := otelutil.Init(ctx) + if err != nil { + return fmt.Errorf("error initializing OpenTelemetry: %w", err) + } + defer func() { + if err := cleanOtel(); err != nil { + log.Error(err, "error stopping OpenTelemetry") + } + }() + // Setup auto config reload if enabled. err = setupAutoConfigReload( ctx, configLog, eventMgr, diff --git a/pkg/internal/otelutil/otel.go b/pkg/internal/otelutil/otel.go new file mode 100644 index 00000000..94ad3349 --- /dev/null +++ b/pkg/internal/otelutil/otel.go @@ -0,0 +1,110 @@ +package otelutil + +import ( + "context" + "errors" + "fmt" + "time" + + "go.opentelemetry.io/otel" + "go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc" + "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc" + "go.opentelemetry.io/otel/propagation" + sdkmetric "go.opentelemetry.io/otel/sdk/metric" + "go.opentelemetry.io/otel/sdk/resource" + sdktrace "go.opentelemetry.io/otel/sdk/trace" + semconv "go.opentelemetry.io/otel/semconv/v1.26.0" + "google.golang.org/grpc" + "google.golang.org/grpc/credentials/insecure" +) + +var serviceName = semconv.ServiceNameKey.String("gate") + +// InitConn initialize a gRPC connection to be used by both the tracer and meter +// providers. +func InitConn() (*grpc.ClientConn, error) { + // It connects the OpenTelemetry Collector through local gRPC connection. + // You may replace `localhost:4317` with your endpoint. + conn, err := grpc.NewClient("localhost:4317", // TODO from config + // Note the use of insecure transport here. TLS is recommended in production. + grpc.WithTransportCredentials(insecure.NewCredentials()), + ) + if err != nil { + return nil, fmt.Errorf("failed to create gRPC connection to collector: %w", err) + } + + return conn, err +} + +// InitTracerProvider initializes an OTLP exporter, and configures the corresponding trace provider. +func InitTracerProvider(ctx context.Context, res *resource.Resource, conn *grpc.ClientConn) (func(context.Context) error, error) { + // Set up a trace exporter + traceExporter, err := otlptracegrpc.New(ctx, otlptracegrpc.WithGRPCConn(conn)) + if err != nil { + return nil, fmt.Errorf("failed to create trace exporter: %w", err) + } + + // Register the trace exporter with a TracerProvider, using a batch + // span processor to aggregate spans before export. + bsp := sdktrace.NewBatchSpanProcessor(traceExporter) + tracerProvider := sdktrace.NewTracerProvider( + sdktrace.WithSampler(sdktrace.AlwaysSample()), + sdktrace.WithResource(res), + sdktrace.WithSpanProcessor(bsp), + ) + otel.SetTracerProvider(tracerProvider) + + // Set global propagator to tracecontext (the default is no-op). + otel.SetTextMapPropagator(propagation.TraceContext{}) + + // Shutdown will flush any remaining spans and shut down the exporter. + return tracerProvider.Shutdown, nil +} + +// InitMeterProvider initializes an OTLP exporter, and configures the corresponding meter provider. +func InitMeterProvider(ctx context.Context, res *resource.Resource, conn *grpc.ClientConn) (func(context.Context) error, error) { + metricExporter, err := otlpmetricgrpc.New(ctx, otlpmetricgrpc.WithGRPCConn(conn)) + if err != nil { + return nil, fmt.Errorf("failed to create metrics exporter: %w", err) + } + + meterProvider := sdkmetric.NewMeterProvider( + sdkmetric.WithReader(sdkmetric.NewPeriodicReader(metricExporter)), + sdkmetric.WithResource(res), + ) + otel.SetMeterProvider(meterProvider) + + return meterProvider.Shutdown, nil +} + +// Init initializes the OpenTelemetry SDK with the OTLP exporter and the corresponding trace and meter providers. +func Init(ctx context.Context) (clean func() error, err error) { + res, err := resource.New(ctx, resource.WithAttributes(serviceName)) + if err != nil { + return nil, fmt.Errorf("failed to create resource: %w", err) + } + + conn, err := InitConn() + if err != nil { + return nil, fmt.Errorf("failed to initialize gRPC connection: %w", err) + } + + cleanTracer, err := InitTracerProvider(ctx, res, conn) + if err != nil { + _ = conn.Close() + return nil, fmt.Errorf("failed to initialize tracer provider: %w", err) + } + + cleanMeter, err := InitMeterProvider(ctx, res, conn) + if err != nil { + _ = cleanTracer(ctx) + _ = conn.Close() + return nil, fmt.Errorf("failed to initialize meter provider: %w", err) + } + + return func() error { + shutdownCtx, cancel := context.WithTimeout(context.Background(), 10*time.Second) + defer cancel() + return errors.Join(cleanMeter(shutdownCtx), cleanTracer(shutdownCtx), conn.Close()) + }, nil +} From 93de658ce54bc14c7b45d0a290a32c163dd96052 Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Wed, 27 Nov 2024 17:26:06 +0100 Subject: [PATCH 002/107] add docs and improve env config --- .web/docs/.vitepress/config.ts | 14 ++ .web/docs/guide/otel/grafana-cloud/index.md | 78 ++++++++++ .web/docs/guide/otel/grafana-cloud/launch.png | Bin 0 -> 13725 bytes .web/docs/guide/otel/grafana-cloud/stack.png | Bin 0 -> 41832 bytes .../guide/otel/grafana-cloud/tempo-source.png | Bin 0 -> 26661 bytes .web/docs/guide/otel/grafana-cloud/trace.png | Bin 0 -> 196028 bytes .web/docs/guide/otel/honeycomb/index.md | 49 +++++++ .web/docs/guide/otel/honeycomb/metric.png | Bin 0 -> 209859 bytes .web/docs/guide/otel/honeycomb/trace.png | Bin 0 -> 167122 bytes .web/docs/guide/otel/index.md | 134 ++++++++++++++++++ go.mod | 28 +++- go.sum | 44 +++++- pkg/gate/gate.go | 8 +- pkg/internal/otelutil/otel.go | 110 ++------------ 14 files changed, 353 insertions(+), 112 deletions(-) create mode 100644 .web/docs/guide/otel/grafana-cloud/index.md create mode 100644 .web/docs/guide/otel/grafana-cloud/launch.png create mode 100644 .web/docs/guide/otel/grafana-cloud/stack.png create mode 100644 .web/docs/guide/otel/grafana-cloud/tempo-source.png create mode 100644 .web/docs/guide/otel/grafana-cloud/trace.png create mode 100644 .web/docs/guide/otel/honeycomb/index.md create mode 100644 .web/docs/guide/otel/honeycomb/metric.png create mode 100644 .web/docs/guide/otel/honeycomb/trace.png create mode 100644 .web/docs/guide/otel/index.md diff --git a/.web/docs/.vitepress/config.ts b/.web/docs/.vitepress/config.ts index 717a9759..78991d1c 100644 --- a/.web/docs/.vitepress/config.ts +++ b/.web/docs/.vitepress/config.ts @@ -174,6 +174,20 @@ export default defineConfig({ text: 'Rate Limiting', link: '/guide/rate-limiting', }, + { + text: 'OpenTelemetry', + link: '/guide/otel/', + items: [ + { + text: 'Grafana Cloud', + link: '/guide/otel/grafana-cloud/', + }, + { + text: 'Honeycomb', + link: '/guide/otel/honeycomb/', + }, + ], + }, ], }, { diff --git a/.web/docs/guide/otel/grafana-cloud/index.md b/.web/docs/guide/otel/grafana-cloud/index.md new file mode 100644 index 00000000..c4362923 --- /dev/null +++ b/.web/docs/guide/otel/grafana-cloud/index.md @@ -0,0 +1,78 @@ +# Grafana Cloud + +[Grafana Cloud](https://grafana.com/products/cloud/) is a fully managed observability platform that supports OpenTelemetry. Follow these steps to set up Gate with Grafana Cloud: + +1. **Create a Grafana Cloud Account** + + - Sign up at [Grafana.com](https://grafana.com/auth/sign-up/create-user) + - Navigate to your organization + - Create an Access Policy with write permissions at [Access Policies](https://grafana.com/orgs/your-org/access-policies) + - Generate and save your API token + +2. **Configure Stack** + + Navigate to your Grafana Cloud Stack (e.g., grafana.com/orgs/your-org/stacks/xxxxx) and: + + - Click "Send Traces" in the Tempo section to get your traces endpoint + - Click "Send Metrics" in the Prometheus section to get your metrics endpoint + + ![Stack](./stack.png) + +3. **Prepare Your Authentication** + + You'll need to encode your credentials in base64 format. Use one of these methods: + + - Using the command line: + + ```bash + echo "YOUR_INSTANCE_ID:YOUR_API_TOKEN" | base64 + ``` + + - Or visit an online base64 encoder like [base64encode.org](https://www.base64encode.org/) + +4. **Configure Gate** + + Export the following environment variables before starting Gate: + + ```bash + # For traces (Tempo) + export OTEL_EXPORTER_OTLP_ENDPOINT="https://tempo-prod-XX-prod-XX-XXXXX.grafana.net/tempo" + export OTEL_EXPORTER_OTLP_HEADERS="Authorization=Basic YOUR_BASE64_ENCODED_CREDENTIALS" + + # For metrics (Prometheus) + export OTEL_EXPORTER_OTLP_PROTOCOL="http/protobuf" + export OTEL_METRICS_EXPORTER="otlp" + export OTEL_EXPORTER_OTLP_METRICS_ENDPOINT="https://prometheus-prod-XX-prod-XX-XXXXX.grafana.net/api/prom/push" + export OTEL_EXPORTER_OTLP_METRICS_HEADERS="Authorization=Basic YOUR_BASE64_ENCODED_CREDENTIALS" + ``` + + ::: tip + For production deployments, consider setting these environment variables in your system configuration or container orchestration platform rather than exporting them manually. + ::: + +5. **Start Gate** + + Once the environment variables are set, start Gate normally. It will automatically begin sending telemetry data to Grafana Cloud. + + ```bash + gate + ``` + + See [Install](/guide/install/) for more information on how to start Gate. + +6. **View Your Data** + + Log into your Grafana Cloud account and click on the "Launch" button for Grafana: + + - Navigate to the Tempo service to view your traces + - Navigate to the Prometheus service to view your metrics + + ![Launch](./launch.png) + + - Go to the "Explore" section and select "Tempo" to in the sources + + ![tempo-source](./tempo-source.png) + + ![Trace](./trace.png) + + - Or select "Prometheus" to view your metrics diff --git a/.web/docs/guide/otel/grafana-cloud/launch.png b/.web/docs/guide/otel/grafana-cloud/launch.png new file mode 100644 index 0000000000000000000000000000000000000000..8da870a1e73e08ddd8c5030b521ef69b81769553 GIT binary patch literal 13725 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 literal 0 HcmV?d00001 diff --git a/.web/docs/guide/otel/grafana-cloud/stack.png b/.web/docs/guide/otel/grafana-cloud/stack.png new file mode 100644 index 0000000000000000000000000000000000000000..682b55655a50a1593c6a82a5f2c9886e112f83ed GIT binary patch literal 41832 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 Hkq5zurIpZmDqgU+M}2T3$1Qi;b!r|9>Vv5 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

`E9KCHlh9a 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 literal 0 HcmV?d00001 diff --git a/.web/docs/guide/otel/honeycomb/index.md b/.web/docs/guide/otel/honeycomb/index.md new file mode 100644 index 00000000..e2e847bb --- /dev/null +++ b/.web/docs/guide/otel/honeycomb/index.md @@ -0,0 +1,49 @@ +# Honeycomb + +[Honeycomb](https://www.honeycomb.io/) is an OpenTelemetry-compatible observability platform that requires minimal setup - just sign up, create an environment, and get your API key to start collecting telemetry data. Here's how to get started: + +1. **Create a Honeycomb Account** + + - Sign up at [Honeycomb.io](https://ui.honeycomb.io/signup) + - Create a new environment (or use an existing one) + - Get your API key from Environment Settings + +2. **Configure Gate** + + Export the following environment variables before starting Gate: + + ::: code-group + + ```bash [US Region] + export OTEL_EXPORTER_OTLP_ENDPOINT="https://api.honeycomb.io:443" + export OTEL_EXPORTER_OTLP_HEADERS="x-honeycomb-team=your-api-key" + ``` + + ```bash [EU Region] + export OTEL_EXPORTER_OTLP_ENDPOINT="https://api.eu1.honeycomb.io:443" + export OTEL_EXPORTER_OTLP_HEADERS="x-honeycomb-team=your-api-key" + ``` + + ::: + + ::: tip + For production deployments, consider setting these environment variables in your system configuration or container orchestration platform rather than exporting them manually. + ::: + +3. **Start Gate** + + Once the environment variables are set, start Gate normally. It will automatically begin sending telemetry data to Honeycomb. + + ```bash + gate + ``` + + See [Install](/guide/install/) for more information on how to start Gate. + +4. **View Your Data** + + Log into your Honeycomb account and navigate to your environment. You should see your Gate service appearing in the list of services, and you can start creating queries and visualizations to analyze your data. + + ![Trace](trace.png) + + ![Metric](metric.png) diff --git a/.web/docs/guide/otel/honeycomb/metric.png b/.web/docs/guide/otel/honeycomb/metric.png new file mode 100644 index 0000000000000000000000000000000000000000..20eb964e150284a26fbdb7fb2b70221afab8a397 GIT binary patch literal 209859 zcma(31yo$YvM&w;fdprO;O@@g?(Xgy+}#F;pa}sI+)0AF5AFnacXxM}|K!|r-#g#C z=brV=+I!8O-MhMXS9Nt)SN&?fs3=LJAmSrJK|!I&%1Ed|LBY8|LA^VKe-F7c^NBDP z3JO}!MqFG)R$QD^#ns8u#@+%7iuQ-ccYgVIs(>(M4h&gFWLiYM(oYl;2;LftJs;@{ zLvb%O9k^U5wp|uVBR_2@S6-sgCV66rA|dg^A&HXd=<3eXEu~aur5C2t8m0IOp<0ET z1jRUNMz#=${IbR$NVT!>a4@`R>4+c$p-XAZ43a0w46}cBatNG#XP|c0w^JHD5!^|) zbGiH5)AJ(}qtM$(y`U4d{%j$qmI`J#LIccpPYfO9*^eh=W=Wy%rQ8oXu1y1b(F*i< zG;49bbs1@7!av>}U>iGahz00BEs8p>#WOJj2Y5?O7(XE)zF~Z&jJJJ`kL9>@p@#J| zVJV~NLxp4IgYh;WaLdRsfq`~~7uAwjeYkrebXr4G7{xFm0(yMNXnXfsycMk@^2X_$ zh*|vW)nLY=aVUL5CEg$F=g~NLO$%xaS0%9aB=)ProN~}8y>FTFvYy4HX|OdTgxOja zI~!DCrGZNs6s04y@1a%*>YXFed%%gc+|i=ElY)e6YU%gYO7VFR+UF+rYSa`Sd{Hvus@ zx>5XBCI4NIgoT@#tBtd}jguqk-+E0V}XC{JqPkVgs_U*OjnwfUpPBh7cwUW|84SLNOk^&l%1FT zUrGO^=>H|vbhB_3cXEI<>MrzuW%Ezse=Yncp#bo2-~WXd|HbHk+=Xyj2vGp|f21aa zNZuUo1O+7mB`YDS0fIixgiHC@haCny{l0#xMB2HMxqgZoOiAeti-1oFa`u{AKZSf8 zJ3k+lsLP`Wf_s^dnfET4rVM9i0>^4I+B_IiB3l@Y8_Nj=J=K^dWjfvvGI-mD-nhG% zzC$7WKZoDPU>arP01baFYG@2nXpD1yn9i4SI_9_M>A4Y4vH$uX8%=|fH2D9c zs?cleqp1&nq7!)9BWcoK&bp|Dmle4r|Mz~2zy!xb`m@&RdnfBl!YD!eC95ba6#1@h z>7>o~MU2>Z;eaa}?>}+woC+|$@$s|wCi)Qx;CF!fj5;*Vk^~<9f8veb0j!X>!m`Sb zP1;~^b@Fnzgd(|d-s9?!E8~BVkqC@vY6lIDi~ptx0jEDF0x`XT%I=sy#XrOhk@UYi zlo9;Y(76ptuQ7OSpq2T}N08B}F}mq>f}K_`^rQ0}Iqq<`#Ts*(7U zb=ZP)H#!ueKD3;~j#u&8Om`RaYNqud`=17!F(tGxrVH6*6H*>jH9}&CU8q5*4Cv{w zv7lokO#VMfGZ>f|lpUrXBy*G~Df_5~g#dIi5>PV&+s4&=I_2D!-s1+%5MIgt2lXZG z$2`YGp99VNNFrr5-FH)3-Ngd0i+TP*L@I*G6L~o2o+qeG1#befrZ(fI$$o~+7 z$T-b94f*LiszGYTLqQ#Yv&~;+0?Z?bbof8rW}3fpRfQtrkyoCfKE1(Vf^Ht84VqlF z&olGCKfwi}Hyr(adR-ZobiGY;(_!}vG`4NnLsCBCMZ4{TgFo~GBC8G@NL2#waQKaZ z2kb7-;;isB$#W9Us@*~ZRl`7G&MM$JT$#mKlI*!Ogt_n;uOkAW1tF3aWa_B$ z@I?8N?xTSrdpuMmfRAdg?Lu`xBe~^mX{yCsmcJIEV=|d%&T;w5(@K)bdjwccm~^mx z@(KT~Oy#FeO5@dxI0orisJbZlUm|GBP#!Y#sj;L%XKdY{{a{73sQ#hR&hk)XA0fTQ zj$K0bcd)!isP{_|{X4vj$)TO18gAkQ-3C4!3{^xVYSXu%3plJOI(rTfWHm8!cStA( z!7#VO8)F2ozJ&MRf0=S<{>P42Q@OfOZSh>Op6 zIZY5$*0$4CP~Y zklnOq>$_jG<@sIMy+_CA00x#x2GHPr1kMby^R(TMbWyAKwi`EYbGyE!MvA-3P;*o=uCHX|Y9U;T3NCT7x{%A(#A z!KrSGpNGmc+ucPt{I-wE#+UzEyRb8SVfct?(>tylSr$WH?ctkmEJY~wHlC!pFPWz4 zF7-4kq<1%FPmsM2d~|p;S+SaSsS}=kG`P*^sIeL|zgdiS-93hD^n3|lZu8e}d!+x` z6GfnpLG=yz=PPys?nI9FD!kjvw~lCndINCSuhsgq<-EwFI8@AktHGbyg73&3S(NWC zvWHCaY!LTA4f&IPiD=L`T1<2D@%DGTzP{GY9yO*|tUvPq$Wf(;ad>bfgy|r%|1PQf zhHfn>AmCl*tuwpYFqmHVC-#;XAVvnpS6vX&_UN9F`& z{Fw^6R5nXz{TRFeaZ=5}Z44?`O7HvrfVezd*57ujD^B1pt$%M^ke&lTz|FR++P*1Z zXuO(>vCK2PQ^ug6FOdRuHd?_{$*vz=nVhf}eMqPqcgWD{)oo0>*2I)1mGqA(z21^0 zfQn)Y%ryJPM+E|ax*~xTKq}2?q^9i=tf+k>G~;RDz)zdUWY{Lf_qw2-CE)Vr+I4)E z&h2D=lZI05xk8NIy7WgV{Kmy(SHecY8ah0QPzEybxVm25i~8xSuQE3wzm@{t z^cxTXZ}OFJ(@Wn%{@)u00A~b{K6LWO3PmvLcU6$ivsD?DdSm841BMADSx!KdIuGfxg)GZlCSLL@?-4nAEou!AkY%+P}E)dFpYN+cpU_fZxR{GMCH@ZmTLBgvK$ei<79G>mmO3V z*_lpnV!Aj+TiXsc7JnEseAXS(U#hvCsNI^OxkbBC$k3n4D%z9l@ch%0uvah#8LPevT^#d*{X=p^hKJ#!mg;TlO@>NML(0G`+ zLT%ZKFBo>*2MoAg|$}#sHO7 zOsQIh(hU?AhS_HBL29qkhHAsKrH@oi?3;07)oj*^B77z`H-e))k#L47D5MmfZ9j;C`O)ugj^^0RZv8sJrPx46`+n>Az`F{WLaz)`4uR1?`~HI|i_%5EiBpp+@Z`BkJ@5Y)+DEB8~- z@0bSx76bz{Zi^fLh1W*cK|*Wn3Aod3uySpQQOFR`{4E_tZ6TL@X)z?)zR2LbWq=TT zD^jsmxxiKBZjHsp)XjZBS?;5BpKv?Y5_Y*37@KGEvglJI`87G-*EV$PbtPTMf_vHV zXtzw?b-SN6Gn;O!9z!t`lkntpC2*&sQ=IPsGKQ%vhjC*hTMV2ohR$4Xmw8iJ{p0*z zX0(}yfckA}BUD!s#acz%Y{IlOM$Mjv5Pds1V20?2^kkm=mQCuv8d5+F#v~*TQHZY*MC>?Lr%vPT!tvIZ)uDGn!T1}1=$o3VKaM%eYpCA~tyQp*7FWP1o&YJdq zW5(=7##YGR8T>5~lly0Uss0RJK%>l47XiEkK1&j4Y!wRDJ$kTw*vNUywH@hoeSMa6 z(iHaJ&Cn=SGwzMWqtvZ2zt+l3m2-co(KqgV7dFF|t6b2HPblQGoW^K1nw6Z>r!>fY zpth7}1}9dO6BKogKSTf6{K0++b)|LNegB-bXlb2Bx6UsnR6VOVdy#ZiDeV|N+55a> zRj;S+)@0KhtzuvKB+++w81G=Um0xoC?!(shKs<(^kNb<2pwR3N=wfr=JDGT{kH_5V z?QFFHWXBKB2U|KP%;;-bULK#7*q2-K?gLtU*%Ejtli!O<{Lv{_?T@SNwX*D3G3yyS zAVtvXhenCsXrI1N@oCX6(10?1y7eF=0!{PyZF};v9y^ZH&T?foS9Xe0vpC_S3sFBY zuaCkmP=_(Sp4M?tl{9SgwmB?a+$B)gKR*MW*{FrG%Ir^EMY|^x=wT>4L?=f)BK8N; z*PNNn!ih-X*Krm9Gk?!=@k0J@)(m>NKXYZWrWbPyhA5<>=g1vL4ij(s#g&l)!-uB| zM*D+;#jlfGP^^~=gVlkMHYt&?nP(4(7VB>kBafyFqe6?OEUnS&4HhQphchF@v!YDF zl#yQSRwF<9e^4MD!dmjXZWkgG^L0%b((2`^e8+S#Boc>TblYS4UTZT2lJD`*40!me zd3o0UCbuJpHEsQA4*y$0Whxzn`#czrhyydeofglJER+55Uq;4RdRBu>;f>b^)wzCN z$G)8F!(8nG6SCwUgMO>H(w{((v!P#58@ws z6n87yy);ZP@()yys8?oaTJ-q6PPXXf3uekS|5)sQhC@nj{OE!n-ZjC(s#{0DLlpnw zx6&-eEoS)*k6SX}rLidcuCwO7?+r02gH{=q_9oMzXu}^8F~$xC95U>1WY<7@fhFuK zp%{@cM6B(C?0~rJz}E!_@vFVD zN+v%1$^%t(t-i0ayE94^@W@B~vWJQ8HF=MIx%m(UMYqm(`uup4K7A!>xPy$@m2|T^ zLa zk2iI4sdIR4d@8w*@kHiAhD6;GUohm}+I{6qby!>Lvdaf64Cb-A%FKe#uzf0r&7{Pdied(jD!pbg<|Mw;Vw)@EjnMZ7^pi#K4=q*r{}sKOtN{M8k|%a=E-4sCu0jg11iiRpnkyl%TPWqNhf^6}?B`qmV7v!!vgKcrKTYopIhvIM+)X#6>dq;*1M zPKX43G-gY6bK1}b@*rY;+~}D0{pr}HRjNa#U15|+F8Nia z_Z!~Ll1XGu|5BTOa}#tl4Zt0T*?@K+jw*f&Vm&y8hNBP^Co}AMv^9GBK3*5uFE^oEAr6XOBkFNqYcwQ zV*m=)ej2~_CNb;(+H7=6&JMJtR>Yr~Yhci#rJ1ptRX5!*RxA7zaKa1rTzOALUNEtm zMqBH#gxctJmX*MC)mk3%whkTQ4&Uv4xjp%rWzy?xp~UoXE$*!CNo%&;5U9&$rIuqi zTGa5kR(NI3_VI`R6B?~k_mJ9e5c-$%S2C;vE6qm8Tr1ZJ^FUer^$(hUgY_4mpHX?H zqgGQ#=ak_%tfwC?_lC^wDkH80!t+j5O?sS_p;Y-ydm@{NU%UGYqSL|qEz6Cr^A1Z| zv`|dz^IOZum}FjKtNxz>y6w-;In#wkl4mHPOZg)KT2E~YN*LZ)8Hv1Iuit9u zJufTRYTW^p$(F_DS906frF!7l6T$!~!huFR{Q%9k_t?yO^e&t0zK5)zPiIe-suf>^ z+FrOqDCN^6A`Boac2JXJ*0|{>NT*LgA!q?K1l&#&g{VY)j0hM#$t{QVaLvD^_D|;P z^o`m;MS(~Iao%eb8rzIAD_Ui-QeBp|t%M3(Ar9W^O1$9#H~vPM^g0$B}*Sh{tyTt|1udYkKM%X3Z;LV1% zcgh6y{~%wedwskin3*%<>w(){?hFv`uf-oF>Wj(NAj6aNuGv-DcoEtr5%e@r%H%7{ z=y5ILH5~0fm@2r56v-HBQxjvAA`80XK3q)i;YI(=FzUbC zR*o|S^P5X9^Umio2<)u_;$I}H`Uye8u&Vo$iv-86Cn0MH!GY@kK(hae7 zN3#rq8*Qu4)jJH=0kGPnD#UxvSDC)oYk`Lg4w({aeor;)u67yxY4<>`3rcAes&ZUul6`r+aeyJ~>B(12w?)SxXGoHcAuI}$u3aiO zmVF`S=%hZ;@sH0o*^J5tkC1n_2(B^B{AEY*!2g zL#b3;<~QZ`Ml3TXr2jP#NA zXPcGw_S0E=a=^=@Y@O|ld$tNs;Op}v8LQjw@ML>n;L7`$Ft0M(#A-cS5$}rdGqH}$ zmoak0hSjhkS4w~g{HF#UM&(nqITnLCxkP&AkoRcGNI1-cb~j>$OUA7U@bk;mn@ZWN z`luyj*-||#wcaJqv(?eqqQ=EnTR+LVE$+WV$5F{s3ljP#UY`D8(QYZl=lEISem0@+ z-G=o;sI}?nD zw#U$$%;XmJht$)F!F7zs%Er&Y|FTxCqh<9uhD{Z+`0QwRopQnEdd-71CS3Gf0&64i ze0Op}W{`gJp+`9zu@Qi50+7Gl9mzXw+&qYwBhu%dKOrVwKbm$b74Q&0+6w)!5a92# z&lc!;@{1&ktjW05M^RAXL%c=Qo?Q$)_b0)&)R_>W@;7UwE{Q4^xTm{7nV`N_0dMGKav!en{ zW>$wmun0b)G?{+6B)FM`-B97Hb)vu;@?B=wM|>WWhXF(mCecw%Sq=Z_roYx*y}P@F zSSUYCY=!V6B|+#Mp3mkx(T3u$cSo^oCX?>|%%WRIvrf~WnIsG%FWR4PBZQJkkN+gt z)LdWSu@zQeo2dp2&wt^2@3^u!Q*~&rp9nQut?5e@-a4^YiV&Y~W8(ch|Laj;N24QQVs$E}PjsvQUqpla*#;;|S7^QZJ8ohQwpv{hzKiVvq|g zZZjI2mILL!r3;xQ1x(-w2MGATN@u02zh4?m;*4@XomN7M)2=X#ciEyjs00AwO&+G5 zChDJZ3GOA{I(2jG>WSs%S1az|j;8X*;<(E67t0TLxJ$L>j45)JQ~AVOarxE?msc~WzJJc)57TiCIKDXRnkzG`1~ zuh&n{GJG&PEI{8SMxxYg+3III57)b=I}cxEGM=sb^&Om;A!d(}h;h_lE*Dd@z6^xJ zr-&1=$Z(2Sx@?u!>n<ixOF(BK@s!bJE-s%iN(7-IhCFniQ_jU$M#1T zyQtgnq*1r7#%F$4-kv_r(M8I0bXds5w4=dq(si$7lSQ@Ovt}d0nYq!>@6^)~QlVIJE}YQ$paTK+ z=nVA%t!a+kO!tz;N7F?V@=1&nf#=wUm7jtQYhp=+lQ5{{tXP?A5g6~)Nxeayl14#OkJC^El5PVn0wyJgEO+N z(QR*b6?~3-x>#2N*||zZjdX{jOmSyumS|zYkN2`!4CWq*|McX5p94sAd|GaBskRux zW;%!1@#;?RhS$-N!`A~hdk{R-cV4bOgqw*o2JzU1yYb&bA8A3)HH$YG)^-1le%-;A zx;R%IFJwPyWwmi=GH!6GaThe|nP+t;=ef|kSpC>Sh zF-=(C*Z)MT3ka^ayCZ&qTB{5o(rvaaQb^^{aza9@s>G{#RYeOws4ILgis52fZ@-d% z1v41PGs@G4f2M!+<<(FnYiK0EcFRJ0Do>t4nA54ajlC~Vp^;wB+BT0wXQaEy2Fj!` zi7|tLV3v7KY-5*c>Dt*6z6xML`fW@dX1f$G{wAc-B=&K3D++cA<;jH0Ki1es&56{POwl90hM@yRt^zr&gyo(H%h}4J~H)B^!-D9bX>k zIX?GtOY}OOHNub#Ou&-gW7rGQm@GJhDnPfN1veb01*N*!|+iZEXUSJj+ke!7*-o>HVCCQv+8D5`#_+07b zFg!1NxO$g3tmaUzTP3ns`=}Wkz~QD1s?UsNikJYL+xGB&+$2N>E_j|TkkC=<9^J|7&M| zve{W|;(=LLD1v+Hz#$*P#mi*g&|{0R_ohxNpGC{9&L4ThmL4~YqdBMPIhV-O{h^+V zoEz3m&L@%=HJD9)qheFBbFQ-2f>?e~ca3jX51nJ|uPrd*_E<^$uotok^}0>8+fTE8 zxX6}!<`i^c%--lYk~A*0t2=Y8v4o8o-us`PKSe|GTb~~U7QL2FliOZbF|{9DpMI3_ z;10&>nX*%^d%==R#!z~_wOY-QDya!oJuwf8^Pm(6C_WFB8@3;?C7l&bS?vUt@$os_ z?v%_a*~p0S8|e-ir^_x(QY~Xgl~5DVYLHfx>edgGBa6|j2b0Ss^e>j&1R-LsTi4n7 zEF19VKlS;H9_t!#rBnD?CLci7aF5hiI*jO)5=jH9U9oA&v_SpQ3=)Bs^*Y;79eW(K zAMo)(>D|!;+>0YA(Hr8r)u8h~UL;kYHmVSRVVZngZ$uhn#_eM4V8`iV3e{xne){4p&`sAnQp@2KKDwgI&CbdU3h9`A z2T}8|yR%%`cz2-|?+r=cyHmsZ_|%=j9aj5E`|igt<4Ev=CadLU*#IBt&&c4Hx=W41 zik4jTaOj&&(tGl6Nd8n8O?rnd;%s0 zsTX>mdG-=FI*G(XS@ppe_!0(UpnTmUigMb~ok}&TuXbbfAZ~*PPk}-Xi9X{;V&YX{uEX5ov%Kih&d*y#GrU|nvw943rRwG_-s&NZ>277D6zrS zXwi2O_%eWwf*XU8gymQkO;l3Q684D0_e;WV+PYIiej8P+4XO13LV9yrg5=G?_=mIC zkUAa$c1z?D*xxM3t4`-y%{k?7S2zKYF8&7o++{`=omxM^GPSXuME;HnS@uds7Q;;3ayrB?DLO`u6JdSgk(7F&#Ba3?6R zkBMgr_74TZDwzPwVqrc&An(jM{9BMYa;x%VfP|PL*3%0l;GoCCWzbIbD#Mbb z97f(%hY{GA(13c;T>F(Q>WmE81YfDdjj&6tflp{>C=va6qw)0h<-;QShYe#=$}Qf# zUp}MaI#i*dw1r(9ohrm87|zVsnc-Vy)SBS$oXBq2~9N)*pxm@0q*V zAA)>}u$lBYn$N{n9nR!w3j!^m6e)s#Dv$=W@Yup{QZ*Y2oK-p|ADI4ed9V5LOTOvH z4aK~`1w|~J{zQkRwk6H#B@V9>9R^a=MD1{dQ9?<%dYi>rJthjhg)P#T zrAM9vhHe%;d8~!DyJ?1{#Zlp?^Hen{T%n4rxrlI%+gII;|ZLHBpcD=fkCnCX5E>p22CTd1zb6T$^t z67599)+d3z3-Z)mc9?o6-^hAPj;@IuVxV_`!$X9+_*^3V&gkiKW6ACnZsDeaQ=PB( z&FqIJ>7liN$@cVL-F^L$s#}SDpQx!slH%eHCA$hZo_A{)`e1qFNZmgObX`;({{$qmN*BB zbd!7REtw~&a-B?|{GARL@X2}A)dEB&5YT0QL+({~3HEo?h6TE@roBs2 z@`fYm?w1AiKK78_TWT3?HhZ1TC>h@O$V*}}EH^t~sr?2@7_@*ohPYcIdmk1A>b>hT zfq5BP*#M1HDF|Q^%CvvcpsHRBC zD4j|oKKF4Oc=uS@nb*f7p#QJlTcNyP!srxI)2u$|v2#G=Rd7lJvWsicz8rd^BKu2v9P!4(LMje`gdq(?Dxt#JtLgqAGie!8ms$ldoTo0=ZeTu zVu@c0w&t7YaW-1-u*A4&5cox3p^wRJKC#%=(HMJswfMOcj zh{fzPdt^gOWiP{0t5tT4C_HpS(xqug>i3W3hva_fG5pjb;_ygj;jOx8``M8d$c{Dn z%5fZN`k*3JMVE9G$GvMLL`HE5{K9b7Zl#iBGU-^NsiFId+(*Svmfj#1@s=Pfd`8h{ z(4rY6P^1b*mt5U3leiYQCD&uOS?mmn@Mz{~2oAs>w&0+5bH6 z8BL{>F%EINO_rN+??n5E1lZ5Yd=ZtTvi!CmCs;q$GnadqYSp=H!#CZl$BBUsOj-2U zFK)#;n!db0(XBr)9s(S)nCNVX!I^h<{dp9KMtCmPDE}#*#Ea++_~cfIy90q8B{p8| z+Qk~S6DP%-33icv+WtTd-xI3u|9CrxX-}S1&cL3-1~`QNrSu72Jp45shoStC>_q)I zzS+T-hN$nuXA0OklEjGiock0FUNEWS3n>;R&auzkVYxWnGrM-?)U@|d1&RsgxnXB6 z#Ho>{GV&Ij($^Q`-SUx@`0VaY!|@G?RPQ=lC)>#FgyK#9|33x)^Fx6YN2Oq*^$at^V% z_QzDsmoLA}0pH6Fug;}dQmyNozN*S!5kV`s?y86MF~D|Nj-(ybcT#(nTs&VC3;Lm* zTas)Zf*qFJ8-nxX1;bl?wC*4l>h$kz$kKCTZp3amtb%iGI9at7QAu(R4vXY<{@LeL z?!3{ZR-(o90>}nt-$kr|X3@@eH+B(CP^7-$lHsviCcwZU!b@27KxJ{*#I-$inOmL9 z+?IDv;l_86^|A=KqVqREf=-K1pzO5PdY7$Uz3o4@&gC7j#MILvUiBtSd$ik+=KbJ0 zB4!9i8kP_Sz?xj9Lq#ziDjzA1`U8Os9RRG5-@ElOB@UGe!r4pXJgSw(3~x5&;R)~T zVk^;U0Qhcxjj3Kma0qJn+@N&^ z37z=PZ9G9M>-TWETl^A_Q0q3AKXSM}oiawr94UxJ7kIEN)Je)tuPPC0mSbOj)xi9q z$!M$;k=9{u!Q!`9MRFeWXWYEUOR5kaloOJOZXWfK{wFovNlAp$+v+8bA>+5Br_)fV-k?1Wmbj3Yxt*gb-PQC!Cmdi+Dj5l$a0xt}=}F>Ie{=Wi-K z%HFf@yZ$hcV7R8~y5~z*CulQYE>R2xPx!a-eKM2!>G%2q9cVIxdG$CJV%YneP-t%s98dH}_RnS{$PL5V(J zjIMz_^x_=gf^+ER`RbPyTk19!Q{oPKkA}-5@x@WKZjV}w3lbre(R;pZzReAdw98@` zVHM?guKCqXWJW(UynFV=S+V?K=a)lh-8QW z5^SKX2_)V=y@$%!t%_{f*6s6WByiO~N&JRFI`&A5UYoIkdP6?HqQH`a9t=l@m)*CT zEN&7C+F#CV4k((r3~X-@2yar2c!OZSipSbhK4Hy~MK)!nx-i!SaF64(Sa;kJ%uz=^ z?%ti~>Koe3*}MDX^x0$Ps z6+h}5g}LT!p9Ob2;1JdPB5wVVBDrKWuo>o&L8;$`(-tI)2e{)h?o`X_ZT}NZL(LO{ zLOj1DJ!X*fshSUOr~G`rJ$|Ns)9QuF9G9 z#nioMku`}S_nDhVp!qTtYL^@6q6BNze3>iCA=w;Xg+#M!aa?Z>XJ(wiIfomKKSx96 zP9b0$`->~T=60$6n?uQHrzI;vh~vx(hT0vWixyW|VNZ=j&2KaBi`!X8yKf07_T4qW z#Z5VQVTN_8rYbw|Srn=D?WwgaixT!iNpYS=Kmir+y59X{RXrS)pr|BQ#pMnFoM!J9 z7ox`bg2j+@3vkuMzPM-6=M^9ie9gvghJZ_RQy!FBR3i?0j%{NBR=s+j7=6LRzN(l5Z-~w3c-6u0;xc$YZxOa64j`>AF%g zGTAE8DvRIl<>~FZ&SCX)*rP9&KGBx39tRo+4D;jzkJ)+KUe4;`iemxUd9UFb6*xs%rC0<{Ma0Wp!>^D zmnkltZ5Q)5zo|5{Ay`Z?<3=T4k+>kxDFuNzK6NADJto}k@#-Jy&nZpM?$j)5VRRjh z>&J~qgX$M4xAP?Ywv{6U6%Zs_wflh_7NR*A)d8xL*yt(c92qkvPa)OdkN-`Bbmr9< z4AZTaR(np*q2yfS6;1-}jC%GMHnVO%H);VP#UcOQt~jC*Vh6g_P1?<+(wDA=2;=t7 zEh_D=9|wd!K8MPKbc2!+;p;<^-7aPtJ2FkkIgmXfSR$&alZu-!g=G5*zX#6rn57T` z_9`Hdh(fE_%%(4tvKU9o�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

S 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 recommendations + +- [Grafana Cloud](/guide/otel/grafana-cloud/) - Fully managed observability platform with support for metrics, logs, and traces +- [Honeycomb](/guide/otel/honeycomb/) - Observability platform designed for debugging complex systems + +::: + +- [New Relic](https://newrelic.com/) - Full-stack observability platform with APM capabilities +- [Datadog](https://www.datadog.com/) - Cloud monitoring and analytics platform +- [Azure Monitor](https://azure.microsoft.com/services/monitor/) - Microsoft's cloud-native monitoring solution +- [AWS X-Ray](https://aws.amazon.com/xray/) - Distributed tracing system for AWS applications +- [Google Cloud Operations Suite](https://cloud.google.com/operations) - Formerly Stackdriver, for monitoring, logging, and diagnostics + +### Self-Hosted Solutions + +#### Tracing + +- [Tempo](https://grafana.com/oss/tempo/) - Grafana Tempo is a high-scale distributed tracing backend +- [Jaeger](https://www.jaegertracing.io/) - Open source, end-to-end distributed tracing + +#### Metrics + +- [Mimir](https://grafana.com/oss/mimir/) - Grafana Mimir is a highly scalable Prometheus solution + +#### Visualization + +- [Grafana](https://grafana.com/oss/grafana/) - The open and composable observability and data visualization platform + +## Best Practices + +1. **Service Name**: Always set a meaningful `OTEL_SERVICE_NAME` that clearly identifies your service. + + ```env + # Good examples: + OTEL_SERVICE_NAME="gate-proxy-eu" + OTEL_SERVICE_NAME="gate-proxy-lobby" + + # Bad examples: + OTEL_SERVICE_NAME="proxy" # too generic + OTEL_SERVICE_NAME="gate" # not specific enough + ``` + +2. **Service Version**: Set `OTEL_SERVICE_VERSION` to track your application version: + + ```env + # Semantic versioning + OTEL_SERVICE_VERSION="v1.2.3" + + # Git commit hash + OTEL_SERVICE_VERSION="git-8f45d91" + + # Build number + OTEL_SERVICE_VERSION="build-1234" + ``` + +3. **Resource Attributes**: Use `OTEL_RESOURCE_ATTRIBUTES` to add important context like environment, region, or deployment info. + + ```env + # Single attribute + OTEL_RESOURCE_ATTRIBUTES="deployment.environment=production" + + # Multiple attributes + OTEL_RESOURCE_ATTRIBUTES="deployment.environment=production,cloud.region=eu-west-1,kubernetes.namespace=game-servers" + + # With detailed context + OTEL_RESOURCE_ATTRIBUTES="deployment.environment=production,service.instance.id=gate-1,cloud.provider=aws,cloud.region=us-east-1" + ``` + +4. **Security**: In production environments: + + ```env + # Secure endpoint configuration + OTEL_EXPORTER_OTLP_ENDPOINT="https://otel-collector.example.com:4317" + OTEL_EXPORTER_OTLP_HEADERS="api-key=secret123,tenant=team-a" + + # Ensure TLS is enabled + OTEL_EXPORTER_OTLP_INSECURE=false + ``` + +## Further Reading + +- [OpenTelemetry Documentation](https://opentelemetry.io/docs/) +- [otel-config-go Repository](https://github.com/honeycombio/otel-config-go) +- [OpenTelemetry Collector](https://opentelemetry.io/docs/collector/) diff --git a/go.mod b/go.mod index 84ab81ff..0e85ab0b 100644 --- a/go.mod +++ b/go.mod @@ -19,6 +19,7 @@ require ( github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da github.com/google/uuid v1.6.0 github.com/gookit/color v1.5.4 + github.com/honeycombio/otel-config-go v1.17.0 github.com/jellydator/ttlcache/v3 v3.3.0 github.com/knadh/koanf/providers/file v1.1.2 github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646 @@ -34,12 +35,9 @@ require ( go.minekube.com/brigodier v0.0.1 go.minekube.com/common v0.0.5 go.minekube.com/connect v0.6.2 - go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.57.0 go.opentelemetry.io/otel v1.32.0 - go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0 - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0 - go.opentelemetry.io/otel/sdk v1.32.0 - go.opentelemetry.io/otel/sdk/metric v1.32.0 + go.opentelemetry.io/otel/metric v1.32.0 go.opentelemetry.io/otel/trace v1.32.0 go.uber.org/atomic v1.11.0 go.uber.org/zap v1.27.0 @@ -63,28 +61,46 @@ require ( github.com/fsnotify/fsnotify v1.8.0 // indirect github.com/go-gl/mathgl v1.1.0 // indirect github.com/go-logr/stdr v1.2.2 // indirect + github.com/go-ole/go-ole v1.3.0 // indirect github.com/golang/snappy v0.0.4 // indirect github.com/grpc-ecosystem/grpc-gateway/v2 v2.23.0 // indirect github.com/hashicorp/hcl v1.0.0 // indirect github.com/klauspost/compress v1.17.2 // indirect github.com/lucasb-eyer/go-colorful v1.2.0 // indirect + github.com/lufia/plan9stats v0.0.0-20240513124658-fba389f38bae // indirect github.com/magiconair/properties v1.8.7 // indirect github.com/mitchellh/mapstructure v1.5.1-0.20220423185008-bf980b35cac4 // indirect github.com/pelletier/go-toml/v2 v2.2.3 // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect + github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect github.com/sagikazarmark/locafero v0.6.0 // indirect github.com/sagikazarmark/slog-shim v0.1.0 // indirect github.com/segmentio/fasthash v1.0.3 // indirect + github.com/sethvargo/go-envconfig v1.1.0 // indirect + github.com/shirou/gopsutil/v4 v4.24.6 // indirect + github.com/shoenig/go-m1cpu v0.1.6 // indirect github.com/sourcegraph/conc v0.3.0 // indirect github.com/spf13/afero v1.11.0 // indirect github.com/spf13/cast v1.7.0 // indirect github.com/spf13/pflag v1.0.5 // indirect github.com/subosito/gotenv v1.6.0 // indirect + github.com/tklauser/go-sysconf v0.3.14 // indirect + github.com/tklauser/numcpus v0.8.0 // indirect github.com/xo/terminfo v0.0.0-20210125001918-ca9a967f8778 // indirect github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1 // indirect + github.com/yusufpapurcu/wmi v1.2.4 // indirect + go.opentelemetry.io/contrib/instrumentation/host v0.53.0 // indirect + go.opentelemetry.io/contrib/instrumentation/runtime v0.53.0 // indirect + go.opentelemetry.io/contrib/propagators/b3 v1.28.0 // indirect + go.opentelemetry.io/contrib/propagators/ot v1.28.0 // indirect + go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0 // indirect + go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.28.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.32.0 // indirect - go.opentelemetry.io/otel/metric v1.32.0 // indirect + go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0 // indirect + go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0 // indirect + go.opentelemetry.io/otel/sdk v1.32.0 // indirect + go.opentelemetry.io/otel/sdk/metric v1.32.0 // indirect go.opentelemetry.io/proto/otlp v1.3.1 // indirect go.uber.org/multierr v1.11.0 // indirect golang.org/x/image v0.18.0 // indirect diff --git a/go.sum b/go.sum index 6a55304a..6aa8af0d 100644 --- a/go.sum +++ b/go.sum @@ -66,6 +66,9 @@ github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= github.com/go-logr/zapr v1.3.0 h1:XGdV8XW8zdwFiwOA2Dryh1gj2KRQyOOoNmBy4EplIcQ= github.com/go-logr/zapr v1.3.0/go.mod h1:YKepepNBd1u/oyhd/yQmtjVXmm9uML4IXUgMOwR8/Gg= +github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0= +github.com/go-ole/go-ole v1.3.0 h1:Dt6ye7+vXGIKZ7Xtk4s6/xVdGDQynvom7xCFEdWr6uE= +github.com/go-ole/go-ole v1.3.0/go.mod h1:5LS6F96DhAwUc7C+1HLexzMXY1xGRSryjyPPKW6zv78= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= @@ -101,6 +104,8 @@ github.com/grpc-ecosystem/grpc-gateway/v2 v2.23.0 h1:ad0vkEBuk23VJzZR9nkLVG0YAoN github.com/grpc-ecosystem/grpc-gateway/v2 v2.23.0/go.mod h1:igFoXX2ELCW06bol23DWPB5BEWfZISOzSP5K2sbLea0= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= +github.com/honeycombio/otel-config-go v1.17.0 h1:3/zig0L3IGnfgiCrEfAwBsM0rF57+TKTyJ/a8yqW2eM= +github.com/honeycombio/otel-config-go v1.17.0/go.mod h1:g2mMdfih4sYKfXBtz2mNGvo3HiQYqX4Up4pdA8JOF2s= github.com/jellevandenhooff/dkim v0.0.0-20150330215556-f50fe3d243e1/go.mod h1:E0B/fFc00Y+Rasa88328GlI/XbtyysCtTHZS8h7IrBU= github.com/jellydator/ttlcache/v3 v3.3.0 h1:BdoC9cE81qXfrxeb9eoJi9dWrdhSuwXMAnHTbnBm4Wc= github.com/jellydator/ttlcache/v3 v3.3.0/go.mod h1:bj2/e0l4jRnQdrnSTaGTsh4GSXvMjQcy41i7th0GVGw= @@ -122,6 +127,8 @@ github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/lucasb-eyer/go-colorful v1.0.3/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0= github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY= github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0= +github.com/lufia/plan9stats v0.0.0-20240513124658-fba389f38bae h1:dIZY4ULFcto4tAFlj1FYZl8ztUZ13bdq+PLY+NOfbyI= +github.com/lufia/plan9stats v0.0.0-20240513124658-fba389f38bae/go.mod h1:ilwx/Dta8jXAgpFYFvSWEMwxmbWXyiUHkd5FwyKhb5k= github.com/lunixbochs/vtclean v1.0.0/go.mod h1:pHhQNgMf3btfWnGBVipUOjRYhoOsdGqdm/+2c2E2WMI= github.com/magiconair/properties v1.8.7 h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY= github.com/magiconair/properties v1.8.7/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0= @@ -145,6 +152,8 @@ github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINE github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 h1:o4JXh1EVt9k/+g42oCprj/FisM4qX9L3sZB3upGN2ZU= +github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE= github.com/prometheus/client_golang v0.8.0/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/common v0.0.0-20180801064454-c7de2306084e/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= @@ -169,6 +178,14 @@ github.com/sandertv/gophertunnel v1.37.0/go.mod h1:4El8ZfEpUmOMIJhPt5SCc1PyLNiuQ github.com/segmentio/fasthash v1.0.3 h1:EI9+KE1EwvMLBWwjpRDc+fEM+prwxDYbslddQGtrmhM= github.com/segmentio/fasthash v1.0.3/go.mod h1:waKX8l2N8yckOgmSsXJi7x1ZfdKZ4x7KRMzBtS3oedY= github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo= +github.com/sethvargo/go-envconfig v1.1.0 h1:cWZiJxeTm7AlCvzGXrEXaSTCNgip5oJepekh/BOQuog= +github.com/sethvargo/go-envconfig v1.1.0/go.mod h1:JLd0KFWQYzyENqnEPWWZ49i4vzZo/6nRidxI8YvGiHw= +github.com/shirou/gopsutil/v4 v4.24.6 h1:9qqCSYF2pgOU+t+NgJtp7Co5+5mHF/HyKBUckySQL64= +github.com/shirou/gopsutil/v4 v4.24.6/go.mod h1:aoebb2vxetJ/yIDZISmduFvVNPHqXQ9SEJwRXxkf0RA= +github.com/shoenig/go-m1cpu v0.1.6 h1:nxdKQNcEB6vzgA2E2bvzKIYRuNj7XNJ4S/aRSwKzFtM= +github.com/shoenig/go-m1cpu v0.1.6/go.mod h1:1JJMcUBvfNwpq05QDQVAnx3gUHr9IYF7GNg9SUEw2VQ= +github.com/shoenig/test v0.6.4 h1:kVTaSd7WLz5WZ2IaoM0RSzRsUD+m8wRR+5qvntpn4LU= +github.com/shoenig/test v0.6.4/go.mod h1:byHiCGXqrVaflBLAMq/srcZIHynQPQgeyvkvXnjqq0k= github.com/shurcooL/component v0.0.0-20170202220835-f88ec8f54cc4/go.mod h1:XhFIlyj5a1fBNx5aJTbKoIq0mNaPvOagO+HjB3EtxrY= github.com/shurcooL/events v0.0.0-20181021180414-410e4ca65f48/go.mod h1:5u70Mqkb5O5cxEA8nxTsgrgLehJeAw6Oc4Ab1c/P1HM= github.com/shurcooL/github_flavored_markdown v0.0.0-20181002035957-2122de532470/go.mod h1:2dOwnU2uBioM+SGy2aZoq1f/Sd1l9OkAeAUvjSyvgU0= @@ -212,6 +229,10 @@ github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf github.com/subosito/gotenv v1.6.0 h1:9NlTDc1FTs4qu0DDq7AEtTPNw6SVm7uBMsUCUjABIf8= github.com/subosito/gotenv v1.6.0/go.mod h1:Dk4QP5c2W3ibzajGcXpNraDfq2IrhjMIvMSWPKKo0FU= github.com/tarm/serial v0.0.0-20180830185346-98f6abe2eb07/go.mod h1:kDXzergiv9cbyO7IOYJZWg1U88JhDg3PB6klq9Hg2pA= +github.com/tklauser/go-sysconf v0.3.14 h1:g5vzr9iPFFz24v2KZXs/pvpvh8/V9Fw6vQK5ZZb78yU= +github.com/tklauser/go-sysconf v0.3.14/go.mod h1:1ym4lWMLUOhuBOPGtRcJm7tEGX4SCYNEEEtghGG/8uY= +github.com/tklauser/numcpus v0.8.0 h1:Mx4Wwe/FjZLeQsK/6kt2EOepwwSl7SmJrK5bV/dXYgY= +github.com/tklauser/numcpus v0.8.0/go.mod h1:ZJZlAY+dmR4eut8epnzf0u/VwodKmryxR8txiloSqBE= github.com/urfave/cli/v2 v2.27.5 h1:WoHEJLdsXr6dDWoJgMq/CboDmyY/8HMMH1fTECbih+w= github.com/urfave/cli/v2 v2.27.5/go.mod h1:3Sevf16NykTbInEnD0yKkjDAeZDS0A6bzhBH5hrMvTQ= github.com/viant/assertly v0.4.8/go.mod h1:aGifi++jvCrUaklKEKT0BU95igDNaqkvz+49uaYMPRU= @@ -220,6 +241,8 @@ github.com/xo/terminfo v0.0.0-20210125001918-ca9a967f8778 h1:QldyIu/L63oPpyvQmHg github.com/xo/terminfo v0.0.0-20210125001918-ca9a967f8778/go.mod h1:2MuV+tbUrU1zIOPMxZ5EncGwgmMJsa+9ucAQZXxsObs= github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1 h1:gEOO8jv9F4OT7lGCjxCBTO/36wtF6j2nSip77qHd4x4= github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1/go.mod h1:Ohn+xnUBiLI6FVj/9LpzZWtj1/D6lUovWYBkxHVV3aM= +github.com/yusufpapurcu/wmi v1.2.4 h1:zFUKzehAFReQwLys1b/iSMl+JQGSCSjtVqQn9bBrPo0= +github.com/yusufpapurcu/wmi v1.2.4/go.mod h1:SBZ9tNy3G9/m5Oi98Zks0QjeHVDvuK0qfxQmPyzfmi0= github.com/zyedidia/generic v1.2.1 h1:Zv5KS/N2m0XZZiuLS82qheRG4X1o5gsWreGb0hR7XDc= github.com/zyedidia/generic v1.2.1/go.mod h1:ly2RBz4mnz1yeuVbQA/VFwGjK3mnHGRj1JuoG336Bis= go.minekube.com/brigodier v0.0.1 h1:v5x+fZNefM24JIi+fYQjQcjZ8rwJbfRSpnnpw4b/x6k= @@ -229,16 +252,30 @@ go.minekube.com/common v0.0.5/go.mod h1:PCdSdTInlQv6ggDIbVjLFs7ehSRP4i9KqYsLAeeN go.minekube.com/connect v0.6.2 h1:RajPc7YgqygcOviV2g4xetL3J0Wzi8b/lsYXUzIltxE= go.minekube.com/connect v0.6.2/go.mod h1:28k11I4RyzUfAL3AkOXt3atzjeOFAC8eqbCMwsYKAb0= go.opencensus.io v0.18.0/go.mod h1:vKdFvxhtzZ9onBp9VKHK8z/sRpBMnKAsufL7wlDrCOA= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 h1:jq9TW8u3so/bN+JPT166wjOI6/vQPF6Xe7nMNIltagk= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0/go.mod h1:p8pYQP+m5XfbZm9fxtSKAbM6oIllS7s2AfxrChvc7iw= +go.opentelemetry.io/contrib/detectors/aws/lambda v0.53.0 h1:KG6fOUk3EwSH1dEpsAbsLKFbn3cFwN9xDu8plGu55zI= +go.opentelemetry.io/contrib/detectors/aws/lambda v0.53.0/go.mod h1:bSd579exEkh/P5msRcom8YzVB6NsUxYKyV+D/FYOY7Y= +go.opentelemetry.io/contrib/instrumentation/host v0.53.0 h1:X4r+5n6bSqaQUbPlSO5baoM7tBvipkT0mJFyuPFnPAU= +go.opentelemetry.io/contrib/instrumentation/host v0.53.0/go.mod h1:NTaDj8VCnJxWleEcRQRQaN36+aCZjO9foNIdJunEjUQ= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.57.0 h1:DheMAlT6POBP+gh8RUH19EOTnQIor5QE0uSRPtzCpSw= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.57.0/go.mod h1:wZcGmeVO9nzP67aYSLDqXNWK87EZWhi7JWj1v7ZXf94= +go.opentelemetry.io/contrib/instrumentation/runtime v0.53.0 h1:nOlJEAJyrcy8hexK65M+dsCHIx7CVVbybcFDNkcTcAc= +go.opentelemetry.io/contrib/instrumentation/runtime v0.53.0/go.mod h1:u79lGGIlkg3Ryw425RbMjEkGYNxSnXRyR286O840+u4= +go.opentelemetry.io/contrib/propagators/b3 v1.28.0 h1:XR6CFQrQ/ttAYmTBX2loUEFGdk1h17pxYI8828dk/1Y= +go.opentelemetry.io/contrib/propagators/b3 v1.28.0/go.mod h1:DWRkzJONLquRz7OJPh2rRbZ7MugQj62rk7g6HRnEqh0= +go.opentelemetry.io/contrib/propagators/ot v1.28.0 h1:rmlG+2pc5k5M7Y7izDrxAHZUIwDERdGMTD9oMV7llMk= +go.opentelemetry.io/contrib/propagators/ot v1.28.0/go.mod h1:MNgXIn+UrMbNGpd7xyckyo2LCHIgCdmdjEE7YNZGG+w= go.opentelemetry.io/otel v1.32.0 h1:WnBN+Xjcteh0zdk01SVqV55d/m62NJLJdIyb4y/WO5U= go.opentelemetry.io/otel v1.32.0/go.mod h1:00DCVSB0RQcnzlwyTfqtxSm+DRr9hpYrHjNGiBHVQIg= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0 h1:j7ZSD+5yn+lo3sGV69nW04rRR0jhYnBwjuX3r0HvnK0= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0/go.mod h1:WXbYJTUaZXAbYd8lbgGuvih0yuCfOFC5RJoYnoLcGz8= +go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.28.0 h1:aLmmtjRke7LPDQ3lvpFz+kNEH43faFhzW7v8BFIEydg= +go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.28.0/go.mod h1:TC1pyCt6G9Sjb4bQpShH+P5R53pO6ZuGnHuuln9xMeE= go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.32.0 h1:IJFEoHiytixx8cMiVAO+GmHR6Frwu+u5Ur8njpFO6Ac= go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.32.0/go.mod h1:3rHrKNtLIoS0oZwkY2vxi+oJcwFRWdtUyRII+so45p8= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0 h1:9kV11HXBHZAvuPUZxmMWrH8hZn/6UnHX4K0mu36vNsU= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0/go.mod h1:JyA0FHXe22E1NeNiHmVp7kFHglnexDQ7uRWDiiJ1hKQ= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0 h1:j9+03ymgYhPKmeXGk5Zu+cIZOlVzd9Zv7QIiyItjFBU= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0/go.mod h1:Y5+XiUG4Emn1hTfciPzGPJaSI+RpDts6BnCIir0SLqk= go.opentelemetry.io/otel/metric v1.32.0 h1:xV2umtmNcThh2/a/aCP+h64Xx5wsj8qqnkYZktzNa0M= go.opentelemetry.io/otel/metric v1.32.0/go.mod h1:jH7CIbbK6SH2V2wE16W05BHCtIDzauciCRLoc/SyMv8= go.opentelemetry.io/otel/sdk v1.32.0 h1:RNxepc9vK59A8XsgZQouW8ue8Gkb4jpWtJm9ge5lEG4= @@ -297,6 +334,9 @@ golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5h golang.org/x/sys v0.0.0-20181029174526-d69651ed3497/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190316082340-a2f829d7f35f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201204225414-ed752295db88/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.27.0 h1:wBqf8DvsY9Y/2P8gAfPDEYNuS30J4lPHJxXSb/nJZ+s= golang.org/x/sys v0.27.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= diff --git a/pkg/gate/gate.go b/pkg/gate/gate.go index 235b1f07..f0055f06 100644 --- a/pkg/gate/gate.go +++ b/pkg/gate/gate.go @@ -247,15 +247,11 @@ func Start(ctx context.Context, opts ...StartOption) error { } // Initialize OpenTelemetry - cleanOtel, err := otelutil.Init(ctx) + otelShutdown, err := otelutil.Init() if err != nil { return fmt.Errorf("error initializing OpenTelemetry: %w", err) } - defer func() { - if err := cleanOtel(); err != nil { - log.Error(err, "error stopping OpenTelemetry") - } - }() + defer otelShutdown() // Setup auto config reload if enabled. err = setupAutoConfigReload( diff --git a/pkg/internal/otelutil/otel.go b/pkg/internal/otelutil/otel.go index 94ad3349..8e8ed11a 100644 --- a/pkg/internal/otelutil/otel.go +++ b/pkg/internal/otelutil/otel.go @@ -1,110 +1,24 @@ package otelutil import ( - "context" - "errors" - "fmt" - "time" + "os" - "go.opentelemetry.io/otel" - "go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc" - "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc" - "go.opentelemetry.io/otel/propagation" - sdkmetric "go.opentelemetry.io/otel/sdk/metric" - "go.opentelemetry.io/otel/sdk/resource" - sdktrace "go.opentelemetry.io/otel/sdk/trace" - semconv "go.opentelemetry.io/otel/semconv/v1.26.0" - "google.golang.org/grpc" - "google.golang.org/grpc/credentials/insecure" + "github.com/honeycombio/otel-config-go/otelconfig" ) -var serviceName = semconv.ServiceNameKey.String("gate") - -// InitConn initialize a gRPC connection to be used by both the tracer and meter -// providers. -func InitConn() (*grpc.ClientConn, error) { - // It connects the OpenTelemetry Collector through local gRPC connection. - // You may replace `localhost:4317` with your endpoint. - conn, err := grpc.NewClient("localhost:4317", // TODO from config - // Note the use of insecure transport here. TLS is recommended in production. - grpc.WithTransportCredentials(insecure.NewCredentials()), - ) - if err != nil { - return nil, fmt.Errorf("failed to create gRPC connection to collector: %w", err) - } - - return conn, err -} - -// InitTracerProvider initializes an OTLP exporter, and configures the corresponding trace provider. -func InitTracerProvider(ctx context.Context, res *resource.Resource, conn *grpc.ClientConn) (func(context.Context) error, error) { - // Set up a trace exporter - traceExporter, err := otlptracegrpc.New(ctx, otlptracegrpc.WithGRPCConn(conn)) - if err != nil { - return nil, fmt.Errorf("failed to create trace exporter: %w", err) - } - - // Register the trace exporter with a TracerProvider, using a batch - // span processor to aggregate spans before export. - bsp := sdktrace.NewBatchSpanProcessor(traceExporter) - tracerProvider := sdktrace.NewTracerProvider( - sdktrace.WithSampler(sdktrace.AlwaysSample()), - sdktrace.WithResource(res), - sdktrace.WithSpanProcessor(bsp), - ) - otel.SetTracerProvider(tracerProvider) - - // Set global propagator to tracecontext (the default is no-op). - otel.SetTextMapPropagator(propagation.TraceContext{}) - - // Shutdown will flush any remaining spans and shut down the exporter. - return tracerProvider.Shutdown, nil -} - -// InitMeterProvider initializes an OTLP exporter, and configures the corresponding meter provider. -func InitMeterProvider(ctx context.Context, res *resource.Resource, conn *grpc.ClientConn) (func(context.Context) error, error) { - metricExporter, err := otlpmetricgrpc.New(ctx, otlpmetricgrpc.WithGRPCConn(conn)) - if err != nil { - return nil, fmt.Errorf("failed to create metrics exporter: %w", err) - } - - meterProvider := sdkmetric.NewMeterProvider( - sdkmetric.WithReader(sdkmetric.NewPeriodicReader(metricExporter)), - sdkmetric.WithResource(res), - ) - otel.SetMeterProvider(meterProvider) - - return meterProvider.Shutdown, nil -} - // Init initializes the OpenTelemetry SDK with the OTLP exporter and the corresponding trace and meter providers. -func Init(ctx context.Context) (clean func() error, err error) { - res, err := resource.New(ctx, resource.WithAttributes(serviceName)) - if err != nil { - return nil, fmt.Errorf("failed to create resource: %w", err) +func Init() (clean func(), err error) { + // default service name + serviceName := os.Getenv("OTEL_SERVICE_NAME") + if serviceName == "" { + serviceName = "gate" } - conn, err := InitConn() - if err != nil { - return nil, fmt.Errorf("failed to initialize gRPC connection: %w", err) - } - - cleanTracer, err := InitTracerProvider(ctx, res, conn) - if err != nil { - _ = conn.Close() - return nil, fmt.Errorf("failed to initialize tracer provider: %w", err) - } - - cleanMeter, err := InitMeterProvider(ctx, res, conn) + otelShutdown, err := otelconfig.ConfigureOpenTelemetry( + otelconfig.WithServiceName(serviceName), + ) if err != nil { - _ = cleanTracer(ctx) - _ = conn.Close() - return nil, fmt.Errorf("failed to initialize meter provider: %w", err) + return nil, err } - - return func() error { - shutdownCtx, cancel := context.WithTimeout(context.Background(), 10*time.Second) - defer cancel() - return errors.Join(cleanMeter(shutdownCtx), cleanTracer(shutdownCtx), conn.Close()) - }, nil + return otelShutdown, nil } From ddec2e1dbf281a2dade1f58e2b76ae3cdced5122 Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Thu, 12 Dec 2024 11:12:33 +0100 Subject: [PATCH 003/107] fix(docs): links --- .web/docs/developers/api/go/index.md | 2 +- .web/docs/developers/api/java/index.md | 2 +- .web/docs/developers/api/kotlin/index.md | 5 +++-- .web/docs/developers/api/rust/index.md | 2 +- .web/docs/developers/api/typescript/bun/index.md | 2 +- .web/docs/developers/api/typescript/node/index.md | 2 +- .web/docs/developers/api/typescript/web/index.md | 2 +- 7 files changed, 9 insertions(+), 8 deletions(-) diff --git a/.web/docs/developers/api/go/index.md b/.web/docs/developers/api/go/index.md index 37840271..e433f741 100644 --- a/.web/docs/developers/api/go/index.md +++ b/.web/docs/developers/api/go/index.md @@ -47,7 +47,7 @@ go run . } ``` -This example project is located in the [`docs/developers/api/go`](https://github.com/minekube/gate/tree/main/.web/docs/developers/api/go) directory. +This example project is located in the [`docs/developers/api/go`](https://github.com/minekube/gate/tree/master/.web/docs/developers/api/go) directory. ::: info Learn More For more details on using ConnectRPC with Go, check out the [ConnectRPC Documentation](https://connectrpc.com/docs/go/getting-started#make-requests). diff --git a/.web/docs/developers/api/java/index.md b/.web/docs/developers/api/java/index.md index 06f24bd3..dcc90479 100644 --- a/.web/docs/developers/api/java/index.md +++ b/.web/docs/developers/api/java/index.md @@ -102,7 +102,7 @@ Here's a basic example of using the Gate Java API to connect to Gate and list se ## Running the Example 1. Run Gate with the API enabled -2. Navigate to the [docs/developers/api/java](https://github.com/minekube/gate/tree/main/.web/docs/developers/api/java) directory +2. Navigate to the [docs/developers/api/java](https://github.com/minekube/gate/tree/master/.web/docs/developers/api/java) directory 3. Run the following commands: ```bash diff --git a/.web/docs/developers/api/kotlin/index.md b/.web/docs/developers/api/kotlin/index.md index e57335b5..3562bacd 100644 --- a/.web/docs/developers/api/kotlin/index.md +++ b/.web/docs/developers/api/kotlin/index.md @@ -156,13 +156,15 @@ Here's a basic example of using the Gate Kotlin API to connect to Gate and list ## Running the Example 1. Run Gate with the API enabled -2. Navigate to the [docs/developers/api/kotlin](https://github.com/minekube/gate/tree/main/.web/docs/developers/api/kotlin) directory +2. Navigate to the [docs/developers/api/kotlin](https://github.com/minekube/gate/tree/master/.web/docs/developers/api/kotlin) directory 3. Initialize the Gradle wrapper (only needed once): + ```bash gradle wrapper ``` 4. Run one of the following commands: + ```bash # For Connect example (recommended) ./gradlew runConnect @@ -193,7 +195,6 @@ servers { For more details on using ConnectRPC with Kotlin, check out the [ConnectRPC Documentation](https://connectrpc.com/docs/kotlin/using-clients). ::: -

Monitoring Backends

Telemetry Collection

Application

OTLP Telemetry

Metrics

Traces

PromQL

Traces

Gate

OpenTelemetry Collector

Grafana Mimir (Metrics)

Grafana Tempo (Traces)

Grafana OSS

\ No newline at end of file From a8ad2239fdcbb6583b95ebb3bb97da3edc872926 Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Wed, 14 May 2025 13:58:36 +0200 Subject: [PATCH 093/107] feat: enhance packet reading with byte count tracking Updated the packet reading process to include the number of bytes read during decoding. This change introduces a new `BytesRead` field in the `PacketContext` struct and modifies the `readPayload` and `ReadVarInt` functions to return the byte count. Additionally, integrated OpenTelemetry tracing in the `startReadLoop` method to monitor packet handling more effectively. --- pkg/edition/java/netmc/connection.go | 14 +++- pkg/edition/java/proto/codec/decoder.go | 40 +++++++----- pkg/edition/java/proto/util/reader.go | 35 ++++++---- pkg/edition/java/proto/util/util_test.go | 82 ++++++++++++++++++++++++ pkg/gate/proto/proto.go | 3 + 5 files changed, 143 insertions(+), 31 deletions(-) diff --git a/pkg/edition/java/netmc/connection.go b/pkg/edition/java/netmc/connection.go index 4a380bea..f87f547f 100644 --- a/pkg/edition/java/netmc/connection.go +++ b/pkg/edition/java/netmc/connection.go @@ -203,10 +203,21 @@ type minecraftConn struct { } } +var tracer = otel.Tracer("netmc") + // StartReadLoop is the main goroutine of this connection and // reads packets to pass them further to the current SessionHandler. // Close will be called on method return. func (c *minecraftConn) startReadLoop() { + ctx, span := tracer.Start(c.ctx, "startReadLoop", trace.WithAttributes( + attribute.String("net.peer.ip", c.RemoteAddr().String()), + attribute.String("net.transport", c.c.RemoteAddr().Network()), + )) + defer span.End() + + bytesRead := int64(0) + defer func() { span.SetAttributes(attribute.Int64("net.bytes_read", bytesRead)) }() + // Make sure to close connection on return, if not already closed defer func() { _ = c.closeKnown(false) }() @@ -226,6 +237,7 @@ func (c *minecraftConn) startReadLoop() { } return false } + bytesRead += int64(packetCtx.BytesRead) // TODO wrap packetCtx into struct with source info // (minecraftConn) and chain into packet interceptor to... @@ -236,7 +248,7 @@ func (c *minecraftConn) startReadLoop() { sessionHandler := c.ActiveSessionHandler() if debug.Enabled() && packetCtx.KnownPacket() { - _, span := otel.Tracer("netmc").Start(c.ctx, "HandlePacket", trace.WithAttributes( + _, span := tracer.Start(ctx, "HandlePacket", trace.WithAttributes( attribute.String("packet.type", fmt.Sprintf("%T", packetCtx.Packet)), attribute.String("packet.dump", fmt.Sprintf("%+v", spew.Sdump(packetCtx.Packet))), attribute.Stringer("packet.direction", c.direction), diff --git a/pkg/edition/java/proto/codec/decoder.go b/pkg/edition/java/proto/codec/decoder.go index ce708232..e008e2e5 100644 --- a/pkg/edition/java/proto/codec/decoder.go +++ b/pkg/edition/java/proto/codec/decoder.go @@ -104,7 +104,7 @@ func (d *Decoder) readPacket() (ctx *proto.PacketContext, err error) { var retries int retry: - payload, err := d.readPayload() + payload, n, err := d.readPayload() if err != nil { return nil, &errs.SilentError{Err: err} } @@ -116,14 +116,19 @@ retry: // Got an empty packet, skipping it goto retry } - return d.decodePayload(payload) + ctx, err = d.decodePayload(payload) + if err != nil { + return nil, err + } + ctx.BytesRead = n + return ctx, nil } // can eventually receive an empty payload which packet should be skipped -func (d *Decoder) readPayload() (payload []byte, err error) { - payload, err = readVarIntFrame(d.rd) +func (d *Decoder) readPayload() (payload []byte, n int, err error) { + payload, n, err = readVarIntFrame(d.rd) if err != nil { - return nil, fmt.Errorf("error reading packet frame: %w", err) + return nil, n, fmt.Errorf("error reading packet frame: %w", err) } if len(payload) == 0 { return @@ -131,9 +136,9 @@ func (d *Decoder) readPayload() (payload []byte, err error) { if d.compression { // Decoder expects compressed payload // buf contains: claimedUncompressedSize + (compressed packet id & data) buf := bytes.NewBuffer(payload) - claimedUncompressedSize, err := util.ReadVarInt(buf) + claimedUncompressedSize, n, err := util.ReadVarIntReturnN(buf) if err != nil { - return nil, fmt.Errorf("error reading claimed uncompressed size varint: %w", err) + return nil, n, fmt.Errorf("error reading claimed uncompressed size varint: %w", err) } if claimedUncompressedSize <= 0 { if actualUncompressedSize := buf.Len(); actualUncompressedSize > d.compressionThreshold { @@ -141,31 +146,32 @@ func (d *Decoder) readPayload() (payload []byte, err error) { actualUncompressedSize, d.compressionThreshold) } // This message is not compressed - return buf.Bytes(), nil + return buf.Bytes(), n, nil } - return d.decompress(claimedUncompressedSize, buf) + decompressed, err := d.decompress(claimedUncompressedSize, buf) + return decompressed, n, err } - return + return payload, n, nil } -func readVarIntFrame(rd io.Reader) (payload []byte, err error) { - length, err := util.ReadVarInt(rd) +func readVarIntFrame(rd io.Reader) (payload []byte, n int, err error) { + length, n, err := util.ReadVarIntReturnN(rd) if err != nil { - return nil, fmt.Errorf("error reading varint: %w", err) + return nil, n, fmt.Errorf("error reading varint: %w", err) } if length == 0 { return // function caller should skip over empty packet } if length < 0 || length > 1048576 { // 2^(21-1) - return nil, fmt.Errorf("received invalid packet length %d", length) + return nil, n, fmt.Errorf("received invalid packet length %d", length) } payload = make([]byte, length) - _, err = rd.Read(payload) + m, err := rd.Read(payload) if err != nil { - return nil, fmt.Errorf("error reading payload: %w", err) + return nil, n, fmt.Errorf("error reading payload: %w", err) } - return payload, nil + return payload, n + m, nil } func (d *Decoder) decompress(claimedUncompressedSize int, rd io.Reader) (decompressed []byte, err error) { diff --git a/pkg/edition/java/proto/util/reader.go b/pkg/edition/java/proto/util/reader.go index f938a5da..b1f79b39 100644 --- a/pkg/edition/java/proto/util/reader.go +++ b/pkg/edition/java/proto/util/reader.go @@ -5,12 +5,13 @@ import ( "encoding/binary" "errors" "fmt" - "go.minekube.com/common/minecraft/key" "io" "math" "strings" "time" + "go.minekube.com/common/minecraft/key" + "go.minekube.com/gate/pkg/edition/java/profile" "go.minekube.com/gate/pkg/util/uuid" ) @@ -97,39 +98,47 @@ func ReadStringWithoutLen(rd io.Reader) (string, error) { return string(b), err } +// ReadVarInt reads a varint from the reader. func ReadVarInt(r io.Reader) (result int, err error) { + result, _, err = ReadVarIntReturnN(r) + return +} + +// ReadVarIntReturnN reads a varint from the reader and returns the number of bytes read. +func ReadVarIntReturnN(r io.Reader) (result int, n int, err error) { if br, ok := r.(io.ByteReader); ok { - var n uint32 + var val uint32 for i := 0; ; i++ { sec, err := br.ReadByte() if err != nil { - return 0, err + return 0, i, err } - n |= uint32(sec&0x7F) << uint32(7*i) + val |= uint32(sec&0x7F) << uint32(7*i) if i >= 5 { - return 0, errors.New("decode: VarInt is too big") + return 0, 5, errors.New("decode: VarInt is too big") } else if sec&0x80 == 0 { + n = i + 1 break } } - return int(n), nil + return int(val), n, nil } - var bytes byte = 0 + var bytesRead byte = 0 var b byte var uresult uint32 = 0 for { b, err = ReadUint8(r) if err != nil { - return + return 0, int(bytesRead), err } - uresult |= uint32(b&0x7F) << uint32(bytes*7) - bytes++ - if bytes > 5 { + uresult |= uint32(b&0x7F) << uint32(bytesRead*7) + bytesRead++ + if bytesRead > 5 { err = errors.New("decode: VarInt is too big") - return + return 0, int(bytesRead), err } if (b & 0x80) == 0x80 { continue @@ -137,7 +146,7 @@ func ReadVarInt(r io.Reader) (result int, err error) { break } result = int(int32(uresult)) - return + return result, int(bytesRead), nil } // ReadVarIntArray reads a VarInt array from the reader. diff --git a/pkg/edition/java/proto/util/util_test.go b/pkg/edition/java/proto/util/util_test.go index 7a759d57..353b8e62 100644 --- a/pkg/edition/java/proto/util/util_test.go +++ b/pkg/edition/java/proto/util/util_test.go @@ -164,3 +164,85 @@ func BenchmarkReadVarInt(b *testing.B) { } } } + +func TestReadVarIntReturnN(t *testing.T) { + tests := []struct { + name string + input []byte + expectedVal int + expectedN int + expectError bool + errorMsg string + }{ + { + name: "single byte varint", + input: []byte{0x01}, + expectedVal: 1, + expectedN: 1, + expectError: false, + }, + { + name: "multi-byte varint (150)", + input: []byte{0x96, 0x01}, + expectedVal: 150, + expectedN: 2, + expectError: false, + }, + { + name: "max varint value (2147483647)", + input: []byte{0xff, 0xff, 0xff, 0xff, 0x07}, + expectedVal: 2147483647, + expectedN: 5, + expectError: false, + }, + { + name: "varint too large", + input: []byte{0x80, 0x80, 0x80, 0x80, 0x80, 0x01}, // 6 bytes, too large + expectedVal: 0, + expectedN: 5, // Should read up to 5 bytes before determining it's too large + expectError: true, + errorMsg: "decode: VarInt is too big", + }, + { + name: "incomplete varint - EOF after 1 byte of 2-byte varint", + input: []byte{0x96}, // Represents 150, but is incomplete + expectedVal: 0, + expectedN: 1, // Read 1 byte before EOF + expectError: true, + errorMsg: "EOF", + }, + { + name: "incomplete varint - EOF after 2 bytes of 5-byte varint", + input: []byte{0xff, 0xff}, // Incomplete + expectedVal: 0, + expectedN: 2, // Read 2 bytes before EOF + expectError: true, + errorMsg: "EOF", + }, + { + name: "zero value", + input: []byte{0x00}, + expectedVal: 0, + expectedN: 1, + expectError: false, + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + buf := bytes.NewBuffer(tt.input) + val, n, err := ReadVarIntReturnN(buf) + + if tt.expectError { + require.Error(t, err) + if tt.errorMsg != "" { + require.Contains(t, err.Error(), tt.errorMsg) + } + } else { + require.NoError(t, err) + require.Equal(t, tt.expectedVal, val) + } + require.Equal(t, tt.expectedN, n) + }) + } +} diff --git a/pkg/gate/proto/proto.go b/pkg/gate/proto/proto.go index 2d7030b2..2a6903a2 100644 --- a/pkg/gate/proto/proto.go +++ b/pkg/gate/proto/proto.go @@ -65,6 +65,9 @@ type PacketContext struct { // It contains the actual received payload (maybe longer than what the Packet's Decode read). // This can be used to skip encoding Packet. Payload []byte // Empty when encoding. + + // The number of bytes read from the decoder after decryption and before decompression. + BytesRead int } // KnownPacket indicated whether the PacketID is known in the connection's current state.ProtocolRegistry. From e23d05f4a27710d2bb12b425253cb3e712439dae Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Wed, 14 May 2025 14:06:01 +0200 Subject: [PATCH 094/107] fix(deps): update OpenTelemetry dependencies and related modules Updated OpenTelemetry modules to v1.34.0, including core, metric, and trace packages. Adjusted indirect dependencies for improved compatibility and performance. Additionally, modified the `decoder.go` file to return the byte count in error messages during payload reading, enhancing error reporting. --- go.mod | 23 ++++---- go.sum | 75 +++++++++++-------------- pkg/edition/java/proto/codec/decoder.go | 2 +- 3 files changed, 43 insertions(+), 57 deletions(-) diff --git a/go.mod b/go.mod index 4b0fed34..24091ad5 100644 --- a/go.mod +++ b/go.mod @@ -34,9 +34,9 @@ require ( go.minekube.com/common v0.0.6 go.minekube.com/connect v0.6.2 go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.57.0 - go.opentelemetry.io/otel v1.32.0 - go.opentelemetry.io/otel/metric v1.32.0 - go.opentelemetry.io/otel/trace v1.32.0 + go.opentelemetry.io/otel v1.34.0 + go.opentelemetry.io/otel/metric v1.34.0 + go.opentelemetry.io/otel/trace v1.34.0 go.uber.org/atomic v1.11.0 go.uber.org/zap v1.27.0 golang.org/x/exp v0.0.0-20241108190413-2d47ceb2692f @@ -55,20 +55,17 @@ require ( github.com/cpuguy83/go-md2man/v2 v2.0.5 // indirect github.com/emirpasic/gods v1.18.1 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect - github.com/felixge/httpsnoop v1.0.4 // indirect github.com/francoispqt/gojay v1.2.13 // indirect github.com/fsnotify/fsnotify v1.9.0 // indirect github.com/go-gl/mathgl v1.1.0 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/go-ole/go-ole v1.3.0 // indirect + github.com/go-viper/mapstructure/v2 v2.2.1 // indirect github.com/golang/snappy v0.0.4 // indirect github.com/grpc-ecosystem/grpc-gateway/v2 v2.23.0 // indirect - github.com/hashicorp/hcl v1.0.0 // indirect github.com/klauspost/compress v1.17.2 // indirect github.com/lucasb-eyer/go-colorful v1.2.0 // indirect github.com/lufia/plan9stats v0.0.0-20240513124658-fba389f38bae // indirect - github.com/magiconair/properties v1.8.7 // indirect - github.com/mitchellh/mapstructure v1.5.1-0.20220423185008-bf980b35cac4 // indirect github.com/pelletier/go-toml/v2 v2.2.3 // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 // indirect @@ -88,6 +85,7 @@ require ( github.com/xo/terminfo v0.0.0-20210125001918-ca9a967f8778 // indirect github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1 // indirect github.com/yusufpapurcu/wmi v1.2.4 // indirect + go.opentelemetry.io/auto/sdk v1.1.0 // indirect go.opentelemetry.io/contrib/instrumentation/host v0.53.0 // indirect go.opentelemetry.io/contrib/instrumentation/runtime v0.53.0 // indirect go.opentelemetry.io/contrib/propagators/b3 v1.28.0 // indirect @@ -97,13 +95,12 @@ require ( go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.32.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0 // indirect - go.opentelemetry.io/otel/sdk v1.32.0 // indirect - go.opentelemetry.io/otel/sdk/metric v1.32.0 // indirect + go.opentelemetry.io/otel/sdk v1.34.0 // indirect + go.opentelemetry.io/otel/sdk/metric v1.34.0 // indirect go.opentelemetry.io/proto/otlp v1.3.1 // indirect go.uber.org/multierr v1.11.0 // indirect golang.org/x/image v0.18.0 // indirect - golang.org/x/sys v0.27.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20241104194629-dd2ea8efbc28 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20241113202542-65e8d215514f // indirect - gopkg.in/ini.v1 v1.67.0 // indirect + golang.org/x/sys v0.32.0 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20250218202821-56aae31c358a // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20250218202821-56aae31c358a // indirect ) diff --git a/go.sum b/go.sum index ddc42b87..0d23bce7 100644 --- a/go.sum +++ b/go.sum @@ -1,5 +1,5 @@ -buf.build/gen/go/minekube/connect/protocolbuffers/go v1.36.6-20240220124425-904ce30425c9.1 h1:BKgtya1gU8bMQaTSGDJZPTCMuBm0tanoEdiiukuXRDc= -buf.build/gen/go/minekube/connect/protocolbuffers/go v1.36.6-20240220124425-904ce30425c9.1/go.mod h1:4UJIzWc11+qjGTjyHsJk0izbw2FGCJt+gNmpb1TtNuQ= +buf.build/gen/go/minekube/connect/protocolbuffers/go v1.35.2-20240220124425-904ce30425c9.1 h1:RV35ziPOz7DrN6S673Dq70Pydg3sFa3uGsYzaztavlo= +buf.build/gen/go/minekube/connect/protocolbuffers/go v1.35.2-20240220124425-904ce30425c9.1/go.mod h1:96yQVJkVjg/fSbxhL7wpEEz59WDdYZ4M9f7MIcGeMQY= cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= cloud.google.com/go v0.31.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= @@ -22,14 +22,12 @@ github.com/bradfitz/go-smtpd v0.0.0-20170404230938-deb6d6237625/go.mod h1:HYsPBT github.com/buger/jsonparser v0.0.0-20181115193947-bf1c66bbce23/go.mod h1:bbYlZJ7hK1yFx9hf58LP0zeX7UjIGs20ufpu3evjr+s= github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= -github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= -github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= -github.com/coder/websocket v1.8.13 h1:f3QZdXy7uGVz+4uCJy2nTZyM0yTBj8yANEHhqlXZ9FE= -github.com/coder/websocket v1.8.13/go.mod h1:LNVeNrXQZfe5qhS9ALED3uA+l5pPqvwXg3CKoDBB2gs= +github.com/coder/websocket v1.8.12 h1:5bUXkEPPIbewrnkU8LTCLVaxi4N4J8ahufH2vlo4NAo= +github.com/coder/websocket v1.8.12/go.mod h1:LNVeNrXQZfe5qhS9ALED3uA+l5pPqvwXg3CKoDBB2gs= github.com/coreos/go-systemd v0.0.0-20181012123002-c6f51f82210d/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= -github.com/cpuguy83/go-md2man/v2 v2.0.6 h1:XJtiaUW6dEEqVuZiMTn1ldk455QWwEIsMIJlo5vtkx0= -github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g= +github.com/cpuguy83/go-md2man/v2 v2.0.5 h1:ZtcqGrnekaHpVLArFSe4HK5DoKx1T0rq2DwVB0alcyc= +github.com/cpuguy83/go-md2man/v2 v2.0.5/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= @@ -44,8 +42,6 @@ github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc github.com/emirpasic/gods v1.18.1/go.mod h1:8tpGGwCnJ5H4r6BWwaV6OrWmMoPhUl5jm/FMNAnJvWQ= github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= -github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= -github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568/go.mod h1:xEzjJPgXI435gkrCt3MPfRiAkVrwSbHsst4LCFVfpJc= github.com/francoispqt/gojay v1.2.13 h1:d2m3sFjloqoIUQU3TsHBgj6qg/BVGlTBeHDUmyJnXKk= github.com/francoispqt/gojay v1.2.13/go.mod h1:ehT5mTG4ua4581f1++1WLG0vPdaA9HaiDsoyrBGkyDY= @@ -59,25 +55,22 @@ github.com/gammazero/deque v1.0.0/go.mod h1:iflpYvtGfM3U8S8j+sZEKIak3SAKYpA5/SQe github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/gliderlabs/ssh v0.1.1/go.mod h1:U7qILu1NlMHj9FlMhZLlkCdDnU1DBEAqr0aevW3Awn0= github.com/go-errors/errors v1.0.1/go.mod h1:f4zRHt4oKfwPJE5k8C9vpYG+aDHdBFUsgrm6/TyX73Q= -github.com/go-faker/faker/v4 v4.6.0 h1:6aOPzNptRiDwD14HuAnEtlTa+D1IfFuEHO8+vEFwjTs= -github.com/go-faker/faker/v4 v4.6.0/go.mod h1:ZmrHuVtTTm2Em9e0Du6CJ9CADaLEzGXW62z1YqFH0m0= github.com/go-faker/faker/v4 v4.6.1 h1:xUyVpAjEtB04l6XFY0V/29oR332rOSPWV4lU8RwDt4k= github.com/go-faker/faker/v4 v4.6.1/go.mod h1:arSdxNCSt7mOhdk8tEolvHeIJ7eX4OX80wXjKKvkKBY= github.com/go-gl/mathgl v1.1.0 h1:0lzZ+rntPX3/oGrDzYGdowSLC2ky8Osirvf5uAwfIEA= github.com/go-gl/mathgl v1.1.0/go.mod h1:yhpkQzEiH9yPyxDUGzkmgScbaBVlhC06qodikEM0ZwQ= github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= -github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= -github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= github.com/go-logr/zapr v1.3.0 h1:XGdV8XW8zdwFiwOA2Dryh1gj2KRQyOOoNmBy4EplIcQ= github.com/go-logr/zapr v1.3.0/go.mod h1:YKepepNBd1u/oyhd/yQmtjVXmm9uML4IXUgMOwR8/Gg= github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0= github.com/go-ole/go-ole v1.3.0 h1:Dt6ye7+vXGIKZ7Xtk4s6/xVdGDQynvom7xCFEdWr6uE= github.com/go-ole/go-ole v1.3.0/go.mod h1:5LS6F96DhAwUc7C+1HLexzMXY1xGRSryjyPPKW6zv78= +github.com/go-viper/mapstructure/v2 v2.2.1 h1:ZAaOCxANMuZx5RCeg0mBdEZk7DZasvvZIxtHqx8aGss= +github.com/go-viper/mapstructure/v2 v2.2.1/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= github.com/golang/groupcache v0.0.0-20241129210726-2c02b8208cf8 h1:f+oWsMOmNPc8JmEHVZIycC7hBoQxHH9pNKQORJNozsQ= @@ -110,8 +103,6 @@ github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:Fecb github.com/grpc-ecosystem/grpc-gateway v1.5.0/go.mod h1:RSKVYQBd5MCa4OVpNdGskqpgL2+G+NZTnrVHpWWfpdw= github.com/grpc-ecosystem/grpc-gateway/v2 v2.23.0 h1:ad0vkEBuk23VJzZR9nkLVG0YAoN9coASF1GusYX6AlU= github.com/grpc-ecosystem/grpc-gateway/v2 v2.23.0/go.mod h1:igFoXX2ELCW06bol23DWPB5BEWfZISOzSP5K2sbLea0= -github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= -github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= github.com/honeycombio/otel-config-go v1.17.0 h1:3/zig0L3IGnfgiCrEfAwBsM0rF57+TKTyJ/a8yqW2eM= github.com/honeycombio/otel-config-go v1.17.0/go.mod h1:g2mMdfih4sYKfXBtz2mNGvo3HiQYqX4Up4pdA8JOF2s= github.com/jellevandenhooff/dkim v0.0.0-20150330215556-f50fe3d243e1/go.mod h1:E0B/fFc00Y+Rasa88328GlI/XbtyysCtTHZS8h7IrBU= @@ -147,8 +138,8 @@ github.com/neelance/sourcemap v0.0.0-20151028013722-8c68805598ab/go.mod h1:Qr6/a github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646 h1:zYyBkD/k9seD2A7fsi6Oo2LfFZAehjjQMERAvZLEDnQ= github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646/go.mod h1:jpp1/29i3P1S/RLdc7JQKbRpFeM1dOBd8T9ki5s+AY8= github.com/openzipkin/zipkin-go v0.1.1/go.mod h1:NtoC/o8u3JlF1lSlyPNswIbeQH9bJTmOf0Erfk+hxe8= -github.com/pelletier/go-toml/v2 v2.2.4 h1:mye9XuhQ6gvn5h28+VilKrrPoQVanw5PMw/TB0t5Ec4= -github.com/pelletier/go-toml/v2 v2.2.4/go.mod h1:2gIqNv+qfxSVS7cM2xJQKtLSTLUE9V8t9Stt+h56mCY= +github.com/pelletier/go-toml/v2 v2.2.3 h1:YmeHyLY8mFWbdkNWwpr+qIL2bEqT0o95WSdkNHvL12M= +github.com/pelletier/go-toml/v2 v2.2.3/go.mod h1:MfCQTFTvCcUyyvvwm1+G6H/jORL20Xlb6rzQu9GuUkc= github.com/pires/go-proxyproto v0.8.0 h1:5unRmEAPbHXHuLjDg01CxJWf91cw3lKHc/0xzKpXEe0= github.com/pires/go-proxyproto v0.8.0/go.mod h1:iknsfgnH8EkjrMeMyvfKByp9TiBZCKZM0jx2xmKqnVY= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= @@ -161,8 +152,8 @@ github.com/prometheus/client_golang v0.8.0/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXP github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/common v0.0.0-20180801064454-c7de2306084e/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= github.com/prometheus/procfs v0.0.0-20180725123919-05ee40e3a273/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= -github.com/robinbraemer/event v0.0.1 h1:2499Bm1c13+//IZyAQpjoTg4vQ+dndE8trxo1aUxWdI= -github.com/robinbraemer/event v0.0.1/go.mod h1:fKkjL2UbPajNcxc4oWYyRCcUalss0YtPxwMtZTuNo8o= +github.com/robinbraemer/event v0.1.1 h1:1T7GturBzxsa8UUe/r3EmW9aHLErKBggfn43up5hOUA= +github.com/robinbraemer/event v0.1.1/go.mod h1:fKkjL2UbPajNcxc4oWYyRCcUalss0YtPxwMtZTuNo8o= github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII= github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o= github.com/rs/xid v1.6.0 h1:fV591PaemRlL6JfRxGDEPl69wICngIQ3shQtzfy2gxU= @@ -234,8 +225,8 @@ github.com/tklauser/go-sysconf v0.3.14 h1:g5vzr9iPFFz24v2KZXs/pvpvh8/V9Fw6vQK5ZZ github.com/tklauser/go-sysconf v0.3.14/go.mod h1:1ym4lWMLUOhuBOPGtRcJm7tEGX4SCYNEEEtghGG/8uY= github.com/tklauser/numcpus v0.8.0 h1:Mx4Wwe/FjZLeQsK/6kt2EOepwwSl7SmJrK5bV/dXYgY= github.com/tklauser/numcpus v0.8.0/go.mod h1:ZJZlAY+dmR4eut8epnzf0u/VwodKmryxR8txiloSqBE= -github.com/urfave/cli/v2 v2.27.5 h1:WoHEJLdsXr6dDWoJgMq/CboDmyY/8HMMH1fTECbih+w= -github.com/urfave/cli/v2 v2.27.5/go.mod h1:3Sevf16NykTbInEnD0yKkjDAeZDS0A6bzhBH5hrMvTQ= +github.com/urfave/cli/v2 v2.27.6 h1:VdRdS98FNhKZ8/Az8B7MTyGQmpIr36O1EHybx/LaZ4g= +github.com/urfave/cli/v2 v2.27.6/go.mod h1:3Sevf16NykTbInEnD0yKkjDAeZDS0A6bzhBH5hrMvTQ= github.com/viant/assertly v0.4.8/go.mod h1:aGifi++jvCrUaklKEKT0BU95igDNaqkvz+49uaYMPRU= github.com/viant/toolbox v0.24.0/go.mod h1:OxMCG57V0PXuIP2HNQrtJf2CjqdmbrOx5EkMILuUhzM= github.com/xo/terminfo v0.0.0-20210125001918-ca9a967f8778 h1:QldyIu/L63oPpyvQmHgvgickp1Yw510KJOqX7H24mg8= @@ -253,6 +244,8 @@ go.minekube.com/common v0.0.6/go.mod h1:RTT2cwrMS+hwGAjJOt06bWtbKx04MuiF0tScyvGe go.minekube.com/connect v0.6.2 h1:RajPc7YgqygcOviV2g4xetL3J0Wzi8b/lsYXUzIltxE= go.minekube.com/connect v0.6.2/go.mod h1:28k11I4RyzUfAL3AkOXt3atzjeOFAC8eqbCMwsYKAb0= go.opencensus.io v0.18.0/go.mod h1:vKdFvxhtzZ9onBp9VKHK8z/sRpBMnKAsufL7wlDrCOA= +go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= +go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= go.opentelemetry.io/contrib/detectors/aws/lambda v0.53.0 h1:KG6fOUk3EwSH1dEpsAbsLKFbn3cFwN9xDu8plGu55zI= go.opentelemetry.io/contrib/detectors/aws/lambda v0.53.0/go.mod h1:bSd579exEkh/P5msRcom8YzVB6NsUxYKyV+D/FYOY7Y= go.opentelemetry.io/contrib/instrumentation/host v0.53.0 h1:X4r+5n6bSqaQUbPlSO5baoM7tBvipkT0mJFyuPFnPAU= @@ -265,8 +258,8 @@ go.opentelemetry.io/contrib/propagators/b3 v1.28.0 h1:XR6CFQrQ/ttAYmTBX2loUEFGdk go.opentelemetry.io/contrib/propagators/b3 v1.28.0/go.mod h1:DWRkzJONLquRz7OJPh2rRbZ7MugQj62rk7g6HRnEqh0= go.opentelemetry.io/contrib/propagators/ot v1.28.0 h1:rmlG+2pc5k5M7Y7izDrxAHZUIwDERdGMTD9oMV7llMk= go.opentelemetry.io/contrib/propagators/ot v1.28.0/go.mod h1:MNgXIn+UrMbNGpd7xyckyo2LCHIgCdmdjEE7YNZGG+w= -go.opentelemetry.io/otel v1.32.0 h1:WnBN+Xjcteh0zdk01SVqV55d/m62NJLJdIyb4y/WO5U= -go.opentelemetry.io/otel v1.32.0/go.mod h1:00DCVSB0RQcnzlwyTfqtxSm+DRr9hpYrHjNGiBHVQIg= +go.opentelemetry.io/otel v1.34.0 h1:zRLXxLCgL1WyKsPVrgbSdMN4c0FMkDAskSTQP+0hdUY= +go.opentelemetry.io/otel v1.34.0/go.mod h1:OWFPOQ+h4G8xpyjgqo4SxJYdDQ/qmRH+wivy7zzx9oI= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0 h1:j7ZSD+5yn+lo3sGV69nW04rRR0jhYnBwjuX3r0HvnK0= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0/go.mod h1:WXbYJTUaZXAbYd8lbgGuvih0yuCfOFC5RJoYnoLcGz8= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.28.0 h1:aLmmtjRke7LPDQ3lvpFz+kNEH43faFhzW7v8BFIEydg= @@ -277,14 +270,14 @@ go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0 h1:9kV11 go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0/go.mod h1:JyA0FHXe22E1NeNiHmVp7kFHglnexDQ7uRWDiiJ1hKQ= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0 h1:j9+03ymgYhPKmeXGk5Zu+cIZOlVzd9Zv7QIiyItjFBU= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0/go.mod h1:Y5+XiUG4Emn1hTfciPzGPJaSI+RpDts6BnCIir0SLqk= -go.opentelemetry.io/otel/metric v1.32.0 h1:xV2umtmNcThh2/a/aCP+h64Xx5wsj8qqnkYZktzNa0M= -go.opentelemetry.io/otel/metric v1.32.0/go.mod h1:jH7CIbbK6SH2V2wE16W05BHCtIDzauciCRLoc/SyMv8= -go.opentelemetry.io/otel/sdk v1.32.0 h1:RNxepc9vK59A8XsgZQouW8ue8Gkb4jpWtJm9ge5lEG4= -go.opentelemetry.io/otel/sdk v1.32.0/go.mod h1:LqgegDBjKMmb2GC6/PrTnteJG39I8/vJCAP9LlJXEjU= -go.opentelemetry.io/otel/sdk/metric v1.32.0 h1:rZvFnvmvawYb0alrYkjraqJq0Z4ZUJAiyYCU9snn1CU= -go.opentelemetry.io/otel/sdk/metric v1.32.0/go.mod h1:PWeZlq0zt9YkYAp3gjKZ0eicRYvOh1Gd+X99x6GHpCQ= -go.opentelemetry.io/otel/trace v1.32.0 h1:WIC9mYrXf8TmY/EXuULKc8hR17vE+Hjv2cssQDe03fM= -go.opentelemetry.io/otel/trace v1.32.0/go.mod h1:+i4rkvCraA+tG6AzwloGaCtkx53Fa+L+V8e9a7YvhT8= +go.opentelemetry.io/otel/metric v1.34.0 h1:+eTR3U0MyfWjRDhmFMxe2SsW64QrZ84AOhvqS7Y+PoQ= +go.opentelemetry.io/otel/metric v1.34.0/go.mod h1:CEDrp0fy2D0MvkXE+dPV7cMi8tWZwX3dmaIhwPOaqHE= +go.opentelemetry.io/otel/sdk v1.34.0 h1:95zS4k/2GOy069d321O8jWgYsW3MzVV+KuSPKp7Wr1A= +go.opentelemetry.io/otel/sdk v1.34.0/go.mod h1:0e/pNiaMAqaykJGKbi+tSjWfNNHMTxoC9qANsCzbyxU= +go.opentelemetry.io/otel/sdk/metric v1.34.0 h1:5CeK9ujjbFVL5c1PhLuStg1wxA7vQv7ce1EK0Gyvahk= +go.opentelemetry.io/otel/sdk/metric v1.34.0/go.mod h1:jQ/r8Ze28zRKoNRdkjCZxfs6YvBTG1+YIqyFVFYec5w= +go.opentelemetry.io/otel/trace v1.34.0 h1:+ouXS2V8Rd4hp4580a8q23bg0azF2nI8cqLYnC8mh/k= +go.opentelemetry.io/otel/trace v1.34.0/go.mod h1:Svm7lSjQD7kG7KJ/MUHPVXSDGz2OX4h0M2jHBhmSfRE= go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= go.opentelemetry.io/proto/otlp v1.3.1/go.mod h1:0X1WI4de4ZsLrrJNLAQbFeLCm3T7yBkR0XqQ7niQU+8= go.uber.org/atomic v1.11.0 h1:ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE= @@ -338,16 +331,14 @@ golang.org/x/sys v0.0.0-20190316082340-a2f829d7f35f/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201204225414-ed752295db88/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.27.0 h1:wBqf8DvsY9Y/2P8gAfPDEYNuS30J4lPHJxXSb/nJZ+s= -golang.org/x/sys v0.27.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.32.0 h1:s77OFDvIQeibCmezSnk/q6iAfkdiQaJi4VzroCFrN20= +golang.org/x/sys v0.32.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.24.0 h1:dd5Bzh4yt5KYA8f9CJHCP4FB4D51c2c6JvN37xJJkJ0= golang.org/x/text v0.24.0/go.mod h1:L8rBsPeo2pSS+xqN0d5u2ikmjtmoJbDBT1b7nHvFCdU= golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.9.0 h1:EsRrnYcQiGH+5FfbgvV4AP7qEZstoyrHB0DzarOQ4ZY= -golang.org/x/time v0.9.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/time v0.11.0 h1:/bpjEDfN9tkoN/ryeYHnv5hcMlc8ncjMcM4XBk5NWV0= golang.org/x/time v0.11.0/go.mod h1:CDIdPxbZBQxdj6cxyCIdrNogrJKMJ7pr37NYpMcMDSg= golang.org/x/tools v0.0.0-20180828015842-6cd1fcedba52/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -366,16 +357,14 @@ google.golang.org/genproto v0.0.0-20180831171423-11092d34479b/go.mod h1:JiN7NxoA google.golang.org/genproto v0.0.0-20181029155118-b69ba1387ce2/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20181202183823-bd91e49a0898/go.mod h1:7Ep/1NZk928CDR8SjdVbjWNpdIf6nzjE3BTgJDr2Atg= google.golang.org/genproto v0.0.0-20190306203927-b5d61aea6440/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= -google.golang.org/genproto/googleapis/api v0.0.0-20241104194629-dd2ea8efbc28 h1:M0KvPgPmDZHPlbRbaNU1APr28TvwvvdUPlSv7PUvy8g= -google.golang.org/genproto/googleapis/api v0.0.0-20241104194629-dd2ea8efbc28/go.mod h1:dguCy7UOdZhTvLzDyt15+rOrawrpM4q7DD9dQ1P11P4= -google.golang.org/genproto/googleapis/rpc v0.0.0-20241113202542-65e8d215514f h1:C1QccEa9kUwvMgEUORqQD9S17QesQijxjZ84sO82mfo= -google.golang.org/genproto/googleapis/rpc v0.0.0-20241113202542-65e8d215514f/go.mod h1:GX3210XPVPUjJbTUbvwI8f2IpZDMZuPJWDzDuebbviI= +google.golang.org/genproto/googleapis/api v0.0.0-20250218202821-56aae31c358a h1:nwKuGPlUAt+aR+pcrkfFRrTU1BVrSmYyYMxYbUIVHr0= +google.golang.org/genproto/googleapis/api v0.0.0-20250218202821-56aae31c358a/go.mod h1:3kWAYMk1I75K4vykHtKt2ycnOgpA6974V7bREqbsenU= +google.golang.org/genproto/googleapis/rpc v0.0.0-20250218202821-56aae31c358a h1:51aaUVRocpvUOSQKM6Q7VuoaktNIaMCLuhZB6DKksq4= +google.golang.org/genproto/googleapis/rpc v0.0.0-20250218202821-56aae31c358a/go.mod h1:uRxBH1mhmO8PGhU89cMcHaXKZqO+OfakD8QQO0oYwlQ= google.golang.org/grpc v1.14.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= google.golang.org/grpc v1.16.0/go.mod h1:0JHn/cJsOMiMfNA9+DeHDlAU7KAAB5GDlYFpa9MZMio= google.golang.org/grpc v1.17.0/go.mod h1:6QZJwpn2B+Zp71q/5VxRsJ6NXXVCE5NRUHRo+f3cWCs= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= -google.golang.org/grpc v1.70.0 h1:pWFv03aZoHzlRKHWicjsZytKAiYCtNS0dHbXnIdq7jQ= -google.golang.org/grpc v1.70.0/go.mod h1:ofIJqVKDXx/JiXrwr2IG4/zwdH9txy3IlF40RmcJSQw= google.golang.org/grpc v1.72.0 h1:S7UkcVa60b5AAQTaO6ZKamFp1zMZSU0fGDK2WZLbBnM= google.golang.org/grpc v1.72.0/go.mod h1:wH5Aktxcg25y1I3w7H69nHfXdOG3UiadoBtjh3izSDM= google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY= diff --git a/pkg/edition/java/proto/codec/decoder.go b/pkg/edition/java/proto/codec/decoder.go index e008e2e5..3fc11391 100644 --- a/pkg/edition/java/proto/codec/decoder.go +++ b/pkg/edition/java/proto/codec/decoder.go @@ -142,7 +142,7 @@ func (d *Decoder) readPayload() (payload []byte, n int, err error) { } if claimedUncompressedSize <= 0 { if actualUncompressedSize := buf.Len(); actualUncompressedSize > d.compressionThreshold { - return nil, fmt.Errorf("actual uncompressed size %d is greater than threshold %d", + return nil, n, fmt.Errorf("actual uncompressed size %d is greater than threshold %d", actualUncompressedSize, d.compressionThreshold) } // This message is not compressed From a62dd9d042e6808e4a815e1a382faf74e7714700 Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Wed, 14 May 2025 14:09:23 +0200 Subject: [PATCH 095/107] go mod tidy --- go.sum | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/go.sum b/go.sum index 3cbeb68f..0d23bce7 100644 --- a/go.sum +++ b/go.sum @@ -1,5 +1,5 @@ -buf.build/gen/go/minekube/connect/protocolbuffers/go v1.36.6-20240220124425-904ce30425c9.1 h1:BKgtya1gU8bMQaTSGDJZPTCMuBm0tanoEdiiukuXRDc= -buf.build/gen/go/minekube/connect/protocolbuffers/go v1.36.6-20240220124425-904ce30425c9.1/go.mod h1:4UJIzWc11+qjGTjyHsJk0izbw2FGCJt+gNmpb1TtNuQ= +buf.build/gen/go/minekube/connect/protocolbuffers/go v1.35.2-20240220124425-904ce30425c9.1 h1:RV35ziPOz7DrN6S673Dq70Pydg3sFa3uGsYzaztavlo= +buf.build/gen/go/minekube/connect/protocolbuffers/go v1.35.2-20240220124425-904ce30425c9.1/go.mod h1:96yQVJkVjg/fSbxhL7wpEEz59WDdYZ4M9f7MIcGeMQY= cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= cloud.google.com/go v0.31.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= @@ -23,11 +23,11 @@ github.com/buger/jsonparser v0.0.0-20181115193947-bf1c66bbce23/go.mod h1:bbYlZJ7 github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= -github.com/coder/websocket v1.8.13 h1:f3QZdXy7uGVz+4uCJy2nTZyM0yTBj8yANEHhqlXZ9FE= -github.com/coder/websocket v1.8.13/go.mod h1:LNVeNrXQZfe5qhS9ALED3uA+l5pPqvwXg3CKoDBB2gs= +github.com/coder/websocket v1.8.12 h1:5bUXkEPPIbewrnkU8LTCLVaxi4N4J8ahufH2vlo4NAo= +github.com/coder/websocket v1.8.12/go.mod h1:LNVeNrXQZfe5qhS9ALED3uA+l5pPqvwXg3CKoDBB2gs= github.com/coreos/go-systemd v0.0.0-20181012123002-c6f51f82210d/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= -github.com/cpuguy83/go-md2man/v2 v2.0.6 h1:XJtiaUW6dEEqVuZiMTn1ldk455QWwEIsMIJlo5vtkx0= -github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g= +github.com/cpuguy83/go-md2man/v2 v2.0.5 h1:ZtcqGrnekaHpVLArFSe4HK5DoKx1T0rq2DwVB0alcyc= +github.com/cpuguy83/go-md2man/v2 v2.0.5/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= @@ -138,8 +138,8 @@ github.com/neelance/sourcemap v0.0.0-20151028013722-8c68805598ab/go.mod h1:Qr6/a github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646 h1:zYyBkD/k9seD2A7fsi6Oo2LfFZAehjjQMERAvZLEDnQ= github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646/go.mod h1:jpp1/29i3P1S/RLdc7JQKbRpFeM1dOBd8T9ki5s+AY8= github.com/openzipkin/zipkin-go v0.1.1/go.mod h1:NtoC/o8u3JlF1lSlyPNswIbeQH9bJTmOf0Erfk+hxe8= -github.com/pelletier/go-toml/v2 v2.2.4 h1:mye9XuhQ6gvn5h28+VilKrrPoQVanw5PMw/TB0t5Ec4= -github.com/pelletier/go-toml/v2 v2.2.4/go.mod h1:2gIqNv+qfxSVS7cM2xJQKtLSTLUE9V8t9Stt+h56mCY= +github.com/pelletier/go-toml/v2 v2.2.3 h1:YmeHyLY8mFWbdkNWwpr+qIL2bEqT0o95WSdkNHvL12M= +github.com/pelletier/go-toml/v2 v2.2.3/go.mod h1:MfCQTFTvCcUyyvvwm1+G6H/jORL20Xlb6rzQu9GuUkc= github.com/pires/go-proxyproto v0.8.0 h1:5unRmEAPbHXHuLjDg01CxJWf91cw3lKHc/0xzKpXEe0= github.com/pires/go-proxyproto v0.8.0/go.mod h1:iknsfgnH8EkjrMeMyvfKByp9TiBZCKZM0jx2xmKqnVY= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= From 04092d9857298aa5f4ccd0c75e8fd3c6e4417260 Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Wed, 14 May 2025 14:56:54 +0200 Subject: [PATCH 096/107] feat(otel): update OpenTelemetry dependencies to v1.35.0 and add Prometheus metrics server Updated OpenTelemetry modules to v1.35.0, including core, metric, and trace packages. Introduced a new HTTP server for Prometheus metrics, configurable via environment variables. Enhanced the OpenTelemetry initialization to support metrics collection and server management. Updated documentation to reflect new environment variables for metrics configuration. --- .web/docs/guide/otel/index.md | 21 +++--- Makefile | 2 +- go.mod | 20 ++++-- go.sum | 31 +++++++++ pkg/edition/java/proxy/otel.go | 5 +- pkg/gate/gate.go | 2 +- pkg/internal/otelutil/otel.go | 116 ++++++++++++++++++++++++++++++++- 7 files changed, 174 insertions(+), 23 deletions(-) diff --git a/.web/docs/guide/otel/index.md b/.web/docs/guide/otel/index.md index 64fafbd9..ba17035e 100644 --- a/.web/docs/guide/otel/index.md +++ b/.web/docs/guide/otel/index.md @@ -10,15 +10,18 @@ Gate uses OpenTelemetry for observability, leveraging the [otel-config-go](https Gate's OpenTelemetry implementation can be configured using the following environment variables: -| Environment Variable | Required | Default | Description | -| --------------------------- | -------- | ---------------------- | ------------------------- | -| OTEL_SERVICE_NAME | No | `gate` | Name of your service | -| OTEL_SERVICE_VERSION | No | - | Version of your service | -| OTEL_EXPORTER_OTLP_ENDPOINT | No | `localhost:4317` | Endpoint for OTLP export | -| OTEL_LOG_LEVEL | No | `info` | Logging level | -| OTEL_PROPAGATORS | No | `tracecontext,baggage` | Configured propagators | -| OTEL_METRICS_ENABLED | No | `true` | Enable metrics collection | -| OTEL_TRACES_ENABLED | No | `true` | Enable trace collection | +| Environment Variable | Required | Default | Description | +| --------------------------- | -------- | ---------------------- | ------------------------------------- | +| OTEL_SERVICE_NAME | No | `gate` | Name of your service | +| OTEL_SERVICE_VERSION | No | - | Version of your service | +| OTEL_EXPORTER_OTLP_ENDPOINT | No | `localhost:4317` | Endpoint for OTLP export | +| OTEL_LOG_LEVEL | No | `info` | Logging level | +| OTEL_PROPAGATORS | No | `tracecontext,baggage` | Configured propagators | +| OTEL_METRICS_ENABLED | No | `true` | Enable metrics collection | +| OTEL_TRACES_ENABLED | No | `true` | Enable trace collection | +| OTEL_METRICS_SERVER_ENABLED | No | `false` | Enable Prometheus metrics server | +| OTEL_METRICS_SERVER_PATH | No | `/metrics` | Path for Prometheus metrics endpoint | +| OTEL_METRICS_SERVER_ADDR | No | `:9464` | Address for Prometheus metrics server | Additional environment variables for exporters: diff --git a/Makefile b/Makefile index 7d232435..29718856 100644 --- a/Makefile +++ b/Makefile @@ -22,7 +22,7 @@ lint: # Serve the docs website locally and auto on changes dev-docs: - cd .web && yarn install && yarn dev + (cd .web && yarn install && yarn dev) # Install gops & dependencies pprof-gops-install: diff --git a/go.mod b/go.mod index 24091ad5..df5ab2c4 100644 --- a/go.mod +++ b/go.mod @@ -34,9 +34,9 @@ require ( go.minekube.com/common v0.0.6 go.minekube.com/connect v0.6.2 go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.57.0 - go.opentelemetry.io/otel v1.34.0 - go.opentelemetry.io/otel/metric v1.34.0 - go.opentelemetry.io/otel/trace v1.34.0 + go.opentelemetry.io/otel v1.35.0 + go.opentelemetry.io/otel/metric v1.35.0 + go.opentelemetry.io/otel/trace v1.35.0 go.uber.org/atomic v1.11.0 go.uber.org/zap v1.27.0 golang.org/x/exp v0.0.0-20241108190413-2d47ceb2692f @@ -51,7 +51,9 @@ require ( require ( buf.build/gen/go/minekube/connect/protocolbuffers/go v1.35.2-20240220124425-904ce30425c9.1 // indirect + github.com/beorn7/perks v1.0.1 // indirect github.com/cenkalti/backoff/v4 v4.3.0 // indirect + github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/cpuguy83/go-md2man/v2 v2.0.5 // indirect github.com/emirpasic/gods v1.18.1 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect @@ -63,12 +65,17 @@ require ( github.com/go-viper/mapstructure/v2 v2.2.1 // indirect github.com/golang/snappy v0.0.4 // indirect github.com/grpc-ecosystem/grpc-gateway/v2 v2.23.0 // indirect - github.com/klauspost/compress v1.17.2 // indirect + github.com/klauspost/compress v1.18.0 // indirect github.com/lucasb-eyer/go-colorful v1.2.0 // indirect github.com/lufia/plan9stats v0.0.0-20240513124658-fba389f38bae // indirect + github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect github.com/pelletier/go-toml/v2 v2.2.3 // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 // indirect + github.com/prometheus/client_golang v1.20.5 // indirect + github.com/prometheus/client_model v0.6.1 // indirect + github.com/prometheus/common v0.62.0 // indirect + github.com/prometheus/procfs v0.15.1 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect github.com/sagikazarmark/locafero v0.9.0 // indirect github.com/segmentio/fasthash v1.0.3 // indirect @@ -95,8 +102,9 @@ require ( go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.32.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0 // indirect - go.opentelemetry.io/otel/sdk v1.34.0 // indirect - go.opentelemetry.io/otel/sdk/metric v1.34.0 // indirect + go.opentelemetry.io/otel/exporters/prometheus v0.57.0 // indirect + go.opentelemetry.io/otel/sdk v1.35.0 // indirect + go.opentelemetry.io/otel/sdk/metric v1.35.0 // indirect go.opentelemetry.io/proto/otlp v1.3.1 // indirect go.uber.org/multierr v1.11.0 // indirect golang.org/x/image v0.18.0 // indirect diff --git a/go.sum b/go.sum index 0d23bce7..b7001cad 100644 --- a/go.sum +++ b/go.sum @@ -18,10 +18,14 @@ github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7l github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239/go.mod h1:2FmKhYUyUczH0OGQWaF5ceTx0UBShxjsH6f8oGKYe2c= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= +github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= +github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= github.com/bradfitz/go-smtpd v0.0.0-20170404230938-deb6d6237625/go.mod h1:HYsPBTaaSFSlLx/70C2HPIMNZpVV8+vt/A+FMnYP11g= github.com/buger/jsonparser v0.0.0-20181115193947-bf1c66bbce23/go.mod h1:bbYlZJ7hK1yFx9hf58LP0zeX7UjIGs20ufpu3evjr+s= github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= +github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= +github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/coder/websocket v1.8.12 h1:5bUXkEPPIbewrnkU8LTCLVaxi4N4J8ahufH2vlo4NAo= github.com/coder/websocket v1.8.12/go.mod h1:LNVeNrXQZfe5qhS9ALED3uA+l5pPqvwXg3CKoDBB2gs= @@ -113,6 +117,9 @@ github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1 github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/klauspost/compress v1.17.2 h1:RlWWUY/Dr4fL8qk9YG7DTZ7PDgME2V4csBXA8L/ixi4= github.com/klauspost/compress v1.17.2/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE= +github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw= +github.com/klauspost/compress v1.18.0 h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo= +github.com/klauspost/compress v1.18.0/go.mod h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ= github.com/knadh/koanf/providers/file v1.2.0 h1:hrUJ6Y9YOA49aNu/RSYzOTFlqzXSCpmYIDXI7OJU6+U= github.com/knadh/koanf/providers/file v1.2.0/go.mod h1:bp1PM5f83Q+TOUu10J/0ApLBd9uIzg+n9UgthfY+nRA= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= @@ -133,6 +140,8 @@ github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5 github.com/microcosm-cc/bluemonday v1.0.1/go.mod h1:hsXNsILzKxV+sX77C5b8FSuKF00vh2OMYv+xgHpAMF4= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/neelance/astrewrite v0.0.0-20160511093645-99348263ae86/go.mod h1:kHJEU3ofeGjhHklVoIGuVj85JJwZ6kWPaJwCIxgnFmo= github.com/neelance/sourcemap v0.0.0-20151028013722-8c68805598ab/go.mod h1:Qr6/a/Q4r9LP1IltGz7tA7iOK1WonHEYhu1HRBA7ZiM= github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646 h1:zYyBkD/k9seD2A7fsi6Oo2LfFZAehjjQMERAvZLEDnQ= @@ -149,9 +158,19 @@ github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 h1:o4JXh1EVt9k/+g42oCprj/FisM4qX9L3sZB3upGN2ZU= github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE= github.com/prometheus/client_golang v0.8.0/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= +github.com/prometheus/client_golang v1.20.5 h1:cxppBPuYhUnsO6yo/aoRol4L7q7UFfdm+bR9r+8l63Y= +github.com/prometheus/client_golang v1.20.5/go.mod h1:PIEt8X02hGcP8JWbeHyeZ53Y/jReSnHgO035n//V5WE= +github.com/prometheus/client_golang v1.22.0 h1:rb93p9lokFEsctTys46VnV1kLCDpVZ0a/Y92Vm0Zc6Q= +github.com/prometheus/client_golang v1.22.0/go.mod h1:R7ljNsLXhuQXYZYtw6GAE9AZg8Y7vEW5scdCXrWRXC0= github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= +github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E= +github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY= github.com/prometheus/common v0.0.0-20180801064454-c7de2306084e/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= +github.com/prometheus/common v0.62.0 h1:xasJaQlnWAeyHdUBeGjXmutelfJHWMRr+Fg4QszZ2Io= +github.com/prometheus/common v0.62.0/go.mod h1:vyBcEuLSvWos9B1+CyL7JZ2up+uFzXhkqml0W5zIY1I= github.com/prometheus/procfs v0.0.0-20180725123919-05ee40e3a273/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= +github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= +github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= github.com/robinbraemer/event v0.1.1 h1:1T7GturBzxsa8UUe/r3EmW9aHLErKBggfn43up5hOUA= github.com/robinbraemer/event v0.1.1/go.mod h1:fKkjL2UbPajNcxc4oWYyRCcUalss0YtPxwMtZTuNo8o= github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII= @@ -260,6 +279,8 @@ go.opentelemetry.io/contrib/propagators/ot v1.28.0 h1:rmlG+2pc5k5M7Y7izDrxAHZUIw go.opentelemetry.io/contrib/propagators/ot v1.28.0/go.mod h1:MNgXIn+UrMbNGpd7xyckyo2LCHIgCdmdjEE7YNZGG+w= go.opentelemetry.io/otel v1.34.0 h1:zRLXxLCgL1WyKsPVrgbSdMN4c0FMkDAskSTQP+0hdUY= go.opentelemetry.io/otel v1.34.0/go.mod h1:OWFPOQ+h4G8xpyjgqo4SxJYdDQ/qmRH+wivy7zzx9oI= +go.opentelemetry.io/otel v1.35.0 h1:xKWKPxrxB6OtMCbmMY021CqC45J+3Onta9MqjhnusiQ= +go.opentelemetry.io/otel v1.35.0/go.mod h1:UEqy8Zp11hpkUrL73gSlELM0DupHoiq72dR+Zqel/+Y= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0 h1:j7ZSD+5yn+lo3sGV69nW04rRR0jhYnBwjuX3r0HvnK0= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0/go.mod h1:WXbYJTUaZXAbYd8lbgGuvih0yuCfOFC5RJoYnoLcGz8= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.28.0 h1:aLmmtjRke7LPDQ3lvpFz+kNEH43faFhzW7v8BFIEydg= @@ -270,14 +291,24 @@ go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0 h1:9kV11 go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0/go.mod h1:JyA0FHXe22E1NeNiHmVp7kFHglnexDQ7uRWDiiJ1hKQ= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0 h1:j9+03ymgYhPKmeXGk5Zu+cIZOlVzd9Zv7QIiyItjFBU= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0/go.mod h1:Y5+XiUG4Emn1hTfciPzGPJaSI+RpDts6BnCIir0SLqk= +go.opentelemetry.io/otel/exporters/prometheus v0.57.0 h1:AHh/lAP1BHrY5gBwk8ncc25FXWm/gmmY3BX258z5nuk= +go.opentelemetry.io/otel/exporters/prometheus v0.57.0/go.mod h1:QpFWz1QxqevfjwzYdbMb4Y1NnlJvqSGwyuU0B4iuc9c= go.opentelemetry.io/otel/metric v1.34.0 h1:+eTR3U0MyfWjRDhmFMxe2SsW64QrZ84AOhvqS7Y+PoQ= go.opentelemetry.io/otel/metric v1.34.0/go.mod h1:CEDrp0fy2D0MvkXE+dPV7cMi8tWZwX3dmaIhwPOaqHE= +go.opentelemetry.io/otel/metric v1.35.0 h1:0znxYu2SNyuMSQT4Y9WDWej0VpcsxkuklLa4/siN90M= +go.opentelemetry.io/otel/metric v1.35.0/go.mod h1:nKVFgxBZ2fReX6IlyW28MgZojkoAkJGaE8CpgeAU3oE= go.opentelemetry.io/otel/sdk v1.34.0 h1:95zS4k/2GOy069d321O8jWgYsW3MzVV+KuSPKp7Wr1A= go.opentelemetry.io/otel/sdk v1.34.0/go.mod h1:0e/pNiaMAqaykJGKbi+tSjWfNNHMTxoC9qANsCzbyxU= +go.opentelemetry.io/otel/sdk v1.35.0 h1:iPctf8iprVySXSKJffSS79eOjl9pvxV9ZqOWT0QejKY= +go.opentelemetry.io/otel/sdk v1.35.0/go.mod h1:+ga1bZliga3DxJ3CQGg3updiaAJoNECOgJREo9KHGQg= go.opentelemetry.io/otel/sdk/metric v1.34.0 h1:5CeK9ujjbFVL5c1PhLuStg1wxA7vQv7ce1EK0Gyvahk= go.opentelemetry.io/otel/sdk/metric v1.34.0/go.mod h1:jQ/r8Ze28zRKoNRdkjCZxfs6YvBTG1+YIqyFVFYec5w= +go.opentelemetry.io/otel/sdk/metric v1.35.0 h1:1RriWBmCKgkeHEhM7a2uMjMUfP7MsOF5JpUCaEqEI9o= +go.opentelemetry.io/otel/sdk/metric v1.35.0/go.mod h1:is6XYCUMpcKi+ZsOvfluY5YstFnhW0BidkR+gL+qN+w= go.opentelemetry.io/otel/trace v1.34.0 h1:+ouXS2V8Rd4hp4580a8q23bg0azF2nI8cqLYnC8mh/k= go.opentelemetry.io/otel/trace v1.34.0/go.mod h1:Svm7lSjQD7kG7KJ/MUHPVXSDGz2OX4h0M2jHBhmSfRE= +go.opentelemetry.io/otel/trace v1.35.0 h1:dPpEfJu1sDIqruz7BHFG3c7528f6ddfSWfFDVt/xgMs= +go.opentelemetry.io/otel/trace v1.35.0/go.mod h1:WUk7DtFp1Aw2MkvqGdwiXYDZZNvA/1J8o6xRXLrIkyc= go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= go.opentelemetry.io/proto/otlp v1.3.1/go.mod h1:0X1WI4de4ZsLrrJNLAQbFeLCm3T7yBkR0XqQ7niQU+8= go.uber.org/atomic v1.11.0 h1:ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE= diff --git a/pkg/edition/java/proxy/otel.go b/pkg/edition/java/proxy/otel.go index d60038c3..dfc33e2c 100644 --- a/pkg/edition/java/proxy/otel.go +++ b/pkg/edition/java/proxy/otel.go @@ -23,8 +23,5 @@ func (p *Proxy) initMeter() error { metric.WithDescription("The current total player count on the proxy"), metric.WithUnit("1"), ) - if err != nil { - return err - } - return nil + return err } diff --git a/pkg/gate/gate.go b/pkg/gate/gate.go index f0055f06..47497717 100644 --- a/pkg/gate/gate.go +++ b/pkg/gate/gate.go @@ -247,7 +247,7 @@ func Start(ctx context.Context, opts ...StartOption) error { } // Initialize OpenTelemetry - otelShutdown, err := otelutil.Init() + otelShutdown, err := otelutil.Init(ctx) if err != nil { return fmt.Errorf("error initializing OpenTelemetry: %w", err) } diff --git a/pkg/internal/otelutil/otel.go b/pkg/internal/otelutil/otel.go index 8e8ed11a..463c1323 100644 --- a/pkg/internal/otelutil/otel.go +++ b/pkg/internal/otelutil/otel.go @@ -1,13 +1,100 @@ package otelutil import ( + "context" + "fmt" + "net" + "net/http" "os" + "sync" + "time" + "github.com/go-logr/logr" "github.com/honeycombio/otel-config-go/otelconfig" + "github.com/prometheus/client_golang/prometheus/promhttp" + "go.opentelemetry.io/otel" + "go.opentelemetry.io/otel/exporters/prometheus" + "go.opentelemetry.io/otel/sdk/metric" ) +const ( + defaultMetricsPath = "/metrics" + defaultMetricsAddr = ":9464" +) + +// startMetricsServer initializes and starts an HTTP server for Prometheus metrics. +// It returns a function to gracefully shut down the server. +func startMetricsServer(ctx context.Context) (func(), error) { + enabled := os.Getenv("OTEL_METRICS_ENABLED") + if enabled != "true" { + return func() {}, nil + } + serverEnabled := os.Getenv("OTEL_METRICS_SERVER_ENABLED") + if serverEnabled != "true" { + return func() {}, nil + } + + metricsPath := os.Getenv("OTEL_METRICS_SERVER_PATH") + if metricsPath == "" { + metricsPath = defaultMetricsPath + } + metricsAddr := os.Getenv("OTEL_METRICS_SERVER_ADDR") + if metricsAddr == "" { + metricsAddr = defaultMetricsAddr + } + + exporter, err := prometheus.New() + if err != nil { + return nil, err + } + provider := metric.NewMeterProvider(metric.WithReader(exporter)) + otel.SetMeterProvider(provider) + // This provider is set as the global MeterProvider. + // Application-specific metrics can then be created using otel.Meter() + // elsewhere and will be exported via this Prometheus setup. + // The startMetricsServer function itself only sets up the export pipeline. + + mux := http.NewServeMux() + mux.Handle(metricsPath, promhttp.Handler()) + + // Create a ln first to catch errors like "port already in use" early. + ln, err := net.Listen("tcp", metricsAddr) + if err != nil { + return nil, fmt.Errorf("failed to create metrics listener on %s: %w", metricsAddr, err) + } + + server := &http.Server{ + Handler: mux, + IdleTimeout: 10 * time.Second, + ReadTimeout: 10 * time.Second, + WriteTimeout: 10 * time.Second, + } + + log := logr.FromContextOrDiscard(ctx) + + go func() { + log.Info("metrics server listening", "addr", ln.Addr().String(), "path", metricsPath) + // Use Serve with the listener instead of ListenAndServe + if err := server.Serve(ln); err != nil && err != http.ErrServerClosed { + log.Error(err, "failed to start metrics server") + } + }() + + // Return a cleanup function to shut down the server + return func() { + log.Info("shutting down metrics server...") + ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second) + defer cancel() + if err := server.Shutdown(ctx); err != nil { + log.Error(err, "metrics server shutdown failed") + } + _ = ln.Close() + }, nil +} + // Init initializes the OpenTelemetry SDK with the OTLP exporter and the corresponding trace and meter providers. -func Init() (clean func(), err error) { +// It also starts an HTTP server for Prometheus metrics. +func Init(ctx context.Context) (clean func(), err error) { // default service name serviceName := os.Getenv("OTEL_SERVICE_NAME") if serviceName == "" { @@ -20,5 +107,30 @@ func Init() (clean func(), err error) { if err != nil { return nil, err } - return otelShutdown, nil + + metricsServerShutdown, err := startMetricsServer(ctx) + if err != nil { + // If metrics server fails, try to clean up OTel config first + otelShutdown() + return nil, err + } + + return func() { + log := logr.FromContextOrDiscard(ctx).WithName("otel") + var wg sync.WaitGroup + wg.Add(2) + go func() { + defer wg.Done() + log.Info("shutting down OpenTelemetry...") + otelShutdown() + log.Info("OpenTelemetry shutdown complete") + }() + go func() { + defer wg.Done() + log.Info("shutting down metrics server...") + metricsServerShutdown() + log.Info("metrics server shutdown complete") + }() + wg.Wait() + }, nil } From 5ef2a7033f902ef964b8b4348973c82cfee492f1 Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Wed, 14 May 2025 15:28:41 +0200 Subject: [PATCH 097/107] feat(docs): add 'Self-hosted' link to OpenTelemetry navigation --- .web/docs/.vitepress/config.ts | 4 + .web/docs/guide/otel/self-hosted/index.md | 263 ++++++++++++++++++ .../jaeger-config/docker-compose.yml | 27 ++ .../gate-pod-annotations-example.yml | 7 + .../k8s-configs/gate-podmonitor.yml | 18 ++ .../self-hosted/k8s-configs/gate-service.yml | 17 ++ .../k8s-configs/gate-servicemonitor.yml | 22 ++ .../otel-stack-configs/docker-compose.yml | 57 ++++ .../grafana-datasources.yml | 31 +++ .../otel-stack-configs/prometheus.yml | 20 ++ .../self-hosted/otel-stack-configs/tempo.yaml | 40 +++ 11 files changed, 506 insertions(+) create mode 100644 .web/docs/guide/otel/self-hosted/index.md create mode 100644 .web/docs/guide/otel/self-hosted/jaeger-config/docker-compose.yml create mode 100644 .web/docs/guide/otel/self-hosted/k8s-configs/gate-pod-annotations-example.yml create mode 100644 .web/docs/guide/otel/self-hosted/k8s-configs/gate-podmonitor.yml create mode 100644 .web/docs/guide/otel/self-hosted/k8s-configs/gate-service.yml create mode 100644 .web/docs/guide/otel/self-hosted/k8s-configs/gate-servicemonitor.yml create mode 100644 .web/docs/guide/otel/self-hosted/otel-stack-configs/docker-compose.yml create mode 100644 .web/docs/guide/otel/self-hosted/otel-stack-configs/grafana-datasources.yml create mode 100644 .web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus.yml create mode 100644 .web/docs/guide/otel/self-hosted/otel-stack-configs/tempo.yaml diff --git a/.web/docs/.vitepress/config.ts b/.web/docs/.vitepress/config.ts index 9ecff0bb..c3ab7055 100644 --- a/.web/docs/.vitepress/config.ts +++ b/.web/docs/.vitepress/config.ts @@ -186,6 +186,10 @@ export default defineConfig({ text: 'Honeycomb', link: '/guide/otel/honeycomb/', }, + { + text: 'Self-hosted', + link: '/guide/otel/self-hosted/', + }, { text: 'FAQ', link: '/guide/otel/faq/', diff --git a/.web/docs/guide/otel/self-hosted/index.md b/.web/docs/guide/otel/self-hosted/index.md new file mode 100644 index 00000000..2932fa20 --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/index.md @@ -0,0 +1,263 @@ +# Self-Hosted OpenTelemetry Solutions + +This guide provides instructions on how to set up self-hosted OpenTelemetry backends using Docker Compose and configure Gate to send telemetry data (traces and metrics) to them. + +We will cover two common scenarios: + +1. **Grafana Stack**: Grafana for visualization, Prometheus for metrics, and Tempo for traces. +2. **Jaeger**: All-in-one Jaeger for tracing. + +## Scenario 1: Grafana, Prometheus & Tempo + +This setup uses Grafana Tempo for traces, Prometheus for metrics, and Grafana for visualizing both. Gate will send traces directly to Tempo via OTLP and expose a Prometheus-compatible scrape endpoint for metrics. + +### 1. Docker Compose Configuration + +Create a `docker-compose.yml` file with the following content. You can place this in `otel-stack-configs/docker-compose.yml` relative to this document, and then the other config files (`prometheus.yml`, etc.) should be in the same `otel-stack-configs` directory when you run `docker compose -f otel-stack-configs/docker-compose.yml up -d` from the directory containing `otel-stack-configs`. + +```yaml + +``` + +### 2. Configuration Files + +You'll need the following configuration files in the same directory as your `docker-compose.yml`: + +**`prometheus.yml`:** + +```yaml + +``` + +**`tempo.yaml`:** + +```yaml + +``` + +**`grafana-datasources.yml`:** + +```yaml + +``` + +### 3. Configure Gate Environment Variables + +To send telemetry data from Gate to this self-hosted stack: + +**For Traces (to Tempo OTLP):** + +```bash +export OTEL_EXPORTER_OTLP_ENDPOINT="http://localhost:4317" # Or IP of Docker host if Gate is external +export OTEL_EXPORTER_OTLP_PROTOCOL="grpc" # Default, can be omitted +export OTEL_TRACES_ENABLED="true" +# OTEL_SERVICE_NAME is recommended, e.g., "gate-proxy" +``` + +If Gate is running as a Docker container itself _on the same Docker network_ (`otel-stack`), you can use the service name: + +```bash +export OTEL_EXPORTER_OTLP_ENDPOINT="http://tempo:4317" +``` + +**For Metrics (Prometheus scraping Gate):** +Ensure these Gate environment variables are set (they are enabled by default if not specified): + +```bash +export OTEL_METRICS_ENABLED="true" +export OTEL_METRICS_SERVER_ENABLED="true" +export OTEL_METRICS_SERVER_ADDR=":9464" # Default, ensure Prometheus can reach this +export OTEL_METRICS_SERVER_PATH="/metrics" # Default +``` + +Update the `prometheus.yml` file (specifically the `gate` job's `targets`) to point to the address where Gate's metrics endpoint is exposed. If Docker is running on Linux, `host.docker.internal` might not resolve, and you may need to use the host's actual IP address on the Docker bridge network (e.g., `172.17.0.1`) or the machine's network IP if Gate is not containerized. + +### 4. Running the Stack + +1. Save the `docker-compose.yml` and the configuration files (`prometheus.yml`, `tempo.yaml`, `grafana-datasources.yml`) in the same directory. +2. Open a terminal in that directory and run: + ```bash + docker compose -f otel-stack-configs/docker-compose.yml up -d + ``` +3. **Access Services:** + - Grafana: `http://localhost:3000` (admin/admin, then change password) + - Prometheus: `http://localhost:9090` + - Tempo: `http://localhost:3200` (for Tempo's own UI, though Grafana is primary) + +### 5. Viewing Data in Grafana + +- **Prometheus**: + - The Prometheus data source should be automatically provisioned. + - Go to "Explore", select "Prometheus", and you can query metrics like `gate_info` (if Gate is running and scraped) or `prometheus_http_requests_total`. +- **Tempo**: + - The Tempo data source should also be automatically provisioned. + - Go to "Explore", select "Tempo". You can search for traces by Service Name (e.g., your `OTEL_SERVICE_NAME` for Gate), or look at the Service Graph (if `metrics_generator` in Tempo is working correctly and sending data to Prometheus). + - If you have metrics that can be correlated with traces (like exemplars), you might be able to jump from metrics in Prometheus to traces in Tempo. + +--- + +## Scenario 2: All-in-one Jaeger + +Jaeger is a popular open-source, end-to-end distributed tracing system. The `all-in-one` image is a quick way to get started with Jaeger for development and testing. It includes the Jaeger Collector (which can receive OTLP), Agent, Query service, and UI in a single container. + +Gate can send traces directly to Jaeger using the OTLP exporter. + +### 1. Docker Compose Configuration + +Create a `docker-compose-jaeger.yml` file (or add to an existing one). You can place the following content into a file, for example, at `otel-jaeger-config/docker-compose.yml` relative to this document, and run `docker compose -f otel-jaeger-config/docker-compose.yml up -d`: + +```yaml + +``` + +### 2. Configure Gate Environment Variables + +To send traces from Gate to Jaeger: + +```bash +export OTEL_EXPORTER_OTLP_ENDPOINT="http://localhost:4317" # Or IP of Docker host if Gate is external +export OTEL_EXPORTER_OTLP_PROTOCOL="grpc" # or "http/protobuf" for HTTP OTLP +export OTEL_TRACES_ENABLED="true" +# OTEL_SERVICE_NAME is highly recommended, e.g., "gate-proxy-dev" +export OTEL_SERVICE_NAME="gate-jaeger-example" +``` + +If Gate is running as a Docker container on the same Docker network (`otel-jaeger-net`), you can use the service name: + +```bash +export OTEL_EXPORTER_OTLP_ENDPOINT="http://jaeger:4317" +``` + +Note: For this Jaeger setup, metrics collection with Prometheus is not included. Jaeger primarily focuses on tracing. If you need both metrics and traces, the Grafana stack (Scenario 1) or a more complex setup involving an OpenTelemetry Collector to route traces to Jaeger and metrics to Prometheus would be necessary. + +### 3. Running Jaeger + +1. Save the `docker-compose-jaeger.yml` file. +2. Open a terminal in that directory and run: + ```bash + docker compose -f docker-compose-jaeger.yml up -d + ``` +3. **Access Jaeger UI:** + - Open your browser and navigate to `http://localhost:16686` + +### 4. Viewing Traces in Jaeger + +- Once Gate is running and configured to send traces to Jaeger, you should be able to see your `OTEL_SERVICE_NAME` (e.g., "gate-jaeger-example") in the "Service" dropdown in the Jaeger UI. +- Select your service and click "Find Traces" to see the collected trace data. + +--- + +## Scenario 3: Kubernetes with kube-prometheus-stack + +The `kube-prometheus-stack` Helm chart by the Prometheus Community is a powerful and widely adopted solution for monitoring Kubernetes clusters. It bundles Prometheus, Grafana, Alertmanager, and various exporters to provide a full-fledged monitoring experience out of the box. You can find more about it on [Artifact Hub](https://artifacthub.io/packages/helm/prometheus-community/kube-prometheus-stack) and the [Prometheus Community GitHub](https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack). + +When Gate is deployed in such a Kubernetes cluster, you'll want Prometheus to scrape Gate's metrics and potentially send Gate's traces to a tracing backend that might be part of or integrated with this stack (like Jaeger or Grafana Tempo, which can also be deployed alongside or as part of `kube-prometheus-stack`'s capabilities). + +### 1. Prerequisites + +- A running Kubernetes cluster. +- `helm` CLI installed. +- `kube-prometheus-stack` Helm chart installed in your cluster. If not, you can typically install it via: + ```bash + helm repo add prometheus-community https://prometheus-community.github.io/helm-charts + helm repo update + helm install prometheus prometheus-community/kube-prometheus-stack --namespace monitoring --create-namespace + ``` + (Refer to the official chart documentation for the most up-to-date installation instructions and configuration options.) + +### 2. Configuring Gate for Metrics Scraping by Prometheus + +Prometheus, as deployed by `kube-prometheus-stack`, typically uses Custom Resources like `ServiceMonitor` or `PodMonitor` to discover and scrape metrics endpoints. + +**a. Ensure Gate's Metrics Endpoint is Exposed:** + +First, make sure your Gate Kubernetes Deployment and Service are configured to expose the metrics port (default `:9464`). + +Your Gate `Service` definition might look something like this: + +```yaml + +``` + +**b. Create a `ServiceMonitor` for Gate:** + +This is the recommended way for `kube-prometheus-stack` to discover your Gate metrics. A `ServiceMonitor` CRD (Custom Resource Definition) tells the Prometheus instances managed by the stack how to find and scrape your Gate pods. + +It's important to understand that the `ServiceMonitor` doesn't mean Prometheus scrapes the _Service's virtual IP_. Instead, it uses the Service definition to find the underlying Pods: + +1. The `ServiceMonitor` selects your Gate `Service` using labels. +2. Prometheus Operator (part of `kube-prometheus-stack`) then looks at the `Endpoints` object associated with that `Service`. +3. The `Endpoints` object contains the actual IP addresses of all individual Gate Pods selected by the `Service`. +4. Prometheus uses these individual Pod IPs as scrape targets. Thus, **each Gate pod is scraped directly.** + +Create a `ServiceMonitor` custom resource like this: + +```yaml + +``` + +Apply this YAML to your cluster (`kubectl apply -f gate-servicemonitor.yaml`). Prometheus should then automatically discover and start scraping metrics from your individual Gate pods. + +**Alternative: `PodMonitor` (More Direct Pod Discovery)** + +If you prefer to discover pods directly by their labels without an intermediary `Service` definition, or if your Gate metrics endpoint isn't part of a regular Kubernetes `Service`, you can use a `PodMonitor`. + +```yaml + +``` + +While `ServiceMonitor` is very common, `PodMonitor` offers a more direct path if needed. + +**Alternative: Pod Annotations (Generally not recommended with `kube-prometheus-stack`)** + +If `ServiceMonitor` or `PodMonitor` are not an option, or for simpler setups, Prometheus can also be configured to scrape pods based on annotations. You would add these annotations to your Gate Pod specification (e.g., in your Deployment template): + +```yaml + +``` + +However, `kube-prometheus-stack` is often configured _not_ to discover based on annotations by default to favor `ServiceMonitor`/`PodMonitor`. You might need to adjust the Prometheus configuration within the Helm chart's values if you want to rely solely on annotations. + +**c. Gate Environment Variables for Metrics Server:** + +Ensure Gate is configured to run its Prometheus metrics server (these are often default values): + +```bash +export OTEL_METRICS_ENABLED="true" +export OTEL_METRICS_SERVER_ENABLED="true" +export OTEL_METRICS_SERVER_ADDR=":9464" # Ensure this matches targetPort in Service and port in ServiceMonitor +export OTEL_METRICS_SERVER_PATH="/metrics" # Ensure this matches path in ServiceMonitor if specified +``` + +### 3. Configuring Gate for Trace Export (OTLP) + +If your `kube-prometheus-stack` deployment includes a tracing backend like Grafana Tempo (which can be enabled in the chart) or if you have a separate Jaeger/Tempo instance in your cluster that accepts OTLP: + +- **Identify the OTLP Endpoint:** Determine the Kubernetes service name and port for your OTLP collector (e.g., `tempo-distributor.monitoring.svc.cluster.local:4317` or `jaeger-collector.tracing.svc.cluster.local:4317`). +- **Configure Gate Environment Variables for Traces:** + + ```bash + export OTEL_TRACES_ENABLED="true" + export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT="http://:4317" # e.g., http://tempo-distributor.monitoring:4317 + export OTEL_EXPORTER_OTLP_PROTOCOL="grpc" # or "http/protobuf" + export OTEL_SERVICE_NAME="gate-k8s-my-cluster" # Choose a meaningful service name + ``` + + If your OTLP collector is in a different namespace, make sure to use the fully qualified domain name (FQDN) of the service (e.g., `my-collector.namespace.svc.cluster.local`). + +### 4. Accessing Grafana and Viewing Data + +The `kube-prometheus-stack` chart deploys Grafana, which comes pre-configured with Prometheus as a data source. + +- **Access Grafana:** You can usually access Grafana by port-forwarding to the Grafana service: + ```bash + kubectl port-forward svc/prometheus-grafana 3000:80 -n monitoring + # The service name might vary based on your Helm release name, e.g., prometheus-kube-prometheus-stack-grafana + ``` + Then open `http://localhost:3000`. The default login is often `admin` with the password `prom-operator` (as noted in the [Atmosly guide](https://www.atmosly.com/blog/kube-prometheus-stack-a-comprehensive-guide-for-kubernetes-monitoring), but check your chart's documentation or secrets). +- **Viewing Metrics:** Your Gate metrics should appear in Prometheus. You can query them in Grafana using PromQL. The `kube-prometheus-stack` also comes with many pre-built dashboards for Kubernetes itself. You might want to create a new dashboard or customize an existing one to display Gate-specific metrics. +- **Viewing Traces:** If you've configured Gate to send traces to Tempo/Jaeger and set up that data source in Grafana (Tempo is often auto-configured if deployed by the same chart), you can explore traces via Grafana's "Explore" view. + +This scenario leverages the power of `kube-prometheus-stack` for robust Kubernetes monitoring and integrates Gate into that ecosystem for both metrics and traces. The key is correctly defining how Prometheus discovers Gate (`ServiceMonitor` being the preferred method) and how Gate sends traces to your OTLP collector within the cluster. + +--- diff --git a/.web/docs/guide/otel/self-hosted/jaeger-config/docker-compose.yml b/.web/docs/guide/otel/self-hosted/jaeger-config/docker-compose.yml new file mode 100644 index 00000000..ffa05a79 --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/jaeger-config/docker-compose.yml @@ -0,0 +1,27 @@ +version: '3.8' + +services: + jaeger: + image: jaegertracing/all-in-one:latest + container_name: jaeger + environment: + - COLLECTOR_OTLP_ENABLED=true + # Add any other Jaeger-specific environment variables if needed + ports: + # OTLP receiver ports (gRPC and HTTP) + - '4317:4317' # OTLP gRPC + - '4318:4318' # OTLP HTTP + # Jaeger UI + - '16686:16686' # Jaeger Query UI + # Other Jaeger ports (optional, for different protocols) + # - "6831:6831/udp" # Jaeger agent (jaeger.thrift over compact thrift protocol) + # - "6832:6832/udp" # Jaeger agent (jaeger.thrift over binary thrift protocol) + # - "5778:5778" # Jaeger agent (serve configs) + # - "14268:14268" # Jaeger collector (jaeger.thrift directly from clients) + # - "9411:9411" # Jaeger collector (Zipkin compatible endpoint) + networks: + - otel-jaeger-net # Optional: use a dedicated network or an existing one + +networks: + otel-jaeger-net: + driver: bridge diff --git a/.web/docs/guide/otel/self-hosted/k8s-configs/gate-pod-annotations-example.yml b/.web/docs/guide/otel/self-hosted/k8s-configs/gate-pod-annotations-example.yml new file mode 100644 index 00000000..c2154455 --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/k8s-configs/gate-pod-annotations-example.yml @@ -0,0 +1,7 @@ +template: + metadata: + annotations: + prometheus.io/scrape: 'true' + prometheus.io/path: '/metrics' # Or your Gate's OTEL_METRICS_SERVER_PATH + prometheus.io/port: '9464' # Or your Gate's OTEL_METRICS_SERVER_ADDR port +# ... rest of your pod spec diff --git a/.web/docs/guide/otel/self-hosted/k8s-configs/gate-podmonitor.yml b/.web/docs/guide/otel/self-hosted/k8s-configs/gate-podmonitor.yml new file mode 100644 index 00000000..056f2f26 --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/k8s-configs/gate-podmonitor.yml @@ -0,0 +1,18 @@ +apiVersion: monitoring.coreos.com/v1 +kind: PodMonitor +metadata: + name: gate-podmonitor + namespace: monitoring # Or the namespace where kube-prometheus-stack is installed + labels: + release: prometheus # Or your Prometheus Operator discovery label +spec: + selector: + matchLabels: + app: gate # This must match the labels on your Gate Pods + namespaceSelector: + matchNames: + - default # Or the namespace where your Gate pods are running + podMetricsEndpoints: + - port: metrics # This must match the containerPort name or number for metrics in your Gate Pod spec + interval: 15s + path: /metrics diff --git a/.web/docs/guide/otel/self-hosted/k8s-configs/gate-service.yml b/.web/docs/guide/otel/self-hosted/k8s-configs/gate-service.yml new file mode 100644 index 00000000..b8f0f5f1 --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/k8s-configs/gate-service.yml @@ -0,0 +1,17 @@ +apiVersion: v1 +kind: Service +metadata: + name: gate-service + labels: + app: gate +spec: + selector: + app: gate + ports: + - name: http # Or your main application port + port: 80 + targetPort: 8080 + - name: metrics + port: 9464 + targetPort: 9464 # This should match Gate's OTEL_METRICS_SERVER_ADDR + protocol: TCP diff --git a/.web/docs/guide/otel/self-hosted/k8s-configs/gate-servicemonitor.yml b/.web/docs/guide/otel/self-hosted/k8s-configs/gate-servicemonitor.yml new file mode 100644 index 00000000..f823f056 --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/k8s-configs/gate-servicemonitor.yml @@ -0,0 +1,22 @@ +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: gate-servicemonitor + namespace: monitoring # Or the namespace where kube-prometheus-stack is installed/configured to watch + labels: + # These labels are often used by Prometheus Operator to discover ServiceMonitors. + # Check your kube-prometheus-stack configuration for the correct labels. + # A common one is just 'release: prometheus' if you named your helm release 'prometheus'. + release: prometheus +spec: + selector: + matchLabels: + app: gate # This must match the labels on your Gate Service + namespaceSelector: + matchNames: + - default # Or the namespace where your Gate service is running + endpoints: + - port: metrics # This must match the name of the metrics port in your Gate Service + interval: 15s # Optional: scrape interval + path: /metrics # Optional: if Gate's OTEL_METRICS_SERVER_PATH is different + # honorLabels: true # Useful if you want to keep labels from the pods/services, like instance IPs diff --git a/.web/docs/guide/otel/self-hosted/otel-stack-configs/docker-compose.yml b/.web/docs/guide/otel/self-hosted/otel-stack-configs/docker-compose.yml new file mode 100644 index 00000000..6ff76092 --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/otel-stack-configs/docker-compose.yml @@ -0,0 +1,57 @@ +version: '3.8' + +services: + prometheus: + image: prom/prometheus:v3.3.1 + container_name: prometheus + command: + - '--config.file=/etc/prometheus/prometheus.yml' + - '--web.enable-lifecycle' # Allows hot-reloading of the config + volumes: + - ./prometheus.yml:/etc/prometheus/prometheus.yml:ro + - prometheus_data:/prometheus + ports: + - '9090:9090' + networks: + - otel-stack + + tempo: + image: grafana/tempo:2.7.2 + container_name: tempo + command: ['-config.file=/etc/tempo.yaml'] + volumes: + - ./tempo.yaml:/etc/tempo.yaml:ro + - tempo_data:/tmp/tempo + ports: + - '3200:3200' # Tempo UI + - '4317:4317' # OTLP gRPC + - '4318:4318' # OTLP HTTP + - '9411:9411' # Zipkin + - '14268:14268' # Jaeger gRPC + depends_on: + - prometheus + networks: + - otel-stack + + grafana: + image: grafana/grafana:12.0.0 + container_name: grafana + volumes: + - ./grafana-datasources.yml:/etc/grafana/provisioning/datasources/datasources.yml:ro + - grafana_data:/var/lib/grafana + ports: + - '3000:3000' + depends_on: + - prometheus + - tempo + networks: + - otel-stack + +networks: + otel-stack: + driver: bridge + +volumes: + prometheus_data: + tempo_data: + grafana_data: diff --git a/.web/docs/guide/otel/self-hosted/otel-stack-configs/grafana-datasources.yml b/.web/docs/guide/otel/self-hosted/otel-stack-configs/grafana-datasources.yml new file mode 100644 index 00000000..7e4a68d7 --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/otel-stack-configs/grafana-datasources.yml @@ -0,0 +1,31 @@ +apiVersion: 1 + +datasources: + - name: Prometheus + type: prometheus + access: proxy + url: http://prometheus:9090 + isDefault: true + jsonData: + exemplarTraceIdDestinations: + - datasourceUid: tempo + name: traceID + + - name: Tempo + type: tempo + access: proxy + url: http://tempo:3200 + uid: tempo # Explicit UID for linking from Prometheus + jsonData: + serviceMap: + datasourceUid: Prometheus # Query service map data from Prometheus + tracesToMetrics: + datasourceUid: 'prometheus' + tags: [{ key: 'service.name' }, { key: 'job' }] + queries: + - name: 'Example Query: Rate of requests' + query: 'sum(rate(traces_spanmetrics_latency_count{$$__tags}[5m])) by ($$__labels)' + search: + hide: false # Show the search tab by default + nodeGraph: + enabled: true diff --git a/.web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus.yml b/.web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus.yml new file mode 100644 index 00000000..0580254d --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus.yml @@ -0,0 +1,20 @@ +global: + scrape_interval: 15s + +scrape_configs: + - job_name: 'prometheus' + static_configs: + - targets: ['localhost:9090'] + + - job_name: 'gate' + # Replace 'gate-host-ip' with the actual IP address of the machine running Gate, + # or use 'host.docker.internal' if Gate is running on the same host as Docker. + # Gate's Prometheus endpoint must be enabled and accessible. + static_configs: + - targets: ['host.docker.internal:9464'] # Default Gate metrics address + # Example if Gate is on a different machine on the same network: + # - targets: ['192.168.1.100:9464'] + + - job_name: 'tempo' # Tempo can expose metrics as well + static_configs: + - targets: ['tempo:3200'] diff --git a/.web/docs/guide/otel/self-hosted/otel-stack-configs/tempo.yaml b/.web/docs/guide/otel/self-hosted/otel-stack-configs/tempo.yaml new file mode 100644 index 00000000..53971398 --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/otel-stack-configs/tempo.yaml @@ -0,0 +1,40 @@ +server: + http_listen_port: 3200 + +distributor: + receivers: # بخش receivers در توزیع کننده + otlp: # تعریف یک دریافت کننده OTLP + protocols: # پروتکل های پشتیبانی شده + grpc: # پروتکل gRPC + endpoint: 0.0.0.0:4317 # نقطه پایانی برای gRPC + http: # پروتکل HTTP + endpoint: 0.0.0.0:4318 # نقطه پایانی برای HTTP + zipkin: {} + jaeger: + protocols: + grpc: + endpoint: 0.0.0.0:14268 + +ingester: + trace_idle_period: 10s # How long to wait for more spans in a trace + +storage: + trace: + backend: local # Use local filesystem for storage + local: + path: /tmp/tempo/blocks + +metrics_generator: + storage: + path: /tmp/tempo/generator/wal + remote_write: + - url: http://prometheus:9090/api/v1/write + send_exemplars: true + +compactor: + compaction: + compaction_window: 1h # Compact data older than this period + block_retention: 1h # Override the default block retention + +# This is an example configuration, refer to Tempo documentation for more options +# https://grafana.com/docs/tempo/latest/configuration/ From 1d8b96fce35fbe57b8e8e6bd68a84d634b3303fa Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Wed, 14 May 2025 15:48:56 +0200 Subject: [PATCH 098/107] feat(docs): enhance OpenTelemetry self-hosted guide with configuration details and add sample Grafana dashboard Updated the self-hosted OpenTelemetry documentation to include detailed configuration steps for Grafana, Prometheus, and Tempo. Added a new section for a sample Grafana dashboard to visualize metrics from Gate. Introduced quick start instructions for obtaining configuration files across different scenarios, ensuring users have clear guidance for setup. --- .../gate-overview-dashboard.json | 426 ++++++++++++++++++ .web/docs/guide/otel/self-hosted/index.md | 144 +++++- .../self-hosted/otel-stack-configs/tempo.yaml | 50 +- 3 files changed, 587 insertions(+), 33 deletions(-) create mode 100644 .web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json diff --git a/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json b/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json new file mode 100644 index 00000000..b92dc3c4 --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json @@ -0,0 +1,426 @@ +{ + "__inputs": [ + { + "name": "DS_PROMETHEUS", + "label": "Prometheus", + "description": "", + "type": "datasource", + "pluginId": "prometheus", + "pluginName": "Prometheus" + } + ], + "__requires": [ + { + "type": "grafana", + "id": "grafana", + "name": "Grafana", + "version": "8.0.0" + }, + { + "type": "datasource", + "id": "prometheus", + "name": "Prometheus", + "version": "1.0.0" + } + ], + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "grafana", + "uid": "-- Grafana --" + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "editable": true, + "fiscalYearStartMonth": 0, + "gnetId": null, + "graphTooltip": 0, + "id": null, + "links": [], + "liveNow": false, + "panels": [ + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "none" + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 0 + }, + "id": 2, + "options": { + "reduceOptions": { + "calcs": ["lastNotNull"], + "fields": "", + "values": false + }, + "showThresholdLabels": false, + "showThresholdMarkers": true, + "textMode": "auto" + }, + "pluginVersion": "10.2.2", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "expr": "sum(proxy_player_count{job=\"gate\"}) by (job)", + "legendFormat": "Total Players", + "refId": "A" + } + ], + "title": "Total Player Count", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [ + { + "options": { + "0": { + "color": "red", + "index": 0, + "text": "Down" + }, + "1": { + "color": "green", + "index": 1, + "text": "Up" + } + }, + "type": "value" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unit": "none" + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 0 + }, + "id": 4, + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": ["lastNotNull"], + "fields": "/^up$/", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "10.2.2", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "expr": "up{job=\"gate\"}", + "legendFormat": "{{instance}}", + "refId": "A" + } + ], + "title": "Gate Instance Status (up)", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "none" + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 8 + }, + "id": 6, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "expr": "sum(go_goroutines{job=\"gate\"}) by (instance)", + "legendFormat": "{{instance}}", + "refId": "A" + } + ], + "title": "Go Goroutines", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 8 + }, + "id": 7, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "expr": "sum(go_memstats_alloc_bytes{job=\"gate\"}) by (instance)", + "legendFormat": "{{instance}}", + "refId": "A" + } + ], + "title": "Go Memory Usage (Alloc Bytes)", + "type": "timeseries" + } + ], + "refresh": "10s", + "schemaVersion": 37, + "style": "dark", + "tags": ["gate", "otel"], + "templating": { + "list": [ + { + "current": { + "selected": true, + "text": "Prometheus", + "value": "Prometheus" + }, + "hide": 0, + "includeAll": false, + "label": "Datasource", + "multi": false, + "name": "datasource", + "options": [], + "query": "prometheus", + "queryValue": "", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "type": "datasource" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "definition": "label_values(up{job=\"gate\"}, job)", + "hide": 0, + "includeAll": true, + "label": "Job", + "multi": true, + "name": "job", + "options": [], + "query": { + "query": "label_values(up{job=\"gate\"}, job)", + "refId": "StandardVariableQuery" + }, + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query" + } + ] + }, + "time": { + "from": "now-15m", + "to": "now" + }, + "timepicker": {}, + "timezone": "browser", + "title": "Gate Overview", + "uid": "gate-overview", + "version": 1, + "weekStart": "" +} diff --git a/.web/docs/guide/otel/self-hosted/index.md b/.web/docs/guide/otel/self-hosted/index.md index 2932fa20..e3bfd641 100644 --- a/.web/docs/guide/otel/self-hosted/index.md +++ b/.web/docs/guide/otel/self-hosted/index.md @@ -9,39 +9,49 @@ We will cover two common scenarios: ## Scenario 1: Grafana, Prometheus & Tempo +> **Quick Start: Get the Configs** +> +> To get the configuration files for this scenario: +> +> 1. Clone the repository (if you haven't already): +> ```bash +> git clone https://github.com/minekube/gate.git +> ``` +> 2. Navigate to the directory for this scenario: +> ```bash +> cd gate/.web/docs/guide/otel/self-hosted/otel-stack-configs +> ``` +> _(Adjust the `cd` path if you cloned into a different parent directory or are already inside the `gate` repo directory, e.g., `cd .web/docs/guide/otel/self-hosted/otel-stack-configs`)_ +> +> Or, [view the files directly on GitHub](https://github.com/minekube/gate/tree/master/.web/docs/guide/otel/self-hosted/otel-stack-configs/). + This setup uses Grafana Tempo for traces, Prometheus for metrics, and Grafana for visualizing both. Gate will send traces directly to Tempo via OTLP and expose a Prometheus-compatible scrape endpoint for metrics. -### 1. Docker Compose Configuration +### 1. Configuration Files -Create a `docker-compose.yml` file with the following content. You can place this in `otel-stack-configs/docker-compose.yml` relative to this document, and then the other config files (`prometheus.yml`, etc.) should be in the same `otel-stack-configs` directory when you run `docker compose -f otel-stack-configs/docker-compose.yml up -d` from the directory containing `otel-stack-configs`. +You'll need the following configuration files. The `docker-compose.yml` below assumes `prometheus.yml`, `tempo.yaml`, and `grafana-datasources.yml` are in the same directory (e.g., `otel-stack-configs/`) when you run `docker compose -f otel-stack-configs/docker-compose.yml up -d` from the directory containing `otel-stack-configs`. -```yaml +::: code-group + +```yaml [docker-compose.yml] ``` -### 2. Configuration Files - -You'll need the following configuration files in the same directory as your `docker-compose.yml`: - -**`prometheus.yml`:** - -```yaml +```yaml [prometheus.yml] ``` -**`tempo.yaml`:** - -```yaml +```yaml [tempo.yaml] ``` -**`grafana-datasources.yml`:** - -```yaml +```yaml [grafana-datasources.yml] ``` -### 3. Configure Gate Environment Variables +::: + +### 2. Configure Gate Environment Variables To send telemetry data from Gate to this self-hosted stack: @@ -72,7 +82,7 @@ export OTEL_METRICS_SERVER_PATH="/metrics" # Default Update the `prometheus.yml` file (specifically the `gate` job's `targets`) to point to the address where Gate's metrics endpoint is exposed. If Docker is running on Linux, `host.docker.internal` might not resolve, and you may need to use the host's actual IP address on the Docker bridge network (e.g., `172.17.0.1`) or the machine's network IP if Gate is not containerized. -### 4. Running the Stack +### 3. Running the Stack 1. Save the `docker-compose.yml` and the configuration files (`prometheus.yml`, `tempo.yaml`, `grafana-datasources.yml`) in the same directory. 2. Open a terminal in that directory and run: @@ -84,7 +94,7 @@ Update the `prometheus.yml` file (specifically the `gate` job's `targets`) to po - Prometheus: `http://localhost:9090` - Tempo: `http://localhost:3200` (for Tempo's own UI, though Grafana is primary) -### 5. Viewing Data in Grafana +### 4. Viewing Data in Grafana - **Prometheus**: - The Prometheus data source should be automatically provisioned. @@ -94,10 +104,60 @@ Update the `prometheus.yml` file (specifically the `gate` job's `targets`) to po - Go to "Explore", select "Tempo". You can search for traces by Service Name (e.g., your `OTEL_SERVICE_NAME` for Gate), or look at the Service Graph (if `metrics_generator` in Tempo is working correctly and sending data to Prometheus). - If you have metrics that can be correlated with traces (like exemplars), you might be able to jump from metrics in Prometheus to traces in Tempo. +### 5. Sample Gate Dashboard + +We provide a sample Grafana dashboard to help you get started with visualizing Gate's metrics. + +**Dashboard Features:** + +- Total Player Count (`proxy_player_count`) +- Gate Instance Status (`up`) +- Go Goroutines (`go_goroutines`) +- Go Memory Usage (`go_memstats_alloc_bytes`) + +**Get the Dashboard JSON:** + +- **Download Raw JSON:** [https://raw.githubusercontent.com/minekube/gate/master/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json](https://raw.githubusercontent.com/minekube/gate/master/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json) + _(You can use `curl -o gate-overview-dashboard.json ` or right-click and "Save Link As...")_ +- **View on GitHub:** [https://github.com/minekube/gate/blob/master/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json](https://github.com/minekube/gate/blob/master/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json) + +If you have cloned the repository, you can also find the dashboard at `.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json` within your local copy. + +**Importing the Dashboard:** + +1. Navigate to your Grafana instance (usually `http://localhost:3000`). +2. Log in (default: admin/admin, then change the password). +3. On the left-hand menu, go to **Dashboards**. + ![Grafana Menu Dashboards](https://grafana.com/static/assets/img/docs/navigation/navbar-dashboards.png) +4. On the Dashboards page, click the **"New"** button in the top right and select **"Import"**. + ![Grafana Dashboards New Import](https://grafana.com/static/assets/img/docs/manage-dashboards/dashboard-management-new-import.png) +5. Click the **"Upload JSON file"** button and select the `gate-overview-dashboard.json` file you downloaded, or paste the JSON content directly into the text area. +6. On the next screen, you can change the dashboard name if desired. +7. **Important:** Select your Prometheus data source from the dropdown (usually named "Prometheus"). +8. Click **"Import"**. + +You should now see the "Gate Overview" dashboard with panels visualizing metrics from your Gate instance(s). + --- ## Scenario 2: All-in-one Jaeger +> **Quick Start: Get the Configs** +> +> To get the configuration file for this scenario: +> +> 1. Clone the repository (if you haven't already): +> ```bash +> git clone https://github.com/minekube/gate.git +> ``` +> 2. Navigate to the directory for this scenario: +> ```bash +> cd gate/.web/docs/guide/otel/self-hosted/jaeger-config +> ``` +> _(Adjust the `cd` path if you cloned into a different parent directory or are already inside the `gate` repo directory, e.g., `cd .web/docs/guide/otel/self-hosted/jaeger-config`)_ +> +> Or, [view the file directly on GitHub](https://github.com/minekube/gate/tree/master/.web/docs/guide/otel/self-hosted/jaeger-config/). + Jaeger is a popular open-source, end-to-end distributed tracing system. The `all-in-one` image is a quick way to get started with Jaeger for development and testing. It includes the Jaeger Collector (which can receive OTLP), Agent, Query service, and UI in a single container. Gate can send traces directly to Jaeger using the OTLP exporter. @@ -106,10 +166,14 @@ Gate can send traces directly to Jaeger using the OTLP exporter. Create a `docker-compose-jaeger.yml` file (or add to an existing one). You can place the following content into a file, for example, at `otel-jaeger-config/docker-compose.yml` relative to this document, and run `docker compose -f otel-jaeger-config/docker-compose.yml up -d`: -```yaml +::: code-group + +```yaml [docker-compose.yml] ``` +::: + ### 2. Configure Gate Environment Variables To send traces from Gate to Jaeger: @@ -149,6 +213,22 @@ Note: For this Jaeger setup, metrics collection with Prometheus is not included. ## Scenario 3: Kubernetes with kube-prometheus-stack +> **Quick Start: Get the Configs** +> +> To get the Kubernetes manifest examples for this scenario: +> +> 1. Clone the repository (if you haven't already): +> ```bash +> git clone https://github.com/minekube/gate.git +> ``` +> 2. Navigate to the directory for this scenario: +> ```bash +> cd gate/.web/docs/guide/otel/self-hosted/k8s-configs +> ``` +> _(Adjust the `cd` path if you cloned into a different parent directory or are already inside the `gate` repo directory, e.g., `cd .web/docs/guide/otel/self-hosted/k8s-configs`)_ +> +> Or, [view the files directly on GitHub](https://github.com/minekube/gate/tree/master/.web/docs/guide/otel/self-hosted/k8s-configs/). + The `kube-prometheus-stack` Helm chart by the Prometheus Community is a powerful and widely adopted solution for monitoring Kubernetes clusters. It bundles Prometheus, Grafana, Alertmanager, and various exporters to provide a full-fledged monitoring experience out of the box. You can find more about it on [Artifact Hub](https://artifacthub.io/packages/helm/prometheus-community/kube-prometheus-stack) and the [Prometheus Community GitHub](https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack). When Gate is deployed in such a Kubernetes cluster, you'll want Prometheus to scrape Gate's metrics and potentially send Gate's traces to a tracing backend that might be part of or integrated with this stack (like Jaeger or Grafana Tempo, which can also be deployed alongside or as part of `kube-prometheus-stack`'s capabilities). @@ -175,10 +255,14 @@ First, make sure your Gate Kubernetes Deployment and Service are configured to e Your Gate `Service` definition might look something like this: -```yaml +::: code-group + +```yaml [gate-service.yml] ``` +::: + **b. Create a `ServiceMonitor` for Gate:** This is the recommended way for `kube-prometheus-stack` to discover your Gate metrics. A `ServiceMonitor` CRD (Custom Resource Definition) tells the Prometheus instances managed by the stack how to find and scrape your Gate pods. @@ -192,30 +276,42 @@ It's important to understand that the `ServiceMonitor` doesn't mean Prometheus s Create a `ServiceMonitor` custom resource like this: -```yaml +::: code-group + +```yaml [gate-servicemonitor.yml] ``` +::: + Apply this YAML to your cluster (`kubectl apply -f gate-servicemonitor.yaml`). Prometheus should then automatically discover and start scraping metrics from your individual Gate pods. **Alternative: `PodMonitor` (More Direct Pod Discovery)** If you prefer to discover pods directly by their labels without an intermediary `Service` definition, or if your Gate metrics endpoint isn't part of a regular Kubernetes `Service`, you can use a `PodMonitor`. -```yaml +::: code-group + +```yaml [gate-podmonitor.yml] ``` +::: + While `ServiceMonitor` is very common, `PodMonitor` offers a more direct path if needed. **Alternative: Pod Annotations (Generally not recommended with `kube-prometheus-stack`)** If `ServiceMonitor` or `PodMonitor` are not an option, or for simpler setups, Prometheus can also be configured to scrape pods based on annotations. You would add these annotations to your Gate Pod specification (e.g., in your Deployment template): -```yaml +::: code-group + +```yaml [gate-pod-annotations-example.yml] ``` +::: + However, `kube-prometheus-stack` is often configured _not_ to discover based on annotations by default to favor `ServiceMonitor`/`PodMonitor`. You might need to adjust the Prometheus configuration within the Helm chart's values if you want to rely solely on annotations. **c. Gate Environment Variables for Metrics Server:** diff --git a/.web/docs/guide/otel/self-hosted/otel-stack-configs/tempo.yaml b/.web/docs/guide/otel/self-hosted/otel-stack-configs/tempo.yaml index 53971398..80a24858 100644 --- a/.web/docs/guide/otel/self-hosted/otel-stack-configs/tempo.yaml +++ b/.web/docs/guide/otel/self-hosted/otel-stack-configs/tempo.yaml @@ -2,13 +2,13 @@ server: http_listen_port: 3200 distributor: - receivers: # بخش receivers در توزیع کننده - otlp: # تعریف یک دریافت کننده OTLP - protocols: # پروتکل های پشتیبانی شده - grpc: # پروتکل gRPC - endpoint: 0.0.0.0:4317 # نقطه پایانی برای gRPC - http: # پروتکل HTTP - endpoint: 0.0.0.0:4318 # نقطه پایانی برای HTTP + receivers: + otlp: + protocols: + grpc: + endpoint: 0.0.0.0:4317 + http: + endpoint: 0.0.0.0:4318 zipkin: {} jaeger: protocols: @@ -33,8 +33,40 @@ metrics_generator: compactor: compaction: - compaction_window: 1h # Compact data older than this period - block_retention: 1h # Override the default block retention + compaction_window: 1h # Compact data older than this + block_retention: 1h # Overall retention for blocks + +# This is an optional section, if you want Tempo to also expose its own metrics +# to be scraped by Prometheus. This is separate from the metrics_generator above. +# self_monitor: +# tempo_service_name: tempo +# prometheus_http_path: /metrics +# prometheus_http_port: 3200 # Can be the same as server.http_listen_port + +# Traces can also be received directly by the ingester if needed, but distributor is common. +# ingester: +# lifecycler: +# ring: +# kvstore: +# store: memberlist +# replication_factor: 1 +# final_sleep: 0s +# max_block_bytes: 1_000_000 +# max_block_duration: 5m + +# Search configuration (optional, defaults are usually fine for local) +# search: +# backend: lucene +# lucene: +# path: /tmp/tempo/search +# mem_gb: 1 + +# Overrides default configuration for some aspects +# overrides: +# defaults: +# metrics_generator_processors: +# - service-graphs +# - span-metrics # This is an example configuration, refer to Tempo documentation for more options # https://grafana.com/docs/tempo/latest/configuration/ From 348db2f0888e9a4c51b739dc3aaff1cfc0d47e9e Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Thu, 15 May 2025 09:28:30 +0200 Subject: [PATCH 099/107] feat(api): integrate OpenTelemetry interceptor into Gate service handler Added an OpenTelemetry interceptor to the Gate service handler for enhanced tracing capabilities. This change improves observability by allowing the collection of telemetry data during API requests. Error handling for interceptor initialization is also included. --- pkg/internal/api/server.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pkg/internal/api/server.go b/pkg/internal/api/server.go index a06b8f68..7f924622 100644 --- a/pkg/internal/api/server.go +++ b/pkg/internal/api/server.go @@ -7,6 +7,8 @@ import ( "net/http" "time" + "connectrpc.com/connect" + "connectrpc.com/otelconnect" "github.com/go-logr/logr" "golang.org/x/net/http2" "golang.org/x/net/http2/h2c" @@ -31,8 +33,13 @@ func (s *Server) Start(ctx context.Context) error { log := logr.FromContextOrDiscard(ctx) log.Info("starting api service", "bind", s.cfg.Bind) + otelInterceptor, err := otelconnect.NewInterceptor() + if err != nil { + return err + } + mux := http.NewServeMux() - mux.Handle(gatev1connect.NewGateServiceHandler(s.h)) + mux.Handle(gatev1connect.NewGateServiceHandler(s.h, connect.WithInterceptors(otelInterceptor))) hs := &http.Server{ Addr: s.cfg.Bind, From 5e2cd820df1fbb686986e0ed35541b360784fe35 Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Thu, 15 May 2025 12:43:23 +0200 Subject: [PATCH 100/107] feat(docs): update OpenTelemetry self-hosted guide with new metrics and dashboard features Enhanced the self-hosted OpenTelemetry documentation by adding a sample Grafana dashboard for visualizing metrics from Gate. Updated configuration details for the OpenTelemetry Collector, including new metrics endpoints and improved instructions for setting up Prometheus scraping. Removed outdated Kubernetes configuration examples and added new YAML files for the OpenTelemetry Collector setup. Updated the documentation to reflect changes in metrics collection and visualization capabilities. --- .web/docs/.vitepress/config.ts | 6 +- .web/docs/guide/otel/index.md | 44 +-- .web/docs/guide/otel/self-hosted/dashboard.md | 3 + .../guide/otel/self-hosted/grafana-dash.md | 37 +++ .../gate-overview-dashboard.json | 52 ++-- .web/docs/guide/otel/self-hosted/index.md | 252 ++++-------------- .../gate-pod-annotations-example.yml | 7 - .../k8s-configs/gate-podmonitor.yml | 18 -- .../self-hosted/k8s-configs/gate-service.yml | 17 -- .../k8s-configs/gate-servicemonitor.yml | 22 -- .../otel-stack-configs/docker-compose.yml | 50 +++- .../otel-collector-config.yaml | 41 +++ .../otel-stack-configs/prometheus.yml | 20 +- .web/docs/images/grafana-gate-dash.png | Bin 0 -> 179972 bytes .web/docs/images/grafana-import-dash.png | Bin 0 -> 244272 bytes .web/docs/images/grafana-new-dash.png | Bin 0 -> 230884 bytes go.mod | 1 + go.sum | 2 + .../java/proxy/{otel.go => otel_meter.go} | 25 +- pkg/internal/otelutil/otel.go | 111 +------- pkg/version/version.go | 6 +- .../theme/components/LandingAfter.vue | 1 - 22 files changed, 261 insertions(+), 454 deletions(-) create mode 100644 .web/docs/guide/otel/self-hosted/dashboard.md create mode 100644 .web/docs/guide/otel/self-hosted/grafana-dash.md delete mode 100644 .web/docs/guide/otel/self-hosted/k8s-configs/gate-pod-annotations-example.yml delete mode 100644 .web/docs/guide/otel/self-hosted/k8s-configs/gate-podmonitor.yml delete mode 100644 .web/docs/guide/otel/self-hosted/k8s-configs/gate-service.yml delete mode 100644 .web/docs/guide/otel/self-hosted/k8s-configs/gate-servicemonitor.yml create mode 100644 .web/docs/guide/otel/self-hosted/otel-stack-configs/otel-collector-config.yaml create mode 100644 .web/docs/images/grafana-gate-dash.png create mode 100644 .web/docs/images/grafana-import-dash.png create mode 100644 .web/docs/images/grafana-new-dash.png rename pkg/edition/java/proxy/{otel.go => otel_meter.go} (51%) delete mode 100644 web/docs/.vitepress/theme/components/LandingAfter.vue diff --git a/.web/docs/.vitepress/config.ts b/.web/docs/.vitepress/config.ts index c3ab7055..d4848a1c 100644 --- a/.web/docs/.vitepress/config.ts +++ b/.web/docs/.vitepress/config.ts @@ -48,7 +48,7 @@ export default defineConfig({ ], vue: { - reactivityTransform: true, + // reactivityTransform: true, // This option is deprecated }, themeConfig: { @@ -190,6 +190,10 @@ export default defineConfig({ text: 'Self-hosted', link: '/guide/otel/self-hosted/', }, + { + text: 'Dashboards', + link: '/guide/otel/self-hosted/dashboard', + }, { text: 'FAQ', link: '/guide/otel/faq/', diff --git a/.web/docs/guide/otel/index.md b/.web/docs/guide/otel/index.md index ba17035e..78b3c1d4 100644 --- a/.web/docs/guide/otel/index.md +++ b/.web/docs/guide/otel/index.md @@ -1,6 +1,10 @@ # OpenTelemetry -Gate uses OpenTelemetry for observability, leveraging the [otel-config-go](https://github.com/honeycombio/otel-config-go) library for configuration. This provides a simple way to configure tracing and metrics collection through environment variables. +OpenTelemetry is an observability framework and toolkit designed to facilitate the generation, export, and collection of telemetry data such as traces, metrics, and logs. It is an open-source and vendor-agnostic project, meaning it can be used with a broad variety of observability backends, including open-source tools like Jaeger and Prometheus, as well as commercial offerings. A major goal of OpenTelemetry is to enable easy instrumentation of applications and systems, regardless of the programming language, infrastructure, and runtime environments used. OpenTelemetry itself is not an observability backend; the storage and visualization of telemetry data are intentionally left to other tools. ([Source](https://opentelemetry.io/docs/what-is-opentelemetry/)) + +::: info +Gate utilizes OpenTelemetry for its observability capabilities. For configuration, Gate leverages the [otel-config-go](https://github.com/honeycombio/otel-config-go) library, which offers a straightforward method to set up tracing and metrics collection via [environment variables](#configuration). +::: # Start Generation Here @@ -8,20 +12,17 @@ Gate uses OpenTelemetry for observability, leveraging the [otel-config-go](https ## Configuration -Gate's OpenTelemetry implementation can be configured using the following environment variables: - -| Environment Variable | Required | Default | Description | -| --------------------------- | -------- | ---------------------- | ------------------------------------- | -| OTEL_SERVICE_NAME | No | `gate` | Name of your service | -| OTEL_SERVICE_VERSION | No | - | Version of your service | -| OTEL_EXPORTER_OTLP_ENDPOINT | No | `localhost:4317` | Endpoint for OTLP export | -| OTEL_LOG_LEVEL | No | `info` | Logging level | -| OTEL_PROPAGATORS | No | `tracecontext,baggage` | Configured propagators | -| OTEL_METRICS_ENABLED | No | `true` | Enable metrics collection | -| OTEL_TRACES_ENABLED | No | `true` | Enable trace collection | -| OTEL_METRICS_SERVER_ENABLED | No | `false` | Enable Prometheus metrics server | -| OTEL_METRICS_SERVER_PATH | No | `/metrics` | Path for Prometheus metrics endpoint | -| OTEL_METRICS_SERVER_ADDR | No | `:9464` | Address for Prometheus metrics server | +Gate's OpenTelemetry implementation can be configured using the following [environment variables](https://github.com/honeycombio/otel-config-go/blob/127951890a85db4effad9fbc961d0f09ddd8a818/otelconfig/otelconfig.go#L304): + +| Environment Variable | Required | Default | Description | +| --------------------------- | -------- | ---------------------- | ------------------------- | +| OTEL_SERVICE_NAME | No | `gate` | Name of your service | +| OTEL_SERVICE_VERSION | No | - | Version of your service | +| OTEL_EXPORTER_OTLP_ENDPOINT | No | `localhost:4317` | Endpoint for OTLP export | +| OTEL_LOG_LEVEL | No | `info` | Logging level | +| OTEL_PROPAGATORS | No | `tracecontext,baggage` | Configured propagators | +| OTEL_METRICS_ENABLED | No | `true` | Enable metrics collection | +| OTEL_TRACES_ENABLED | No | `true` | Enable trace collection | Additional environment variables for exporters: @@ -30,12 +31,12 @@ Additional environment variables for exporters: | OTEL_EXPORTER_OTLP_HEADERS | No | `{}` | Global headers for OTLP exporter | | OTEL_EXPORTER_OTLP_TRACES_HEADERS | No | `{}` | Headers specific to trace exporter | | OTEL_EXPORTER_OTLP_METRICS_HEADERS | No | `{}` | Headers specific to metrics exporter | -| OTEL_EXPORTER_OTLP_PROTOCOL | No | `grpc` | Protocol for OTLP export (grpc/http) | | OTEL_EXPORTER_OTLP_TRACES_ENDPOINT | No | `localhost:4317` | Endpoint for trace export | | OTEL_EXPORTER_OTLP_TRACES_INSECURE | No | `false` | Allow insecure trace connections | | OTEL_EXPORTER_OTLP_METRICS_ENDPOINT | No | `localhost:4317` | Endpoint for metrics export | | OTEL_EXPORTER_OTLP_METRICS_INSECURE | No | `false` | Allow insecure metrics connections | | OTEL_EXPORTER_OTLP_METRICS_PERIOD | No | `30s` | Metrics reporting interval | +| OTEL_EXPORTER_OTLP_PROTOCOL | No | `grpc` | Protocol for OTLP export | | OTEL_RESOURCE_ATTRIBUTES | No | - | Additional resource attributes | ## Example Configuration @@ -53,15 +54,19 @@ OTEL_RESOURCE_ATTRIBUTES="deployment.environment=production" You can use various solutions to collect and visualize OpenTelemetry data. Here are some popular options: -### Cloud Solutions +### Detailed Setup Guides -::: info Our recommendations +::: info We provide detailed guides for these three solutions - [Grafana Cloud](/guide/otel/grafana-cloud/) - Fully managed observability platform with support for metrics, logs, and traces - [Honeycomb](/guide/otel/honeycomb/) - Observability platform designed for debugging complex systems +- [Self-hosted](/guide/otel/self-hosted/) - Run your own OpenTelemetry collector and visualize data with Grafana ::: +### Other Cloud Solutions + +- [Signoz](https://signoz.io/) - Open source observability platform with support for metrics, logs, and traces - [New Relic](https://newrelic.com/) - Full-stack observability platform with APM capabilities - [Datadog](https://www.datadog.com/) - Cloud monitoring and analytics platform - [Azure Monitor](https://azure.microsoft.com/services/monitor/) - Microsoft's cloud-native monitoring solution @@ -129,9 +134,6 @@ You can use various solutions to collect and visualize OpenTelemetry data. Here # Secure endpoint configuration OTEL_EXPORTER_OTLP_ENDPOINT="https://otel-collector.example.com:4317" OTEL_EXPORTER_OTLP_HEADERS="api-key=secret123,tenant=team-a" - - # Ensure TLS is enabled - OTEL_EXPORTER_OTLP_INSECURE=false ``` ## Further Reading diff --git a/.web/docs/guide/otel/self-hosted/dashboard.md b/.web/docs/guide/otel/self-hosted/dashboard.md new file mode 100644 index 00000000..110afa3a --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/dashboard.md @@ -0,0 +1,3 @@ +# Sample Gate Dashboard + + \ No newline at end of file diff --git a/.web/docs/guide/otel/self-hosted/grafana-dash.md b/.web/docs/guide/otel/self-hosted/grafana-dash.md new file mode 100644 index 00000000..a08adae2 --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/grafana-dash.md @@ -0,0 +1,37 @@ + +We provide a sample Grafana dashboard to help you get started with visualizing Gate's metrics. + +::: info You are expected to make your own dashboard, this is just a starting point. + +![Grafana Dashboard](/images/grafana-gate-dash.png) + +::: + +**Dashboard Features:** + +- Total Player Count (`proxy_player_count`) +- Gate Instance Status (`up`) +- Go Goroutines (`go_goroutines`) +- Go Memory Usage (`go_memstats_alloc_bytes`) + +**Get the Dashboard JSON:** + +- **Download Raw JSON:** [Download Dashboard JSON](https://raw.githubusercontent.com/minekube/gate/master/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json) +- **View on GitHub:** [gate-overview-dashboard.json](https://github.com/minekube/gate/blob/master/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json) + +If you have cloned the repository, you can also find the dashboard at `.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json` within your local copy. + +**Importing the Dashboard:** + +1. Navigate to your Grafana instance (usually http://localhost:3000). +2. Log in (default: admin/admin, then change the password). +3. On the left-hand menu, go to **Dashboards**. +4. On the Dashboards page, click the **"New"** button in the top right and select **"Import"**. + ![Grafana Menu Dashboards](/images/grafana-new-dash.png) +5. Click the **"Upload JSON file"** button and select the `gate-overview-dashboard.json` file you downloaded, or paste the JSON content directly into the text area. +6. On the next screen, you can change the dashboard name if desired. +7. **Important:** Select your Prometheus data source from the dropdown (usually named "Prometheus"). + ![Grafana Import Dashboard](/images/grafana-import-dash.png) +8. Click **"Import"**. + +You should now see the "Gate Overview" dashboard with panels visualizing metrics from your Gate instance(s). diff --git a/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json b/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json index b92dc3c4..1b8f1402 100644 --- a/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json +++ b/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json @@ -99,7 +99,7 @@ "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, - "expr": "sum(proxy_player_count{job=\"gate\"}) by (job)", + "expr": "sum(otel_gate_player_count_ratio{job=\"otel-collector\", service_name=~\"$service_name_filter\"})", "legendFormat": "Total Players", "refId": "A" } @@ -117,23 +117,7 @@ "color": { "mode": "thresholds" }, - "mappings": [ - { - "options": { - "0": { - "color": "red", - "index": 0, - "text": "Down" - }, - "1": { - "color": "green", - "index": 1, - "text": "Up" - } - }, - "type": "value" - } - ], + "mappings": [], "thresholds": { "mode": "absolute", "steps": [ @@ -155,15 +139,13 @@ }, "id": 4, "options": { - "colorMode": "value", - "graphMode": "area", - "justifyMode": "auto", - "orientation": "auto", "reduceOptions": { "calcs": ["lastNotNull"], - "fields": "/^up$/", + "fields": "", "values": false }, + "showThresholdLabels": false, + "showThresholdMarkers": true, "textMode": "auto" }, "pluginVersion": "10.2.2", @@ -173,12 +155,12 @@ "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, - "expr": "up{job=\"gate\"}", - "legendFormat": "{{instance}}", + "expr": "sum(otel_gate_registered_servers_ratio{job=\"otel-collector\", service_name=~\"$service_name_filter\"})", + "legendFormat": "Registered Servers", "refId": "A" } ], - "title": "Gate Instance Status (up)", + "title": "Registered Servers", "type": "stat" }, { @@ -264,8 +246,8 @@ "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, - "expr": "sum(go_goroutines{job=\"gate\"}) by (instance)", - "legendFormat": "{{instance}}", + "expr": "sum(otel_process_runtime_go_goroutines{job=\"otel-collector\", service_name=~\"$service_name_filter\"}) by (service_name, instance, exported_job)", + "legendFormat": "{{service_name}} {{exported_job}} {{instance}}", "refId": "A" } ], @@ -355,8 +337,8 @@ "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, - "expr": "sum(go_memstats_alloc_bytes{job=\"gate\"}) by (instance)", - "legendFormat": "{{instance}}", + "expr": "sum(otel_process_runtime_go_mem_heap_alloc_bytes{job=\"otel-collector\", service_name=~\"$service_name_filter\"}) by (service_name, instance, exported_job)", + "legendFormat": "{{service_name}} {{exported_job}} {{instance}}", "refId": "A" } ], @@ -394,16 +376,16 @@ "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, - "definition": "label_values(up{job=\"gate\"}, job)", + "definition": "label_values(otel_process_runtime_go_goroutines{job=\"otel-collector\"}, service_name)", "hide": 0, "includeAll": true, - "label": "Job", + "label": "Service Name", "multi": true, - "name": "job", + "name": "service_name_filter", "options": [], "query": { - "query": "label_values(up{job=\"gate\"}, job)", - "refId": "StandardVariableQuery" + "query": "label_values(otel_process_runtime_go_goroutines{job=\"otel-collector\"}, service_name)", + "refId": "StandardVariableQuery_ServiceName" }, "refresh": 1, "regex": "", diff --git a/.web/docs/guide/otel/self-hosted/index.md b/.web/docs/guide/otel/self-hosted/index.md index e3bfd641..72a7bd4c 100644 --- a/.web/docs/guide/otel/self-hosted/index.md +++ b/.web/docs/guide/otel/self-hosted/index.md @@ -25,7 +25,7 @@ We will cover two common scenarios: > > Or, [view the files directly on GitHub](https://github.com/minekube/gate/tree/master/.web/docs/guide/otel/self-hosted/otel-stack-configs/). -This setup uses Grafana Tempo for traces, Prometheus for metrics, and Grafana for visualizing both. Gate will send traces directly to Tempo via OTLP and expose a Prometheus-compatible scrape endpoint for metrics. +This setup uses Grafana Tempo for traces, Prometheus for metrics, and Grafana for visualizing both. Gate will send traces directly to Tempo via OTLP. Metrics are also sent via OTLP using `OTEL_METRICS_ENABLED="true"`. ### 1. Configuration Files @@ -55,88 +55,73 @@ You'll need the following configuration files. The `docker-compose.yml` below as To send telemetry data from Gate to this self-hosted stack: -**For Traces (to Tempo OTLP):** +**For Traces and Metrics (to OpenTelemetry Collector via OTLP/HTTP):** ```bash -export OTEL_EXPORTER_OTLP_ENDPOINT="http://localhost:4317" # Or IP of Docker host if Gate is external -export OTEL_EXPORTER_OTLP_PROTOCOL="grpc" # Default, can be omitted +export OTEL_EXPORTER_OTLP_ENDPOINT="http://localhost:4318" # Or IP of Docker host if Gate is external +export OTEL_EXPORTER_OTLP_PROTOCOL="http/protobuf" export OTEL_TRACES_ENABLED="true" +export OTEL_METRICS_ENABLED="true" # Ensure metrics are enabled to be sent via OTLP # OTEL_SERVICE_NAME is recommended, e.g., "gate-proxy" ``` -If Gate is running as a Docker container itself _on the same Docker network_ (`otel-stack`), you can use the service name: - -```bash -export OTEL_EXPORTER_OTLP_ENDPOINT="http://tempo:4317" -``` +> **Note on Insecure Connection:** Since the `OTEL_EXPORTER_OTLP_ENDPOINT` is set to an `http://` address (e.g., `http://localhost:4318`) and `OTEL_EXPORTER_OTLP_PROTOCOL` is `http/protobuf`, the connection to the OTLP receiver (OpenTelemetry Collector in this case) will be insecure (not using TLS). This is typically handled automatically by the OTel SDK when an `http://` scheme is used with an HTTP-based protocol. +> For self-hosted setups like this one, especially in local development, using an insecure connection is common. In production environments, always prefer secure `https://` endpoints and appropriate authentication mechanisms. -**For Metrics (Prometheus scraping Gate):** -Ensure these Gate environment variables are set (they are enabled by default if not specified): +If Gate is running as a Docker container itself _on the same Docker network_ (`otel-stack`), you can use the service name: ```bash -export OTEL_METRICS_ENABLED="true" -export OTEL_METRICS_SERVER_ENABLED="true" -export OTEL_METRICS_SERVER_ADDR=":9464" # Default, ensure Prometheus can reach this -export OTEL_METRICS_SERVER_PATH="/metrics" # Default +export OTEL_EXPORTER_OTLP_ENDPOINT="http://otel-collector:4318" ``` -Update the `prometheus.yml` file (specifically the `gate` job's `targets`) to point to the address where Gate's metrics endpoint is exposed. If Docker is running on Linux, `host.docker.internal` might not resolve, and you may need to use the host's actual IP address on the Docker bridge network (e.g., `172.17.0.1`) or the machine's network IP if Gate is not containerized. - ### 3. Running the Stack -1. Save the `docker-compose.yml` and the configuration files (`prometheus.yml`, `tempo.yaml`, `grafana-datasources.yml`) in the same directory. +1. Save all the configuration files (`docker-compose.yml`, `prometheus.yml`, `tempo.yaml`, `grafana-datasources.yml`, and `otel-collector-config.yaml`) in the same directory. 2. Open a terminal in that directory and run: ```bash docker compose -f otel-stack-configs/docker-compose.yml up -d ``` 3. **Access Services:** - - Grafana: `http://localhost:3000` (admin/admin, then change password) - - Prometheus: `http://localhost:9090` - - Tempo: `http://localhost:3200` (for Tempo's own UI, though Grafana is primary) - -### 4. Viewing Data in Grafana + - Grafana: http://localhost:3000 (admin/admin, then change password) + - Prometheus: http://localhost:9090 + - Tempo: http://localhost:3200 (for Tempo's own UI, though Grafana is primary) -- **Prometheus**: - - The Prometheus data source should be automatically provisioned. - - Go to "Explore", select "Prometheus", and you can query metrics like `gate_info` (if Gate is running and scraped) or `prometheus_http_requests_total`. -- **Tempo**: - - The Tempo data source should also be automatically provisioned. - - Go to "Explore", select "Tempo". You can search for traces by Service Name (e.g., your `OTEL_SERVICE_NAME` for Gate), or look at the Service Graph (if `metrics_generator` in Tempo is working correctly and sending data to Prometheus). - - If you have metrics that can be correlated with traces (like exemplars), you might be able to jump from metrics in Prometheus to traces in Tempo. +### 4. Understanding the Stack Architecture -### 5. Sample Gate Dashboard +This setup uses the following components: -We provide a sample Grafana dashboard to help you get started with visualizing Gate's metrics. +- **OpenTelemetry Collector**: Receives traces and metrics from Gate via OTLP, processes them, and forwards traces to Tempo and exposes metrics for Prometheus to scrape. +- **Tempo**: Stores and indexes traces for efficient querying. +- **Prometheus**: Scrapes and stores metrics from the OpenTelemetry Collector. +- **Grafana**: Provides visualization for both traces and metrics, with correlation between them. -**Dashboard Features:** +The data flow is as follows: -- Total Player Count (`proxy_player_count`) -- Gate Instance Status (`up`) -- Go Goroutines (`go_goroutines`) -- Go Memory Usage (`go_memstats_alloc_bytes`) +1. Gate sends both traces and metrics to the OpenTelemetry Collector via OTLP. +2. The collector forwards traces to Tempo for storage. +3. The collector exposes metrics on port 8889, which Prometheus scrapes. +4. Grafana queries both Tempo and Prometheus to provide a unified view of your telemetry data. -**Get the Dashboard JSON:** +This architecture allows for: -- **Download Raw JSON:** [https://raw.githubusercontent.com/minekube/gate/master/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json](https://raw.githubusercontent.com/minekube/gate/master/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json) - _(You can use `curl -o gate-overview-dashboard.json ` or right-click and "Save Link As...")_ -- **View on GitHub:** [https://github.com/minekube/gate/blob/master/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json](https://github.com/minekube/gate/blob/master/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json) +- Efficient collection and processing of telemetry data +- Correlation between traces and metrics +- Service graphs and span metrics for better visualization +- Scalability as your observability needs grow -If you have cloned the repository, you can also find the dashboard at `.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json` within your local copy. +### 5. Viewing Data in Grafana -**Importing the Dashboard:** +- **Prometheus**: + - The Prometheus data source should be automatically provisioned. + - Go to "Explore", select "Prometheus", and you can query metrics like `prometheus_http_requests_total`. To view Gate metrics, you'd first need to set up an OpenTelemetry Collector to receive OTLP metrics from Gate and expose them to Prometheus. +- **Tempo**: + - The Tempo data source should also be automatically provisioned. + - Go to "Explore", select "Tempo". You can search for traces by Service Name (e.g., your `OTEL_SERVICE_NAME` for Gate), or look at the Service Graph (if `metrics_generator` in Tempo is working correctly and sending data to Prometheus). + - If you have metrics that can be correlated with traces (like exemplars), you might be able to jump from metrics in Prometheus to traces in Tempo. -1. Navigate to your Grafana instance (usually `http://localhost:3000`). -2. Log in (default: admin/admin, then change the password). -3. On the left-hand menu, go to **Dashboards**. - ![Grafana Menu Dashboards](https://grafana.com/static/assets/img/docs/navigation/navbar-dashboards.png) -4. On the Dashboards page, click the **"New"** button in the top right and select **"Import"**. - ![Grafana Dashboards New Import](https://grafana.com/static/assets/img/docs/manage-dashboards/dashboard-management-new-import.png) -5. Click the **"Upload JSON file"** button and select the `gate-overview-dashboard.json` file you downloaded, or paste the JSON content directly into the text area. -6. On the next screen, you can change the dashboard name if desired. -7. **Important:** Select your Prometheus data source from the dropdown (usually named "Prometheus"). -8. Click **"Import"**. +### 6. Sample Gate Dashboard -You should now see the "Gate Overview" dashboard with panels visualizing metrics from your Gate instance(s). + --- @@ -182,17 +167,25 @@ To send traces from Gate to Jaeger: export OTEL_EXPORTER_OTLP_ENDPOINT="http://localhost:4317" # Or IP of Docker host if Gate is external export OTEL_EXPORTER_OTLP_PROTOCOL="grpc" # or "http/protobuf" for HTTP OTLP export OTEL_TRACES_ENABLED="true" +export OTEL_METRICS_ENABLED="true" # Ensure metrics are enabled to be sent via OTLP +# The following INSECURE flag is necessary when using an http:// endpoint for traces: +export OTEL_EXPORTER_OTLP_TRACES_INSECURE="true" +# If sending OTLP metrics to a Jaeger setup that also ingests them (or to a separate collector via HTTP): +# export OTEL_EXPORTER_OTLP_METRICS_INSECURE="true" # OTEL_SERVICE_NAME is highly recommended, e.g., "gate-proxy-dev" export OTEL_SERVICE_NAME="gate-jaeger-example" ``` +> **Note on Insecure Connection:** As with the Tempo setup, if your `OTEL_EXPORTER_OTLP_ENDPOINT` (e.g., `http://localhost:4317`) uses an insecure `http://` connection, you **must** explicitly enable insecure connections for traces by setting `OTEL_EXPORTER_OTLP_TRACES_INSECURE="true"` as shown in the configuration example above. If also sending OTLP metrics via HTTP to Jaeger or a collector, `OTEL_EXPORTER_OTLP_METRICS_INSECURE="true"` would be needed too. +> Remember to use secure `https://` endpoints and authentication in production. + If Gate is running as a Docker container on the same Docker network (`otel-jaeger-net`), you can use the service name: ```bash export OTEL_EXPORTER_OTLP_ENDPOINT="http://jaeger:4317" ``` -Note: For this Jaeger setup, metrics collection with Prometheus is not included. Jaeger primarily focuses on tracing. If you need both metrics and traces, the Grafana stack (Scenario 1) or a more complex setup involving an OpenTelemetry Collector to route traces to Jaeger and metrics to Prometheus would be necessary. +Note: For this Jaeger setup, metrics collection with Prometheus is not included. Jaeger primarily focuses on tracing. If you need metrics alongside traces sent via OTLP from Gate, you would typically use an OpenTelemetry Collector that can route traces to Jaeger and simultaneously expose metrics for Prometheus (or send them to another metrics backend). ### 3. Running Jaeger @@ -202,7 +195,7 @@ Note: For this Jaeger setup, metrics collection with Prometheus is not included. docker compose -f docker-compose-jaeger.yml up -d ``` 3. **Access Jaeger UI:** - - Open your browser and navigate to `http://localhost:16686` + - Open your browser and navigate to http://localhost:16686 ### 4. Viewing Traces in Jaeger @@ -210,150 +203,3 @@ Note: For this Jaeger setup, metrics collection with Prometheus is not included. - Select your service and click "Find Traces" to see the collected trace data. --- - -## Scenario 3: Kubernetes with kube-prometheus-stack - -> **Quick Start: Get the Configs** -> -> To get the Kubernetes manifest examples for this scenario: -> -> 1. Clone the repository (if you haven't already): -> ```bash -> git clone https://github.com/minekube/gate.git -> ``` -> 2. Navigate to the directory for this scenario: -> ```bash -> cd gate/.web/docs/guide/otel/self-hosted/k8s-configs -> ``` -> _(Adjust the `cd` path if you cloned into a different parent directory or are already inside the `gate` repo directory, e.g., `cd .web/docs/guide/otel/self-hosted/k8s-configs`)_ -> -> Or, [view the files directly on GitHub](https://github.com/minekube/gate/tree/master/.web/docs/guide/otel/self-hosted/k8s-configs/). - -The `kube-prometheus-stack` Helm chart by the Prometheus Community is a powerful and widely adopted solution for monitoring Kubernetes clusters. It bundles Prometheus, Grafana, Alertmanager, and various exporters to provide a full-fledged monitoring experience out of the box. You can find more about it on [Artifact Hub](https://artifacthub.io/packages/helm/prometheus-community/kube-prometheus-stack) and the [Prometheus Community GitHub](https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack). - -When Gate is deployed in such a Kubernetes cluster, you'll want Prometheus to scrape Gate's metrics and potentially send Gate's traces to a tracing backend that might be part of or integrated with this stack (like Jaeger or Grafana Tempo, which can also be deployed alongside or as part of `kube-prometheus-stack`'s capabilities). - -### 1. Prerequisites - -- A running Kubernetes cluster. -- `helm` CLI installed. -- `kube-prometheus-stack` Helm chart installed in your cluster. If not, you can typically install it via: - ```bash - helm repo add prometheus-community https://prometheus-community.github.io/helm-charts - helm repo update - helm install prometheus prometheus-community/kube-prometheus-stack --namespace monitoring --create-namespace - ``` - (Refer to the official chart documentation for the most up-to-date installation instructions and configuration options.) - -### 2. Configuring Gate for Metrics Scraping by Prometheus - -Prometheus, as deployed by `kube-prometheus-stack`, typically uses Custom Resources like `ServiceMonitor` or `PodMonitor` to discover and scrape metrics endpoints. - -**a. Ensure Gate's Metrics Endpoint is Exposed:** - -First, make sure your Gate Kubernetes Deployment and Service are configured to expose the metrics port (default `:9464`). - -Your Gate `Service` definition might look something like this: - -::: code-group - -```yaml [gate-service.yml] - -``` - -::: - -**b. Create a `ServiceMonitor` for Gate:** - -This is the recommended way for `kube-prometheus-stack` to discover your Gate metrics. A `ServiceMonitor` CRD (Custom Resource Definition) tells the Prometheus instances managed by the stack how to find and scrape your Gate pods. - -It's important to understand that the `ServiceMonitor` doesn't mean Prometheus scrapes the _Service's virtual IP_. Instead, it uses the Service definition to find the underlying Pods: - -1. The `ServiceMonitor` selects your Gate `Service` using labels. -2. Prometheus Operator (part of `kube-prometheus-stack`) then looks at the `Endpoints` object associated with that `Service`. -3. The `Endpoints` object contains the actual IP addresses of all individual Gate Pods selected by the `Service`. -4. Prometheus uses these individual Pod IPs as scrape targets. Thus, **each Gate pod is scraped directly.** - -Create a `ServiceMonitor` custom resource like this: - -::: code-group - -```yaml [gate-servicemonitor.yml] - -``` - -::: - -Apply this YAML to your cluster (`kubectl apply -f gate-servicemonitor.yaml`). Prometheus should then automatically discover and start scraping metrics from your individual Gate pods. - -**Alternative: `PodMonitor` (More Direct Pod Discovery)** - -If you prefer to discover pods directly by their labels without an intermediary `Service` definition, or if your Gate metrics endpoint isn't part of a regular Kubernetes `Service`, you can use a `PodMonitor`. - -::: code-group - -```yaml [gate-podmonitor.yml] - -``` - -::: - -While `ServiceMonitor` is very common, `PodMonitor` offers a more direct path if needed. - -**Alternative: Pod Annotations (Generally not recommended with `kube-prometheus-stack`)** - -If `ServiceMonitor` or `PodMonitor` are not an option, or for simpler setups, Prometheus can also be configured to scrape pods based on annotations. You would add these annotations to your Gate Pod specification (e.g., in your Deployment template): - -::: code-group - -```yaml [gate-pod-annotations-example.yml] - -``` - -::: - -However, `kube-prometheus-stack` is often configured _not_ to discover based on annotations by default to favor `ServiceMonitor`/`PodMonitor`. You might need to adjust the Prometheus configuration within the Helm chart's values if you want to rely solely on annotations. - -**c. Gate Environment Variables for Metrics Server:** - -Ensure Gate is configured to run its Prometheus metrics server (these are often default values): - -```bash -export OTEL_METRICS_ENABLED="true" -export OTEL_METRICS_SERVER_ENABLED="true" -export OTEL_METRICS_SERVER_ADDR=":9464" # Ensure this matches targetPort in Service and port in ServiceMonitor -export OTEL_METRICS_SERVER_PATH="/metrics" # Ensure this matches path in ServiceMonitor if specified -``` - -### 3. Configuring Gate for Trace Export (OTLP) - -If your `kube-prometheus-stack` deployment includes a tracing backend like Grafana Tempo (which can be enabled in the chart) or if you have a separate Jaeger/Tempo instance in your cluster that accepts OTLP: - -- **Identify the OTLP Endpoint:** Determine the Kubernetes service name and port for your OTLP collector (e.g., `tempo-distributor.monitoring.svc.cluster.local:4317` or `jaeger-collector.tracing.svc.cluster.local:4317`). -- **Configure Gate Environment Variables for Traces:** - - ```bash - export OTEL_TRACES_ENABLED="true" - export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT="http://:4317" # e.g., http://tempo-distributor.monitoring:4317 - export OTEL_EXPORTER_OTLP_PROTOCOL="grpc" # or "http/protobuf" - export OTEL_SERVICE_NAME="gate-k8s-my-cluster" # Choose a meaningful service name - ``` - - If your OTLP collector is in a different namespace, make sure to use the fully qualified domain name (FQDN) of the service (e.g., `my-collector.namespace.svc.cluster.local`). - -### 4. Accessing Grafana and Viewing Data - -The `kube-prometheus-stack` chart deploys Grafana, which comes pre-configured with Prometheus as a data source. - -- **Access Grafana:** You can usually access Grafana by port-forwarding to the Grafana service: - ```bash - kubectl port-forward svc/prometheus-grafana 3000:80 -n monitoring - # The service name might vary based on your Helm release name, e.g., prometheus-kube-prometheus-stack-grafana - ``` - Then open `http://localhost:3000`. The default login is often `admin` with the password `prom-operator` (as noted in the [Atmosly guide](https://www.atmosly.com/blog/kube-prometheus-stack-a-comprehensive-guide-for-kubernetes-monitoring), but check your chart's documentation or secrets). -- **Viewing Metrics:** Your Gate metrics should appear in Prometheus. You can query them in Grafana using PromQL. The `kube-prometheus-stack` also comes with many pre-built dashboards for Kubernetes itself. You might want to create a new dashboard or customize an existing one to display Gate-specific metrics. -- **Viewing Traces:** If you've configured Gate to send traces to Tempo/Jaeger and set up that data source in Grafana (Tempo is often auto-configured if deployed by the same chart), you can explore traces via Grafana's "Explore" view. - -This scenario leverages the power of `kube-prometheus-stack` for robust Kubernetes monitoring and integrates Gate into that ecosystem for both metrics and traces. The key is correctly defining how Prometheus discovers Gate (`ServiceMonitor` being the preferred method) and how Gate sends traces to your OTLP collector within the cluster. - ---- diff --git a/.web/docs/guide/otel/self-hosted/k8s-configs/gate-pod-annotations-example.yml b/.web/docs/guide/otel/self-hosted/k8s-configs/gate-pod-annotations-example.yml deleted file mode 100644 index c2154455..00000000 --- a/.web/docs/guide/otel/self-hosted/k8s-configs/gate-pod-annotations-example.yml +++ /dev/null @@ -1,7 +0,0 @@ -template: - metadata: - annotations: - prometheus.io/scrape: 'true' - prometheus.io/path: '/metrics' # Or your Gate's OTEL_METRICS_SERVER_PATH - prometheus.io/port: '9464' # Or your Gate's OTEL_METRICS_SERVER_ADDR port -# ... rest of your pod spec diff --git a/.web/docs/guide/otel/self-hosted/k8s-configs/gate-podmonitor.yml b/.web/docs/guide/otel/self-hosted/k8s-configs/gate-podmonitor.yml deleted file mode 100644 index 056f2f26..00000000 --- a/.web/docs/guide/otel/self-hosted/k8s-configs/gate-podmonitor.yml +++ /dev/null @@ -1,18 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: PodMonitor -metadata: - name: gate-podmonitor - namespace: monitoring # Or the namespace where kube-prometheus-stack is installed - labels: - release: prometheus # Or your Prometheus Operator discovery label -spec: - selector: - matchLabels: - app: gate # This must match the labels on your Gate Pods - namespaceSelector: - matchNames: - - default # Or the namespace where your Gate pods are running - podMetricsEndpoints: - - port: metrics # This must match the containerPort name or number for metrics in your Gate Pod spec - interval: 15s - path: /metrics diff --git a/.web/docs/guide/otel/self-hosted/k8s-configs/gate-service.yml b/.web/docs/guide/otel/self-hosted/k8s-configs/gate-service.yml deleted file mode 100644 index b8f0f5f1..00000000 --- a/.web/docs/guide/otel/self-hosted/k8s-configs/gate-service.yml +++ /dev/null @@ -1,17 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: gate-service - labels: - app: gate -spec: - selector: - app: gate - ports: - - name: http # Or your main application port - port: 80 - targetPort: 8080 - - name: metrics - port: 9464 - targetPort: 9464 # This should match Gate's OTEL_METRICS_SERVER_ADDR - protocol: TCP diff --git a/.web/docs/guide/otel/self-hosted/k8s-configs/gate-servicemonitor.yml b/.web/docs/guide/otel/self-hosted/k8s-configs/gate-servicemonitor.yml deleted file mode 100644 index f823f056..00000000 --- a/.web/docs/guide/otel/self-hosted/k8s-configs/gate-servicemonitor.yml +++ /dev/null @@ -1,22 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: ServiceMonitor -metadata: - name: gate-servicemonitor - namespace: monitoring # Or the namespace where kube-prometheus-stack is installed/configured to watch - labels: - # These labels are often used by Prometheus Operator to discover ServiceMonitors. - # Check your kube-prometheus-stack configuration for the correct labels. - # A common one is just 'release: prometheus' if you named your helm release 'prometheus'. - release: prometheus -spec: - selector: - matchLabels: - app: gate # This must match the labels on your Gate Service - namespaceSelector: - matchNames: - - default # Or the namespace where your Gate service is running - endpoints: - - port: metrics # This must match the name of the metrics port in your Gate Service - interval: 15s # Optional: scrape interval - path: /metrics # Optional: if Gate's OTEL_METRICS_SERVER_PATH is different - # honorLabels: true # Useful if you want to keep labels from the pods/services, like instance IPs diff --git a/.web/docs/guide/otel/self-hosted/otel-stack-configs/docker-compose.yml b/.web/docs/guide/otel/self-hosted/otel-stack-configs/docker-compose.yml index 6ff76092..35d490c1 100644 --- a/.web/docs/guide/otel/self-hosted/otel-stack-configs/docker-compose.yml +++ b/.web/docs/guide/otel/self-hosted/otel-stack-configs/docker-compose.yml @@ -1,6 +1,36 @@ version: '3.8' services: + # Tempo runs as user 10001, and docker compose creates the volume as root. + # As such, we need to chown the volume in order for Tempo to start correctly. + init-tempo: + image: &tempoImage grafana/tempo:latest + user: root + entrypoint: + - 'chown' + - '-R' # Ensure recursive + - '10001:10001' + - '/var/tempo' + volumes: + - tempo_data:/var/tempo + + # OpenTelemetry Collector to receive traces and metrics + otel-collector: + image: otel/opentelemetry-collector-contrib:latest + container_name: otel-collector + command: ['--config=/etc/otel-collector-config.yaml'] + volumes: + - ./otel-collector-config.yaml:/etc/otel-collector-config.yaml + ports: + - '4317:4317' # OTLP gRPC + - '4318:4318' # OTLP HTTP + - '8889:8889' # Prometheus metrics exporter + networks: + - otel-stack + depends_on: + - tempo + - prometheus + prometheus: image: prom/prometheus:v3.3.1 container_name: prometheus @@ -16,26 +46,32 @@ services: - otel-stack tempo: - image: grafana/tempo:2.7.2 + image: *tempoImage container_name: tempo command: ['-config.file=/etc/tempo.yaml'] volumes: - ./tempo.yaml:/etc/tempo.yaml:ro - - tempo_data:/tmp/tempo + - tempo_data:/var/tempo # Use named volume, initialized by init-tempo ports: - '3200:3200' # Tempo UI - - '4317:4317' # OTLP gRPC - - '4318:4318' # OTLP HTTP - - '9411:9411' # Zipkin - - '14268:14268' # Jaeger gRPC + - '9095:9095' # Tempo gRPC internal depends_on: - - prometheus + init-tempo: # Depends on the init container + condition: service_completed_successfully + prometheus: + condition: service_started networks: - otel-stack grafana: image: grafana/grafana:12.0.0 container_name: grafana + environment: + - GF_AUTH_ANONYMOUS_ENABLED=true + - GF_AUTH_ANONYMOUS_ORG_ROLE=Admin + - GF_AUTH_DISABLE_LOGIN_FORM=true + - GF_FEATURE_TOGGLES_ENABLE=traceqlEditor metricsSummary + - GF_INSTALL_PLUGINS=https://storage.googleapis.com/integration-artifacts/grafana-exploretraces-app/grafana-exploretraces-app-latest.zip;grafana-traces-app volumes: - ./grafana-datasources.yml:/etc/grafana/provisioning/datasources/datasources.yml:ro - grafana_data:/var/lib/grafana diff --git a/.web/docs/guide/otel/self-hosted/otel-stack-configs/otel-collector-config.yaml b/.web/docs/guide/otel/self-hosted/otel-stack-configs/otel-collector-config.yaml new file mode 100644 index 00000000..5ee25604 --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/otel-stack-configs/otel-collector-config.yaml @@ -0,0 +1,41 @@ +receivers: + otlp: + protocols: + grpc: + endpoint: 0.0.0.0:4317 + http: + endpoint: 0.0.0.0:4318 + +processors: + batch: + # Recommended batch settings for production + send_batch_size: 10000 + timeout: 10s + memory_limiter: + check_interval: 1s + limit_mib: 1000 + spike_limit_mib: 200 + +exporters: + otlp: + endpoint: tempo:9095 + tls: + insecure: true + prometheus: + endpoint: 0.0.0.0:8889 + namespace: otel + send_timestamps: true + metric_expiration: 180m + resource_to_telemetry_conversion: + enabled: true + +service: + pipelines: + traces: + receivers: [otlp] + processors: [memory_limiter, batch] + exporters: [otlp] + metrics: + receivers: [otlp] + processors: [memory_limiter, batch] + exporters: [prometheus] diff --git a/.web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus.yml b/.web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus.yml index 0580254d..63edfc57 100644 --- a/.web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus.yml +++ b/.web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus.yml @@ -6,15 +6,13 @@ scrape_configs: static_configs: - targets: ['localhost:9090'] - - job_name: 'gate' - # Replace 'gate-host-ip' with the actual IP address of the machine running Gate, - # or use 'host.docker.internal' if Gate is running on the same host as Docker. - # Gate's Prometheus endpoint must be enabled and accessible. + - job_name: 'otel-collector' + scrape_interval: 10s static_configs: - - targets: ['host.docker.internal:9464'] # Default Gate metrics address - # Example if Gate is on a different machine on the same network: - # - targets: ['192.168.1.100:9464'] - - - job_name: 'tempo' # Tempo can expose metrics as well - static_configs: - - targets: ['tempo:3200'] + - targets: ['otel-collector:8889'] + metric_relabel_configs: + # Convert duration_seconds to latency for Tempo compatibility + - source_labels: [__name__] + regex: 'traces_spanmetrics_duration_seconds(_bucket|_sum|_count)?' + target_label: __name__ + replacement: 'traces_spanmetrics_latency${1}' diff --git a/.web/docs/images/grafana-gate-dash.png b/.web/docs/images/grafana-gate-dash.png new file mode 100644 index 0000000000000000000000000000000000000000..cff6cc86939b21266e7927f2502ebaadc7a45a00 GIT binary patch literal 179972 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 literal 0 HcmV?d00001 diff --git a/.web/docs/images/grafana-import-dash.png b/.web/docs/images/grafana-import-dash.png new file mode 100644 index 0000000000000000000000000000000000000000..d76b2c67d689d0e137f228a57c71c05ea0439e5b GIT binary patch literal 244272 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
src)xGSN-H81Q&hpbINJ$Z!6KZ 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ⅇ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 literal 0 HcmV?d00001 diff --git a/.web/docs/images/grafana-new-dash.png b/.web/docs/images/grafana-new-dash.png new file mode 100644 index 0000000000000000000000000000000000000000..bfc078948f665a9522783b781ec6e50c7c03ed6a GIT binary patch literal 230884 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 UHIh%rNv*XrRI|q$iVO9j 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 literal 0 HcmV?d00001 diff --git a/go.mod b/go.mod index df5ab2c4..a8aa3571 100644 --- a/go.mod +++ b/go.mod @@ -51,6 +51,7 @@ require ( require ( buf.build/gen/go/minekube/connect/protocolbuffers/go v1.35.2-20240220124425-904ce30425c9.1 // indirect + connectrpc.com/otelconnect v0.7.2 // indirect github.com/beorn7/perks v1.0.1 // indirect github.com/cenkalti/backoff/v4 v4.3.0 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect diff --git a/go.sum b/go.sum index b7001cad..18838f3c 100644 --- a/go.sum +++ b/go.sum @@ -6,6 +6,8 @@ cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMT cloud.google.com/go v0.37.0/go.mod h1:TS1dMSSfndXH133OKGwekG838Om/cQT0BUHV3HcBgoo= connectrpc.com/connect v1.18.1 h1:PAg7CjSAGvscaf6YZKUefjoih5Z/qYkyaTrBW8xvYPw= connectrpc.com/connect v1.18.1/go.mod h1:0292hj1rnx8oFrStN7cB4jjVBeqs+Yx5yDIC2prWDO8= +connectrpc.com/otelconnect v0.7.2 h1:WlnwFzaW64dN06JXU+hREPUGeEzpz3Acz2ACOmN8cMI= +connectrpc.com/otelconnect v0.7.2/go.mod h1:JS7XUKfuJs2adhCnXhNHPHLz6oAaZniCJdSF00OZSew= dmitri.shuralyov.com/app/changes v0.0.0-20180602232624-0a106ad413e3/go.mod h1:Yl+fi1br7+Rr3LqpNJf1/uxUdtRUV+Tnj0o93V2B9MU= dmitri.shuralyov.com/html/belt v0.0.0-20180602232347-f7d459c86be0/go.mod h1:JLBrvjyP0v+ecvNYvCpyZgu5/xkfAUhi6wJj28eUfSU= dmitri.shuralyov.com/service/change v0.0.0-20181023043359-a85b471d5412/go.mod h1:a1inKt/atXimZ4Mv927x+r7UpyzRUf4emIoiiSC2TN4= diff --git a/pkg/edition/java/proxy/otel.go b/pkg/edition/java/proxy/otel_meter.go similarity index 51% rename from pkg/edition/java/proxy/otel.go rename to pkg/edition/java/proxy/otel_meter.go index dfc33e2c..27c17192 100644 --- a/pkg/edition/java/proxy/otel.go +++ b/pkg/edition/java/proxy/otel_meter.go @@ -13,9 +13,9 @@ var ( ) func (p *Proxy) initMeter() error { - var err error - _, err = meter.Int64ObservableGauge( - "proxy.player_count", + // player count metric + _, err := meter.Int64ObservableGauge( + "gate.player_count", metric.WithInt64Callback(func(ctx context.Context, o metric.Int64Observer) error { o.Observe(int64(p.PlayerCount())) return nil @@ -23,5 +23,22 @@ func (p *Proxy) initMeter() error { metric.WithDescription("The current total player count on the proxy"), metric.WithUnit("1"), ) - return err + if err != nil { + return err + } + // registered servers metric + _, err = meter.Int64ObservableGauge( + "gate.registered_servers", + metric.WithInt64Callback(func(ctx context.Context, o metric.Int64Observer) error { + o.Observe(int64(len(p.Servers()))) + return nil + }), + metric.WithDescription("The current total registered servers on the proxy"), + metric.WithUnit("1"), + ) + if err != nil { + return err + } + + return nil } diff --git a/pkg/internal/otelutil/otel.go b/pkg/internal/otelutil/otel.go index 463c1323..8c25265b 100644 --- a/pkg/internal/otelutil/otel.go +++ b/pkg/internal/otelutil/otel.go @@ -3,98 +3,17 @@ package otelutil import ( "context" "fmt" - "net" - "net/http" "os" - "sync" - "time" "github.com/go-logr/logr" "github.com/honeycombio/otel-config-go/otelconfig" - "github.com/prometheus/client_golang/prometheus/promhttp" - "go.opentelemetry.io/otel" - "go.opentelemetry.io/otel/exporters/prometheus" - "go.opentelemetry.io/otel/sdk/metric" + "go.minekube.com/gate/pkg/version" ) -const ( - defaultMetricsPath = "/metrics" - defaultMetricsAddr = ":9464" -) - -// startMetricsServer initializes and starts an HTTP server for Prometheus metrics. -// It returns a function to gracefully shut down the server. -func startMetricsServer(ctx context.Context) (func(), error) { - enabled := os.Getenv("OTEL_METRICS_ENABLED") - if enabled != "true" { - return func() {}, nil - } - serverEnabled := os.Getenv("OTEL_METRICS_SERVER_ENABLED") - if serverEnabled != "true" { - return func() {}, nil - } - - metricsPath := os.Getenv("OTEL_METRICS_SERVER_PATH") - if metricsPath == "" { - metricsPath = defaultMetricsPath - } - metricsAddr := os.Getenv("OTEL_METRICS_SERVER_ADDR") - if metricsAddr == "" { - metricsAddr = defaultMetricsAddr - } - - exporter, err := prometheus.New() - if err != nil { - return nil, err - } - provider := metric.NewMeterProvider(metric.WithReader(exporter)) - otel.SetMeterProvider(provider) - // This provider is set as the global MeterProvider. - // Application-specific metrics can then be created using otel.Meter() - // elsewhere and will be exported via this Prometheus setup. - // The startMetricsServer function itself only sets up the export pipeline. - - mux := http.NewServeMux() - mux.Handle(metricsPath, promhttp.Handler()) - - // Create a ln first to catch errors like "port already in use" early. - ln, err := net.Listen("tcp", metricsAddr) - if err != nil { - return nil, fmt.Errorf("failed to create metrics listener on %s: %w", metricsAddr, err) - } - - server := &http.Server{ - Handler: mux, - IdleTimeout: 10 * time.Second, - ReadTimeout: 10 * time.Second, - WriteTimeout: 10 * time.Second, - } - - log := logr.FromContextOrDiscard(ctx) - - go func() { - log.Info("metrics server listening", "addr", ln.Addr().String(), "path", metricsPath) - // Use Serve with the listener instead of ListenAndServe - if err := server.Serve(ln); err != nil && err != http.ErrServerClosed { - log.Error(err, "failed to start metrics server") - } - }() - - // Return a cleanup function to shut down the server - return func() { - log.Info("shutting down metrics server...") - ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second) - defer cancel() - if err := server.Shutdown(ctx); err != nil { - log.Error(err, "metrics server shutdown failed") - } - _ = ln.Close() - }, nil -} - // Init initializes the OpenTelemetry SDK with the OTLP exporter and the corresponding trace and meter providers. // It also starts an HTTP server for Prometheus metrics. func Init(ctx context.Context) (clean func(), err error) { + fmt.Println(os.Getenv("OTEL_EXPORTER_OTLP_TRACES_INSECURE")) // default service name serviceName := os.Getenv("OTEL_SERVICE_NAME") if serviceName == "" { @@ -103,34 +22,16 @@ func Init(ctx context.Context) (clean func(), err error) { otelShutdown, err := otelconfig.ConfigureOpenTelemetry( otelconfig.WithServiceName(serviceName), + otelconfig.WithServiceVersion(version.String()), ) if err != nil { return nil, err } - metricsServerShutdown, err := startMetricsServer(ctx) - if err != nil { - // If metrics server fails, try to clean up OTel config first - otelShutdown() - return nil, err - } - return func() { log := logr.FromContextOrDiscard(ctx).WithName("otel") - var wg sync.WaitGroup - wg.Add(2) - go func() { - defer wg.Done() - log.Info("shutting down OpenTelemetry...") - otelShutdown() - log.Info("OpenTelemetry shutdown complete") - }() - go func() { - defer wg.Done() - log.Info("shutting down metrics server...") - metricsServerShutdown() - log.Info("metrics server shutdown complete") - }() - wg.Wait() + log.Info("shutting down OpenTelemetry, trying to push remaining telemetry data...") + otelShutdown() + log.Info("OpenTelemetry shutdown complete") }, nil } diff --git a/pkg/version/version.go b/pkg/version/version.go index 569c60a3..30598994 100644 --- a/pkg/version/version.go +++ b/pkg/version/version.go @@ -5,8 +5,10 @@ import ( "strings" ) -// TODO injected at build time -var version string +// Version information set by build flags +// Version is the current version of Gate. +// Set using -ldflags "-X go.minekube.com/gate/pkg/version.Version=v1.2.3" +var version string = "unknown" func String() string { return version diff --git a/web/docs/.vitepress/theme/components/LandingAfter.vue b/web/docs/.vitepress/theme/components/LandingAfter.vue deleted file mode 100644 index 0519ecba..00000000 --- a/web/docs/.vitepress/theme/components/LandingAfter.vue +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file From 4b4b37d86a1d2b64bdb6408199ebbad12dc65822 Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Thu, 15 May 2025 12:59:18 +0200 Subject: [PATCH 101/107] chore(deps): update Go module dependencies and documentation configuration Added the `connectrpc.com/otelconnect` dependency to the Go module and updated the `go.sum` file accordingly. Removed outdated Prometheus-related dependencies and updated the `go.mod` file to reflect the latest versions. Additionally, modified the VitePress configuration to ignore dead links for localhost, enhancing the documentation experience. --- .web/docs/.vitepress/config.ts | 2 ++ .../guide/otel/self-hosted/grafana-dash.md | 1 - go.mod | 10 +----- go.sum | 34 ++----------------- 4 files changed, 5 insertions(+), 42 deletions(-) diff --git a/.web/docs/.vitepress/config.ts b/.web/docs/.vitepress/config.ts index d4848a1c..f1df24cc 100644 --- a/.web/docs/.vitepress/config.ts +++ b/.web/docs/.vitepress/config.ts @@ -51,6 +51,8 @@ export default defineConfig({ // reactivityTransform: true, // This option is deprecated }, + ignoreDeadLinks: 'localhostLinks', + themeConfig: { logo: '/minekube-logo.png', diff --git a/.web/docs/guide/otel/self-hosted/grafana-dash.md b/.web/docs/guide/otel/self-hosted/grafana-dash.md index a08adae2..ff570f28 100644 --- a/.web/docs/guide/otel/self-hosted/grafana-dash.md +++ b/.web/docs/guide/otel/self-hosted/grafana-dash.md @@ -1,4 +1,3 @@ - We provide a sample Grafana dashboard to help you get started with visualizing Gate's metrics. ::: info You are expected to make your own dashboard, this is just a starting point. diff --git a/go.mod b/go.mod index a8aa3571..3e2f2e48 100644 --- a/go.mod +++ b/go.mod @@ -4,6 +4,7 @@ go 1.24.1 require ( connectrpc.com/connect v1.18.1 + connectrpc.com/otelconnect v0.7.2 github.com/Tnze/go-mc v1.20.2 github.com/agext/levenshtein v1.2.3 github.com/coder/websocket v1.8.12 @@ -51,10 +52,7 @@ require ( require ( buf.build/gen/go/minekube/connect/protocolbuffers/go v1.35.2-20240220124425-904ce30425c9.1 // indirect - connectrpc.com/otelconnect v0.7.2 // indirect - github.com/beorn7/perks v1.0.1 // indirect github.com/cenkalti/backoff/v4 v4.3.0 // indirect - github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/cpuguy83/go-md2man/v2 v2.0.5 // indirect github.com/emirpasic/gods v1.18.1 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect @@ -69,14 +67,9 @@ require ( github.com/klauspost/compress v1.18.0 // indirect github.com/lucasb-eyer/go-colorful v1.2.0 // indirect github.com/lufia/plan9stats v0.0.0-20240513124658-fba389f38bae // indirect - github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect github.com/pelletier/go-toml/v2 v2.2.3 // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 // indirect - github.com/prometheus/client_golang v1.20.5 // indirect - github.com/prometheus/client_model v0.6.1 // indirect - github.com/prometheus/common v0.62.0 // indirect - github.com/prometheus/procfs v0.15.1 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect github.com/sagikazarmark/locafero v0.9.0 // indirect github.com/segmentio/fasthash v1.0.3 // indirect @@ -103,7 +96,6 @@ require ( go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.32.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0 // indirect - go.opentelemetry.io/otel/exporters/prometheus v0.57.0 // indirect go.opentelemetry.io/otel/sdk v1.35.0 // indirect go.opentelemetry.io/otel/sdk/metric v1.35.0 // indirect go.opentelemetry.io/proto/otlp v1.3.1 // indirect diff --git a/go.sum b/go.sum index 18838f3c..35418d69 100644 --- a/go.sum +++ b/go.sum @@ -20,14 +20,10 @@ github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7l github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239/go.mod h1:2FmKhYUyUczH0OGQWaF5ceTx0UBShxjsH6f8oGKYe2c= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= -github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= -github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= github.com/bradfitz/go-smtpd v0.0.0-20170404230938-deb6d6237625/go.mod h1:HYsPBTaaSFSlLx/70C2HPIMNZpVV8+vt/A+FMnYP11g= github.com/buger/jsonparser v0.0.0-20181115193947-bf1c66bbce23/go.mod h1:bbYlZJ7hK1yFx9hf58LP0zeX7UjIGs20ufpu3evjr+s= github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= -github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= -github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/coder/websocket v1.8.12 h1:5bUXkEPPIbewrnkU8LTCLVaxi4N4J8ahufH2vlo4NAo= github.com/coder/websocket v1.8.12/go.mod h1:LNVeNrXQZfe5qhS9ALED3uA+l5pPqvwXg3CKoDBB2gs= @@ -92,8 +88,9 @@ github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= -github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= +github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= github.com/google/go-github v17.0.0+incompatible/go.mod h1:zLgOLi98H3fifZn+44m+umXrS52loVEgC2AApnigrVQ= github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO6wN/zVPAxq5ck= github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= @@ -117,9 +114,6 @@ github.com/jellydator/ttlcache/v3 v3.3.0/go.mod h1:bj2/e0l4jRnQdrnSTaGTsh4GSXvMj github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= -github.com/klauspost/compress v1.17.2 h1:RlWWUY/Dr4fL8qk9YG7DTZ7PDgME2V4csBXA8L/ixi4= -github.com/klauspost/compress v1.17.2/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE= -github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw= github.com/klauspost/compress v1.18.0 h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo= github.com/klauspost/compress v1.18.0/go.mod h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ= github.com/knadh/koanf/providers/file v1.2.0 h1:hrUJ6Y9YOA49aNu/RSYzOTFlqzXSCpmYIDXI7OJU6+U= @@ -142,8 +136,6 @@ github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5 github.com/microcosm-cc/bluemonday v1.0.1/go.mod h1:hsXNsILzKxV+sX77C5b8FSuKF00vh2OMYv+xgHpAMF4= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= -github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/neelance/astrewrite v0.0.0-20160511093645-99348263ae86/go.mod h1:kHJEU3ofeGjhHklVoIGuVj85JJwZ6kWPaJwCIxgnFmo= github.com/neelance/sourcemap v0.0.0-20151028013722-8c68805598ab/go.mod h1:Qr6/a/Q4r9LP1IltGz7tA7iOK1WonHEYhu1HRBA7ZiM= github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646 h1:zYyBkD/k9seD2A7fsi6Oo2LfFZAehjjQMERAvZLEDnQ= @@ -160,19 +152,9 @@ github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 h1:o4JXh1EVt9k/+g42oCprj/FisM4qX9L3sZB3upGN2ZU= github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE= github.com/prometheus/client_golang v0.8.0/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= -github.com/prometheus/client_golang v1.20.5 h1:cxppBPuYhUnsO6yo/aoRol4L7q7UFfdm+bR9r+8l63Y= -github.com/prometheus/client_golang v1.20.5/go.mod h1:PIEt8X02hGcP8JWbeHyeZ53Y/jReSnHgO035n//V5WE= -github.com/prometheus/client_golang v1.22.0 h1:rb93p9lokFEsctTys46VnV1kLCDpVZ0a/Y92Vm0Zc6Q= -github.com/prometheus/client_golang v1.22.0/go.mod h1:R7ljNsLXhuQXYZYtw6GAE9AZg8Y7vEW5scdCXrWRXC0= github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= -github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E= -github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY= github.com/prometheus/common v0.0.0-20180801064454-c7de2306084e/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= -github.com/prometheus/common v0.62.0 h1:xasJaQlnWAeyHdUBeGjXmutelfJHWMRr+Fg4QszZ2Io= -github.com/prometheus/common v0.62.0/go.mod h1:vyBcEuLSvWos9B1+CyL7JZ2up+uFzXhkqml0W5zIY1I= github.com/prometheus/procfs v0.0.0-20180725123919-05ee40e3a273/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= -github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= -github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= github.com/robinbraemer/event v0.1.1 h1:1T7GturBzxsa8UUe/r3EmW9aHLErKBggfn43up5hOUA= github.com/robinbraemer/event v0.1.1/go.mod h1:fKkjL2UbPajNcxc4oWYyRCcUalss0YtPxwMtZTuNo8o= github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII= @@ -279,8 +261,6 @@ go.opentelemetry.io/contrib/propagators/b3 v1.28.0 h1:XR6CFQrQ/ttAYmTBX2loUEFGdk go.opentelemetry.io/contrib/propagators/b3 v1.28.0/go.mod h1:DWRkzJONLquRz7OJPh2rRbZ7MugQj62rk7g6HRnEqh0= go.opentelemetry.io/contrib/propagators/ot v1.28.0 h1:rmlG+2pc5k5M7Y7izDrxAHZUIwDERdGMTD9oMV7llMk= go.opentelemetry.io/contrib/propagators/ot v1.28.0/go.mod h1:MNgXIn+UrMbNGpd7xyckyo2LCHIgCdmdjEE7YNZGG+w= -go.opentelemetry.io/otel v1.34.0 h1:zRLXxLCgL1WyKsPVrgbSdMN4c0FMkDAskSTQP+0hdUY= -go.opentelemetry.io/otel v1.34.0/go.mod h1:OWFPOQ+h4G8xpyjgqo4SxJYdDQ/qmRH+wivy7zzx9oI= go.opentelemetry.io/otel v1.35.0 h1:xKWKPxrxB6OtMCbmMY021CqC45J+3Onta9MqjhnusiQ= go.opentelemetry.io/otel v1.35.0/go.mod h1:UEqy8Zp11hpkUrL73gSlELM0DupHoiq72dR+Zqel/+Y= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0 h1:j7ZSD+5yn+lo3sGV69nW04rRR0jhYnBwjuX3r0HvnK0= @@ -293,22 +273,12 @@ go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0 h1:9kV11 go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0/go.mod h1:JyA0FHXe22E1NeNiHmVp7kFHglnexDQ7uRWDiiJ1hKQ= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0 h1:j9+03ymgYhPKmeXGk5Zu+cIZOlVzd9Zv7QIiyItjFBU= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0/go.mod h1:Y5+XiUG4Emn1hTfciPzGPJaSI+RpDts6BnCIir0SLqk= -go.opentelemetry.io/otel/exporters/prometheus v0.57.0 h1:AHh/lAP1BHrY5gBwk8ncc25FXWm/gmmY3BX258z5nuk= -go.opentelemetry.io/otel/exporters/prometheus v0.57.0/go.mod h1:QpFWz1QxqevfjwzYdbMb4Y1NnlJvqSGwyuU0B4iuc9c= -go.opentelemetry.io/otel/metric v1.34.0 h1:+eTR3U0MyfWjRDhmFMxe2SsW64QrZ84AOhvqS7Y+PoQ= -go.opentelemetry.io/otel/metric v1.34.0/go.mod h1:CEDrp0fy2D0MvkXE+dPV7cMi8tWZwX3dmaIhwPOaqHE= go.opentelemetry.io/otel/metric v1.35.0 h1:0znxYu2SNyuMSQT4Y9WDWej0VpcsxkuklLa4/siN90M= go.opentelemetry.io/otel/metric v1.35.0/go.mod h1:nKVFgxBZ2fReX6IlyW28MgZojkoAkJGaE8CpgeAU3oE= -go.opentelemetry.io/otel/sdk v1.34.0 h1:95zS4k/2GOy069d321O8jWgYsW3MzVV+KuSPKp7Wr1A= -go.opentelemetry.io/otel/sdk v1.34.0/go.mod h1:0e/pNiaMAqaykJGKbi+tSjWfNNHMTxoC9qANsCzbyxU= go.opentelemetry.io/otel/sdk v1.35.0 h1:iPctf8iprVySXSKJffSS79eOjl9pvxV9ZqOWT0QejKY= go.opentelemetry.io/otel/sdk v1.35.0/go.mod h1:+ga1bZliga3DxJ3CQGg3updiaAJoNECOgJREo9KHGQg= -go.opentelemetry.io/otel/sdk/metric v1.34.0 h1:5CeK9ujjbFVL5c1PhLuStg1wxA7vQv7ce1EK0Gyvahk= -go.opentelemetry.io/otel/sdk/metric v1.34.0/go.mod h1:jQ/r8Ze28zRKoNRdkjCZxfs6YvBTG1+YIqyFVFYec5w= go.opentelemetry.io/otel/sdk/metric v1.35.0 h1:1RriWBmCKgkeHEhM7a2uMjMUfP7MsOF5JpUCaEqEI9o= go.opentelemetry.io/otel/sdk/metric v1.35.0/go.mod h1:is6XYCUMpcKi+ZsOvfluY5YstFnhW0BidkR+gL+qN+w= -go.opentelemetry.io/otel/trace v1.34.0 h1:+ouXS2V8Rd4hp4580a8q23bg0azF2nI8cqLYnC8mh/k= -go.opentelemetry.io/otel/trace v1.34.0/go.mod h1:Svm7lSjQD7kG7KJ/MUHPVXSDGz2OX4h0M2jHBhmSfRE= go.opentelemetry.io/otel/trace v1.35.0 h1:dPpEfJu1sDIqruz7BHFG3c7528f6ddfSWfFDVt/xgMs= go.opentelemetry.io/otel/trace v1.35.0/go.mod h1:WUk7DtFp1Aw2MkvqGdwiXYDZZNvA/1J8o6xRXLrIkyc= go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= From ff5a53aa7ae2f324a615e140510de5c1cf5363b2 Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Thu, 15 May 2025 13:07:19 +0200 Subject: [PATCH 102/107] fix(docs): update OpenTelemetry self-hosted guide for Jaeger configuration Revised the Jaeger configuration in the self-hosted OpenTelemetry documentation. Updated the OTLP endpoint to use port 4318 and changed the protocol to "http/protobuf". Disabled metrics export as Jaeger does not support it, ensuring clarity in the setup instructions. [skip ci] --- .web/docs/guide/otel/self-hosted/index.md | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/.web/docs/guide/otel/self-hosted/index.md b/.web/docs/guide/otel/self-hosted/index.md index 72a7bd4c..35da39c1 100644 --- a/.web/docs/guide/otel/self-hosted/index.md +++ b/.web/docs/guide/otel/self-hosted/index.md @@ -164,14 +164,12 @@ Create a `docker-compose-jaeger.yml` file (or add to an existing one). You can p To send traces from Gate to Jaeger: ```bash -export OTEL_EXPORTER_OTLP_ENDPOINT="http://localhost:4317" # Or IP of Docker host if Gate is external -export OTEL_EXPORTER_OTLP_PROTOCOL="grpc" # or "http/protobuf" for HTTP OTLP +export OTEL_EXPORTER_OTLP_ENDPOINT="http://localhost:4318" # Or IP of Docker host if Gate is external +export OTEL_EXPORTER_OTLP_PROTOCOL="http/protobuf" export OTEL_TRACES_ENABLED="true" -export OTEL_METRICS_ENABLED="true" # Ensure metrics are enabled to be sent via OTLP +export OTEL_METRICS_ENABLED="false" # Jaeger does not support metrics # The following INSECURE flag is necessary when using an http:// endpoint for traces: export OTEL_EXPORTER_OTLP_TRACES_INSECURE="true" -# If sending OTLP metrics to a Jaeger setup that also ingests them (or to a separate collector via HTTP): -# export OTEL_EXPORTER_OTLP_METRICS_INSECURE="true" # OTEL_SERVICE_NAME is highly recommended, e.g., "gate-proxy-dev" export OTEL_SERVICE_NAME="gate-jaeger-example" ``` From 7685d44c81f53a06d5c70a41849c3f312b3a226c Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Fri, 16 May 2025 10:02:21 +0200 Subject: [PATCH 103/107] feat(docs): enhance OpenTelemetry self-hosted guide with new configuration files and metrics setup Added new configuration files for OpenTelemetry Collector in both push and pull models, along with updated Prometheus configurations. Revised the self-hosted guide to clarify setup instructions and included details on how to send telemetry data from Gate. Updated Grafana dashboard expressions to align with the new metrics structure, ensuring accurate data visualization. [skip ci] --- .vscode/launch.json | 33 ++++++++ .web/docs/guide/otel/faq.md | 14 ++++ .../gate-overview-dashboard.json | 18 ++--- .web/docs/guide/otel/self-hosted/index.md | 80 +++++++++++++++---- .../otel-stack-configs/docker-compose.yml | 22 ++++- ...g.yaml => otel-collector-config-pull.yaml} | 5 +- .../otel-collector-config-push.yaml | 37 +++++++++ ...metheus.yml => prometheus-config-pull.yml} | 2 +- .../prometheus-config-push.yml | 19 +++++ pkg/internal/otelutil/otel.go | 21 ++++- 10 files changed, 218 insertions(+), 33 deletions(-) create mode 100644 .vscode/launch.json rename .web/docs/guide/otel/self-hosted/otel-stack-configs/{otel-collector-config.yaml => otel-collector-config-pull.yaml} (89%) create mode 100644 .web/docs/guide/otel/self-hosted/otel-stack-configs/otel-collector-config-push.yaml rename .web/docs/guide/otel/self-hosted/otel-stack-configs/{prometheus.yml => prometheus-config-pull.yml} (87%) create mode 100644 .web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus-config-push.yml diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 00000000..efaf1bd0 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,33 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "name": "Debug", + "type": "go", + "request": "launch", + "mode": "debug", + "program": "${workspaceFolder}/gate.go", + "args": ["-d"], + "console": "integratedTerminal" + }, + { + "name": "Debug with OTEL (Self-hosted)", + "type": "go", + "request": "launch", + "mode": "debug", + "program": "${workspaceFolder}/gate.go", + "args": ["-d"], + "console": "integratedTerminal", + "env": { + "OTEL_EXPORTER_OTLP_ENDPOINT": "http://localhost:4318", + "OTEL_EXPORTER_OTLP_PROTOCOL": "http/protobuf", + "OTEL_TRACES_ENABLED": "true", + "OTEL_METRICS_ENABLED": "true", + "OTEL_SERVICE_NAME": "gate-dev" + } + } + ] +} diff --git a/.web/docs/guide/otel/faq.md b/.web/docs/guide/otel/faq.md index add93d38..2cf59787 100644 --- a/.web/docs/guide/otel/faq.md +++ b/.web/docs/guide/otel/faq.md @@ -40,3 +40,17 @@ For these reasons, even if direct sending is possible, using the OTel Collector - **Grafana Mimir**: Serves as a highly scalable, long-term storage solution for Prometheus metrics. It addresses potential scaling limitations of a single Prometheus instance for large data volumes and long retention periods. It remains compatible with PromQL for querying. - **Grafana Tempo**: Is a highly scalable, easy-to-operate distributed tracing backend. It's optimized for ingesting and retrieving traces by ID and integrates well with Grafana for visualization and correlation with metrics and logs. + +## Why does my OpenTelemetry `service.name` appear as the `job` label in Prometheus? + +When you send telemetry from an application (like Gate) instrumented with OpenTelemetry to an OpenTelemetry Collector, and then the Collector forwards this data to Prometheus (typically using the `prometheusremotewrite` exporter), a common and intentional translation occurs: + +1. **OTLP Transmits Resource Attributes**: Your application sends `service.name` (along with other details like `service.version`, `host.name`, etc.) as "resource attributes" within the OTLP (OpenTelemetry Protocol) data. These attributes describe the entity generating the telemetry. + +2. **Collector's Role (`prometheusremotewrite` Exporter)**: The OpenTelemetry Collector receives this OTLP data. When configured to send metrics to Prometheus, its `prometheusremotewrite` exporter takes on the task of converting the OpenTelemetry data model into the format Prometheus understands. + +3. **Default Convention: `service.name` to `job`**: By default, and in line with common Prometheus conventions, this exporter maps the OpenTelemetry `service.name` resource attribute to the `job` label in Prometheus. Similarly, `service.instance.id` is often mapped to the `instance` label. + +**In essence, if you see `job="your-service-name"` in Prometheus, this _is_ your OpenTelemetry `service.name` attribute.** It has been translated to the standard Prometheus `job` label, which is the conventional way to identify a service or application in Prometheus. + +You generally do **not** need to add special processing in the Collector (e.g., using an `attributes` processor) to achieve this mapping; it's a standard behavior of the `prometheusremotewrite` exporter. This design choice simplifies integration and aligns with how Prometheus users typically organize and query their metrics. diff --git a/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json b/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json index 1b8f1402..3d0f15c3 100644 --- a/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json +++ b/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json @@ -99,7 +99,7 @@ "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, - "expr": "sum(otel_gate_player_count_ratio{job=\"otel-collector\", service_name=~\"$service_name_filter\"})", + "expr": "sum(gate_player_count_ratio{job=~\"$service_name_filter\"})", "legendFormat": "Total Players", "refId": "A" } @@ -155,7 +155,7 @@ "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, - "expr": "sum(otel_gate_registered_servers_ratio{job=\"otel-collector\", service_name=~\"$service_name_filter\"})", + "expr": "sum(gate_registered_servers_ratio{job=~\"$service_name_filter\"})", "legendFormat": "Registered Servers", "refId": "A" } @@ -246,8 +246,8 @@ "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, - "expr": "sum(otel_process_runtime_go_goroutines{job=\"otel-collector\", service_name=~\"$service_name_filter\"}) by (service_name, instance, exported_job)", - "legendFormat": "{{service_name}} {{exported_job}} {{instance}}", + "expr": "sum(process_runtime_go_goroutines{job=~\"$service_name_filter\"}) by (job, instance)", + "legendFormat": "{{job}} {{instance}}", "refId": "A" } ], @@ -337,8 +337,8 @@ "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, - "expr": "sum(otel_process_runtime_go_mem_heap_alloc_bytes{job=\"otel-collector\", service_name=~\"$service_name_filter\"}) by (service_name, instance, exported_job)", - "legendFormat": "{{service_name}} {{exported_job}} {{instance}}", + "expr": "sum(process_runtime_go_mem_heap_alloc_bytes{job=~\"$service_name_filter\"}) by (job, instance)", + "legendFormat": "{{job}} {{instance}}", "refId": "A" } ], @@ -376,15 +376,15 @@ "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, - "definition": "label_values(otel_process_runtime_go_goroutines{job=\"otel-collector\"}, service_name)", + "definition": "label_values(process_runtime_go_goroutines, job)", "hide": 0, "includeAll": true, - "label": "Service Name", + "label": "Job (Service Name)", "multi": true, "name": "service_name_filter", "options": [], "query": { - "query": "label_values(otel_process_runtime_go_goroutines{job=\"otel-collector\"}, service_name)", + "query": "label_values(process_runtime_go_goroutines, job)", "refId": "StandardVariableQuery_ServiceName" }, "refresh": 1, diff --git a/.web/docs/guide/otel/self-hosted/index.md b/.web/docs/guide/otel/self-hosted/index.md index 35da39c1..acd5745c 100644 --- a/.web/docs/guide/otel/self-hosted/index.md +++ b/.web/docs/guide/otel/self-hosted/index.md @@ -29,7 +29,7 @@ This setup uses Grafana Tempo for traces, Prometheus for metrics, and Grafana fo ### 1. Configuration Files -You'll need the following configuration files. The `docker-compose.yml` below assumes `prometheus.yml`, `tempo.yaml`, and `grafana-datasources.yml` are in the same directory (e.g., `otel-stack-configs/`) when you run `docker compose -f otel-stack-configs/docker-compose.yml up -d` from the directory containing `otel-stack-configs`. +You'll need the following configuration files. The `docker-compose.yml` below assumes these configuration files are in the same directory when you run `docker compose up -d` from within the `otel-stack-configs` directory (after navigating into it as shown in the Quick Start). The default setup uses a "push" model where the OpenTelemetry Collector sends metrics to Prometheus. ::: code-group @@ -37,8 +37,12 @@ You'll need the following configuration files. The `docker-compose.yml` below as ``` -```yaml [prometheus.yml] - +```yaml [otel-collector-config-push.yaml] + +``` + +```yaml [prometheus-config-push.yml] + ``` ```yaml [tempo.yaml] @@ -51,6 +55,48 @@ You'll need the following configuration files. The `docker-compose.yml` below as ::: +The OpenTelemetry Collector first receives telemetry data (traces and metrics) from Gate via OTLP. Its configuration for handling and forwarding this data, particularly metrics to Prometheus, is detailed below. The default "push" vs. alternative "pull" options refer to how metrics are sent from the Collector to Prometheus. +Refer to the comments within the main `docker-compose.yml` (included above) for instructions on how to set up the `otel-collector` and `prometheus` services for each approach. + +::: code-group + +```yaml [1. Push to Prometheus (otel-collector-config-push.yaml)] +# Collector receives from Gate (via OTLP receiver, see config) and then pushes metrics to Prometheus's remote_write endpoint. +# (This is the default setup shown in the main docker-compose.yml) +# otel-collector service in docker-compose.yml should use: +# command: ['--config=/etc/otel-collector-config-push.yaml'] +# Prometheus service in docker-compose.yml should mount: +# - ./otel-stack-configs/prometheus-config-push.yml:/etc/prometheus/prometheus.yml +# And Prometheus service command in docker-compose.yml should include: +# - '--web.enable-remote-write-receiver' + +``` + +```yaml [prometheus-config-push.yml] +# Corresponding Prometheus config (enables remote_write receiver) +# Ensure Prometheus service in docker-compose.yml has the flag: +# command: +# - '--config.file=/etc/prometheus/prometheus-config-push.yml' +# - '--web.enable-lifecycle' +# - '--web.enable-remote-write-receiver' # <--- This flag is active by default + +``` + +```yaml [2. Pull by Prometheus (otel-collector-config-pull.yaml)] +# ALTERNATIVE: Collector receives from Gate (via OTLP receiver, see config) and exposes metrics on :8889. Prometheus then scrapes (pulls) from the collector. +# To use this, modify docker-compose.yml: +# otel-collector service command: ['--config=/etc/otel-collector-config-pull.yaml'] +# Prometheus service command: use '--config.file=/etc/prometheus/prometheus-config-pull.yml' (and consider removing --web.enable-remote-write-receiver if not needed for other purposes) + +``` + +```yaml [prometheus-config-pull.yml] +# Corresponding Prometheus config for pull (scrapes otel-collector:8889) + +``` + +::: + ### 2. Configure Gate Environment Variables To send telemetry data from Gate to this self-hosted stack: @@ -76,15 +122,21 @@ export OTEL_EXPORTER_OTLP_ENDPOINT="http://otel-collector:4318" ### 3. Running the Stack -1. Save all the configuration files (`docker-compose.yml`, `prometheus.yml`, `tempo.yaml`, `grafana-datasources.yml`, and `otel-collector-config.yaml`) in the same directory. -2. Open a terminal in that directory and run: +1. Save all the configuration files (`docker-compose.yml`, `prometheus-config-push.yml`, `tempo.yaml`, `grafana-datasources.yml`, and `otel-collector-config-push.yaml`) in the `otel-stack-configs` directory (if you haven't already from the Quick Start steps). +2. Open a terminal, navigate into the `otel-stack-configs` directory, and run: ```bash - docker compose -f otel-stack-configs/docker-compose.yml up -d + docker compose up -d ``` 3. **Access Services:** - - Grafana: http://localhost:3000 (admin/admin, then change password) - - Prometheus: http://localhost:9090 - - Tempo: http://localhost:3200 (for Tempo's own UI, though Grafana is primary) + Once the stack is running, you can access the UIs for the different services: + + | Service | URL | Default Credentials | + | ---------- | --------------------- | ------------------------------- | + | Grafana | http://localhost:3000 | `admin` / `admin` | + | Prometheus | http://localhost:9090 | N/A | + | Tempo | http://localhost:3200 | N/A (UI via Grafana is primary) | + + For Grafana, you will be prompted to change the password after the first login. ### 4. Understanding the Stack Architecture @@ -149,7 +201,7 @@ Gate can send traces directly to Jaeger using the OTLP exporter. ### 1. Docker Compose Configuration -Create a `docker-compose-jaeger.yml` file (or add to an existing one). You can place the following content into a file, for example, at `otel-jaeger-config/docker-compose.yml` relative to this document, and run `docker compose -f otel-jaeger-config/docker-compose.yml up -d`: +Create a `docker-compose.yml` file (e.g., within the `jaeger-config` directory mentioned in the Quick Start). You can place the following content into this file and, after navigating into that directory, run `docker compose up -d`: ::: code-group @@ -170,7 +222,7 @@ export OTEL_TRACES_ENABLED="true" export OTEL_METRICS_ENABLED="false" # Jaeger does not support metrics # The following INSECURE flag is necessary when using an http:// endpoint for traces: export OTEL_EXPORTER_OTLP_TRACES_INSECURE="true" -# OTEL_SERVICE_NAME is highly recommended, e.g., "gate-proxy-dev" +# OTEL_SERVICE_NAME is highly recommended, e.g., "gate-dev" export OTEL_SERVICE_NAME="gate-jaeger-example" ``` @@ -187,10 +239,10 @@ Note: For this Jaeger setup, metrics collection with Prometheus is not included. ### 3. Running Jaeger -1. Save the `docker-compose-jaeger.yml` file. -2. Open a terminal in that directory and run: +1. Save the `docker-compose.yml` file (e.g. as `docker-compose.yml` inside your `jaeger-config` directory). +2. Open a terminal in that directory (e.g., `jaeger-config`) and run: ```bash - docker compose -f docker-compose-jaeger.yml up -d + docker compose up -d ``` 3. **Access Jaeger UI:** - Open your browser and navigate to http://localhost:16686 diff --git a/.web/docs/guide/otel/self-hosted/otel-stack-configs/docker-compose.yml b/.web/docs/guide/otel/self-hosted/otel-stack-configs/docker-compose.yml index 35d490c1..ddc43960 100644 --- a/.web/docs/guide/otel/self-hosted/otel-stack-configs/docker-compose.yml +++ b/.web/docs/guide/otel/self-hosted/otel-stack-configs/docker-compose.yml @@ -18,9 +18,15 @@ services: otel-collector: image: otel/opentelemetry-collector-contrib:latest container_name: otel-collector - command: ['--config=/etc/otel-collector-config.yaml'] + # Default command uses the 'push' configuration (collector pushes to Prometheus remote_write) + command: ['--config=/etc/otel-collector-config-push.yaml'] + # To use 'pull' configuration (Prometheus scrapes collector): + # command: ['--config=/etc/otel-collector-config-pull.yaml'] volumes: - - ./otel-collector-config.yaml:/etc/otel-collector-config.yaml + # Mount both configurations, default command points to the 'push' version. + - ./otel-collector-config-pull.yaml:/etc/otel-collector-config-pull.yaml + - ./otel-collector-config-push.yaml:/etc/otel-collector-config-push.yaml + # Ensure the mounted config in 'command' matches one of the above. ports: - '4317:4317' # OTLP gRPC - '4318:4318' # OTLP HTTP @@ -35,10 +41,18 @@ services: image: prom/prometheus:v3.3.1 container_name: prometheus command: - - '--config.file=/etc/prometheus/prometheus.yml' + # Default uses 'push' config (collector pushes to Prometheus remote_write) + - '--config.file=/etc/prometheus/prometheus-config-push.yml' - '--web.enable-lifecycle' # Allows hot-reloading of the config + - '--web.enable-remote-write-receiver' # Required for 'push' model + # For 'pull' config (Prometheus scrapes collector): + # - '--config.file=/etc/prometheus/prometheus-config-pull.yml' + # (and remove '--web.enable-remote-write-receiver' if not needed otherwise) volumes: - - ./prometheus.yml:/etc/prometheus/prometheus.yml:ro + # Mount both configurations, default command points to the 'push' version. + - ./prometheus-config-pull.yml:/etc/prometheus/prometheus-config-pull.yml:ro + - ./prometheus-config-push.yml:/etc/prometheus/prometheus-config-push.yml:ro + # Ensure the mounted config in 'command' (--config.file=) matches one of the above. - prometheus_data:/prometheus ports: - '9090:9090' diff --git a/.web/docs/guide/otel/self-hosted/otel-stack-configs/otel-collector-config.yaml b/.web/docs/guide/otel/self-hosted/otel-stack-configs/otel-collector-config-pull.yaml similarity index 89% rename from .web/docs/guide/otel/self-hosted/otel-stack-configs/otel-collector-config.yaml rename to .web/docs/guide/otel/self-hosted/otel-stack-configs/otel-collector-config-pull.yaml index 5ee25604..a6944628 100644 --- a/.web/docs/guide/otel/self-hosted/otel-stack-configs/otel-collector-config.yaml +++ b/.web/docs/guide/otel/self-hosted/otel-stack-configs/otel-collector-config-pull.yaml @@ -1,5 +1,5 @@ receivers: - otlp: + otlp: # Receives OTLP data (traces and metrics) from Gate protocols: grpc: endpoint: 0.0.0.0:4317 @@ -18,12 +18,11 @@ processors: exporters: otlp: - endpoint: tempo:9095 + endpoint: tempo:4317 tls: insecure: true prometheus: endpoint: 0.0.0.0:8889 - namespace: otel send_timestamps: true metric_expiration: 180m resource_to_telemetry_conversion: diff --git a/.web/docs/guide/otel/self-hosted/otel-stack-configs/otel-collector-config-push.yaml b/.web/docs/guide/otel/self-hosted/otel-stack-configs/otel-collector-config-push.yaml new file mode 100644 index 00000000..d56d1217 --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/otel-stack-configs/otel-collector-config-push.yaml @@ -0,0 +1,37 @@ +receivers: + otlp: # Receives OTLP data (traces and metrics) from Gate + protocols: + grpc: + endpoint: 0.0.0.0:4317 + http: + endpoint: 0.0.0.0:4318 + +processors: + batch: + send_batch_size: 10000 + timeout: 10s + memory_limiter: + check_interval: 1s + limit_mib: 1000 + spike_limit_mib: 200 + +exporters: + otlp: # For traces to Tempo + endpoint: tempo:4317 # Tempo's OTLP gRPC endpoint + tls: + insecure: true + prometheusremotewrite: + endpoint: 'http://prometheus:9090/api/v1/write' # Prometheus remote_write endpoint + tls: + insecure: true # Assuming HTTP for local setup + +service: + pipelines: + traces: + receivers: [otlp] + processors: [memory_limiter, batch] + exporters: [otlp] + metrics: + receivers: [otlp] + processors: [memory_limiter, batch] + exporters: [prometheusremotewrite] diff --git a/.web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus.yml b/.web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus-config-pull.yml similarity index 87% rename from .web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus.yml rename to .web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus-config-pull.yml index 63edfc57..64795af5 100644 --- a/.web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus.yml +++ b/.web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus-config-pull.yml @@ -9,7 +9,7 @@ scrape_configs: - job_name: 'otel-collector' scrape_interval: 10s static_configs: - - targets: ['otel-collector:8889'] + - targets: ['otel-collector:8889'] # This is scraped by Prometheus metric_relabel_configs: # Convert duration_seconds to latency for Tempo compatibility - source_labels: [__name__] diff --git a/.web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus-config-push.yml b/.web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus-config-push.yml new file mode 100644 index 00000000..76400c10 --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/otel-stack-configs/prometheus-config-push.yml @@ -0,0 +1,19 @@ +global: + scrape_interval: 15s + +# The remote write receiver is enabled via the --web.enable-remote-write-receiver command-line flag. +# No specific configuration for it is needed in this file if only that flag is used. + +scrape_configs: + - job_name: 'prometheus' # Scrapes Prometheus itself + static_configs: + - targets: ['localhost:9090'] + + # No need to scrape otel-collector directly for metrics pushed to remote_write + # However, you might keep other scrape jobs or a job for the collector's own metrics if needed. + # For this example, we focus on metrics coming via remote_write. + # If the collector also exposes its internal metrics (e.g. on :8888/metrics by default), + # you could add a job for that: + # - job_name: 'otel-collector-internal' + # static_configs: + # - targets: ['otel-collector:8888'] # Default port for collector's own metrics diff --git a/pkg/internal/otelutil/otel.go b/pkg/internal/otelutil/otel.go index 8c25265b..070f0bf7 100644 --- a/pkg/internal/otelutil/otel.go +++ b/pkg/internal/otelutil/otel.go @@ -13,25 +13,42 @@ import ( // Init initializes the OpenTelemetry SDK with the OTLP exporter and the corresponding trace and meter providers. // It also starts an HTTP server for Prometheus metrics. func Init(ctx context.Context) (clean func(), err error) { - fmt.Println(os.Getenv("OTEL_EXPORTER_OTLP_TRACES_INSECURE")) // default service name serviceName := os.Getenv("OTEL_SERVICE_NAME") if serviceName == "" { serviceName = "gate" } + log := logr.FromContextOrDiscard(ctx).WithName("otel") + otelShutdown, err := otelconfig.ConfigureOpenTelemetry( otelconfig.WithServiceName(serviceName), otelconfig.WithServiceVersion(version.String()), + otelconfig.WithLogger(&logger{log}), + otelconfig.WithMetricsEnabled(os.Getenv("OTEL_METRICS_ENABLED") == "true"), + otelconfig.WithTracesEnabled(os.Getenv("OTEL_TRACES_ENABLED") == "true"), ) if err != nil { return nil, err } return func() { - log := logr.FromContextOrDiscard(ctx).WithName("otel") log.Info("shutting down OpenTelemetry, trying to push remaining telemetry data...") otelShutdown() log.Info("OpenTelemetry shutdown complete") }, nil } + +type logger struct { + logr.Logger +} + +var _ otelconfig.Logger = &logger{} + +func (l *logger) Debugf(format string, v ...interface{}) { + l.Logger.V(1).Info(fmt.Sprintf(format, v...)) +} + +func (l *logger) Fatalf(format string, v ...interface{}) { + l.Logger.Error(fmt.Errorf(format, v...), "fatal error") +} From 65ee98fba19834d52a99d03c72feda0538da3249 Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Fri, 16 May 2025 10:31:53 +0200 Subject: [PATCH 104/107] feat(docs): update Grafana dashboard for Gate overview with new data sources and visualization options Refactored the Gate overview dashboard JSON configuration to remove deprecated inputs and enhance visualization features. Added support for Tempo as a new data source, updated panel options for better display, and ensured compatibility with the latest Grafana plugin version. Improved overall structure and clarity of the dashboard configuration. --- .../gate-overview-dashboard.json | 183 ++++++++++++------ 1 file changed, 129 insertions(+), 54 deletions(-) diff --git a/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json b/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json index 3d0f15c3..bcd0eab5 100644 --- a/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json +++ b/.web/docs/guide/otel/self-hosted/grafana-dashboards/gate-overview-dashboard.json @@ -1,28 +1,4 @@ { - "__inputs": [ - { - "name": "DS_PROMETHEUS", - "label": "Prometheus", - "description": "", - "type": "datasource", - "pluginId": "prometheus", - "pluginName": "Prometheus" - } - ], - "__requires": [ - { - "type": "grafana", - "id": "grafana", - "name": "Grafana", - "version": "8.0.0" - }, - { - "type": "datasource", - "id": "prometheus", - "name": "Prometheus", - "version": "1.0.0" - } - ], "annotations": { "list": [ { @@ -41,11 +17,9 @@ }, "editable": true, "fiscalYearStartMonth": 0, - "gnetId": null, "graphTooltip": 0, - "id": null, + "id": 1, "links": [], - "liveNow": false, "panels": [ { "datasource": { @@ -62,8 +36,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -83,16 +56,23 @@ }, "id": 2, "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", "reduceOptions": { "calcs": ["lastNotNull"], "fields": "", "values": false }, + "showPercentChange": false, "showThresholdLabels": false, "showThresholdMarkers": true, - "textMode": "auto" + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "10.2.2", + "pluginVersion": "12.0.0", "targets": [ { "datasource": { @@ -122,8 +102,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" } ] }, @@ -139,16 +118,23 @@ }, "id": 4, "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", "reduceOptions": { "calcs": ["lastNotNull"], "fields": "", "values": false }, + "showPercentChange": false, "showThresholdLabels": false, "showThresholdMarkers": true, - "textMode": "auto" + "textMode": "auto", + "wideLayout": true }, - "pluginVersion": "10.2.2", + "pluginVersion": "12.0.0", "targets": [ { "datasource": { @@ -174,11 +160,13 @@ "mode": "palette-classic" }, "custom": { + "axisBorderShow": false, "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, + "barWidthFactor": 0.6, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "opacity", @@ -187,6 +175,7 @@ "tooltip": false, "viz": false }, + "insertNulls": false, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, @@ -208,8 +197,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -236,10 +224,12 @@ "showLegend": true }, "tooltip": { + "hideZeros": false, "mode": "single", "sort": "none" } }, + "pluginVersion": "12.0.0", "targets": [ { "datasource": { @@ -265,11 +255,13 @@ "mode": "palette-classic" }, "custom": { + "axisBorderShow": false, "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, + "barWidthFactor": 0.6, "drawStyle": "line", "fillOpacity": 10, "gradientMode": "opacity", @@ -278,6 +270,7 @@ "tooltip": false, "viz": false }, + "insertNulls": false, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, @@ -299,8 +292,7 @@ "mode": "absolute", "steps": [ { - "color": "green", - "value": null + "color": "green" }, { "color": "red", @@ -327,10 +319,12 @@ "showLegend": true }, "tooltip": { + "hideZeros": false, "mode": "single", "sort": "none" } }, + "pluginVersion": "12.0.0", "targets": [ { "datasource": { @@ -344,40 +338,124 @@ ], "title": "Go Memory Usage (Alloc Bytes)", "type": "timeseries" + }, + { + "datasource": { + "type": "tempo", + "uid": "${DS_TEMPO}" + }, + "fieldConfig": { + "defaults": { + "custom": { + "align": "auto", + "cellOptions": { + "type": "auto" + }, + "inspect": false + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 24, + "x": 0, + "y": 16 + }, + "id": 9, + "options": { + "cellHeight": "sm", + "footer": { + "countRows": false, + "fields": "", + "reducer": ["sum"], + "show": false + }, + "showHeader": true + }, + "pluginVersion": "12.0.0", + "targets": [ + { + "datasource": { + "type": "tempo", + "uid": "${DS_TEMPO}" + }, + "filters": [ + { + "id": "634733e6", + "operator": "=", + "scope": "span" + } + ], + "limit": 20, + "metricsQueryType": "range", + "query": "cf87943a877ce5560ecac80822086d73", + "queryType": "traceqlSearch", + "refId": "A", + "tableType": "traces" + } + ], + "title": "Recent Traces", + "type": "table" } ], + "preload": false, "refresh": "10s", - "schemaVersion": 37, - "style": "dark", + "schemaVersion": 41, "tags": ["gate", "otel"], "templating": { "list": [ { "current": { - "selected": true, "text": "Prometheus", - "value": "Prometheus" + "value": "PBFA97CFB590B2093" }, - "hide": 0, "includeAll": false, - "label": "Datasource", - "multi": false, - "name": "datasource", + "label": "Datasource (Prometheus)", + "name": "DS_PROMETHEUS", "options": [], "query": "prometheus", - "queryValue": "", "refresh": 1, "regex": "", - "skipUrlSync": false, "type": "datasource" }, { + "current": { + "text": "Tempo", + "value": "tempo" + }, + "includeAll": false, + "label": "Datasource (Tempo)", + "name": "DS_TEMPO", + "options": [], + "query": "tempo", + "refresh": 1, + "regex": "", + "type": "datasource" + }, + { + "current": { + "text": ["All"], + "value": ["$__all"] + }, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "definition": "label_values(process_runtime_go_goroutines, job)", - "hide": 0, "includeAll": true, "label": "Job (Service Name)", "multi": true, @@ -389,8 +467,6 @@ }, "refresh": 1, "regex": "", - "skipUrlSync": false, - "sort": 0, "type": "query" } ] @@ -403,6 +479,5 @@ "timezone": "browser", "title": "Gate Overview", "uid": "gate-overview", - "version": 1, - "weekStart": "" + "version": 1 } From 31d72894a7e457e193671fab38aa5df4528632ac Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Fri, 16 May 2025 11:36:50 +0200 Subject: [PATCH 105/107] feat(docs): expand OpenTelemetry self-hosted guide with new Grafana and Jaeger configurations Added a comprehensive guide for setting up a self-hosted Grafana, Prometheus, and Tempo stack, including detailed configuration files and instructions. Introduced a new section for self-hosted Jaeger setup, clarifying how to send traces from Gate. Updated navigation links in the documentation to reflect these additions, enhancing the overall user experience and observability capabilities. --- .web/docs/.vitepress/config.ts | 34 ++++--- .web/docs/guide/otel/index.md | 11 ++- .../{index.md => grafana-stack.md} | 90 +------------------ .web/docs/guide/otel/self-hosted/jaeger.md | 78 ++++++++++++++++ 4 files changed, 110 insertions(+), 103 deletions(-) rename .web/docs/guide/otel/self-hosted/{index.md => grafana-stack.md} (67%) create mode 100644 .web/docs/guide/otel/self-hosted/jaeger.md diff --git a/.web/docs/.vitepress/config.ts b/.web/docs/.vitepress/config.ts index f1df24cc..671965ae 100644 --- a/.web/docs/.vitepress/config.ts +++ b/.web/docs/.vitepress/config.ts @@ -176,32 +176,44 @@ export default defineConfig({ text: 'Rate Limiting', link: '/guide/rate-limiting', }, + ], + }, + { + text: 'OpenTelemetry', + items: [ { - text: 'OpenTelemetry', + text: 'Overview', link: '/guide/otel/', + }, + { + text: 'Grafana', items: [ { text: 'Grafana Cloud', link: '/guide/otel/grafana-cloud/', }, { - text: 'Honeycomb', - link: '/guide/otel/honeycomb/', - }, - { - text: 'Self-hosted', + text: 'Self-hosted Grafana Stack', link: '/guide/otel/self-hosted/', }, { - text: 'Dashboards', + text: 'Grafana Dashboards', link: '/guide/otel/self-hosted/dashboard', }, - { - text: 'FAQ', - link: '/guide/otel/faq/', - }, ], }, + { + text: 'Honeycomb', + link: '/guide/otel/honeycomb/', + }, + { + text: 'Self-hosted Jaeger', + link: '/guide/otel/self-hosted/jaeger', + }, + { + text: 'FAQ', + link: '/guide/otel/faq/', + }, ], }, { diff --git a/.web/docs/guide/otel/index.md b/.web/docs/guide/otel/index.md index 78b3c1d4..df0233a8 100644 --- a/.web/docs/guide/otel/index.md +++ b/.web/docs/guide/otel/index.md @@ -1,4 +1,8 @@ -# OpenTelemetry +# OpenTelemetry with Gate Overview + +_We explain how to enable Gate's OpenTelemetry support and how to setup the various observability solutions._ + +--- OpenTelemetry is an observability framework and toolkit designed to facilitate the generation, export, and collection of telemetry data such as traces, metrics, and logs. It is an open-source and vendor-agnostic project, meaning it can be used with a broad variety of observability backends, including open-source tools like Jaeger and Prometheus, as well as commercial offerings. A major goal of OpenTelemetry is to enable easy instrumentation of applications and systems, regardless of the programming language, infrastructure, and runtime environments used. OpenTelemetry itself is not an observability backend; the storage and visualization of telemetry data are intentionally left to other tools. ([Source](https://opentelemetry.io/docs/what-is-opentelemetry/)) @@ -6,8 +10,6 @@ OpenTelemetry is an observability framework and toolkit designed to facilitate t Gate utilizes OpenTelemetry for its observability capabilities. For configuration, Gate leverages the [otel-config-go](https://github.com/honeycombio/otel-config-go) library, which offers a straightforward method to set up tracing and metrics collection via [environment variables](#configuration). ::: -# Start Generation Here - ![OpenTelemetry Architecture](https://mermaid.ink/svg/pako:eNp9kl1vgjAUhv9Kc65cgoYvGXCxRNF4o9FNsouJFx1UbEZbUiCZGv_7CrhJ1KxX7XPe856e9pwgFgkBH1KJ8z2av0UcqVVUny2IYJTnGY1xSQWPoI3Wa7SZ4ZJsW0B4EvG7zJBkhJFSHlAgsozEtxbjzTIn_E4l5L-uC8Gp0lCeojGOv5So6JoGmwhmEu8wx2hBGZWot1DuNC6eIthedZOOLiQsF6gXShyTjuxx_XdaVDijx7sXmXYcl-v1I5sR6vfRMpyv0LXrfv8FjdvwuA5fbtvwoMPb2zV40uKgxisp2Ou8wdMWT27UU9CAEckwTdQ_n2pRBOVelY_AV9uMpvuybuSshLgqxfrAY_BLWRENpKjSPfg7nBXqVOWJ-vQJxeox2B_NMf8Qgv2mpLIudElXzRMZiIqX4FtOowX_BN_ge87AdoaGZViOZ1qO_azBAXzbGHiOaerPumXZpqsbw7MGx8ZdH7i6Z1i27jiGbruupwFJ6lFYtBPcDPL5B1Gd2L4) ## Configuration @@ -60,7 +62,8 @@ You can use various solutions to collect and visualize OpenTelemetry data. Here - [Grafana Cloud](/guide/otel/grafana-cloud/) - Fully managed observability platform with support for metrics, logs, and traces - [Honeycomb](/guide/otel/honeycomb/) - Observability platform designed for debugging complex systems -- [Self-hosted](/guide/otel/self-hosted/) - Run your own OpenTelemetry collector and visualize data with Grafana +- [Self-hosted Grafana Stack](/guide/otel/self-hosted/grafana-stack/) - Run your own OpenTelemetry collector and visualize data with Grafana +- [Self-hosted Jaeger](/guide/otel/self-hosted/jaeger/) - Run your own Jaeger for tracing ::: diff --git a/.web/docs/guide/otel/self-hosted/index.md b/.web/docs/guide/otel/self-hosted/grafana-stack.md similarity index 67% rename from .web/docs/guide/otel/self-hosted/index.md rename to .web/docs/guide/otel/self-hosted/grafana-stack.md index acd5745c..6d4dcebc 100644 --- a/.web/docs/guide/otel/self-hosted/index.md +++ b/.web/docs/guide/otel/self-hosted/grafana-stack.md @@ -1,13 +1,6 @@ -# Self-Hosted OpenTelemetry Solutions +# Self-Hosted Grafana, Prometheus & Tempo Stack -This guide provides instructions on how to set up self-hosted OpenTelemetry backends using Docker Compose and configure Gate to send telemetry data (traces and metrics) to them. - -We will cover two common scenarios: - -1. **Grafana Stack**: Grafana for visualization, Prometheus for metrics, and Tempo for traces. -2. **Jaeger**: All-in-one Jaeger for tracing. - -## Scenario 1: Grafana, Prometheus & Tempo +This guide provides instructions on how to set up a self-hosted Grafana, Prometheus, and Tempo stack using Docker Compose and configure Gate to send telemetry data (traces and metrics) to this stack. > **Quick Start: Get the Configs** > @@ -174,82 +167,3 @@ This architecture allows for: ### 6. Sample Gate Dashboard - ---- - -## Scenario 2: All-in-one Jaeger - -> **Quick Start: Get the Configs** -> -> To get the configuration file for this scenario: -> -> 1. Clone the repository (if you haven't already): -> ```bash -> git clone https://github.com/minekube/gate.git -> ``` -> 2. Navigate to the directory for this scenario: -> ```bash -> cd gate/.web/docs/guide/otel/self-hosted/jaeger-config -> ``` -> _(Adjust the `cd` path if you cloned into a different parent directory or are already inside the `gate` repo directory, e.g., `cd .web/docs/guide/otel/self-hosted/jaeger-config`)_ -> -> Or, [view the file directly on GitHub](https://github.com/minekube/gate/tree/master/.web/docs/guide/otel/self-hosted/jaeger-config/). - -Jaeger is a popular open-source, end-to-end distributed tracing system. The `all-in-one` image is a quick way to get started with Jaeger for development and testing. It includes the Jaeger Collector (which can receive OTLP), Agent, Query service, and UI in a single container. - -Gate can send traces directly to Jaeger using the OTLP exporter. - -### 1. Docker Compose Configuration - -Create a `docker-compose.yml` file (e.g., within the `jaeger-config` directory mentioned in the Quick Start). You can place the following content into this file and, after navigating into that directory, run `docker compose up -d`: - -::: code-group - -```yaml [docker-compose.yml] - -``` - -::: - -### 2. Configure Gate Environment Variables - -To send traces from Gate to Jaeger: - -```bash -export OTEL_EXPORTER_OTLP_ENDPOINT="http://localhost:4318" # Or IP of Docker host if Gate is external -export OTEL_EXPORTER_OTLP_PROTOCOL="http/protobuf" -export OTEL_TRACES_ENABLED="true" -export OTEL_METRICS_ENABLED="false" # Jaeger does not support metrics -# The following INSECURE flag is necessary when using an http:// endpoint for traces: -export OTEL_EXPORTER_OTLP_TRACES_INSECURE="true" -# OTEL_SERVICE_NAME is highly recommended, e.g., "gate-dev" -export OTEL_SERVICE_NAME="gate-jaeger-example" -``` - -> **Note on Insecure Connection:** As with the Tempo setup, if your `OTEL_EXPORTER_OTLP_ENDPOINT` (e.g., `http://localhost:4317`) uses an insecure `http://` connection, you **must** explicitly enable insecure connections for traces by setting `OTEL_EXPORTER_OTLP_TRACES_INSECURE="true"` as shown in the configuration example above. If also sending OTLP metrics via HTTP to Jaeger or a collector, `OTEL_EXPORTER_OTLP_METRICS_INSECURE="true"` would be needed too. -> Remember to use secure `https://` endpoints and authentication in production. - -If Gate is running as a Docker container on the same Docker network (`otel-jaeger-net`), you can use the service name: - -```bash -export OTEL_EXPORTER_OTLP_ENDPOINT="http://jaeger:4317" -``` - -Note: For this Jaeger setup, metrics collection with Prometheus is not included. Jaeger primarily focuses on tracing. If you need metrics alongside traces sent via OTLP from Gate, you would typically use an OpenTelemetry Collector that can route traces to Jaeger and simultaneously expose metrics for Prometheus (or send them to another metrics backend). - -### 3. Running Jaeger - -1. Save the `docker-compose.yml` file (e.g. as `docker-compose.yml` inside your `jaeger-config` directory). -2. Open a terminal in that directory (e.g., `jaeger-config`) and run: - ```bash - docker compose up -d - ``` -3. **Access Jaeger UI:** - - Open your browser and navigate to http://localhost:16686 - -### 4. Viewing Traces in Jaeger - -- Once Gate is running and configured to send traces to Jaeger, you should be able to see your `OTEL_SERVICE_NAME` (e.g., "gate-jaeger-example") in the "Service" dropdown in the Jaeger UI. -- Select your service and click "Find Traces" to see the collected trace data. - ---- diff --git a/.web/docs/guide/otel/self-hosted/jaeger.md b/.web/docs/guide/otel/self-hosted/jaeger.md new file mode 100644 index 00000000..a08c31f6 --- /dev/null +++ b/.web/docs/guide/otel/self-hosted/jaeger.md @@ -0,0 +1,78 @@ +# Self-Hosted Jaeger with Docker Compose + +This guide details setting up Jaeger (all-in-one) via Docker Compose for tracing with Gate. + +> **Quick Start: Get the Configs** +> +> To get the configuration file for this scenario: +> +> 1. Clone the repository (if you haven't already): +> ```bash +> git clone https://github.com/minekube/gate.git +> ``` +> 2. Navigate to the directory for this scenario: +> ```bash +> cd gate/.web/docs/guide/otel/self-hosted/jaeger-config +> ``` +> _(Adjust the `cd` path if you cloned into a different parent directory or are already inside the `gate` repo directory, e.g., `cd .web/docs/guide/otel/self-hosted/jaeger-config`)_ +> +> Or, [view the file directly on GitHub](https://github.com/minekube/gate/tree/master/.web/docs/guide/otel/self-hosted/jaeger-config/). + +Jaeger is a popular open-source, end-to-end distributed tracing system. The `all-in-one` image is a quick way to get started with Jaeger for development and testing. It includes the Jaeger Collector (which can receive OTLP), Agent, Query service, and UI in a single container. + +Gate can send traces directly to Jaeger using the OTLP exporter. + +### 1. Docker Compose Configuration + +Create a `docker-compose.yml` file (e.g., within the `jaeger-config` directory mentioned in the Quick Start). You can place the following content into this file and, after navigating into that directory, run `docker compose up -d`: + +::: code-group + +```yaml [docker-compose.yml] + +``` + +::: + +### 2. Configure Gate Environment Variables + +To send traces from Gate to Jaeger: + +```bash +export OTEL_EXPORTER_OTLP_ENDPOINT="http://localhost:4318" # Or IP of Docker host if Gate is external +export OTEL_EXPORTER_OTLP_PROTOCOL="http/protobuf" +export OTEL_TRACES_ENABLED="true" +export OTEL_METRICS_ENABLED="false" # Jaeger does not support metrics +# The following INSECURE flag is necessary when using an http:// endpoint for traces: +export OTEL_EXPORTER_OTLP_TRACES_INSECURE="true" +# OTEL_SERVICE_NAME is highly recommended, e.g., "gate-dev" +export OTEL_SERVICE_NAME="gate-jaeger-example" +``` + +> **Note on Insecure Connection:** As with the Tempo setup, if your `OTEL_EXPORTER_OTLP_ENDPOINT` (e.g., `http://localhost:4317`) uses an insecure `http://` connection, you **must** explicitly enable insecure connections for traces by setting `OTEL_EXPORTER_OTLP_TRACES_INSECURE="true"` as shown in the configuration example above. If also sending OTLP metrics via HTTP to Jaeger or a collector, `OTEL_EXPORTER_OTLP_METRICS_INSECURE="true"` would be needed too. +> Remember to use secure `https://` endpoints and authentication in production. + +If Gate is running as a Docker container on the same Docker network (`otel-jaeger-net`), you can use the service name: + +```bash +export OTEL_EXPORTER_OTLP_ENDPOINT="http://jaeger:4317" +``` + +Note: For this Jaeger setup, metrics collection with Prometheus is not included. Jaeger primarily focuses on tracing. If you need metrics alongside traces sent via OTLP from Gate, you would typically use an OpenTelemetry Collector that can route traces to Jaeger and simultaneously expose metrics for Prometheus (or send them to another metrics backend). + +### 3. Running Jaeger + +1. Save the `docker-compose.yml` file (e.g. as `docker-compose.yml` inside your `jaeger-config` directory). +2. Open a terminal in that directory (e.g., `jaeger-config`) and run: + ```bash + docker compose up -d + ``` +3. **Access Jaeger UI:** + - Open your browser and navigate to http://localhost:16686 + +### 4. Viewing Traces in Jaeger + +- Once Gate is running and configured to send traces to Jaeger, you should be able to see your `OTEL_SERVICE_NAME` (e.g., "gate-jaeger-example") in the "Service" dropdown in the Jaeger UI. +- Select your service and click "Find Traces" to see the collected trace data. + +--- From 9edcbdae94d588179da1f685c80dba2b68f17558 Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Fri, 16 May 2025 11:38:58 +0200 Subject: [PATCH 106/107] fix(docs): update links in OpenTelemetry self-hosted guide for Grafana and Jaeger Corrected the links in the OpenTelemetry self-hosted guide to point to the appropriate Markdown files for the Grafana Stack and Jaeger setup. This ensures users are directed to the correct resources for configuring their self-hosted observability solutions. --- .web/docs/.vitepress/config.ts | 2 +- .web/docs/guide/otel/index.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.web/docs/.vitepress/config.ts b/.web/docs/.vitepress/config.ts index 671965ae..8ab0460e 100644 --- a/.web/docs/.vitepress/config.ts +++ b/.web/docs/.vitepress/config.ts @@ -194,7 +194,7 @@ export default defineConfig({ }, { text: 'Self-hosted Grafana Stack', - link: '/guide/otel/self-hosted/', + link: '/guide/otel/self-hosted/grafana-stack.md', }, { text: 'Grafana Dashboards', diff --git a/.web/docs/guide/otel/index.md b/.web/docs/guide/otel/index.md index df0233a8..f3246192 100644 --- a/.web/docs/guide/otel/index.md +++ b/.web/docs/guide/otel/index.md @@ -62,8 +62,8 @@ You can use various solutions to collect and visualize OpenTelemetry data. Here - [Grafana Cloud](/guide/otel/grafana-cloud/) - Fully managed observability platform with support for metrics, logs, and traces - [Honeycomb](/guide/otel/honeycomb/) - Observability platform designed for debugging complex systems -- [Self-hosted Grafana Stack](/guide/otel/self-hosted/grafana-stack/) - Run your own OpenTelemetry collector and visualize data with Grafana -- [Self-hosted Jaeger](/guide/otel/self-hosted/jaeger/) - Run your own Jaeger for tracing +- [Self-hosted Grafana Stack](/guide/otel/self-hosted/grafana-stack.md) - Run your own OpenTelemetry collector and visualize data with Grafana +- [Self-hosted Jaeger](/guide/otel/self-hosted/jaeger.md) - Run your own Jaeger for tracing ::: From affe1b07573a5873d5b6c6f94198d5bd6fc196e0 Mon Sep 17 00:00:00 2001 From: robinbraemer Date: Fri, 16 May 2025 12:33:57 +0200 Subject: [PATCH 107/107] fix(docs): update Google Cloud product name in OpenTelemetry guide Replaced the outdated name "Google Cloud Operations Suite" with the current name "Google Cloud Observability" in the OpenTelemetry documentation. This ensures that users have the most accurate and up-to-date information regarding Google Cloud's monitoring and diagnostics services. --- .web/docs/guide/otel/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.web/docs/guide/otel/index.md b/.web/docs/guide/otel/index.md index f3246192..52fa1ffe 100644 --- a/.web/docs/guide/otel/index.md +++ b/.web/docs/guide/otel/index.md @@ -74,7 +74,7 @@ You can use various solutions to collect and visualize OpenTelemetry data. Here - [Datadog](https://www.datadog.com/) - Cloud monitoring and analytics platform - [Azure Monitor](https://azure.microsoft.com/services/monitor/) - Microsoft's cloud-native monitoring solution - [AWS X-Ray](https://aws.amazon.com/xray/) - Distributed tracing system for AWS applications -- [Google Cloud Operations Suite](https://cloud.google.com/operations) - Formerly Stackdriver, for monitoring, logging, and diagnostics +- [Google Cloud Observability](https://cloud.google.com/products/observability) - Formerly Stackdriver, for monitoring, logging, and diagnostics ### Self-Hosted Solutions

=kxwdZ{#J}x?hrM=pI78|3 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Ν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 literal 0 HcmV?d00001 diff --git a/.web/docs/guide/otel/honeycomb/trace.png b/.web/docs/guide/otel/honeycomb/trace.png new file mode 100644 index 0000000000000000000000000000000000000000..a2fc59b5e0c5bd69c2792148695a8cc75401c9c2 GIT binary patch literal 167122 zcmc$`byQr-(msqOSa5;{55bw>!5xCTyX#!K0!i$%kURv$D_aN%XmhyN;BN*-;Zz_X zAl1zT1!ctq1&L+ttc}eqjUXT>qa40+NoQJn9>q|Woh zIa30%+LCSB&J_jeuE~_0qfo{Xo26PvC`(JuOQzILaN|KX3DEP7 zuu=+Y!sp8{#rv6PX5;|WI%{eRBymO)QJm^0jr%;vOx_5LL4;SIeo&(|WhJ5{@epF81_)VLHY z-`uKGl1O-?p!cwJtk(oQH6G^qtyZGx=m9_3i}Yx95fNU{L*7T5KSoC~pWA+ban$=* zOxBD1ih%>l#qcL6B})$q(hiPaS!nt0=INdF3X0?~x;6p80XC%t`ng~uT$S&I#U>V` zAmdqc%BX%Ic}+Ij05~et~WBEdT-*{EiNO34Mq9v-Oqjcj!N_q0N7FZ$mz|+8 zhrE!;AL8Io+@z-V_BI>GTA_`NjS@Cst2o^ry9^`` zS~;@ella>JS`CfUhLT?_JGKu~FMLtQ;?HBv$9^i9xTpxgxw}DOOP@SkQ$#VrL6Q)| z_<5tELJ9D}{r-W^8~yb3^y6?mr<0X|j^po*Z6`3k_a1P#{C{-%4~f5iXn6}szV3N< zUK|i_>;Kn=|D5EvmNo!POc4J2Af14(E&rPSf5@B`!v&>w)RNL{ApHF&|5fJEhtI|f zM=;SsbBVHvX9qBmjf5y`cAF#q0BGXRnO?QIB9pGbYImZxfoG z`EQCPf_Hyw3%!iV=AH>9BrW~0-tWk(on(*ww^89BTT%I5m%!C|lH9J`_}`{|^kn9+ zzbpus+@<(}>vUS&&#oX^_Hf>-!iB`uv%W&XnA5uf5Uq?2;JXn_OZflQ zmVf+YcMYgA*{^RFtp`34i}Z41a)x;m)9w7GA$LwFbG=GpX-56l?)o`QCTmDLI2I8{?z|(hU3%yfVxUrBEx8z z^`lUnU(gSJ@NsMYAH3sFfBYpa4G)tSg#W>qBjoFk?-THeG++D?05u54#1#OT|3kD* zMwFOOc#(3?{TPJL?%;xe%kV7YWU%S`|KXX$sNYGgMps)ZMNWad_1*usZ~73W@_C2U zMam4{FqE2LPfsj}?szQ9aQwrg^;bneK|^|B+md~F;=68vIG7rOzC7>YiLdv#yNn`C zS6#JpGoyrQB0D{)6N@1MNpm=#mN`jfYyTf+amR-7eb}KTUe2+8oIL)@xgesl6)8ji z-R2B53pCIOsv%n8s-cTBAX%k>Lbd6YN)QUipUy2(V|p-uqr%~Fd+H^Z7XYU5#*eAhy%q*-wAzh0ocjHnHAn zZNTxmmck|X$zg*LPxUezs?<-mA(=wKlI#^G*~U@_3JD)uE_|=Yex@?F*xw2u$6pFdE|QOe(8$hJU|xtcMKJ&RjNR(NNhWf9`5>91Kgh=4aT^1$CZtyX zftoG8XBERa-~P~VyFnq>RA<`~9K>lc%@y*NGY1>3)--th^1NH3al#G+%A!l2o-K|R z_){IvQf(_jnn6{4T@IM=EeK7hc6w2$Bw}a?c%)TX+qA18;l6^OJZzJ|ibwrD-;<(BM~0_B|BvvqVv3v4=V@rm4#%(==O zPYk_jURlpM=T_04=tzm=JpQVmfgI+=z$SUp_9-wmZnzG_Wcf@PMP`bq!W zjpmU^`ZBjkR2()t;`;2jo4c*z;ec-(B&+B?-l#SVQ5l`Rvd5b2dE=#9lTDez;o?uK zO~tC&SV!|){C5{y8I4XSV`BysyYcA4;q@oiv$;Vypf66MfN6gvw;gvasl>cyXUbMicP9|2ydx>n12adpwU#W`poZ8)Y|NM z5pcX%FIwgTheeCS8&DI4fY~P)h(eU*c5{5OXs2*ETW${mELhA~eeF&2z+}}_rB)