Skip to content

Commit fc86870

Browse files
authored
Merge branch 'main' into main
2 parents 8135270 + 92303b6 commit fc86870

File tree

25 files changed

+288
-187
lines changed

25 files changed

+288
-187
lines changed

.github/workflows/integration_tests.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,5 +23,7 @@ jobs:
2323
with:
2424
components: rustfmt
2525
- uses: arduino/setup-protoc@v3
26+
with:
27+
repo-token: ${{ secrets.GITHUB_TOKEN }}
2628
- name: Run integration tests
2729
run: ./scripts/integration_tests.sh

.github/workflows/pr_criterion.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,10 @@ jobs:
88
runs-on: ubuntu-latest
99
if: ${{ contains(github.event.pull_request.labels.*.name, 'performance') }}
1010
steps:
11-
- uses: actions/checkout@v3
11+
- uses: actions/checkout@v4
1212
- uses: arduino/setup-protoc@v3
13+
with:
14+
repo-token: ${{ secrets.GITHUB_TOKEN }}
1315
- uses: dtolnay/rust-toolchain@master
1416
with:
1517
toolchain: stable

.github/workflows/pr_naming.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99
runs-on: ubuntu-latest
1010
steps:
1111
- name: PR Conventional Commit Validation
12-
uses: ytanikin/[email protected].0
12+
uses: ytanikin/[email protected].1
1313
with:
1414
task_types: '["build","chore","ci","docs","feat","fix","perf","refactor","revert","test"]'
1515
add_label: 'false'

opentelemetry-appender-log/src/lib.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@
1212
//!
1313
//! ```
1414
//! # #[tokio::main] async fn main() {
15-
//! # use opentelemetry_sdk::logs::{BatchLogProcessor, LoggerProvider};
15+
//! # use opentelemetry_sdk::logs::{BatchLogProcessor, SdkLoggerProvider};
1616
//! # use opentelemetry_sdk::runtime;
1717
//! let exporter = opentelemetry_stdout::LogExporter::default();
1818
//!
19-
//! let logger_provider = LoggerProvider::builder()
20-
//! .with_log_processor(BatchLogProcessor::builder(exporter, runtime::Tokio).build())
19+
//! let logger_provider = SdkLoggerProvider::builder()
20+
//! .with_log_processor(BatchLogProcessor::builder(exporter).build())
2121
//! .build();
2222
//! # }
2323
//! ```
@@ -26,12 +26,12 @@
2626
//!
2727
//! ```
2828
//! # #[tokio::main] async fn main() {
29-
//! # use opentelemetry_sdk::logs::{BatchLogProcessor, LoggerProvider};
29+
//! # use opentelemetry_sdk::logs::{BatchLogProcessor, SdkLoggerProvider};
3030
//! # use opentelemetry_sdk::runtime;
3131
//! # use opentelemetry_appender_log::OpenTelemetryLogBridge;
3232
//! # let exporter = opentelemetry_stdout::LogExporter::default();
33-
//! # let logger_provider = LoggerProvider::builder()
34-
//! # .with_log_processor(BatchLogProcessor::builder(exporter, runtime::Tokio).build())
33+
//! # let logger_provider = SdkLoggerProvider::builder()
34+
//! # .with_log_processor(BatchLogProcessor::builder(exporter).build())
3535
//! # .build();
3636
//! let otel_log_appender = OpenTelemetryLogBridge::new(&logger_provider);
3737
//!

