Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions ci/do_ci.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -425,6 +425,7 @@ switch ($action) {
"-DCMAKE_INSTALL_PREFIX=$INSTALL_TEST_DIR" `
"-C $SRC_DIR/test_common/cmake/all-options-abiv1-preview.cmake" `
-DOPENTELEMETRY_INSTALL=ON `
-DWITH_CONFIGURATION=OFF `
-DWITH_OPENTRACING=OFF `
-DWITH_OTLP_GRPC_SSL_MTLS_PREVIEW=OFF `
-DWITH_OTLP_GRPC_CREDENTIAL_PREVIEW=OFF `
Expand Down
7 changes: 7 additions & 0 deletions ci/do_ci.sh
Original file line number Diff line number Diff line change
Expand Up @@ -457,17 +457,24 @@ elif [[ "$1" == "cmake.install.test" ]]; then
EXPECTED_COMPONENTS=(
"api"
"sdk"
"configuration"
"ext_common"
"ext_http_curl"
"exporters_in_memory"
"exporters_ostream"
"exporters_ostream_builder"
"exporters_otlp_common"
"exporters_otlp_file"
"exporters_otlp_file_builder"
"exporters_otlp_grpc"
"exporters_otlp_grpc_builder"
"exporters_otlp_http"
"exporters_otlp_http_builder"
"exporters_prometheus"
"exporters_prometheus_builder"
"exporters_elasticsearch"
"exporters_zipkin"
"exporters_zipkin_builder"
)
EXPECTED_COMPONENTS_STRING=$(IFS=\;; echo "${EXPECTED_COMPONENTS[*]}")
mkdir -p "${BUILD_DIR}/install_test"
Expand Down
6 changes: 4 additions & 2 deletions cmake/ryml.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,10 @@ if(NOT ryml_FOUND)
)
set(ryml_PROVIDER "fetch_repository")

set(RYML_ENABLE_TESTING OFF CACHE BOOL "" FORCE)
set(RYML_ENABLE_INSTALL OFF CACHE BOOL "" FORCE)
set(RYML_BUILD_TOOLS OFF CACHE BOOL "" FORCE)
set(RYML_BUILD_API OFF CACHE BOOL "" FORCE)
set(RYML_DBG OFF CACHE BOOL "" FORCE)
set(RYML_INSTALL ${OPENTELEMETRY_INSTALL} CACHE BOOL "" FORCE)

FetchContent_MakeAvailable(ryml)

Expand Down
22 changes: 12 additions & 10 deletions examples/configuration/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
# Copyright The OpenTelemetry Authors
# SPDX-License-Identifier: Apache-2.0

if(DEFINED OPENTELEMETRY_BUILD_DLL)
add_definitions(-DOPENTELEMETRY_BUILD_IMPORT_DLL)
endif()

add_executable(
example_yaml
main.cc
Expand Down Expand Up @@ -32,7 +28,7 @@ target_link_libraries(
opentelemetry-cpp::ostream_log_record_exporter_builder)

if(WITH_OTLP_HTTP)
add_definitions(-DOTEL_HAVE_OTLP_HTTP)
target_compile_definitions(example_yaml PRIVATE OTEL_HAVE_OTLP_HTTP)
target_link_libraries(
example_yaml
PRIVATE opentelemetry-cpp::otlp_http_exporter_builder
Expand All @@ -41,16 +37,16 @@ if(WITH_OTLP_HTTP)
endif()

if(WITH_OTLP_GRPC)
add_definitions(-DOTEL_HAVE_OTLP_GRPC)
target_compile_definitions(example_yaml PRIVATE OTEL_HAVE_OTLP_GRPC)
target_link_libraries(
example_yaml
PRIVATE opentelemetry-cpp::otlp_grpc_exporter_builder
opentelemetry-cpp::otlp_grpc_log_record_exporter_builder
opentelemetry-cpp::otlp_grpc_metrics_exporter_builder)
opentelemetry-cpp::otlp_grpc_metric_exporter_builder)
endif()

if(WITH_OTLP_FILE)
add_definitions(-DOTEL_HAVE_OTLP_FILE)
target_compile_definitions(example_yaml PRIVATE OTEL_HAVE_OTLP_FILE)
target_link_libraries(
example_yaml
PRIVATE opentelemetry-cpp::otlp_file_exporter_builder
Expand All @@ -59,18 +55,20 @@ if(WITH_OTLP_FILE)
endif()

if(WITH_ZIPKIN)
add_definitions(-DOTEL_HAVE_ZIPKIN)
target_compile_definitions(example_yaml PRIVATE OTEL_HAVE_ZIPKIN)
target_link_libraries(
example_yaml PRIVATE opentelemetry-cpp::zipkin_trace_exporter_builder)
endif()

if(WITH_PROMETHEUS)
add_definitions(-DOTEL_HAVE_PROMETHEUS)
target_compile_definitions(example_yaml PRIVATE OTEL_HAVE_PROMETHEUS)
target_link_libraries(example_yaml
PRIVATE opentelemetry-cpp::prometheus_exporter_builder)
endif()

if(DEFINED OPENTELEMETRY_BUILD_DLL)
target_compile_definitions(example_yaml
PRIVATE OPENTELEMETRY_BUILD_IMPORT_DLL)
target_link_libraries(example_yaml
PRIVATE opentelemetry-cpp::opentelemetry_cpp)
else()
Expand All @@ -79,3 +77,7 @@ else()
PRIVATE opentelemetry-cpp::configuration opentelemetry-cpp::common
opentelemetry-cpp::trace opentelemetry-cpp::logs)
endif()

if(BUILD_TESTING)
add_test(NAME examples.example_yaml COMMAND "$<TARGET_FILE:example_yaml>")
endif()
48 changes: 30 additions & 18 deletions exporters/otlp/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -138,8 +138,10 @@ if(WITH_OTLP_GRPC)
PROPERTIES EXPORT_NAME otlp_grpc_exporter_builder)
set_target_version(opentelemetry_exporter_otlp_grpc_builder)

target_link_libraries(opentelemetry_exporter_otlp_grpc_builder
PUBLIC opentelemetry_exporter_otlp_grpc)
target_link_libraries(
opentelemetry_exporter_otlp_grpc_builder
PUBLIC opentelemetry_exporter_otlp_grpc
opentelemetry_exporter_otlp_builder_utils)

list(APPEND OPENTELEMETRY_OTLP_GRPC_BUILDER_TARGETS
opentelemetry_exporter_otlp_grpc_builder)
Expand Down Expand Up @@ -179,8 +181,10 @@ if(WITH_OTLP_GRPC)
PROPERTIES EXPORT_NAME otlp_grpc_log_record_exporter_builder)
set_target_version(opentelemetry_exporter_otlp_grpc_log_builder)

target_link_libraries(opentelemetry_exporter_otlp_grpc_log_builder
PUBLIC opentelemetry_exporter_otlp_grpc_log)
target_link_libraries(
opentelemetry_exporter_otlp_grpc_log_builder
PUBLIC opentelemetry_exporter_otlp_grpc_log
opentelemetry_exporter_otlp_builder_utils)

list(APPEND OPENTELEMETRY_OTLP_GRPC_BUILDER_TARGETS
opentelemetry_exporter_otlp_grpc_log_builder)
Expand Down Expand Up @@ -208,23 +212,25 @@ if(WITH_OTLP_GRPC)
opentelemetry_exporter_otlp_grpc_metrics)

#
# opentelemetry_exporter_otlp_grpc_metrics_builder
# opentelemetry_exporter_otlp_grpc_metric_builder
#

add_library(
opentelemetry_exporter_otlp_grpc_metrics_builder
opentelemetry_exporter_otlp_grpc_metric_builder
${OPENTELEMETRY_OTLP_TARGETS_LIB_TYPE} src/otlp_grpc_push_metric_builder.cc)

set_target_properties(
opentelemetry_exporter_otlp_grpc_metrics_builder
PROPERTIES EXPORT_NAME otlp_grpc_metrics_exporter_builder)
set_target_version(opentelemetry_exporter_otlp_grpc_metrics_builder)
opentelemetry_exporter_otlp_grpc_metric_builder
PROPERTIES EXPORT_NAME otlp_grpc_metric_exporter_builder)
set_target_version(opentelemetry_exporter_otlp_grpc_metric_builder)

target_link_libraries(opentelemetry_exporter_otlp_grpc_metrics_builder
PUBLIC opentelemetry_exporter_otlp_grpc_metrics)
target_link_libraries(
opentelemetry_exporter_otlp_grpc_metric_builder
PUBLIC opentelemetry_exporter_otlp_grpc_metrics
opentelemetry_exporter_otlp_builder_utils)

list(APPEND OPENTELEMETRY_OTLP_GRPC_BUILDER_TARGETS
opentelemetry_exporter_otlp_grpc_metrics_builder)
opentelemetry_exporter_otlp_grpc_metric_builder)

endif()

Expand Down Expand Up @@ -445,8 +451,10 @@ if(WITH_OTLP_FILE)
PROPERTIES EXPORT_NAME otlp_file_exporter_builder)
set_target_version(opentelemetry_exporter_otlp_file_builder)

target_link_libraries(opentelemetry_exporter_otlp_file_builder
PUBLIC opentelemetry_exporter_otlp_file)
target_link_libraries(
opentelemetry_exporter_otlp_file_builder
PUBLIC opentelemetry_exporter_otlp_file
opentelemetry_exporter_otlp_builder_utils)

list(APPEND OPENTELEMETRY_OTLP_FILE_BUILDER_TARGETS
opentelemetry_exporter_otlp_file_builder)
Expand Down Expand Up @@ -486,8 +494,10 @@ if(WITH_OTLP_FILE)
PROPERTIES EXPORT_NAME otlp_file_log_record_exporter_builder)
set_target_version(opentelemetry_exporter_otlp_file_log_builder)

target_link_libraries(opentelemetry_exporter_otlp_file_log_builder
PUBLIC opentelemetry_exporter_otlp_file_log)
target_link_libraries(
opentelemetry_exporter_otlp_file_log_builder
PUBLIC opentelemetry_exporter_otlp_file_log
opentelemetry_exporter_otlp_builder_utils)

list(APPEND OPENTELEMETRY_OTLP_FILE_BUILDER_TARGETS
opentelemetry_exporter_otlp_file_log_builder)
Expand Down Expand Up @@ -527,8 +537,10 @@ if(WITH_OTLP_FILE)
PROPERTIES EXPORT_NAME otlp_file_metric_exporter_builder)
set_target_version(opentelemetry_exporter_otlp_file_metric_builder)

target_link_libraries(opentelemetry_exporter_otlp_file_metric_builder
PUBLIC opentelemetry_exporter_otlp_file_metric)
target_link_libraries(
opentelemetry_exporter_otlp_file_metric_builder
PUBLIC opentelemetry_exporter_otlp_file_metric
opentelemetry_exporter_otlp_builder_utils)

list(APPEND OPENTELEMETRY_OTLP_FILE_BUILDER_TARGETS
opentelemetry_exporter_otlp_file_metric_builder)
Expand Down
17 changes: 10 additions & 7 deletions exporters/otlp/src/otlp_builder_utils.cc
Original file line number Diff line number Diff line change
Expand Up @@ -79,16 +79,19 @@ OtlpHeaders OtlpBuilderUtils::ConvertHeadersConfigurationModel(
}
}

// Second, scan headers, which has high priority.
for (const auto &kv : model->kv_map)
if (model != nullptr)
{
const auto &search = headers.find(kv.first);
if (search != headers.end())
// Second, scan headers, which has high priority.
for (const auto &kv : model->kv_map)
{
headers.erase(search);
}
const auto &search = headers.find(kv.first);
if (search != headers.end())
{
headers.erase(search);
}

headers.emplace(std::make_pair(kv.first, kv.second));
headers.emplace(std::make_pair(kv.first, kv.second));
}
}

return headers;
Expand Down
27 changes: 27 additions & 0 deletions install/test/cmake/component_tests/configuration/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Copyright The OpenTelemetry Authors
# SPDX-License-Identifier: Apache-2.0

cmake_minimum_required(VERSION 3.16)
project(opentelemetry-cpp-configuration-install-test LANGUAGES CXX)

find_package(opentelemetry-cpp REQUIRED COMPONENTS configuration
exporters_ostream_builder)

if(NOT TARGET Threads::Threads)
message(FATAL_ERROR "Threads::Threads target not found")
endif()

find_package(GTest CONFIG REQUIRED)
include(GoogleTest)

add_executable(configuration_test ${INSTALL_TEST_SRC_DIR}/test_configuration.cc)
target_link_libraries(
configuration_test
PRIVATE opentelemetry-cpp::configuration
opentelemetry-cpp::ostream_log_record_exporter_builder
opentelemetry-cpp::ostream_metrics_exporter_builder
opentelemetry-cpp::ostream_span_exporter_builder
GTest::gtest
GTest::gtest_main)

gtest_discover_tests(configuration_test)
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Copyright The OpenTelemetry Authors
# SPDX-License-Identifier: Apache-2.0

cmake_minimum_required(VERSION 3.16)
project(opentelemetry-cpp-exporters-ostream-builder-install-test LANGUAGES CXX)

find_package(opentelemetry-cpp REQUIRED COMPONENTS exporters_ostream_builder)

find_package(GTest CONFIG REQUIRED)
include(GoogleTest)

add_executable(exporters_ostream_builder_test
${INSTALL_TEST_SRC_DIR}/test_exporters_ostream_builder.cc)
target_link_libraries(
exporters_ostream_builder_test
PRIVATE opentelemetry-cpp::ostream_log_record_exporter_builder
opentelemetry-cpp::ostream_metrics_exporter_builder
opentelemetry-cpp::ostream_span_exporter_builder
GTest::gtest
GTest::gtest_main)

gtest_discover_tests(exporters_ostream_builder_test)
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Copyright The OpenTelemetry Authors
# SPDX-License-Identifier: Apache-2.0

cmake_minimum_required(VERSION 3.16)
project(opentelemetry-cpp-exporters-otlp-file-builder-install-test
LANGUAGES CXX)

find_package(opentelemetry-cpp REQUIRED COMPONENTS exporters_otlp_file_builder)

if(NOT TARGET protobuf::libprotobuf)
message(FATAL_ERROR "protobuf::libprotobuf target not found")
endif()

find_package(GTest CONFIG REQUIRED)
include(GoogleTest)

add_executable(exporters_otlp_file_builder_test
${INSTALL_TEST_SRC_DIR}/test_exporters_otlp_file_builder.cc)
target_link_libraries(
exporters_otlp_file_builder_test
PRIVATE opentelemetry-cpp::otlp_file_exporter_builder
opentelemetry-cpp::otlp_file_log_record_exporter_builder
opentelemetry-cpp::otlp_file_metric_exporter_builder
GTest::gtest
GTest::gtest_main)

gtest_discover_tests(exporters_otlp_file_builder_test)
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Copyright The OpenTelemetry Authors
# SPDX-License-Identifier: Apache-2.0

cmake_minimum_required(VERSION 3.16)
project(opentelemetry-cpp-exporters-otlp-grpc-builder-install-test
LANGUAGES CXX)

find_package(opentelemetry-cpp REQUIRED COMPONENTS exporters_otlp_grpc_builder)

if(NOT TARGET protobuf::libprotobuf)
message(FATAL_ERROR "protobuf::libprotobuf target not found")
endif()

find_package(GTest CONFIG REQUIRED)
include(GoogleTest)

add_executable(exporters_otlp_grpc_builder_test
${INSTALL_TEST_SRC_DIR}/test_exporters_otlp_grpc_builder.cc)
target_link_libraries(
exporters_otlp_grpc_builder_test
PRIVATE opentelemetry-cpp::otlp_grpc_exporter_builder
opentelemetry-cpp::otlp_grpc_log_record_exporter_builder
opentelemetry-cpp::otlp_grpc_metric_exporter_builder
GTest::gtest
GTest::gtest_main)

gtest_discover_tests(exporters_otlp_grpc_builder_test)
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Copyright The OpenTelemetry Authors
# SPDX-License-Identifier: Apache-2.0

cmake_minimum_required(VERSION 3.16)
project(opentelemetry-cpp-exporters-otlp-http-builder-install-test
LANGUAGES CXX)

find_package(opentelemetry-cpp REQUIRED COMPONENTS exporters_otlp_http_builder)

if(NOT TARGET protobuf::libprotobuf)
message(FATAL_ERROR "protobuf::libprotobuf target not found")
endif()

find_package(GTest CONFIG REQUIRED)
include(GoogleTest)

add_executable(exporters_otlp_http_builder_test
${INSTALL_TEST_SRC_DIR}/test_exporters_otlp_http_builder.cc)
target_link_libraries(
exporters_otlp_http_builder_test
PRIVATE opentelemetry-cpp::otlp_http_exporter_builder
opentelemetry-cpp::otlp_http_log_record_exporter_builder
opentelemetry-cpp::otlp_http_metric_exporter_builder
GTest::gtest
GTest::gtest_main)

gtest_discover_tests(exporters_otlp_http_builder_test)
Loading
Loading