Skip to content

Commit f656f61

Browse files
authored
Merge branch 'main' into logrecord-getters
2 parents 110404b + b8380eb commit f656f61

File tree

129 files changed

+4635
-2387
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

129 files changed

+4635
-2387
lines changed

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ jobs:
8888
strategy:
8989
matrix:
9090
os: [windows-latest, ubuntu-latest]
91-
rust: [1.70.0, 1.71.1]
91+
rust: [1.75.0]
9292
runs-on: ${{ matrix.os }}
9393
continue-on-error: true
9494
steps:

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,6 @@
55
Cargo.lock
66
/.idea/
77

8-
.cosine
8+
.cosine
9+
10+
opentelemetry-otlp/tests/integration_test/result.json

Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,12 +39,12 @@ reqwest = { version = "0.12", default-features = false }
3939
serde = { version = "1.0", default-features = false }
4040
serde_json = "1.0"
4141
temp-env = "0.3.6"
42-
thiserror = { version = "1", default-features = false }
42+
thiserror = { version = "2", default-features = false }
4343
tonic = { version = "0.12.3", default-features = false }
4444
tonic-build = "0.12"
4545
tokio = { version = "1", default-features = false }
4646
tokio-stream = "0.1"
4747
tracing = { version = "0.1", default-features = false }
4848
tracing-core = { version = "0.1", default-features = false }
4949
tracing-subscriber = { version = "0.3", default-features = false }
50-
url = { version = "2.5.2", default-features = false } #https://github.com/servo/rust-url/issues/992
50+
url = { version = "2.5", default-features = false }

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ Registry](https://opentelemetry.io/ecosystem/registry/?language=rust).
162162
## Supported Rust Versions
163163

164164
OpenTelemetry is built against the latest stable release. The minimum supported
165-
version is 1.70. The current OpenTelemetry version is not guaranteed to build
165+
version is 1.75. The current OpenTelemetry version is not guaranteed to build
166166
on Rust versions earlier than the minimum supported version.
167167

168168
The current stable Rust compiler and the three most recent minor versions

deny.toml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,5 @@ license-files = [
2929
]
3030

3131
[advisories]
32-
ignore = [
33-
# unsoundness in indirect dependencies without a safe upgrade below
34-
"RUSTSEC-2021-0145",
35-
"RUSTSEC-2019-0036"
36-
]
3732
unmaintained = "allow"
3833
yanked = "allow"

examples/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ This directory contains some examples that should help you get start crates from
77
This example uses following crates from this repo:
88

99
- opentelemetry(log)
10-
- opentelemetry-appender-log
10+
- opentelemetry-appender-tracing
1111
- opentelemetry-stdout
1212

1313
Check this example if you want to understand *how to instrument logs using opentelemetry*.

examples/logs-basic/Cargo.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ publish = false
99
opentelemetry = { path = "../../opentelemetry", features = ["logs"] }
1010
opentelemetry_sdk = { path = "../../opentelemetry-sdk", features = ["logs"] }
1111
opentelemetry-stdout = { path = "../../opentelemetry-stdout", features = ["logs"]}
12-
opentelemetry-appender-log = { path = "../../opentelemetry-appender-log", default-features = false}
12+
opentelemetry-appender-tracing = { path = "../../opentelemetry-appender-tracing", default-features = false}
1313
opentelemetry-semantic-conventions = { path = "../../opentelemetry-semantic-conventions" }
14-
log = { workspace = true }
15-
serde_json = { workspace = true }
14+
tracing = { workspace = true, features = ["std"]}
15+
tracing-subscriber = { workspace = true, features = ["registry", "std"] }

examples/logs-basic/README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
# OpenTelemetry Log Appender for log - Example
1+
# OpenTelemetry Log Appender for tracing - Example
22

3-
This example shows how to use the opentelemetry-appender-log crate, which is a
3+
This example shows how to use the opentelemetry-appender-tracing crate, which is a
44
[logging
55
appender](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/glossary.md#log-appender--bridge)
6-
that bridges logs from the [log crate](https://docs.rs/log/latest/log/) to
6+
that bridges logs from the [tracing crate](https://tracing.rs/tracing/#events) to
77
OpenTelemetry. The example setups a LoggerProvider with stdout exporter, so logs
88
are emitted to stdout.
99

1010
## Usage
1111

12-
Run the following, and Logs emitted using [log](https://docs.rs/log/latest/log/)
12+
Run the following, and Logs emitted using [tracing](https://docs.rs/tracing/latest/tracing/)
1313
will be written out to stdout.
1414

1515
```shell

examples/logs-basic/src/main.rs

Lines changed: 13 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,22 @@
1-
use log::{error, Level};
2-
use opentelemetry::KeyValue;
3-
use opentelemetry_appender_log::OpenTelemetryLogBridge;
1+
use opentelemetry_appender_tracing::layer;
42
use opentelemetry_sdk::logs::LoggerProvider;
53
use opentelemetry_sdk::Resource;
6-
use opentelemetry_semantic_conventions::resource::SERVICE_NAME;
4+
use tracing::error;
5+
use tracing_subscriber::prelude::*;
76

87
fn main() {
9-
// Setup LoggerProvider with a stdout exporter
108
let exporter = opentelemetry_stdout::LogExporter::default();
11-
let logger_provider = LoggerProvider::builder()
12-
.with_resource(Resource::new([KeyValue::new(
13-
SERVICE_NAME,
14-
"logs-basic-example",
15-
)]))
9+
let provider: LoggerProvider = LoggerProvider::builder()
10+
.with_resource(
11+
Resource::builder()
12+
.with_service_name("log-appender-tracing-example")
13+
.build(),
14+
)
1615
.with_simple_exporter(exporter)
1716
.build();
17+
let layer = layer::OpenTelemetryTracingBridge::new(&provider);
18+
tracing_subscriber::registry().with(layer).init();
1819

19-
// Setup Log Appender for the log crate.
20-
let otel_log_appender = OpenTelemetryLogBridge::new(&logger_provider);
21-
log::set_boxed_logger(Box::new(otel_log_appender)).unwrap();
22-
log::set_max_level(Level::Error.to_level_filter());
23-
24-
// Emit logs using macros from the log crate.
25-
// These logs gets piped through OpenTelemetry bridge and gets exported to stdout.
26-
error!(target: "my-target", "hello from {}. My price is {}", "apple", 2.99);
20+
error!(name: "my-event-name", target: "my-system", event_id = 20, user_name = "otel", user_email = "[email protected]", message = "This is an example message");
21+
let _ = provider.shutdown();
2722
}

examples/metrics-advanced/src/main.rs

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ use opentelemetry::KeyValue;
44
use opentelemetry_sdk::metrics::{
55
Aggregation, Instrument, PeriodicReader, SdkMeterProvider, Stream, Temporality,
66
};
7-
use opentelemetry_sdk::{runtime, Resource};
7+
use opentelemetry_sdk::Resource;
88
use std::error::Error;
99

1010
fn init_meter_provider() -> opentelemetry_sdk::metrics::SdkMeterProvider {
@@ -49,13 +49,15 @@ fn init_meter_provider() -> opentelemetry_sdk::metrics::SdkMeterProvider {
4949
.with_temporality(Temporality::Delta)
5050
.build();
5151

52-
let reader = PeriodicReader::builder(exporter, runtime::Tokio).build();
52+
let reader = PeriodicReader::builder(exporter).build();
53+
54+
let resource = Resource::builder()
55+
.with_service_name("metrics-advanced-example")
56+
.build();
57+
5358
let provider = SdkMeterProvider::builder()
5459
.with_reader(reader)
55-
.with_resource(Resource::new([KeyValue::new(
56-
"service.name",
57-
"metrics-advanced-example",
58-
)]))
60+
.with_resource(resource)
5961
.with_view(my_view_rename_and_unit)
6062
.with_view(my_view_drop_attributes)
6163
.with_view(my_view_change_aggregation)

0 commit comments

Comments
 (0)