Skip to content

Commit

Permalink
test: fix and enable doctests (#2730)
Browse files Browse the repository at this point in the history
  • Loading branch information
gruebel authored Feb 28, 2025
1 parent 91ae096 commit d581ae1
Show file tree
Hide file tree
Showing 15 changed files with 50 additions and 52 deletions.
12 changes: 6 additions & 6 deletions opentelemetry-appender-log/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,12 @@
//!
//! ```
//! # #[tokio::main] async fn main() {
//! # use opentelemetry_sdk::logs::{BatchLogProcessor, LoggerProvider};
//! # use opentelemetry_sdk::logs::{BatchLogProcessor, SdkLoggerProvider};
//! # use opentelemetry_sdk::runtime;
//! let exporter = opentelemetry_stdout::LogExporter::default();
//!
//! let logger_provider = LoggerProvider::builder()
//! .with_log_processor(BatchLogProcessor::builder(exporter, runtime::Tokio).build())
//! let logger_provider = SdkLoggerProvider::builder()
//! .with_log_processor(BatchLogProcessor::builder(exporter).build())
//! .build();
//! # }
//! ```
Expand All @@ -26,12 +26,12 @@
//!
//! ```
//! # #[tokio::main] async fn main() {
//! # use opentelemetry_sdk::logs::{BatchLogProcessor, LoggerProvider};
//! # use opentelemetry_sdk::logs::{BatchLogProcessor, SdkLoggerProvider};
//! # use opentelemetry_sdk::runtime;
//! # use opentelemetry_appender_log::OpenTelemetryLogBridge;
//! # let exporter = opentelemetry_stdout::LogExporter::default();
//! # let logger_provider = LoggerProvider::builder()
//! # .with_log_processor(BatchLogProcessor::builder(exporter, runtime::Tokio).build())
//! # let logger_provider = SdkLoggerProvider::builder()
//! # .with_log_processor(BatchLogProcessor::builder(exporter).build())
//! # .build();
//! let otel_log_appender = OpenTelemetryLogBridge::new(&logger_provider);
//!
Expand Down
4 changes: 2 additions & 2 deletions opentelemetry-otlp/src/exporter/http/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -57,12 +57,12 @@ pub struct HttpConfig {
///
/// ## Examples
///
/// ```
/// ```no_run
/// # #[cfg(feature="metrics")]
/// use opentelemetry_sdk::metrics::Temporality;
///
/// # fn main() -> Result<(), Box<dyn std::error::Error>> {
/// // Create a span exporter you can use to when configuring tracer providers
/// // Create a span exporter you can use when configuring tracer providers
/// # #[cfg(feature="trace")]
/// let span_exporter = opentelemetry_otlp::SpanExporter::builder().with_http().build()?;
///
Expand Down
2 changes: 1 addition & 1 deletion opentelemetry-sdk/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
//! let exporter = new_exporter();
//!
//! // Create a new trace pipeline that prints to stdout
//! let provider = TracerProvider::builder()
//! let provider = SdkTracerProvider::builder()
//! .with_simple_exporter(exporter)
//! .build();
//! let tracer = provider.tracer("readme_example");
Expand Down
4 changes: 2 additions & 2 deletions opentelemetry-sdk/src/logs/batch_log_processor.rs
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ type LogsData = Box<(SdkLogRecord, InstrumentationScope)>;
/// ### Using a BatchLogProcessor:
///
/// ```rust
/// use opentelemetry_sdk::logs::{BatchLogProcessor, BatchConfigBuilder, LoggerProvider};
/// use opentelemetry_sdk::logs::{BatchLogProcessor, BatchConfigBuilder, SdkLoggerProvider};
/// use opentelemetry::global;
/// use std::time::Duration;
/// use opentelemetry_sdk::logs::InMemoryLogExporter;
Expand All @@ -123,7 +123,7 @@ type LogsData = Box<(SdkLogRecord, InstrumentationScope)>;
/// )
/// .build();
///
/// let provider = LoggerProvider::builder()
/// let provider = SdkLoggerProvider::builder()
/// .with_log_processor(processor)
/// .build();
///
Expand Down
8 changes: 4 additions & 4 deletions opentelemetry-sdk/src/logs/in_memory_exporter.rs
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ type LogResult<T> = Result<T, OTelSdkError>;
///
/// # Example
/// ```no_run
///# use opentelemetry_sdk::logs::{BatchLogProcessor, LoggerProvider};
///# use opentelemetry_sdk::logs::{BatchLogProcessor, SdkLoggerProvider};
///# use opentelemetry_sdk::runtime;
///# use opentelemetry_sdk::logs::InMemoryLogExporter;
///
Expand All @@ -26,7 +26,7 @@ type LogResult<T> = Result<T, OTelSdkError>;
/// // Create an InMemoryLogExporter
/// let exporter: InMemoryLogExporter = InMemoryLogExporter::default();
/// //Create a LoggerProvider and register the exporter
/// let logger_provider = LoggerProvider::builder()
/// let logger_provider = SdkLoggerProvider::builder()
/// .with_log_processor(BatchLogProcessor::builder(exporter.clone()).build())
/// .build();
/// // Setup Log Appenders and emit logs. (Not shown here)
Expand Down Expand Up @@ -78,15 +78,15 @@ pub struct LogDataWithResource {
///
/// ```no_run
///# use opentelemetry_sdk::logs::{InMemoryLogExporter, InMemoryLogExporterBuilder};
///# use opentelemetry_sdk::logs::{BatchLogProcessor, LoggerProvider};
///# use opentelemetry_sdk::logs::{BatchLogProcessor, SdkLoggerProvider};
///# use opentelemetry_sdk::runtime;
///
///# #[tokio::main]
///# async fn main() {
/// //Create an InMemoryLogExporter
/// let exporter: InMemoryLogExporter = InMemoryLogExporterBuilder::default().build();
/// //Create a LoggerProvider and register the exporter
/// let logger_provider = LoggerProvider::builder()
/// let logger_provider = SdkLoggerProvider::builder()
/// .with_log_processor(BatchLogProcessor::builder(exporter.clone()).build())
/// .build();
/// // Setup Log Appenders and emit logs. (Not shown here)
Expand Down
4 changes: 2 additions & 2 deletions opentelemetry-sdk/src/logs/simple_log_processor.rs
Original file line number Diff line number Diff line change
Expand Up @@ -47,12 +47,12 @@ use std::sync::Mutex;
/// ### Using a SimpleLogProcessor
///
/// ```rust
/// use opentelemetry_sdk::logs::{SimpleLogProcessor, LoggerProvider, LogExporter};
/// use opentelemetry_sdk::logs::{SimpleLogProcessor, SdkLoggerProvider, LogExporter};
/// use opentelemetry::global;
/// use opentelemetry_sdk::logs::InMemoryLogExporter;
///
/// let exporter = InMemoryLogExporter::default(); // Replace with an actual exporter
/// let provider = LoggerProvider::builder()
/// let provider = SdkLoggerProvider::builder()
/// .with_simple_exporter(exporter)
/// .build();
///
Expand Down
11 changes: 4 additions & 7 deletions opentelemetry-sdk/src/trace/in_memory_exporter.rs
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,12 @@ use std::sync::{Arc, Mutex};
///# use opentelemetry_sdk::propagation::TraceContextPropagator;
///# use opentelemetry_sdk::runtime;
///# use opentelemetry_sdk::trace::InMemorySpanExporterBuilder;
///# use opentelemetry_sdk::trace::{BatchSpanProcessor, TracerProvider};
///# use opentelemetry_sdk::trace::{BatchSpanProcessor, SdkTracerProvider};
///
///# #[tokio::main]
///# async fn main() {
/// let exporter = InMemorySpanExporterBuilder::new().build();
/// let provider = TracerProvider::builder()
/// let provider = SdkTracerProvider::builder()
/// .with_span_processor(BatchSpanProcessor::builder(exporter.clone()).build())
/// .build();
///
Expand All @@ -37,11 +37,8 @@ use std::sync::{Arc, Mutex};
/// cx.span().add_event("handling this...", Vec::new());
/// cx.span().end();
///
/// let results = provider.force_flush();
/// for result in results {
/// if let Err(e) = result {
/// println!("{:?}", e)
/// }
/// if let Err(e) = provider.force_flush() {
/// println!("{:?}", e)
/// }
/// let spans = exporter.get_finished_spans().unwrap();
/// for span in spans {
Expand Down
14 changes: 6 additions & 8 deletions opentelemetry-sdk/src/trace/provider.rs
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,8 @@ use crate::error::{OTelSdkError, OTelSdkResult};
/// use opentelemetry_sdk::trace::SdkTracerProvider;
/// use opentelemetry::trace::Tracer;
///
/// fn init_tracing() -> TracerProvider {
/// let provider = TracerProvider::default();
/// fn init_tracing() -> SdkTracerProvider {
/// let provider = SdkTracerProvider::default();
///
/// // Set the provider to be used globally
/// let _ = global::set_tracer_provider(provider.clone());
Expand Down Expand Up @@ -198,8 +198,8 @@ impl SdkTracerProvider {
/// use opentelemetry::global;
/// use opentelemetry_sdk::trace::SdkTracerProvider;
///
/// fn init_tracing() -> TracerProvider {
/// let provider = TracerProvider::default();
/// fn init_tracing() -> SdkTracerProvider {
/// let provider = SdkTracerProvider::default();
///
/// // Set provider to be used as global tracer provider
/// let _ = global::set_tracer_provider(provider.clone());
Expand All @@ -213,10 +213,8 @@ impl SdkTracerProvider {
/// // create spans..
///
/// // force all spans to flush
/// for result in provider.force_flush() {
/// if let Err(err) = result {
/// // .. handle flush error
/// }
/// if let Err(err) = provider.force_flush() {
/// // .. handle flush error
/// }
///
/// // create more spans..
Expand Down
4 changes: 2 additions & 2 deletions opentelemetry-sdk/src/trace/span_processor.rs
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,7 @@ impl<T: SpanExporter> SpanProcessor for SimpleSpanProcessor<T> {
/// ```rust
/// use opentelemetry::global;
/// use opentelemetry_sdk::{
/// trace::{BatchSpanProcessor, BatchConfigBuilder, TracerProvider},
/// trace::{BatchSpanProcessor, BatchConfigBuilder, SdkTracerProvider},
/// runtime,
/// testing::trace::NoopSpanExporter,
/// };
Expand All @@ -217,7 +217,7 @@ impl<T: SpanExporter> SpanProcessor for SimpleSpanProcessor<T> {
/// .build();
///
/// // Step 3: Set up a TracerProvider with the configured processor.
/// let provider = TracerProvider::builder()
/// let provider = SdkTracerProvider::builder()
/// .with_span_processor(batch_processor)
/// .build();
/// global::set_tracer_provider(provider.clone());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ use std::sync::Arc;
/// .build();
///
/// // Then use the `with_batch_exporter` method to have the provider export spans in batches.
/// let provider = trace::TracerProvider::builder()
/// let provider = trace::SdkTracerProvider::builder()
/// .with_span_processor(batch)
/// .build();
///
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,11 @@
//!
//! ```rust
//! use opentelemetry::KeyValue;
//! use opentelemetry_sdk::{trace::{config, TracerProvider}, Resource};
//! use opentelemetry_sdk::{trace::{config, SdkTracerProvider}, Resource};
//! use opentelemetry_semantic_conventions as semconv;
//!
//! let _tracer = TracerProvider::builder()
//! .with_config(config().with_resource(Resource::builder_empty().with_service_name("my-service").build()))
//! let _tracer = SdkTracerProvider::builder()
//! .with_resource(Resource::builder_empty().with_service_name("my-service").build())
//! .build();
//! ```

Expand Down
6 changes: 3 additions & 3 deletions opentelemetry-semantic-conventions/src/resource.rs
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,11 @@
//!
//! ```rust
//! use opentelemetry::KeyValue;
//! use opentelemetry_sdk::{trace::{config, TracerProvider}, Resource};
//! use opentelemetry_sdk::{trace::{config, SdkTracerProvider}, Resource};
//! use opentelemetry_semantic_conventions as semconv;
//!
//! let _tracer = TracerProvider::builder()
//! .with_config(config().with_resource(Resource::builder_empty().with_service_name("my-service").build()))
//! let _tracer = SdkTracerProvider::builder()
//! .with_resource(Resource::builder_empty().with_service_name("my-service").build())
//! .build();
//! ```
Expand Down
12 changes: 6 additions & 6 deletions opentelemetry-stdout/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -17,17 +17,17 @@
//! # #[cfg(all(feature = "metrics", feature = "trace", feature = "logs"))]
//! {
//! use opentelemetry::metrics::MeterProvider;
//! use opentelemetry::trace::{Span, Tracer, TracerProvider};
//! use opentelemetry::trace::{Span, Tracer};
//! use opentelemetry::{Context, KeyValue};
//!
//! use opentelemetry_sdk::metrics::{SdkMeterProvider, PeriodicReader};
//! use opentelemetry_sdk::trace::SdkTracerProvider;
//!
//! use opentelemetry_sdk::logs::LoggerProvider;
//! use opentelemetry_sdk::logs::SdkLoggerProvider;
//!
//! fn init_trace() -> TracerProvider {
//! fn init_trace() -> SdkTracerProvider {
//! let exporter = opentelemetry_stdout::SpanExporter::default();
//! TracerProvider::builder()
//! SdkTracerProvider::builder()
//! .with_simple_exporter(exporter)
//! .build()
//! }
Expand All @@ -37,9 +37,9 @@
//! SdkMeterProvider::builder().with_periodic_exporter(exporter).build()
//! }
//!
//! fn init_logs() -> LoggerProvider {
//! fn init_logs() -> SdkLoggerProvider {
//! let exporter = opentelemetry_stdout::LogExporter::default();
//! LoggerProvider::builder()
//! SdkLoggerProvider::builder()
//! .with_simple_exporter(exporter)
//! .build()
//! }
Expand Down
10 changes: 5 additions & 5 deletions opentelemetry-zipkin/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@
//!
//! ```no_run
//! use opentelemetry::global;
//! use opentelemetry::trace::{Tracer, TraceError};
//! use opentelemetry_sdk::{trace::SdkTracerProvider, Resource};
//! use opentelemetry::trace::Tracer;
//! use opentelemetry_sdk::{trace::{SdkTracerProvider, TraceError}, Resource};
//! use opentelemetry_zipkin::ZipkinExporter;
//!
//! fn main() -> Result<(), TraceError> {
Expand Down Expand Up @@ -70,7 +70,7 @@
//! };
//! use opentelemetry_zipkin::ZipkinExporter;
//!
//! fn main() -> Result<(), opentelemetry::trace::TraceError> {
//! fn main() -> Result<(), opentelemetry_sdk::trace::TraceError> {
//! let exporter = ZipkinExporter::builder()
//! .build()?;
//!
Expand Down Expand Up @@ -113,8 +113,8 @@
//!
//!
//! ```no_run
//! use opentelemetry::{global, InstrumentationScope, KeyValue, trace::{Tracer, TraceError}};
//! use opentelemetry_sdk::{trace::{self, RandomIdGenerator, Sampler}, Resource};
//! use opentelemetry::{global, InstrumentationScope, KeyValue, trace::Tracer};
//! use opentelemetry_sdk::{trace::{self, RandomIdGenerator, Sampler, TraceError}, Resource};
//! use opentelemetry_http::{HttpClient, HttpError};
//! use opentelemetry_zipkin::{Error as ZipkinError, ZipkinExporter};
//! use async_trait::async_trait;
Expand Down
3 changes: 3 additions & 0 deletions scripts/test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ set -eu
echo "Running tests for all packages in workspace with --all-features"
cargo test --workspace --all-features --lib

echo "Running doctests for all packages in workspace with --all-features"
cargo test --workspace --all-features --doc --exclude opentelemetry-proto

# See https://github.com/rust-lang/cargo/issues/5364
echo "Running tests for opentelemetry package with --no-default-features"
cargo test --manifest-path=opentelemetry/Cargo.toml --no-default-features --lib
Expand Down

0 comments on commit d581ae1

Please sign in to comment.