in aws_xray_sdk/core/lambda_launcher.py [0:0]
def _initialize_context(self, trace_header):
"""
Create a segment based on environment variables set by
AWS Lambda and initialize storage for subsegments.
"""
sampled = None
if not global_sdk_config.sdk_enabled():
# Force subsequent subsegments to be disabled and turned into DummySegments.
sampled = False
elif trace_header.sampled == 0:
sampled = False
elif trace_header.sampled == 1:
sampled = True
segment = None
if not trace_header.root or not trace_header.parent or trace_header.sampled is None:
segment = DummySegment()
log.debug("Creating NoOp/Dummy parent segment")
else:
segment = FacadeSegment(
name='facade',
traceid=trace_header.root,
entityid=trace_header.parent,
sampled=sampled,
)
segment.save_origin_trace_header(trace_header)
setattr(self._local, 'segment', segment)
setattr(self._local, 'entities', [])