opentelemetry-otlp/src/exporter/http/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,12 +57,12 @@ pub struct HttpConfig {
5757
///
5858
/// ## Examples
5959
///
60-
/// ```
60+
/// ```no_run
6161
/// # #[cfg(feature="metrics")]
6262
/// use opentelemetry_sdk::metrics::Temporality;
6363
///
6464
/// # fn main() -> Result<(), Box<dyn std::error::Error>> {
65-
/// // Create a span exporter you can use to when configuring tracer providers
65+
/// // Create a span exporter you can use when configuring tracer providers
6666
/// # #[cfg(feature="trace")]
6767
/// let span_exporter = opentelemetry_otlp::SpanExporter::builder().with_http().build()?;
6868
///

opentelemetry-sdk/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
//! let exporter = new_exporter();
2121
//!
2222
//! // Create a new trace pipeline that prints to stdout
23-
//! let provider = TracerProvider::builder()
23+
//! let provider = SdkTracerProvider::builder()
2424
//! .with_simple_exporter(exporter)
2525
//! .build();
2626
//! let tracer = provider.tracer("readme_example");

opentelemetry-sdk/src/logs/batch_log_processor.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ type LogsData = Box<(SdkLogRecord, InstrumentationScope)>;
107107
/// ### Using a BatchLogProcessor:
108108
///
109109
/// ```rust
110-
/// use opentelemetry_sdk::logs::{BatchLogProcessor, BatchConfigBuilder, LoggerProvider};
110+
/// use opentelemetry_sdk::logs::{BatchLogProcessor, BatchConfigBuilder, SdkLoggerProvider};
111111
/// use opentelemetry::global;
112112
/// use std::time::Duration;
113113
/// use opentelemetry_sdk::logs::InMemoryLogExporter;
@@ -123,7 +123,7 @@ type LogsData = Box<(SdkLogRecord, InstrumentationScope)>;
123123
/// )
124124
/// .build();
125125
///
126-
/// let provider = LoggerProvider::builder()
126+
/// let provider = SdkLoggerProvider::builder()
127127
/// .with_log_processor(processor)
128128
/// .build();
129129
///

opentelemetry-sdk/src/logs/in_memory_exporter.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ type LogResult<T> = Result<T, OTelSdkError>;
1717
///
1818
/// # Example
1919
/// ```no_run
20-
///# use opentelemetry_sdk::logs::{BatchLogProcessor, LoggerProvider};
20+
///# use opentelemetry_sdk::logs::{BatchLogProcessor, SdkLoggerProvider};
2121
///# use opentelemetry_sdk::runtime;
2222
///# use opentelemetry_sdk::logs::InMemoryLogExporter;
2323
///
@@ -26,7 +26,7 @@ type LogResult<T> = Result<T, OTelSdkError>;
2626
/// // Create an InMemoryLogExporter
2727
/// let exporter: InMemoryLogExporter = InMemoryLogExporter::default();
2828
/// //Create a LoggerProvider and register the exporter
29-
/// let logger_provider = LoggerProvider::builder()
29+
/// let logger_provider = SdkLoggerProvider::builder()
3030
/// .with_log_processor(BatchLogProcessor::builder(exporter.clone()).build())
3131
/// .build();
3232
/// // Setup Log Appenders and emit logs. (Not shown here)
@@ -78,15 +78,15 @@ pub struct LogDataWithResource {
7878
///
7979
/// ```no_run
8080
///# use opentelemetry_sdk::logs::{InMemoryLogExporter, InMemoryLogExporterBuilder};
81-
///# use opentelemetry_sdk::logs::{BatchLogProcessor, LoggerProvider};
81+
///# use opentelemetry_sdk::logs::{BatchLogProcessor, SdkLoggerProvider};
8282
///# use opentelemetry_sdk::runtime;
8383
///
8484
///# #[tokio::main]
8585
///# async fn main() {
8686
/// //Create an InMemoryLogExporter
8787
/// let exporter: InMemoryLogExporter = InMemoryLogExporterBuilder::default().build();
8888
/// //Create a LoggerProvider and register the exporter
89-
/// let logger_provider = LoggerProvider::builder()
89+
/// let logger_provider = SdkLoggerProvider::builder()
9090
/// .with_log_processor(BatchLogProcessor::builder(exporter.clone()).build())
9191
/// .build();
9292
/// // Setup Log Appenders and emit logs. (Not shown here)

opentelemetry-sdk/src/logs/simple_log_processor.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,12 @@ use std::sync::Mutex;
4747
/// ### Using a SimpleLogProcessor
4848
///
4949
/// ```rust
50-
/// use opentelemetry_sdk::logs::{SimpleLogProcessor, LoggerProvider, LogExporter};
50+
/// use opentelemetry_sdk::logs::{SimpleLogProcessor, SdkLoggerProvider, LogExporter};
5151
/// use opentelemetry::global;
5252
/// use opentelemetry_sdk::logs::InMemoryLogExporter;
5353
///
5454
/// let exporter = InMemoryLogExporter::default(); // Replace with an actual exporter
55-
/// let provider = LoggerProvider::builder()
55+
/// let provider = SdkLoggerProvider::builder()
5656
/// .with_simple_exporter(exporter)
5757
/// .build();
5858
///

opentelemetry-sdk/src/metrics/meter_provider.rs

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -579,6 +579,45 @@ mod tests {
579579
meter_provider.meter_with_scope(make_scope(vec![KeyValue::new("key", "value1")]));
580580

581581
assert_eq!(meter_provider.inner.meters.lock().unwrap().len(), 1);
582+
583+
// these are identical because InstrumentScope ignores the order of attributes
584+
let _meter3 = meter_provider.meter_with_scope(make_scope(vec![
585+
KeyValue::new("key1", "value1"),
586+
KeyValue::new("key2", "value2"),
587+
]));
588+
let _meter4 = meter_provider.meter_with_scope(make_scope(vec![
589+
KeyValue::new("key2", "value2"),
590+
KeyValue::new("key1", "value1"),
591+
]));
592+
593+
assert_eq!(meter_provider.inner.meters.lock().unwrap().len(), 2);
594+
}
595+
596+
#[test]
597+
fn different_meter_different_attributes() {
598+
let meter_provider = super::SdkMeterProvider::builder().build();
599+
let make_scope = |attributes| {
600+
InstrumentationScope::builder("test.meter")
601+
.with_version("v0.1.0")
602+
.with_schema_url("http://example.com")
603+
.with_attributes(attributes)
604+
.build()
605+
};
606+
607+
let _meter1 = meter_provider.meter_with_scope(make_scope(vec![]));
608+
// _meter2 and _meter3, and _meter4 are different because attribute is case sensitive
609+
let _meter2 =
610+
meter_provider.meter_with_scope(make_scope(vec![KeyValue::new("key1", "value1")]));
611+
let _meter3 =
612+
meter_provider.meter_with_scope(make_scope(vec![KeyValue::new("Key1", "value1")]));
613+
let _meter4 =
614+
meter_provider.meter_with_scope(make_scope(vec![KeyValue::new("key1", "Value1")]));
615+
let _meter5 = meter_provider.meter_with_scope(make_scope(vec![
616+
KeyValue::new("key1", "value1"),
617+
KeyValue::new("key2", "value2"),
618+
]));
619+
620+
assert_eq!(meter_provider.inner.meters.lock().unwrap().len(), 5);
582621
}
583622

584623
#[test]

0 commit comments

Comments
 (0)