Skip to content

Commit 3abfd3f

Browse files
committed
Add trace unit tests.
1 parent dc20db2 commit 3abfd3f

File tree

2 files changed

+779
-1
lines changed

2 files changed

+779
-1
lines changed

sdk/src/configuration/configuration_parser.cc

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,22 @@ namespace configuration
101101
// FIXME: proper sizing
102102
constexpr size_t MAX_SAMPLER_DEPTH = 10;
103103

104+
static OtlpHttpEncoding ParseOtlpHttpEncoding(const std::string &name)
105+
{
106+
if (name == "protobuf")
107+
{
108+
return OtlpHttpEncoding::protobuf;
109+
}
110+
111+
if (name == "json")
112+
{
113+
return OtlpHttpEncoding::json;
114+
}
115+
116+
OTEL_INTERNAL_LOG_ERROR("OtlpHttpEncoding: name = " << name);
117+
throw InvalidSchemaException("Illegal OtlpHttpEncoding");
118+
}
119+
104120
static std::unique_ptr<StringArrayConfiguration> ParseStringArrayConfiguration(
105121
const std::unique_ptr<DocumentNode> &node)
106122
{
@@ -199,7 +215,9 @@ ParseOtlpHttpLogRecordExporterConfiguration(const std::unique_ptr<DocumentNode>
199215
model->headers_list = node->GetString("headers_list", "");
200216
model->compression = node->GetString("compression", "");
201217
model->timeout = node->GetInteger("timeout", 10000);
202-
// FIXME: encoding
218+
219+
std::string encoding = node->GetString("encoding", "protobuf");
220+
model->encoding = ParseOtlpHttpEncoding(encoding);
203221

204222
return model;
205223
}
@@ -494,6 +512,9 @@ ParseOtlpHttpPushMetricExporterConfiguration(const std::unique_ptr<DocumentNode>
494512
model->default_histogram_aggregation =
495513
ParseDefaultHistogramAggregation(default_histogram_aggregation);
496514

515+
std::string encoding = node->GetString("encoding", "protobuf");
516+
model->encoding = ParseOtlpHttpEncoding(encoding);
517+
497518
return model;
498519
}
499520

@@ -1213,6 +1234,9 @@ static std::unique_ptr<OtlpHttpSpanExporterConfiguration> ParseOtlpHttpSpanExpor
12131234
model->compression = node->GetString("compression", "");
12141235
model->timeout = node->GetInteger("timeout", 10000);
12151236

1237+
std::string encoding = node->GetString("encoding", "protobuf");
1238+
model->encoding = ParseOtlpHttpEncoding(encoding);
1239+
12161240
return model;
12171241
}
12181242

0 commit comments

Comments
 (0)