Skip to content
This repository was archived by the owner on Sep 17, 2025. It is now read-only.

Commit 0016128

Browse files
authored
Limit span attachments (#649)
1 parent 38122d4 commit 0016128

File tree

24 files changed

+590
-353
lines changed

24 files changed

+590
-353
lines changed

contrib/opencensus-ext-azure/tests/test_azure_trace_exporter.py

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,8 @@ def test_span_data_to_envelope(self):
103103
stack_trace=None,
104104
links=None,
105105
status=None,
106-
time_events=None,
106+
annotations=None,
107+
message_events=None,
107108
same_process_as_parent_span=None,
108109
child_span_count=None,
109110
span_kind=SpanKind.CLIENT,
@@ -160,7 +161,8 @@ def test_span_data_to_envelope(self):
160161
stack_trace=None,
161162
links=None,
162163
status=None,
163-
time_events=None,
164+
annotations=None,
165+
message_events=None,
164166
same_process_as_parent_span=None,
165167
child_span_count=None,
166168
span_kind=SpanKind.CLIENT,
@@ -218,7 +220,8 @@ def test_span_data_to_envelope(self):
218220
stack_trace=None,
219221
links=None,
220222
status=None,
221-
time_events=None,
223+
annotations=None,
224+
message_events=None,
222225
same_process_as_parent_span=None,
223226
child_span_count=None,
224227
span_kind=SpanKind.SERVER,
@@ -275,7 +278,8 @@ def test_span_data_to_envelope(self):
275278
stack_trace=None,
276279
links=None,
277280
status=None,
278-
time_events=None,
281+
annotations=None,
282+
message_events=None,
279283
same_process_as_parent_span=None,
280284
child_span_count=None,
281285
span_kind=SpanKind.SERVER,
@@ -323,7 +327,8 @@ def test_span_data_to_envelope(self):
323327
stack_trace=None,
324328
links=None,
325329
status=None,
326-
time_events=None,
330+
annotations=None,
331+
message_events=None,
327332
same_process_as_parent_span=None,
328333
child_span_count=None,
329334
span_kind=SpanKind.UNSPECIFIED,

contrib/opencensus-ext-grpc/opencensus/ext/grpc/utils.py

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,23 +10,18 @@ def add_message_event(proto_message, span, message_event_type, message_id=1):
1010
"""Adds a MessageEvent to the span based off of the given protobuf
1111
message
1212
"""
13-
span.add_time_event(
14-
time_event=time_event.TimeEvent(
13+
span.add_message_event(
14+
time_event.MessageEvent(
1515
datetime.utcnow(),
16-
message_event=time_event.MessageEvent(
17-
message_id,
18-
type=message_event_type,
19-
uncompressed_size_bytes=proto_message.ByteSize()
20-
)
16+
message_id,
17+
type=message_event_type,
18+
uncompressed_size_bytes=proto_message.ByteSize()
2119
)
2220
)
2321

2422

25-
def wrap_iter_with_message_events(
26-
request_or_response_iter,
27-
span,
28-
message_event_type
29-
):
23+
def wrap_iter_with_message_events(request_or_response_iter, span,
24+
message_event_type):
3025
"""Wraps a request or response iterator to add message events to the span
3126
for each proto message sent or received
3227
"""
@@ -35,8 +30,7 @@ def wrap_iter_with_message_events(
3530
proto_message=message,
3631
span=span,
3732
message_event_type=message_event_type,
38-
message_id=message_id
39-
)
33+
message_id=message_id)
4034
yield message
4135

4236

contrib/opencensus-ext-jaeger/opencensus/ext/jaeger/trace_exporter/__init__.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -259,15 +259,12 @@ def _convert_hex_str_to_int(val):
259259

260260

261261
def _extract_logs_from_span(span):
262-
if span.time_events is None:
262+
if span.annotations is None:
263263
return None
264264

265265
logs = []
266-
for time_event in span.time_events:
267-
annotation = time_event.annotation
268-
if not annotation:
269-
continue
270266

267+
for annotation in span.annotations:
271268
fields = []
272269
if annotation.attributes is not None:
273270
fields = _extract_tags(annotation.attributes.attributes)
@@ -277,7 +274,7 @@ def _extract_logs_from_span(span):
277274
vType=jaeger.TagType.STRING,
278275
vStr=annotation.description))
279276

280-
event_timestamp = timestamp_to_microseconds(time_event.timestamp)
277+
event_timestamp = timestamp_to_microseconds(annotation.timestamp)
281278
logs.append(jaeger.Log(timestamp=int(round(event_timestamp)),
282279
fields=fields))
283280
return logs

contrib/opencensus-ext-jaeger/tests/test_jaeger_exporter.py

