Skip to content

Commit 4fbd6a0

Browse files
committed
opentelemetry: traces: propagate error status
Signed-off-by: Eduardo Silva <[email protected]>
1 parent 602ed5b commit 4fbd6a0

File tree

2 files changed

+248
-63
lines changed

2 files changed

+248
-63
lines changed

include/fluent-bit/flb_opentelemetry.h

Lines changed: 51 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,9 @@
2424
#include <msgpack.h>
2525
#include <stdint.h>
2626

27-
/* Error code values from flb_opentelemetry_logs.c */
27+
/* Error code values from flb_opentelemetry logs/traces helpers */
2828
#define FLB_OTEL_LOGS_ERR_GENERIC_ERROR -1
29+
#define FLB_OTEL_TRACES_ERR_GENERIC_ERROR -1
2930

3031
enum {
3132

@@ -50,7 +51,31 @@ enum {
5051
FLB_OTEL_LOGS_ERR_ENCODER_FAILURE,
5152
FLB_OTEL_LOGS_ERR_APPEND_BODY_FAILURE,
5253
FLB_OTEL_LOGS_ERR_INVALID_TRACE_ID,
53-
FLB_OTEL_LOGS_ERR_INVALID_SPAN_ID
54+
FLB_OTEL_LOGS_ERR_INVALID_SPAN_ID,
55+
56+
/* trace specific errors */
57+
FLB_OTEL_TRACES_ERR_UNEXPECTED_ROOT_OBJECT_TYPE,
58+
FLB_OTEL_TRACES_ERR_INVALID_JSON,
59+
FLB_OTEL_TRACES_ERR_RESOURCE_SPANS_MISSING,
60+
FLB_OTEL_TRACES_ERR_UNEXPECTED_RESOURCE_SPANS_TYPE,
61+
FLB_OTEL_TRACES_ERR_UNEXPECTED_RESOURCE_SPANS_ENTRY_TYPE,
62+
FLB_OTEL_TRACES_ERR_SCOPE_SPANS_MISSING,
63+
FLB_OTEL_TRACES_ERR_UNEXPECTED_SCOPE_SPANS_TYPE,
64+
FLB_OTEL_TRACES_ERR_UNEXPECTED_SCOPE_SPANS_ENTRY_TYPE,
65+
FLB_OTEL_TRACES_ERR_SPANS_MISSING,
66+
FLB_OTEL_TRACES_ERR_UNEXPECTED_SPANS_TYPE,
67+
FLB_OTEL_TRACES_ERR_UNEXPECTED_SPAN_ENTRY_TYPE,
68+
FLB_OTEL_TRACES_ERR_SPAN_NAME_MISSING,
69+
FLB_OTEL_TRACES_ERR_INVALID_ATTRIBUTES,
70+
FLB_OTEL_TRACES_ERR_INVALID_TRACE_ID,
71+
FLB_OTEL_TRACES_ERR_INVALID_SPAN_ID,
72+
FLB_OTEL_TRACES_ERR_INVALID_PARENT_SPAN_ID,
73+
FLB_OTEL_TRACES_ERR_INVALID_EVENT_ENTRY,
74+
FLB_OTEL_TRACES_ERR_INVALID_EVENT_TIMESTAMP,
75+
FLB_OTEL_TRACES_ERR_INVALID_LINK_ENTRY,
76+
FLB_OTEL_TRACES_ERR_INVALID_LINK_TRACE_ID,
77+
FLB_OTEL_TRACES_ERR_INVALID_LINK_SPAN_ID,
78+
FLB_OTEL_TRACES_ERR_STATUS_FAILURE
5479
};
5580

5681

@@ -88,7 +113,31 @@ static struct flb_otel_error_map otel_error_map[] = {
88113
{"FLB_OTEL_LOGS_ERR_APPEND_BODY_FAILURE", FLB_OTEL_LOGS_ERR_APPEND_BODY_FAILURE},
89114
{"FLB_OTEL_LOGS_ERR_INVALID_TRACE_ID", FLB_OTEL_LOGS_ERR_INVALID_TRACE_ID},
90115
{"FLB_OTEL_LOGS_ERR_INVALID_SPAN_ID", FLB_OTEL_LOGS_ERR_INVALID_SPAN_ID},
116+
117+
{"FLB_OTEL_TRACES_ERR_UNEXPECTED_ROOT_OBJECT_TYPE", FLB_OTEL_TRACES_ERR_UNEXPECTED_ROOT_OBJECT_TYPE},
118+
{"FLB_OTEL_TRACES_ERR_INVALID_JSON", FLB_OTEL_TRACES_ERR_INVALID_JSON},
119+
{"FLB_OTEL_TRACES_ERR_RESOURCE_SPANS_MISSING", FLB_OTEL_TRACES_ERR_RESOURCE_SPANS_MISSING},
120+
{"FLB_OTEL_TRACES_ERR_UNEXPECTED_RESOURCE_SPANS_TYPE", FLB_OTEL_TRACES_ERR_UNEXPECTED_RESOURCE_SPANS_TYPE},
121+
{"FLB_OTEL_TRACES_ERR_UNEXPECTED_RESOURCE_SPANS_ENTRY_TYPE", FLB_OTEL_TRACES_ERR_UNEXPECTED_RESOURCE_SPANS_ENTRY_TYPE},
122+
{"FLB_OTEL_TRACES_ERR_SCOPE_SPANS_MISSING", FLB_OTEL_TRACES_ERR_SCOPE_SPANS_MISSING},
123+
{"FLB_OTEL_TRACES_ERR_UNEXPECTED_SCOPE_SPANS_TYPE", FLB_OTEL_TRACES_ERR_UNEXPECTED_SCOPE_SPANS_TYPE},
124+
{"FLB_OTEL_TRACES_ERR_UNEXPECTED_SCOPE_SPANS_ENTRY_TYPE",FLB_OTEL_TRACES_ERR_UNEXPECTED_SCOPE_SPANS_ENTRY_TYPE},
125+
{"FLB_OTEL_TRACES_ERR_SPANS_MISSING", FLB_OTEL_TRACES_ERR_SPANS_MISSING},
126+
{"FLB_OTEL_TRACES_ERR_UNEXPECTED_SPANS_TYPE", FLB_OTEL_TRACES_ERR_UNEXPECTED_SPANS_TYPE},
127+
{"FLB_OTEL_TRACES_ERR_UNEXPECTED_SPAN_ENTRY_TYPE", FLB_OTEL_TRACES_ERR_UNEXPECTED_SPAN_ENTRY_TYPE},
128+
{"FLB_OTEL_TRACES_ERR_SPAN_NAME_MISSING", FLB_OTEL_TRACES_ERR_SPAN_NAME_MISSING},
129+
{"FLB_OTEL_TRACES_ERR_INVALID_ATTRIBUTES", FLB_OTEL_TRACES_ERR_INVALID_ATTRIBUTES},
130+
{"FLB_OTEL_TRACES_ERR_INVALID_TRACE_ID", FLB_OTEL_TRACES_ERR_INVALID_TRACE_ID},
131+
{"FLB_OTEL_TRACES_ERR_INVALID_SPAN_ID", FLB_OTEL_TRACES_ERR_INVALID_SPAN_ID},
132+
{"FLB_OTEL_TRACES_ERR_INVALID_PARENT_SPAN_ID", FLB_OTEL_TRACES_ERR_INVALID_PARENT_SPAN_ID},
133+
{"FLB_OTEL_TRACES_ERR_INVALID_EVENT_ENTRY", FLB_OTEL_TRACES_ERR_INVALID_EVENT_ENTRY},
134+
{"FLB_OTEL_TRACES_ERR_INVALID_EVENT_TIMESTAMP", FLB_OTEL_TRACES_ERR_INVALID_EVENT_TIMESTAMP},
135+
{"FLB_OTEL_TRACES_ERR_INVALID_LINK_ENTRY", FLB_OTEL_TRACES_ERR_INVALID_LINK_ENTRY},
136+
{"FLB_OTEL_TRACES_ERR_INVALID_LINK_TRACE_ID", FLB_OTEL_TRACES_ERR_INVALID_LINK_TRACE_ID},
137+
{"FLB_OTEL_TRACES_ERR_INVALID_LINK_SPAN_ID", FLB_OTEL_TRACES_ERR_INVALID_LINK_SPAN_ID},
138+
{"FLB_OTEL_TRACES_ERR_STATUS_FAILURE", FLB_OTEL_TRACES_ERR_STATUS_FAILURE},
91139
{"GENERIC_ERROR", FLB_OTEL_LOGS_ERR_GENERIC_ERROR},
140+
{"FLB_OTEL_TRACES_ERR_GENERIC_ERROR", FLB_OTEL_TRACES_ERR_GENERIC_ERROR},
92141

93142
/* ---- */
94143
{"FLB_OTEL_LOGS_ERR_EMPTY_PAYLOAD", FLB_OTEL_LOGS_ERR_EMPTY_PAYLOAD},

0 commit comments

Comments
 (0)