File: dummy_entities.py

package info (click to toggle)
python-aws-xray-sdk 0.95-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 792 kB
  • sloc: python: 3,006; makefile: 20
file content (132 lines) | stat: -rw-r--r-- 2,635 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
from .segment import Segment
from .subsegment import Subsegment


class DummySegment(Segment):
    """
    A dummy segment is created when ``xray_recorder`` decide to not sample
    the segment based on sampling rules.
    Adding data to a dummy segment becomes a no-op except for
    subsegments. This is to reduce the memory footprint of the SDK.
    A dummy segment will not be sent to the X-Ray daemon. Manually create
    dummy segments is not recommended.
    """
    def __init__(self, name='dummy'):

        super(DummySegment, self).__init__(name=name, traceid='dummy')
        self.sampled = False

    def set_aws(self, aws_meta):
        """
        No-op
        """
        pass

    def put_http_meta(self, key, value):
        """
        No-op
        """
        pass

    def put_annotation(self, key, value):
        """
        No-op
        """
        pass

    def put_metadata(self, key, value, namespace='default'):
        """
        No-op
        """
        pass

    def set_user(self, user):
        """
        No-op
        """
        pass

    def apply_status_code(self, status_code):
        """
        No-op
        """
        pass

    def add_exception(self, exception, stack, remote=False):
        """
        No-op
        """
        pass

    def serialize(self):
        """
        No-op
        """
        pass


class DummySubsegment(Subsegment):
    """
    A dummy subsegment will be created when ``xray_recorder`` tries
    to create a subsegment under a not sampled segment. Adding data
    to a dummy subsegment becomes no-op. Dummy subsegment will not
    be sent to the X-Ray daemon.
    """
    def __init__(self, segment, name='dummy'):

        super(DummySubsegment, self).__init__(name, 'dummy', segment)
        self.sampled = False

    def set_aws(self, aws_meta):
        """
        No-op
        """
        pass

    def put_http_meta(self, key, value):
        """
        No-op
        """
        pass

    def put_annotation(self, key, value):
        """
        No-op
        """
        pass

    def put_metadata(self, key, value, namespace='default'):
        """
        No-op
        """
        pass

    def set_sql(self, sql):
        """
        No-op
        """
        pass

    def set_user(self, user):
        """
        No-op
        """
        pass

    def apply_status_code(self, status_code):
        """
        No-op
        """
        pass

    def add_exception(self, exception, stack, remote=False):
        """
        No-op
        """
        pass

    def serialize(self):
        """
        No-op
        """
        pass