Lines changed: 27 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -197,32 +197,33 @@ def test_translate_to_jaeger(self):
197197
import datetime
198198
s = '2017-08-15T18:02:26.071158'
199199
time = datetime.datetime.strptime(s, '%Y-%m-%dT%H:%M:%S.%f')
200-
time_events = [
201-
time_event.TimeEvent(
200+
201+
annotations = [
202+
time_event.Annotation(
202203
timestamp=time,
203-
annotation=time_event.Annotation(
204-
description='First Annotation',
205-
attributes=attributes.Attributes(annotation_attributes))),
206-
time_event.TimeEvent(
204+
description='First Annotation',
205+
attributes=attributes.Attributes(annotation_attributes))
206+
]
207+
message_events = [
208+
time_event.MessageEvent(
207209
timestamp=time,
208-
message_event=time_event.MessageEvent(
209-
id='message-event-id',
210-
uncompressed_size_bytes=0,
211-
)),
210+
id='message-event-id',
211+
uncompressed_size_bytes=0,
212+
)
212213
]
213214

214-
time_events2 = [
215-
time_event.TimeEvent(
215+
annotations2 = [
216+
time_event.Annotation(
216217
timestamp=time,
217-
annotation=time_event.Annotation(
218-
description='First Annotation',
219-
attributes=None)),
220-
time_event.TimeEvent(
218+
description='First Annotation',
219+
attributes=None)
220+
]
221+
message_events2 = [
222+
time_event.MessageEvent(
221223
timestamp=time,
222-
message_event=time_event.MessageEvent(
223-
id='message-event-id',
224-
uncompressed_size_bytes=0,
225-
)),
224+
id='message-event-id',
225+
uncompressed_size_bytes=0,
226+
)
226227
]
227228

228229
links = [
@@ -259,7 +260,8 @@ def test_translate_to_jaeger(self):
259260
end_time=end_time,
260261
child_span_count=0,
261262
stack_trace=None,
262-
time_events=time_events,
263+
annotations=annotations,
264+
message_events=message_events,
263265
links=links,
264266
status=span_status,
265267
same_process_as_parent_span=None,
@@ -275,7 +277,8 @@ def test_translate_to_jaeger(self):
275277
end_time=end_time,
276278
child_span_count=None,
277279
stack_trace=None,
278-
time_events=time_events2,
280+
annotations=annotations2,
281+
message_events=message_events2,
279282
links=None,
280283
status=None,
281284
same_process_as_parent_span=None,
@@ -291,7 +294,8 @@ def test_translate_to_jaeger(self):
291294
end_time=end_time,
292295
child_span_count=None,
293296
stack_trace=None,
294-
time_events=None,
297+
annotations=None,
298+
message_events=None,
295299
links=None,
296300
status=None,
297301
same_process_as_parent_span=None,

contrib/opencensus-ext-ocagent/opencensus/ext/ocagent/trace_exporter/utils.py

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -62,21 +62,19 @@ def translate_to_trace_proto(span_data):
6262
attribute_key,
6363
attribute_value)
6464

65-
# time events
66-
if span_data.time_events is not None:
67-
for span_data_event in span_data.time_events:
68-
if span_data_event.message_event is not None:
69-
pb_event = pb_span.time_events.time_event.add()
70-
pb_event.time.FromJsonString(span_data_event.timestamp)
71-
set_proto_message_event(
72-
pb_event.message_event,
73-
span_data_event.message_event)
74-
elif span_data_event.annotation is not None:
75-
pb_event = pb_span.time_events.time_event.add()
76-
pb_event.time.FromJsonString(span_data_event.timestamp)
77-
set_proto_annotation(
78-
pb_event.annotation,
79-
span_data_event.annotation)
65+
# annotations
66+
if span_data.annotations is not None:
67+
for annotation in span_data.annotations:
68+
pb_event = pb_span.time_events.time_event.add()
69+
pb_event.time.FromJsonString(annotation.timestamp)
70+
set_proto_annotation(pb_event.annotation, annotation)
71+
72+
# message events
73+
if span_data.message_events is not None:
74+
for message_event in span_data.message_events:
75+
pb_event = pb_span.time_events.time_event.add()
76+
pb_event.time.FromJsonString(message_event.timestamp)
77+
set_proto_message_event(pb_event.message_event, message_event)
8078

8179
# links
8280
if span_data.links is not None:

contrib/opencensus-ext-ocagent/tests/test_trace_exporter.py

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,8 @@ def test_span_generator(self):
139139
end_time=None,
140140
child_span_count=None,
141141
stack_trace=None,
142-
time_events=None,
142+
annotations=None,
143+
message_events=None,
143144
links=None,
144145
status=None,
145146
same_process_as_parent_span=None,
@@ -155,7 +156,8 @@ def test_span_generator(self):
155156
end_time=None,
156157
child_span_count=None,
157158
stack_trace=None,
158-
time_events=None,
159+
annotations=None,
160+
message_events=None,
159161
links=None,
160162
status=None,
161163
same_process_as_parent_span=None,
@@ -198,7 +200,8 @@ def test_basic_spans_emit(self):
198200
attributes=None,
199201
child_span_count=None,
200202
stack_trace=None,
201-
time_events=None,
203+
annotations=None,
204+
message_events=None,
202205
links=None,
203206
status=None,
204207
same_process_as_parent_span=None,
@@ -215,7 +218,8 @@ def test_basic_spans_emit(self):
215218
attributes=None,
216219
child_span_count=None,
217220
stack_trace=None,
218-
time_events=None,
221+
annotations=None,
222+
message_events=None,
219223
links=None,
220224
status=None,
221225
same_process_as_parent_span=None,
@@ -262,7 +266,8 @@ def test_span_emit_exception(self):
262266
attributes=None,
263267
child_span_count=None,
264268
stack_trace=None,
265-
time_events=None,
269+
annotations=None,
270+
message_events=None,
266271
links=None,
267272
status=None,
268273
same_process_as_parent_span=None,

0 commit comments

Comments
 (0)