SnakeBridge.Telemetry (SnakeBridge v0.11.0)
View SourceTelemetry event definitions for SnakeBridge.
This module provides instrumentation for compile-time operations including:
- Source scanning
- Python introspection
- Code generation
- Lock file verification
Event List
| Event | Measurements | Metadata |
|---|---|---|
[:snakebridge, :compile, :start] | system_time | libraries, strict |
[:snakebridge, :compile, :stop] | duration, symbols_generated, files_written | libraries, mode |
[:snakebridge, :compile, :exception] | duration | reason, stacktrace |
[:snakebridge, :compile, :scan, :stop] | duration, files_scanned, symbols_found | library, phase, details |
[:snakebridge, :compile, :introspect, :start] | system_time | library, phase, details |
[:snakebridge, :compile, :introspect, :stop] | duration, symbols_introspected, cache_hits | library, phase, details |
[:snakebridge, :compile, :generate, :stop] | duration, bytes_written, functions_generated, classes_generated | library, phase, details |
[:snakebridge, :docs, :fetch] | duration | module, function, source |
[:snakebridge, :lock, :verify] | duration | result, warnings |
[:snakebridge, :session, :cleanup] | system_time | session_id, source, reason |
Usage
# Attach handlers in your application
SnakeBridge.Telemetry.Handlers.Logger.attach()
# Compile-time events are automatically emitted during mix compile
Summary
Functions
Emits compile exception event.
Emits compile start event.
Emits compile stop event.
Emits docs fetch event.
Returns the expected metadata fields for an event.
Emits generate stop event.
Emits introspect start event.
Emits introspect stop event.
Emits lock verify event.
Emits scan stop event.
Emits session cleanup event.
Functions
Emits compile exception event.
Measurements
duration- Time in native units
Metadata
library-:allphase-:compiledetails-%{reason: term(), stacktrace: list()}
Emits compile start event.
Measurements
system_time- System time when compilation started
Metadata
library-:allphase-:compiledetails-%{libraries: [...], strict: boolean()}
@spec compile_stop( integer(), non_neg_integer(), non_neg_integer(), [atom()], :normal | :strict ) :: :ok
Emits compile stop event.
Measurements
duration- Time in native unitssymbols_generated- Number of symbols generatedfiles_written- Number of files written
Metadata
library-:allphase-:compiledetails-%{libraries: [...], mode: :normal | :strict}
Emits docs fetch event.
Measurements
duration- Time in native units
Metadata
module- Module fetchedfunction- Function namesource-:cache,:python, or:metadata
Returns the expected metadata fields for an event.
@spec generate_stop( integer(), atom(), String.t(), non_neg_integer(), non_neg_integer(), non_neg_integer() ) :: :ok
Emits generate stop event.
Measurements
duration- Time in native unitsbytes_written- Number of bytes writtenfunctions_generated- Number of functions generatedclasses_generated- Number of classes generated
Metadata
library- Library atom generatedphase-:generatedetails-%{file: String.t()}
@spec introspect_start(atom(), non_neg_integer()) :: :ok
Emits introspect start event.
Measurements
system_time- System time when introspection started
Metadata
library- Library atom being introspectedphase-:introspectdetails-%{batch_size: non_neg_integer()}
@spec introspect_stop( integer(), atom(), non_neg_integer(), non_neg_integer(), integer() ) :: :ok
Emits introspect stop event.
Measurements
duration- Time in native unitssymbols_introspected- Number of symbols introspectedcache_hits- Number of cache hits
Metadata
library- Library atom introspectedphase-:introspectdetails-%{python_time: integer()}
Emits lock verify event.
Measurements
duration- Time in native units
Metadata
result-:ok,:warning, or:errorwarnings- List of warning strings
@spec scan_stop(integer(), non_neg_integer(), non_neg_integer(), [String.t()]) :: :ok
Emits scan stop event.
Measurements
duration- Time in native unitsfiles_scanned- Number of files scannedsymbols_found- Number of symbols found
Metadata
library-:allphase-:scandetails-%{paths: [String.t()]}
Emits session cleanup event.
Measurements
system_time- System time when cleanup was triggered
Metadata
session_id- Session identifiersource-:manualor:owner_downreason- Exit reason or:manual