Skip to content

Commit e495b43

Browse files
committed
Update usage of ABI 2 to match breaking changes in opentelemetry-cpp v1.16.0 release.
See https://github.com/open-telemetry/opentelemetry-cpp/blob/v1.16.0/CHANGELOG.md#1160-2024-06-21 for details on the v1.16.0 changes. Fixes #465.
1 parent d953d32 commit e495b43

File tree

2 files changed

+13
-2
lines changed

2 files changed

+13
-2
lines changed

exporters/fluentd/test/trace/fluentd_recordable_test.cc

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -380,11 +380,12 @@ TEST(FluentdExporter, SendTraceEvents) {
380380
auto processor = std::unique_ptr<SpanProcessor>(
381381
new sdktrace::SimpleSpanProcessor(std::move(exporter)));
382382

383-
auto provider = nostd::shared_ptr<trace::TracerProvider>(
383+
auto provider = std::shared_ptr<sdktrace::TracerProvider>(
384384
new TracerProvider(std::move(processor)));
385385

386+
std::shared_ptr<trace::TracerProvider> api_provider = provider;
386387
// Set the global trace provider
387-
opentelemetry::trace::Provider::SetTracerProvider(provider);
388+
opentelemetry::trace::Provider::SetTracerProvider(api_provider);
388389

389390
std::string providerName = "MyInstrumentationName";
390391
auto tracer = provider->GetTracer(providerName);
@@ -426,8 +427,16 @@ TEST(FluentdExporter, SendTraceEvents) {
426427
}
427428
span1->End(); // end MySpanL1
428429

430+
#if OPENTELEMETRY_ABI_VERSION_NO == 1
429431
tracer->ForceFlushWithMicroseconds(1000);
430432
tracer->CloseWithMicroseconds(0);
433+
#else
434+
/* In ABI 2 >= otel-cpp v1.16.0, only the sdk Tracer objects
435+
* have the ForceFlush...() and Close...() methods. The Close()
436+
* method simply calls ForceFlush(). Use the SDK provider ForceFlush() instead.
437+
*/
438+
provider->ForceFlush();
439+
#endif /* OPENTELEMETRY_ABI_VERSION_NO == 1 */
431440

432441
testServer.WaitForEvents(6, 200); // 6 batches must arrive in 200ms
433442
testServer.Stop();

instrumentation/otel-webserver-module/test/unit/mocks/mock_OpenTelemetry.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,10 @@ class MockTracer : public opentelemetry::trace::Tracer
5252
MOCK_METHOD(nostd::shared_ptr<trace::Span>, StartSpanInternal,
5353
(nostd::string_view name, trace::SpanKind kind));
5454

55+
#if OPENTELEMETRY_ABI_VERSION_NO == 1
5556
MOCK_METHOD(void, ForceFlushWithMicroseconds, (uint64_t timeout), (noexcept));
5657
MOCK_METHOD(void, CloseWithMicroseconds, (uint64_t timeout), (noexcept));
58+
#endif /* OPENTELEMETRY_ABI_VERSION_NO == 1 */
5759
};
5860

5961
class MockSpan : public opentelemetry::trace::Span

0 commit comments

Comments
 (0)