Observability
In this section, we focus on adding observability features to a Hasura data connector using the Rust and TypeScript SDKs. Observability ensures we can monitor our connector's behavior in production, covering health checks, metrics, and tracing.
Health Checks
Implement the service health endpoint to perform basic sanity checks. The tutorial demonstrates a simple healthCheck
function using the TypeScript SDK to verify database connectivity.
Metrics
Learn to report metrics to the metrics endpoint. We show how to modify the tryInitState
function to include a counter
metric, tracking the number of queries executed since the connector started.
Tracing
Implement tracing using the OpenTelemetry specification. The tutorial explains how to instrument key functions with trace spans, attaching attributes like generated SQL for debugging.
Enhance your connector's observability with these features, ensuring robust monitoring and debugging capabilities in production.