Skip to content

Commit 57ed55e

Browse files
committed
Merge branch 'remove-logs-enabled' of github.com:lalitb/opentelemetry-rust into remove-logs-enabled
2 parents 8635865 + c3f0ca4 commit 57ed55e

File tree

3 files changed

+43
-1
lines changed

3 files changed

+43
-1
lines changed

opentelemetry-stdout/CHANGELOG.md

+1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
- Fix StatusCode in stdout exporter [#1454](https://github.com/open-telemetry/opentelemetry-rust/pull/1454)
1010
- Add missing event timestamps [#1391](https://github.com/open-telemetry/opentelemetry-rust/pull/1391)
1111
- Adjusted `chrono` features to reduce number of transitive dependencies. [#1569](https://github.com/open-telemetry/opentelemetry-rust/pull/1569)
12+
- The default feature now includes logs, metrics and trace.
1213

1314
## v0.2.0
1415

opentelemetry-stdout/Cargo.toml

+4-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ rust-version = "1.65"
1919
default = ["trace", "metrics", "logs"]
2020
trace = ["opentelemetry/trace", "opentelemetry_sdk/trace", "futures-util"]
2121
metrics = ["async-trait", "opentelemetry/metrics", "opentelemetry_sdk/metrics"]
22-
logs = ["opentelemetry/logs", "opentelemetry_sdk/logs", "async-trait", "thiserror"]
22+
logs = ["opentelemetry/logs", "opentelemetry_sdk/logs", "async-trait", "thiserror", "opentelemetry_sdk/logs_level_enabled"]
2323

2424
[dependencies]
2525
async-trait = { workspace = true, optional = true }
@@ -35,4 +35,7 @@ ordered-float = { workspace = true }
3535
[dev-dependencies]
3636
opentelemetry = { path = "../opentelemetry", features = ["metrics"] }
3737
opentelemetry_sdk = { path = "../opentelemetry-sdk", features = ["rt-tokio", "metrics"] }
38+
opentelemetry-appender-tracing = { version = "0.3.0", path = "../opentelemetry-appender-tracing"}
39+
tracing = { workspace = true, features = ["std"]}
40+
tracing-subscriber = { workspace = true, features = ["registry", "std"] }
3841
tokio = { workspace = true, features = ["full"] }

opentelemetry-stdout/examples/basic.rs

+38
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,21 @@ fn init_metrics() {
3131
global::set_meter_provider(provider);
3232
}
3333

34+
#[cfg(feature = "logs")]
35+
fn init_logs() -> opentelemetry_sdk::logs::LoggerProvider {
36+
use opentelemetry_appender_tracing::layer;
37+
use opentelemetry_sdk::logs::LoggerProvider;
38+
use tracing_subscriber::prelude::*;
39+
40+
let exporter = opentelemetry_stdout::LogExporter::default();
41+
let provider: LoggerProvider = LoggerProvider::builder()
42+
.with_simple_exporter(exporter)
43+
.build();
44+
let layer = layer::OpenTelemetryTracingBridge::new(&provider);
45+
tracing_subscriber::registry().with(layer).init();
46+
provider
47+
}
48+
3449
#[cfg(feature = "trace")]
3550
fn emit_span() {
3651
let tracer = global::tracer("stdout-test");
@@ -50,6 +65,12 @@ fn emit_metrics() {
5065
c.add(1, &[KeyValue::new("test_key", "test_value")]);
5166
}
5267

68+
#[cfg(feature = "logs")]
69+
fn emit_log() {
70+
use tracing::error;
71+
error!(name: "my-event-name", target: "my-system", event_id = 20, user_name = "otel", user_email = "otel@opentelemetry.io");
72+
}
73+
5374
#[tokio::main]
5475
async fn main() -> Result<(), Box<dyn std::error::Error>> {
5576
#[cfg(feature = "trace")]
@@ -58,9 +79,23 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
5879
#[cfg(feature = "metrics")]
5980
init_metrics();
6081

82+
#[cfg(feature = "logs")]
83+
let logger_provider = init_logs();
84+
85+
#[cfg(feature = "logs")]
86+
emit_log();
87+
88+
println!(
89+
"======================================================================================"
90+
);
91+
6192
#[cfg(feature = "trace")]
6293
emit_span();
6394

95+
println!(
96+
"======================================================================================"
97+
);
98+
6499
#[cfg(feature = "metrics")]
65100
emit_metrics();
66101

@@ -70,5 +105,8 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
70105
#[cfg(feature = "metrics")]
71106
global::shutdown_meter_provider();
72107

108+
#[cfg(feature = "logs")]
109+
drop(logger_provider);
110+
73111
Ok(())
74112
}

0 commit comments

Comments
 (0)