Skip to content

Commit ec37e08

Browse files
committed
fixup! Add generated modules that output const &str for tracing compatibility
1 parent 40bb8f3 commit ec37e08

9 files changed

+388
-451
lines changed

opentelemetry-semantic-conventions/scripts/generate-consts-from-spec.sh

-22
Original file line numberDiff line numberDiff line change
@@ -31,17 +31,6 @@ docker run --rm \
3131
--output /output/trace.rs \
3232
--parameters conventions=trace
3333

34-
docker run --rm \
35-
-v "${CRATE_DIR}/semantic-conventions/model:/source" \
36-
-v "${CRATE_DIR}/scripts/templates:/templates" \
37-
-v "${CRATE_DIR}/src/semconv:/output" \
38-
otel/semconvgen:$SEMCOVGEN_VERSION \
39-
--only span,event,attribute_group,scope \
40-
-f /source code \
41-
--template /templates/semconv_semantic_attributes.rs.j2 \
42-
--output /output/trace.rs \
43-
--parameters conventions=trace
44-
4534
docker run --rm \
4635
-v "${CRATE_DIR}/semantic-conventions/model:/source" \
4736
-v "${CRATE_DIR}/scripts/templates:/templates" \
@@ -53,17 +42,6 @@ docker run --rm \
5342
--output /output/resource.rs \
5443
--parameters conventions=resource
5544

56-
docker run --rm \
57-
-v "${CRATE_DIR}/semantic-conventions/model:/source" \
58-
-v "${CRATE_DIR}/scripts/templates:/templates" \
59-
-v "${CRATE_DIR}/src/semconv:/output" \
60-
otel/semconvgen:$SEMCOVGEN_VERSION \
61-
--only resource \
62-
-f /source code \
63-
--template /templates/semconv_semantic_attributes.rs.j2 \
64-
--output /output/resource.rs \
65-
--parameters conventions=resource
66-
6745
SED=(sed -i)
6846
if [[ "$(uname)" = "Darwin" ]]; then
6947
SED=(sed -i "")

opentelemetry-semantic-conventions/scripts/templates/header_resource.rs

+18-2
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,30 @@
77
//!
88
//! ## Usage
99
//!
10+
//! `tracing`:
11+
//!
12+
//! ```
13+
//! use opentelemetry_semantic_conventions as semconv;
14+
//! use tracing::span;
15+
//!
16+
//! let span = span!(
17+
//! LEVEL::INFO,
18+
//! "handle_request",
19+
//! { semconv::resource::SERVICE_NAME = "my-service" },
20+
//! { semconv::resource::SERVICE_NAMESPACE = "my-namespace" }
21+
//! );
22+
//! ```
23+
//!
24+
//! OpenTelemetry SDK:
25+
//!
1026
//! ```
1127
//! use opentelemetry_sdk::{trace::{config, TracerProvider}, Resource};
1228
//! use opentelemetry_semantic_conventions as semconv;
1329
//!
1430
//! let _tracer = TracerProvider::builder()
1531
//! .with_config(config().with_resource(Resource::new(vec![
16-
//! semconv::resource::SERVICE_NAME.string("my-service"),
17-
//! semconv::resource::SERVICE_NAMESPACE.string("my-namespace"),
32+
//! semconv::resource::SERVICE_NAME.into().string("my-service"),
33+
//! semconv::resource::SERVICE_NAMESPACE.into().string("my-namespace"),
1834
//! ])))
1935
//! .build();
2036
//! ```

opentelemetry-semantic-conventions/scripts/templates/header_trace.rs

+18-2
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,22 @@
77
//!
88
//! ## Usage
99
//!
10+
//! `tracing`:
11+
//!
12+
//! ```
13+
//! use opentelemetry_semantic_conventions as semconv;
14+
//! use tracing::span;
15+
//!
16+
//! let span = span!(
17+
//! LEVEL::INFO,
18+
//! "handle_request",
19+
//! { semconv::trace::NET_PEER_NAME = "example.org" },
20+
//! { semconv::trace::NET_PEER_PORT = 80 }
21+
//! );
22+
//! ```
23+
//!
24+
//! OpenTelemetry SDK:
25+
//!
1026
//! ```
1127
//! use opentelemetry::{global, trace::Tracer as _};
1228
//! use opentelemetry_semantic_conventions as semcov;
@@ -15,8 +31,8 @@
1531
//! let _span = tracer
1632
//! .span_builder("span-name")
1733
//! .with_attributes(vec![
18-
//! semcov::trace::NET_PEER_NAME.string("example.org"),
19-
//! semcov::trace::NET_PEER_PORT.i64(80),
34+
//! semcov::trace::NET_PEER_NAME.into().string("example.org"),
35+
//! semcov::trace::NET_PEER_PORT.into().i64(80),
2036
//! ])
2137
//! .start(&tracer);
2238
//! ```

opentelemetry-semantic-conventions/scripts/templates/semantic_attributes.rs.j2

+1-3
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,6 @@
66

77
{% include 'header_' + conventions + '.rs' %}
88

9-
use opentelemetry::Key;
10-
119
{%- for attribute in attributes if attribute.is_local and not attribute.ref %}
1210

1311
/// {% filter escape %}{{attribute.brief | to_doc_brief}}.{% endfilter %}
@@ -28,5 +26,5 @@ use opentelemetry::Key;
2826
{%- if (attribute.stability | string()) == "StabilityLevel.DEPRECATED" %}
2927
#[deprecated]
3028
{%- endif %}
31-
pub const {{attribute.fqn | to_const_name}}: Key = Key::from_static_str("{{attribute.fqn}}");
29+
pub const {{attribute.fqn | to_const_name}}: &str = "{{attribute.fqn}}";
3230
{%- endfor %}

opentelemetry-semantic-conventions/scripts/templates/semconv_header_resource.rs

-20
This file was deleted.

opentelemetry-semantic-conventions/scripts/templates/semconv_header_trace.rs

-20
This file was deleted.

opentelemetry-semantic-conventions/scripts/templates/semconv_semantic_attributes.rs.j2

-30
This file was deleted.

0 commit comments

Comments
 (0)