Extension: omni.metrics.core-0.0.3

Documentation Generated: Sep 22, 2025

Overview#

omni.metrics.core is an extension that enables OpenTelemetry metrics functionality within the Omniverse Kit framework through the carb.metrics plugin. It provides a standardized way for Kit extensions and carb plugins to emit, collect, and export metrics data using the OpenTelemetry standard.

This extension serves as a bridge between the Kit framework and the OpenTelemetry ecosystem, allowing applications to monitor performance, track resource usage, and collect telemetry data for analysis and observability purposes.

Key Features#

  • Provides access to OpenTelemetry metrics capabilities through the carb.metrics plugin

  • Offers a Kit-native approach to metrics collection and reporting

  • Mimics the carb.stats.IStats interface for familiar integration

  • Supports various metric types including counters, gauges, and histograms

  • Configurable through environment variables and carb settings

  • Enables integration with industry-standard observability tools

Integration with OpenTelemetry#

The extension integrates with the OpenTelemetry framework, which is an industry-standard, vendor-neutral set of tools, APIs, and SDKs used to instrument, generate, collect, and export telemetry data. This integration allows metrics to be:

  • Collected in a standardized format

  • Exported to various backends including Prometheus, Grafana, and other observability platforms

  • Analyzed alongside traces and logs for comprehensive system monitoring

  • Correlated across distributed systems for end-to-end visibility

Use Cases#

  • Performance monitoring of Kit applications

  • Resource utilization tracking (CPU, GPU, memory)

  • Operation timing and latency measurements

  • Error rate monitoring

  • Custom application metrics for specific functionality

  • Integration with observability platforms for comprehensive monitoring

Usage Example#

To use metrics in your code with the carb.metrics interface:

# Python example
import carb.metrics

# Get the metrics interface
metrics = carb.metrics.get_metrics()

# Create a counter metric
counter = metrics.create_counter("my_counter", "A sample counter", "count")

# Increment the counter
counter.add(1)