Expand description
The crust of the OpenTelemetry metrics SDK.
§Configuration
The metrics SDK configuration is stored with each SdkMeterProvider. Configuration for Resources, views, and [ManualReader] or PeriodicReader instances can be specified.
§Example
use opentelemetry::global;
use opentelemetry::KeyValue;
use opentelemetry_sdk::{metrics::SdkMeterProvider, Resource};
// Generate SDK configuration, resource, views, etc
let resource = Resource::builder().build(); // default attributes about the current process
// Create a meter provider with the desired config
let meter_provider = SdkMeterProvider::builder().with_resource(resource).build();
global::set_meter_provider(meter_provider.clone());
// Use the meter provider to create meter instances
let meter = global::meter("my_app");
// Create instruments scoped to the meter
let counter = meter
    .u64_counter("power_consumption")
    .with_unit("kWh")
    .build();
// use instruments to record measurements
counter.add(10, &[KeyValue::new("rate", "standard")]);
// shutdown the provider at the end of the application to ensure any metrics not yet
// exported are flushed.
meter_provider.shutdown().unwrap();Re-exports§
pub use in_memory_exporter::InMemoryMetricExporter;pub use in_memory_exporter::InMemoryMetricExporterBuilder;
Modules§
- data
 - Types for delivery of pre-aggregated metric time series data.
 - exporter
 - Interfaces for exporting metrics
 - in_
memory_ exporter  - In-Memory metric exporter for testing purpose.
 
Structs§
- Instrument
 - Describes the properties of an instrument at creation, used for filtering in
views. This is utilized in the 
with_viewmethods onMeterProviderBuilderto customize metric output. - Meter
Provider Builder  - Configuration options for a MeterProvider.
 - Periodic
Reader  - A 
MetricReaderthat periodically collects and exports metrics at a configurable interval. - Periodic
Reader Builder  - Configuration options for PeriodicReader.
 - SdkMeter
Provider  - Handles the creation and coordination of Meters.
 - Stream
 - Describes the stream of data an instrument produces. Used in 
with_viewmethods onMeterProviderBuilderto customize the metric output. - Stream
Builder  - A builder for creating Stream objects.
 
Enums§
- Instrument
Kind  - The identifier of a group of instruments that all perform the same function.
 - Temporality
 - Defines the window that an aggregation was calculated over.