Metrics

Connector Metrics

These metrics track data flow and performance through the ETL pipeline from source to target systems.

CategoryMetric NameDescriptionUnitType
Datarows.inNumber of rows read1Counter (u64)
rows.outNumber of rows written1Counter (u64)
bytes.inNumber of bytes readByCounter (u64)
bytes.outNumber of bytes writtenByCounter (u64)
Latencylatency.totalLatency from source event timestamp to event being processed & written to target. End-to-end latencynsHistogram (u64)
latency.inLatency from source event timestamp to when the event was receivednsHistogram (u64)
latency.outLatency from when the event was received to when event written to targetnsHistogram (u64)
latency.in.processLatency to process source eventnsHistogram (u64)
latency.out.processLatency to process event before writing to targetnsHistogram (u64)
Buffer
↳ Databuffer.rows.inNumber of rows read from the buffer1Counter (u64)
buffer.rows.outNumber of rows written to the buffer1Counter (u64)
buffer.bytes.inNumber of bytes read from the bufferByCounter (u64)
buffer.bytes.outNumber of bytes written to the bufferByCounter (u64)
↳ Latencybuffer.latency.totalLatency from source event timestamp to event being processed & written to buffernsHistogram (u64)
buffer.latency.inLatency from source event timestamp to when the event was received by buffernsHistogram (u64)
buffer.latency.outLatency from when the event was received to when event written to buffernsHistogram (u64)
buffer.latency.in.processLatency to process the event was received by buffernsHistogram (u64)
buffer.latency.out.processLatency to process event before writing to buffernsHistogram (u64)
↳ Object Storebuffer.object_store.files.force-flushNumber of times buffer forced a flush (on no writes)1Counter (u64)
buffer.object_store.files.abortFailed file operations due to errors1Counter (u64)
buffer.object_store.files.createSuccessfully created new file in object storage1Counter (u64)
buffer.object_store.files.deleteFiles removed from object storage1Counter (u64)
buffer.object_store.files.getFiles retrieved from object storage1Counter (u64)
Snapshot Progressprogress.snapshotCurrent progress of initial snapshot load (0.0 to 100.0)%Gauge (f64)
buffer.progress.snapshotCurrent progress of buffer snapshot operations (0.0 to 100.0)%Gauge (f64)

Process Metrics

System-level metrics for the Supermetal process following OpenTelemetry semantic conventions. These help monitor resource usage and system health.

CategoryMetric NameDescriptionUnitType
Process CPUprocess.cpu.timeTotal CPU time consumed by the process since startupsCounter (u64)
process.cpu.utilizationCurrent CPU usage as ratio (0.0=idle, 1.0=fully utilized)1Gauge (f64)
Process Memoryprocess.memory.usagePhysical memory (RSS) currently used by the processByUpDownCounter (i64)
process.memory.virtualVirtual memory currently allocated by the processByUpDownCounter (i64)
Process Resourcesprocess.open_file_descriptor_countCurrently open file descriptors (monitor for fd leaks)1UpDownCounter (i64)
process.thread_countCurrently active threads (monitor for thread leaks)1UpDownCounter (i64)
process.disk.ioTotal disk I/O bytes with direction label (read/write)ByCounter (u64)

Runtime Metrics

Tokio async runtime metrics providing insights into task scheduling, worker thread utilization, and async I/O performance.

CategoryMetric NameDescriptionUnitType
Runtime Tasksruntime.global_queue_depthTasks waiting in global queue (high values indicate backpressure)1Gauge (u64)
runtime.alive_tasksCurrently executing async tasks1Gauge (u64)
runtime.spawned_tasksTotal async tasks created since startup1Counter (u64)
runtime.budget_forced_yield_countTasks forced to yield due to execution time limits (indicates CPU-bound tasks)1Counter (u64)
Runtime Workersruntime.num_workersTotal worker threads in the runtime thread pool1Gauge (u64)
runtime.blocking_queue_depthTasks waiting for blocking thread pool1Gauge (u64)
runtime.num_blocking_threadsCurrently active blocking threads1Gauge (u64)
runtime.num_idle_blocking_threadsIdle blocking threads available for work1Gauge (u64)
runtime.io_driver_ready_countI/O events processed by the runtime (network/file operations)1Counter (u64)
Worker Metrics (opt-in)runtime.worker_local_queue_depthTasks in each worker's local queue (set ENABLE_WORKER_METRICS=1)1Gauge (u64)
runtime.worker_local_schedule_countTasks scheduled locally per worker (indicates work distribution)1Counter (u64)
runtime.worker_mean_poll_timeAverage task execution time per workernsGauge (u64)
runtime.worker_noop_countIdle polls per worker (high values indicate low workload)1Counter (u64)
runtime.worker_overflow_countLocal queue overflows per worker (tasks moved to global queue)1Counter (u64)
runtime.worker_park_countTimes worker thread went idle waiting for tasks1Counter (u64)
runtime.worker_poll_countTotal task polls per worker1Counter (u64)
runtime.worker_steal_countTasks stolen from other workers (indicates load balancing)1Counter (u64)
runtime.worker_steal_operationsSteal attempts per worker (successful + failed)1Counter (u64)
runtime.worker_total_busy_durationCumulative execution time per workernsCounter (u64)

Last updated on