Skip to content

Conversation

@pan93412
Copy link
Member

  • feat: add Prometheus metrics
  • feat: implement OpenTelemetry tracing and logging
  • feat: implement tracing

Copilot AI review requested due to automatic review settings December 28, 2025 14:45
@pan93412 pan93412 self-assigned this Dec 28, 2025
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR implements comprehensive observability for SQLRunner by adding OpenTelemetry tracing and logging support, along with Prometheus metrics via Gin middleware. The implementation includes graceful shutdown handling and configurable exporters for traces and logs.

Key changes:

  • Added OpenTelemetry SDK integration with configurable exporters (console/OTLP) for both traces and logs
  • Integrated Prometheus metrics via ginprom middleware exposed at /metrics endpoint
  • Implemented graceful shutdown with signal handling for proper cleanup of telemetry resources
  • Added distributed tracing spans to request handling and SQLite query execution paths

Reviewed changes

Copilot reviewed 6 out of 7 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
otelprovider.go New file implementing OpenTelemetry SDK bootstrap with configurable trace and log exporters supporting console and OTLP protocols
main.go Migrated from standard library HTTP to Gin framework, added OpenTelemetry tracing, Prometheus metrics, graceful shutdown, and span instrumentation for request handling
lib/sqlrunner.go Added tracing spans and events to Query method for cache operations and SQLite query execution
lib/otel.go New file defining tracer instance for the sqlrunner library package
go.mod Added dependencies for Gin, ginprom, OpenTelemetry SDK, exporters, and instrumentation
go.sum Updated checksums for all new dependencies
README.md Added Observability section documenting metrics endpoint and OpenTelemetry configuration environment variables

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 6 out of 7 changed files in this pull request and generated 8 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@pan93412 pan93412 merged commit dab60cd into main Dec 28, 2025
5 checks passed
@pan93412 pan93412 deleted the observability branch December 28, 2025 17:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants