8000 format and style · DataDog/datadog-lambda-extension@851c78f · GitHub
[go: up one dir, main page]

Skip to content

Commit 851c78f

Browse files
committed
format and style
1 parent 2c1346c commit 851c78f

File tree

6 files changed

+42
-39
lines changed

6 files changed

+42
-39
lines changed

bottlecap/src/lifecycle/invocation/processor.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ use serde_json::{json, Value};
1212
use tokio::sync::{mpsc::Sender, watch};
1313
use tracing::debug;
1414

15+
use crate::traces::propagation::datadog_extraction::{
16+
extract_tags_datadog_context, DATADOG_PARENT_ID_KEY, DATADOG_SAMPLING_PRIORITY_KEY,
17+
DATADOG_SPAN_ID_KEY, DATADOG_TRACE_ID_KEY,
18+
};
1519
use crate::traces::propagation::extract_composite;
1620
use crate::{
1721
config::{self, AwsConfig},
@@ -27,12 +31,8 @@ use crate::{
2731
},
2832
tags::{lambda::tags::resolve_runtime_from_proc, provider},
2933
telemetry::events::{ReportMetrics, RuntimeDoneMetrics, Status},
30-
traces::{
31-
context::SpanContext,
32-
trace_processor,
33-
},
34+
traces::{context::SpanContext, trace_processor},
3435
};
35-
use crate::traces::propagation::datadog_propagation::{extract_tags_datadog_context, DATADOG_PARENT_ID_KEY, DATADOG_SAMPLING_PRIORITY_KEY, DATADOG_SPAN_ID_KEY, DATADOG_TRACE_ID_KEY};
3636

3737
pub const MS_TO_NS: f64 = 1_000_000.0;
3838
pub const S_TO_NS: f64 = 1_000_000_000.0;
@@ -635,11 +635,11 @@ impl Processor {
635635
#[cfg(test)]
636636
mod tests {
637637
use super::*;
638+
use crate::traces::propagation::datadog_extraction::DATADOG_TRACE_ID_KEY;
638639
use crate::LAMBDA_RUNTIME_SLUG;
639640
use base64::{engine::general_purpose::STANDARD, Engine};
640641
use dogstatsd::aggregator::Aggregator;
641642
use dogstatsd::metric::EMPTY_TAGS;
642-
use crate::traces::propagation::datadog_propagation::DATADOG_TRACE_ID_KEY;
643643

644644
fn setup() -> Processor {
645645
let aws_config = AwsConfig {

bottlecap/src/lifecycle/invocation/triggers/step_function_event.rs

Lines changed: 6 additions & 5 deletions
8000
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,15 @@ use serde_json::Value;
55
use sha2::{Digest, Sha256};
66

77
use super::DATADOG_CARRIER_KEY;
8+
use crate::traces::propagation::datadog_extraction::{
9+
extract_tags_datadog_context, DATADOG_HIGHER_ORDER_TRACE_ID_BITS_KEY, DATADOG_TAGS_KEY,
10+
};
811
use crate::{
912
lifecycle::invocation::triggers::{
1013
ServiceNameResolver, Trigger, FUNCTION_TRIGGER_EVENT_SOURCE_TAG,
1114
},
12-
traces::{
13-
context::{Sampling, SpanContext},
14-
},
15+
traces::context::{Sampling, SpanContext},
1516
};
16-
use crate::traces::propagation::datadog_propagation::{extract_tags_datadog_context, DATADOG_HIGHER_ORDER_TRACE_ID_BITS_KEY, DATADOG_TAGS_KEY};
1717

1818
pub const DATADOG_LEGACY_LAMBDA_PAYLOAD: &str = "Payload";
1919

@@ -258,7 +258,7 @@ impl ServiceNameResolver for StepFunctionEvent {
258258
mod tests {
259259
use super::*;
260260
use crate::lifecycle::invocation::triggers::test_utils::read_json_file;
261-
use crate::traces::propagation::datadog_propagation::DATADOG_SAMPLING_DECISION_KEY;
261+
use crate::traces::propagation::datadog_extraction::DATADOG_SAMPLING_DECISION_KEY;
262262

263263
#[test]
264264
fn test_new_event() {
@@ -451,6 +451,7 @@ mod tests {
451451
}
452452

453453
#[test]
454+
#[allow(clippy::too_many_lines)]
454455
fn test_get_span_context() {
455456
let test_cases = vec![
456457
(

bottlecap/src/lifecycle/listener.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,10 @@ use tokio::sync::Mutex;
1414
use tracing::{debug, error, warn};
1515

1616
use crate::lifecycle::invocation::processor::Processor as InvocationProcessor;
17-
use crate::traces::propagation::datadog_propagation::{DATADOG_HIGHER_ORDER_TRACE_ID_BITS_KEY, DATADOG_SAMPLING_PRIORITY_KEY, DATADOG_TAGS_KEY, DATADOG_TRACE_ID_KEY};
17+
use crate::traces::propagation::datadog_extraction::{
18+
DATADOG_HIGHER_ORDER_TRACE_ID_BITS_KEY, DATADOG_SAMPLING_PRIORITY_KEY, DATADOG_TAGS_KEY,
19+
DATADOG_TRACE_ID_KEY,
20+
};
1821

1922
const HELLO_PATH: &str = "/lambda/hello";
2023
const START_INVOCATION_PATH: &str = "/lambda/start-invocation";

bottlecap/src/traces/propagation/datadog_propagation.rs renamed to bottlecap/src/traces/propagation/datadog_extraction.rs

-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -183,8 +183,8 @@ fn higher_order_bits_valid(trace_id_higher_order_bits: &str) -> bool {
183183
#[cfg(test)]
184184
#[allow(clippy::unwrap_used)]
185185
mod test {
186-
use crate::traces::propagation::text_map_propagation::extract_context_standard_header;
187186
use super::*;
187+
use crate::traces::propagation::text_map_extraction::extract_context_standard_header;
188188

189189
#[test]
190190
fn test_extract_traceparent_propagator() {

bottlecap/src/traces/propagation/mod.rs

Lines changed: 20 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
use crate::traces::propagation::datadog_extraction::{
2+
DATADOG_HIGHER_ORDER_TRACE_ID_BITS_KEY, DATADOG_LAST_PARENT_ID_KEY,
3+
};
14
use crate::{
25
config::{self, trace_propagation_style::TracePropagationStyle},
36
traces::context::SpanContext,
@@ -6,15 +9,12 @@ use carrier::Extractor;
69
use datadog_trace_protobuf::pb::SpanLink;
710
use std::collections::VecDeque;
811
use std::{collections::HashMap, sync::Arc};
9-
use text_map_propagation::{
10-
BAGGAGE_PREFIX, TRACESTATE_KEY,
11-
};
12-
use crate::traces::propagation::datadog_propagation::{DATADOG_HIGHER_ORDER_TRACE_ID_BITS_KEY, DATADOG_LAST_PARENT_ID_KEY};
12+
use text_map_extraction::{BAGGAGE_PREFIX, TRACESTATE_KEY};
1313

1414
pub mod carrier;
15+
pub mod datadog_extraction;
1516
pub mod error;
16-
pub mod text_map_propagation;
17-
pub mod datadog_propagation;
17+
pub mod text_map_extraction;
1818

1919
pub fn extract_composite(
2020
config: &Arc<config::Config>,
@@ -36,15 +36,13 @@ pub fn extract_composite(
3636
}
3737

3838
let contexts_found = extract_available_contexts(config, carrier);
39-
if contexts_found.is_empty() {
40-
return None;
41-
}
42-
let mut primary_context = resolve_primary_context_with_links(contexts_found);
43-
if config.trace_propagation_http_baggage_enabled {
44-
attach_baggage(&mut primary_context, carrier);
39+
if let Some(mut primary_context) = resolve_primary_context_with_links(contexts_found) {
40+
if config.trace_propagation_http_baggage_enabled {
41+
attach_baggage(&mut primary_context, carrier);
42+
}
43+
return Some(primary_context);
4544
}
46-
47-
Some(primary_context)
45+
None
4846
}
4947

5048
fn extract_available_contexts(
@@ -53,26 +51,26 @@ fn extract_available_contexts(
5351
) -> VecDeque<(TracePropagationStyle, SpanContext)> {
5452
let mut contexts_found: VecDeque<(TracePropagationStyle, SpanContext)> = VecDeque::new();
5553
for propagation_style in &config.trace_propagation_style_extract {
56-
if let Some(context) = propagation_style.extract(carrier) {
57-
10000 contexts_found.push_back((*propagation_style, context));
58-
}
54+
if let Some(context) = propagation_style.extract(carrier) {
55+
contexts_found.push_back((*propagation_style, context));
56+
}
5957
}
6058
contexts_found
6159
}
6260

6361
fn resolve_primary_context_with_links(
6462
mut all_contexts: VecDeque<(TracePropagationStyle, SpanContext)>,
65-
) -> SpanContext {
63+
) -> Option<SpanContext> {
6664
let dd_context: Option<SpanContext> = all_contexts
6765
.iter()
6866
.find(|(style, _)| *style == TracePropagationStyle::Datadog)
69-
.and_then(|style_and_context| Some(style_and_context.1.clone()))
67+
.map(|style_and_context| style_and_context.1.clone())
7068
.or(None);
7169

72-
let (_primary_style, mut primary_context) = all_contexts.pop_front().unwrap();
70+
let (_primary_style, mut primary_context) = all_contexts.pop_front()?;
7371
let mut links = Vec::<SpanLink>::new();
7472

75-
for style_and_context in all_contexts.iter() {
73+
for style_and_context in &all_contexts {
7674
let style = style_and_context.0;
7775
let context = style_and_context.1.clone();
7876

@@ -132,7 +130,7 @@ fn resolve_primary_context_with_links(
132130

133131
primary_context.links = links;
134132

135-
primary_context
133+
Some(primary_context)
136134
}
137135

138136
fn attach_baggage(context: &mut SpanContext, carrier: &dyn Extractor) {

bottlecap/src/traces/propagation/text_map_propagation.rs renamed to bottlecap/src/traces/propagation/text_map_extraction.rs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,14 @@ use std::collections::HashMap;
22

33
use crate::config::trace_propagation_style::TracePropagationStyle;
44
use crate::traces::context::{Sampling, SpanContext};
5+
use crate::traces::propagation::datadog_extraction::{
6+
extract_context_datadog_header, DATADOG_HIGHER_ORDER_TRACE_ID_BITS_KEY,
7+
DATADOG_LAST_PARENT_ID_KEY,
8+
};
59
use crate::traces::propagation::{carrier::Extractor, error::Error};
610
use lazy_static::lazy_static;
711
use regex::Regex;
812
use tracing::{debug, error, warn};
9-
use crate::traces::propagation::datadog_propagation::{extract_context_datadog_header, DATADOG_HIGHER_ORDER_TRACE_ID_BITS_KEY, DATADOG_LAST_PARENT_ID_KEY};
1013

1114
// Traceparent Keys
1215
const TRACEPARENT_KEY: &str = "traceparent";
@@ -33,10 +36,8 @@ impl TracePropagationStyle {
3336
pub fn extract(&self, carrier: &dyn Extractor) -> Option<SpanContext> {
3437
match self {
3538
TracePropagationStyle::Datadog => extract_context_datadog_header(carrier),
36-
TracePropagationStyle::B3Multi => None,
37-
TracePropagationStyle::B3 => None,
3839
TracePropagationStyle::TraceContext => extract_context_standard_header(carrier),
39-
TracePropagationStyle::None => None,
40+
_ => None,
4041
}
4142
}
4243
}

0 commit comments

Comments
 (0)
0