Skip to main content

dogdata/model/
mod.rs

1use opentelemetry_datadog::ModelConfig;
2use opentelemetry_sdk::trace::SpanData;
3
4// Datadog uses some magic tags in their models. There is no recommended mapping defined in
5// opentelemetry spec. Below is default mapping we gonna uses. Users can override it by providing
6// their own implementations.
7pub(super) fn default_service_name_mapping<'a>(
8    _span: &'a SpanData,
9    config: &'a ModelConfig,
10) -> &'a str {
11    config.service_name.as_str()
12}
13
14pub(super) fn default_name_mapping<'a>(span: &'a SpanData, _config: &'a ModelConfig) -> &'a str {
15    span.instrumentation_scope.name()
16}
17
18pub(super) fn default_resource_mapping<'a>(
19    span: &'a SpanData,
20    _config: &'a ModelConfig,
21) -> &'a str {
22    span.name.as_ref()
23}