3 from ..exceptions.exceptions import SegmentNameMissingException as SegmentNameMissingException
4 from ..recorder import AWSXRayRecorder
5 from ..utils.atomic_counter import AtomicCounter as AtomicCounter
6 from .entity import Entity as Entity
7 from .subsegment import Subsegment
8 from .traceid import TraceId as TraceId
10 ORIGIN_TRACE_HEADER_ATTR_KEY: str
12 class SegmentContextManager:
14 segment_kwargs: dict[str, Any]
15 recorder: AWSXRayRecorder
17 def __init__(self, recorder: AWSXRayRecorder, name: str | None = ..., **segment_kwargs) -> None: ...
18 def __enter__(self): ...
19 def __exit__(self, exc_type, exc_val, exc_tb) -> None: ...
21 class Segment(Entity):
27 ref_counter: AtomicCounter
29 service: dict[str, str]
31 self, name, entityid: str | None = ..., traceid: str | None = ..., parent_id: str | None = ..., sampled: bool = ...
33 def add_subsegment(self, subsegment: Subsegment) -> None: ...
34 def increment(self) -> None: ...
35 def decrement_ref_counter(self) -> None: ...
36 def ready_to_send(self): ...
37 def get_total_subsegments_size(self): ...
38 def decrement_subsegments_size(self): ...
39 def remove_subsegment(self, subsegment) -> None: ...
40 def set_user(self, user) -> None: ...
41 def set_service(self, service_info) -> None: ...
42 def set_rule_name(self, rule_name) -> None: ...
43 def to_dict(self): ...