From b7efbd1846717f8fdb41b8a5461ad9f2056bd3a1 Mon Sep 17 00:00:00 2001 From: Tom Tan Date: Fri, 30 May 2025 09:36:10 -0700 Subject: [PATCH 1/7] [Geneva] Update opentelemetry to 1.21.0 --- .github/workflows/fluentd.yml | 2 +- .github/workflows/geneva_metrics.yml | 2 +- .github/workflows/user_events.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/fluentd.yml b/.github/workflows/fluentd.yml index 0aea2aa45..804c733d5 100644 --- a/.github/workflows/fluentd.yml +++ b/.github/workflows/fluentd.yml @@ -29,7 +29,7 @@ jobs: uses: actions/checkout@v3 with: repository: "open-telemetry/opentelemetry-cpp" - ref: "v1.19.0" + ref: "v1.21.0" path: "opentelemetry-cpp" submodules: "recursive" - name: setup dependencies diff --git a/.github/workflows/geneva_metrics.yml b/.github/workflows/geneva_metrics.yml index c39ec32de..de4bb2db2 100644 --- a/.github/workflows/geneva_metrics.yml +++ b/.github/workflows/geneva_metrics.yml @@ -24,7 +24,7 @@ jobs: uses: actions/checkout@v3 with: repository: "open-telemetry/opentelemetry-cpp" - ref: "v1.20.0" + ref: "v1.21.0" path: "otel_cpp" submodules: "recursive" - name: setup diff --git a/.github/workflows/user_events.yml b/.github/workflows/user_events.yml index 816f24ca5..2e95a7363 100644 --- a/.github/workflows/user_events.yml +++ b/.github/workflows/user_events.yml @@ -27,7 +27,7 @@ jobs: uses: actions/checkout@v3 with: repository: "open-telemetry/opentelemetry-cpp" - ref: "v1.20.0" + ref: "v1.21.0" path: "opentelemetry-cpp" submodules: "recursive" - name: setup dependencies From 1670d0e364faf013cc3e59eae61c6d15439c4940 Mon Sep 17 00:00:00 2001 From: Tom Tan Date: Fri, 30 May 2025 09:50:48 -0700 Subject: [PATCH 2/7] Update submodule for geneva-trace --- exporters/geneva-trace/third_party/opentelemetry-cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exporters/geneva-trace/third_party/opentelemetry-cpp b/exporters/geneva-trace/third_party/opentelemetry-cpp index 6175aa0b2..b9cf499ff 160000 --- a/exporters/geneva-trace/third_party/opentelemetry-cpp +++ b/exporters/geneva-trace/third_party/opentelemetry-cpp @@ -1 +1 @@ -Subproject commit 6175aa0b213eea053247e43b4f35b8d201fa356e +Subproject commit b9cf499ff5715433848b316059714b5c59af1f2c From 64277106bb001da35d8692e9d2b4f098287000df Mon Sep 17 00:00:00 2001 From: Tom Tan Date: Thu, 5 Jun 2025 11:47:15 -0700 Subject: [PATCH 3/7] Update cmake to support component --- exporters/fluentd/CMakeLists.txt | 41 ++++++++++++++++++--------- exporters/geneva-trace/CMakeLists.txt | 16 +++++++++++ exporters/geneva/CMakeLists.txt | 22 ++++++++++++++ exporters/user_events/CMakeLists.txt | 19 +++++++++++++ 4 files changed, 85 insertions(+), 13 deletions(-) diff --git a/exporters/fluentd/CMakeLists.txt b/exporters/fluentd/CMakeLists.txt index 919ba189a..e604be960 100644 --- a/exporters/fluentd/CMakeLists.txt +++ b/exporters/fluentd/CMakeLists.txt @@ -117,19 +117,34 @@ if (WITH_EXAMPLES) endif() if(OPENTELEMETRY_INSTALL) - install( - TARGETS opentelemetry_exporter_geneva_logs - opentelemetry_exporter_geneva_trace - EXPORT "${PROJECT_NAME}-target" - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) - - install( - DIRECTORY include/opentelemetry/exporters/ - DESTINATION include/opentelemetry/exporters/ - FILES_MATCHING - PATTERN "*.h") + if(MAIN_PROJECT) + install( + TARGETS opentelemetry_exporter_geneva_logs + opentelemetry_exporter_geneva_trace + EXPORT "${PROJECT_NAME}-target" + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) + + install( + DIRECTORY include/opentelemetry/exporters/ + DESTINATION include/opentelemetry/exporters/ + FILES_MATCHING + PATTERN "*.h") + else() + otel_add_component( + COMPONENT + exporters_geneva_fluentd + TARGETS + opentelemetry_exporter_geneva_logs + opentelemetry_exporter_geneva_trace + FILES_DIRECTORY + "include/opentelemetry/exporters/" + FILES_DESTINATION + "include/opentelemetry/exporters" + FILES_MATCHING + PATTERN "*.h") + endif() endif() if(BUILD_TESTING) diff --git a/exporters/geneva-trace/CMakeLists.txt b/exporters/geneva-trace/CMakeLists.txt index 3196bb611..5d8d407b0 100644 --- a/exporters/geneva-trace/CMakeLists.txt +++ b/exporters/geneva-trace/CMakeLists.txt @@ -42,4 +42,20 @@ if(OPENTELEMETRY_INSTALL) NAMESPACE "${PROJECT_NAME}::" DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}") endif() + +set_target_properties(opentelemetry_exporter_geneva_trace PROPERTIES EXPORT_NAME opentelemetry_exporter_geneva_trace) +set_target_properties(opentelemetry_exporter_geneva_logs PROPERTIES EXPORT_NAME opentelemetry_exporter_geneva_logs) + otel_add_component( + COMPONENT + exporters_geneva_trace_logs + TARGETS + opentelemetry_exporter_geneva_trace + opentelemetry_exporter_geneva_logs + FILES_DIRECTORY + "include/opentelemetry/exporters/geneva" + FILES_DESTINATION + "include/opentelemetry/exporters/geneva" + FILES_MATCHING + PATTERN + "*.h") endif() \ No newline at end of file diff --git a/exporters/geneva/CMakeLists.txt b/exporters/geneva/CMakeLists.txt index 2bca758e3..10548706a 100644 --- a/exporters/geneva/CMakeLists.txt +++ b/exporters/geneva/CMakeLists.txt @@ -91,6 +91,9 @@ if(BUILD_TESTING) endif() if(OPENTELEMETRY_INSTALL) + +if(MAIN_PROJECT) + install( TARGETS opentelemetry_exporter_geneva_metrics EXPORT "${PROJECT_NAME}-target" @@ -103,6 +106,25 @@ if(OPENTELEMETRY_INSTALL) DESTINATION include/opentelemetry/exporters FILES_MATCHING PATTERN "*.h") + +else() + + set_target_properties(opentelemetry_exporter_geneva_metrics PROPERTIES EXPORT_NAME opentelemetry_exporter_geneva_metrics) + + otel_add_component( + COMPONENT + exporters_geneva_metrics + TARGETS + opentelemetry_exporter_geneva_metrics + FILES_DIRECTORY + "include/opentelemetry/exporters/geneva" + FILES_DESTINATION + "include/opentelemetry/exporters" + FILES_MATCHING + PATTERN + "*.h") + +endif() endif() if(WITH_EXAMPLES) diff --git a/exporters/user_events/CMakeLists.txt b/exporters/user_events/CMakeLists.txt index 9d553c3a3..2150529af 100644 --- a/exporters/user_events/CMakeLists.txt +++ b/exporters/user_events/CMakeLists.txt @@ -136,6 +136,8 @@ if(WITH_BENCHMARK) opentelemetry_exporter_user_events_logs) endif() +if(MAIN_PROJECT) + install( TARGETS opentelemetry_exporter_user_events_logs EXPORT "${PROJECT_NAME}-target" @@ -148,3 +150,20 @@ install( DESTINATION include/opentelemetry/exporters FILES_MATCHING PATTERN "*.h") + +else() + +otel_add_component( + COMPONENT + exporters_user_events + TARGETS + opentelemetry_exporter_user_events_logs + opentelemetry_exporter_user_events_metrics + FILES_DIRECTORY + "include/opentelemetry/exporters/user_events" + FILES_DESTINATION + "include/opentelemetry/exporters" + FILES_MATCHING + PATTERN + "*.h") +endif() \ No newline at end of file From 7b2e7505809c1edf8ef700b28fe8e9109e68df81 Mon Sep 17 00:00:00 2001 From: Tom Tan Date: Tue, 10 Jun 2025 10:23:17 -0700 Subject: [PATCH 4/7] Set export name for fluentd exporter --- exporters/fluentd/CMakeLists.txt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/exporters/fluentd/CMakeLists.txt b/exporters/fluentd/CMakeLists.txt index e604be960..ada242cc6 100644 --- a/exporters/fluentd/CMakeLists.txt +++ b/exporters/fluentd/CMakeLists.txt @@ -132,6 +132,14 @@ if(OPENTELEMETRY_INSTALL) FILES_MATCHING PATTERN "*.h") else() + set_target_properties( + opentelemetry_exporter_geneva_trace + PROPERTIES + EXPORT_NAME opentelemetry_exporter_geneva_trace) + set_target_properties( + opentelemetry_exporter_geneva_logs + PROPERTIES + EXPORT_NAME opentelemetry_exporter_geneva_logs) otel_add_component( COMPONENT exporters_geneva_fluentd From f1315ae53854621c7c08b443fcd97e4bb4d7e3ca Mon Sep 17 00:00:00 2001 From: Tom Tan Date: Tue, 10 Jun 2025 10:28:42 -0700 Subject: [PATCH 5/7] Set export names for user_events exporter --- exporters/user_events/CMakeLists.txt | 36 ++++++++++++++++------------ 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/exporters/user_events/CMakeLists.txt b/exporters/user_events/CMakeLists.txt index 2150529af..b2576f714 100644 --- a/exporters/user_events/CMakeLists.txt +++ b/exporters/user_events/CMakeLists.txt @@ -150,20 +150,26 @@ install( DESTINATION include/opentelemetry/exporters FILES_MATCHING PATTERN "*.h") - else() - -otel_add_component( - COMPONENT - exporters_user_events - TARGETS - opentelemetry_exporter_user_events_logs - opentelemetry_exporter_user_events_metrics - FILES_DIRECTORY - "include/opentelemetry/exporters/user_events" - FILES_DESTINATION - "include/opentelemetry/exporters" - FILES_MATCHING - PATTERN - "*.h") + set_target_properties( + opentelemetry_exporter_user_events_logs + PROPERTIES + EXPORT_NAME opentelemetry_exporter_user_events_logs) + set_target_properties( + opentelemetry_exporter_user_events_metrics + PROPERTIES + EXPORT_NAME opentelemetry_exporter_user_events_metrics) + otel_add_component( + COMPONENT + exporters_user_events + TARGETS + opentelemetry_exporter_user_events_logs + opentelemetry_exporter_user_events_metrics + FILES_DIRECTORY + "include/opentelemetry/exporters/user_events" + FILES_DESTINATION + "include/opentelemetry/exporters" + FILES_MATCHING + PATTERN + "*.h") endif() \ No newline at end of file From 4cd124061df795ca2ea20c1ac5a3985269937064 Mon Sep 17 00:00:00 2001 From: Tom Tan Date: Tue, 10 Jun 2025 10:34:13 -0700 Subject: [PATCH 6/7] Fix cmake statements alignment --- exporters/geneva-trace/CMakeLists.txt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/exporters/geneva-trace/CMakeLists.txt b/exporters/geneva-trace/CMakeLists.txt index 5d8d407b0..22dcce801 100644 --- a/exporters/geneva-trace/CMakeLists.txt +++ b/exporters/geneva-trace/CMakeLists.txt @@ -43,8 +43,13 @@ if(OPENTELEMETRY_INSTALL) DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}") endif() -set_target_properties(opentelemetry_exporter_geneva_trace PROPERTIES EXPORT_NAME opentelemetry_exporter_geneva_trace) -set_target_properties(opentelemetry_exporter_geneva_logs PROPERTIES EXPORT_NAME opentelemetry_exporter_geneva_logs) + set_target_properties( + opentelemetry_exporter_geneva_trace + PROPERTIES EXPORT_NAME opentelemetry_exporter_geneva_trace) + set_target_properties( + opentelemetry_exporter_geneva_logs + PROPERTIES EXPORT_NAME opentelemetry_exporter_geneva_logs) + otel_add_component( COMPONENT exporters_geneva_trace_logs From 627daecb0cb209e869d8eb51b03a67b557fc9866 Mon Sep 17 00:00:00 2001 From: Tom Tan Date: Tue, 10 Jun 2025 11:30:56 -0700 Subject: [PATCH 7/7] Guard otel_add_component in non MAIN_PROJECT for fluentd exporter --- exporters/geneva-trace/CMakeLists.txt | 60 ++++++++++++++------------- 1 file changed, 31 insertions(+), 29 deletions(-) diff --git a/exporters/geneva-trace/CMakeLists.txt b/exporters/geneva-trace/CMakeLists.txt index 22dcce801..167822d07 100644 --- a/exporters/geneva-trace/CMakeLists.txt +++ b/exporters/geneva-trace/CMakeLists.txt @@ -30,37 +30,39 @@ if(WITH_EXAMPLES) endif() if(OPENTELEMETRY_INSTALL) - install(DIRECTORY include/ DESTINATION include) + if(MAIN_PROJECT) + install(DIRECTORY include/ DESTINATION include) - install( - TARGETS opentelemetry_exporter_geneva_trace opentelemetry_exporter_geneva_logs - EXPORT "${PROJECT_NAME}-target") - - if(NOT MAIN_PROJECT) install( - EXPORT "${PROJECT_NAME}-target" - NAMESPACE "${PROJECT_NAME}::" - DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}") - endif() + TARGETS opentelemetry_exporter_geneva_trace opentelemetry_exporter_geneva_logs + EXPORT "${PROJECT_NAME}-target") - set_target_properties( - opentelemetry_exporter_geneva_trace - PROPERTIES EXPORT_NAME opentelemetry_exporter_geneva_trace) - set_target_properties( - opentelemetry_exporter_geneva_logs - PROPERTIES EXPORT_NAME opentelemetry_exporter_geneva_logs) + if(NOT MAIN_PROJECT) + install( + EXPORT "${PROJECT_NAME}-target" + NAMESPACE "${PROJECT_NAME}::" + DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}") + endif() + else() + set_target_properties( + opentelemetry_exporter_geneva_trace + PROPERTIES EXPORT_NAME opentelemetry_exporter_geneva_trace) + set_target_properties( + opentelemetry_exporter_geneva_logs + PROPERTIES EXPORT_NAME opentelemetry_exporter_geneva_logs) - otel_add_component( - COMPONENT - exporters_geneva_trace_logs - TARGETS - opentelemetry_exporter_geneva_trace - opentelemetry_exporter_geneva_logs - FILES_DIRECTORY - "include/opentelemetry/exporters/geneva" - FILES_DESTINATION - "include/opentelemetry/exporters/geneva" - FILES_MATCHING - PATTERN - "*.h") + otel_add_component( + COMPONENT + exporters_geneva_trace_logs + TARGETS + opentelemetry_exporter_geneva_trace + opentelemetry_exporter_geneva_logs + FILES_DIRECTORY + "include/opentelemetry/exporters/geneva" + FILES_DESTINATION + "include/opentelemetry/exporters/geneva" + FILES_MATCHING + PATTERN + "*.h") + endif() endif() \ No newline at end of file