chore(deps): update module go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp to v0.65.0#25
Conversation
Added:
- github.com/rabbitmq/amqp091-go client library
- /rabbitmq/status endpoint - connection status + consumed messages
- /rabbitmq/publish endpoint - publish messages (GET or POST)
- Background consumer goroutine for demo queue
- Prometheus metrics: epochcloud_rabbitmq_{messages_published,messages_consumed,publish_errors,connected}_total
- HTML template: RabbitMQ Demo section
Features:
- Graceful handling when RabbitMQ not configured (optional)
- Auto-ack consumer with last 10 messages stored
- Trace ID correlation in messages
- OpenTelemetry spans for all RabbitMQ operations
Env vars (optional):
- RABBITMQ_HOST, RABBITMQ_PORT, RABBITMQ_USERNAME
- RABBITMQ_PASSWORD, RABBITMQ_VHOST, RABBITMQ_URI, RABBITMQ_QUEUE
The app now runs a background connection manager that: - Retries connection with exponential backoff (1s to 30s) - Automatically reconnects when connection is lost - Uses NotifyClose to detect connection drops - Non-blocking startup (app starts immediately, connects when RabbitMQ is ready) This makes the app resilient to RabbitMQ being unavailable at startup.
When CONSUMER_MODE=true: - Only consumes messages from RabbitMQ queue - HTTP server runs minimal endpoints (/health, /metrics only) - No /rabbitmq/publish or other producer endpoints This enables: - Separate consumer pods scaled by KEDA based on queue depth - Producer pods that only publish (don't consume own messages) - True microservices pub/sub pattern demonstration
Valkey may not be ready immediately during pod startup, especially with Linkerd mTLS. Added retry logic (5 attempts, exponential backoff 1s→16s) to handle transient connection failures.
…n/net/http/otelhttp to v0.65.0
|
There was a problem hiding this comment.
Pull request overview
This PR updates the OpenTelemetry HTTP instrumentation module from v0.60.0 to v0.65.0, a minor version bump that keeps the dependency current with upstream releases.
Changes:
- Updated
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttpfrom v0.60.0 to v0.65.0
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| github.com/prometheus/client_golang v1.22.0 | ||
| github.com/rabbitmq/amqp091-go v1.10.0 | ||
| go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0 | ||
| go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.65.0 |
There was a problem hiding this comment.
The go.sum file needs to be updated to reflect the dependency version change. When updating a module version in go.mod, the corresponding checksums in go.sum must also be updated. Currently, go.sum still contains entries for v0.60.0 of this module. Please run 'go mod tidy' to update go.sum with the correct checksums for v0.65.0.
This PR contains the following updates:
v0.60.0→v0.65.0Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.