Metric definitions for SnakeBridge telemetry.
This module provides metric definitions compatible with TelemetryMetrics and reporters like TelemetryMetricsPrometheus.
Usage
# In your application with TelemetryMetricsPrometheus
TelemetryMetricsPrometheus.Core.attach(
SnakeBridge.Telemetry.Handlers.Metrics.metrics()
)Metrics
Compilation
snakebridge.compile.duration- Distribution of compilation timessnakebridge.compile.symbols_generated- Sum of symbols generatedsnakebridge.compile.total- Counter of compilations
Scanning
snakebridge.scan.duration- Distribution of scan timessnakebridge.scan.files_scanned- Sum of files scannedsnakebridge.scan.symbols_found- Sum of symbols found
Introspection
snakebridge.introspect.duration- Distribution of introspection timessnakebridge.introspect.symbols_introspected- Sum of symbols introspectedsnakebridge.introspect.cache_hits- Sum of cache hits
Generation
snakebridge.generate.duration- Distribution of generation timessnakebridge.generate.bytes_written- Sum of bytes written
Documentation
snakebridge.docs.fetch.duration- Distribution of doc fetch timessnakebridge.docs.fetch.total- Counter of doc fetches
Summary
Functions
@spec metrics() :: [struct()]
Returns a list of Telemetry.Metrics definitions.
These can be used with any TelemetryMetrics-compatible reporter.