diff --git a/exporters/geneva/CMakeLists.txt b/exporters/geneva/CMakeLists.txt index d32e79906..2bca758e3 100644 --- a/exporters/geneva/CMakeLists.txt +++ b/exporters/geneva/CMakeLists.txt @@ -22,7 +22,7 @@ endif() include_directories(include) -set(OTEL_GENEVA_EXPORTER_VERSION 1.0.1) +set(OTEL_GENEVA_EXPORTER_VERSION 1.0.0) set(OTEL_GENEVA_EXPORTER_MAJOR_VERSION 1) function(set_target_version target_name) @@ -38,10 +38,10 @@ if(WIN32) add_library( opentelemetry_exporter_geneva_metrics src/exporter.cc src/etw_data_transport.cc - src/socket_data_transport.cc) + src/unix_domain_socket_data_transport.cc) else() add_library(opentelemetry_exporter_geneva_metrics - src/exporter.cc src/socket_data_transport.cc) + src/exporter.cc src/unix_domain_socket_data_transport.cc) endif() if(MAIN_PROJECT) diff --git a/exporters/geneva/cmake/package.cmake b/exporters/geneva/cmake/package.cmake index b7bbdffc2..3f134a4fb 100644 --- a/exporters/geneva/cmake/package.cmake +++ b/exporters/geneva/cmake/package.cmake @@ -4,7 +4,7 @@ set(CPACK_PACKAGE_VENDOR "OpenTelemetry") set(CPACK_PACKAGE_CONTACT "OpenTelemetry-cpp") set(CPACK_PACKAGE_HOMEPAGE_URL "https://opentelemetry.io/") set(CMAKE_PROJECT_NAME "opentelemetry-cpp-geneva-metrics") -set(OPENTELEMETRY_GENEVA_METRICS_VERSION "1.0.1") +set(OPENTELEMETRY_GENEVA_METRICS_VERSION "1.0.0") option(TARBALL "Build a tarball package" OFF) diff --git a/exporters/geneva/include/opentelemetry/exporters/geneva/metrics/socket_data_transport.h b/exporters/geneva/include/opentelemetry/exporters/geneva/metrics/unix_domain_socket_data_transport.h similarity index 78% rename from exporters/geneva/include/opentelemetry/exporters/geneva/metrics/socket_data_transport.h rename to exporters/geneva/include/opentelemetry/exporters/geneva/metrics/unix_domain_socket_data_transport.h index 22d6daf5b..f9ea26dc1 100644 --- a/exporters/geneva/include/opentelemetry/exporters/geneva/metrics/socket_data_transport.h +++ b/exporters/geneva/include/opentelemetry/exporters/geneva/metrics/unix_domain_socket_data_transport.h @@ -14,18 +14,18 @@ OPENTELEMETRY_BEGIN_NAMESPACE namespace exporter { namespace geneva { namespace metrics { -class SocketDataTransport : public DataTransport { +class UnixDomainSocketDataTransport : public DataTransport { public: - SocketDataTransport(const ConnectionStringParser &parser); + UnixDomainSocketDataTransport(const std::string &connection_string); bool Connect() noexcept override; bool Send(MetricsEventType event_type, const char *data, uint16_t length) noexcept override; bool Disconnect() noexcept override; - ~SocketDataTransport() = default; + ~UnixDomainSocketDataTransport() = default; private: // Socket connection is re-established for every batch of events - SocketTools::SocketParams socketparams_{AF_UNIX, SOCK_STREAM, 0}; + const SocketTools::SocketParams socketparams_{AF_UNIX, SOCK_STREAM, 0}; SocketTools::Socket socket_; std::unique_ptr addr_; bool connected_{false}; diff --git a/exporters/geneva/src/exporter.cc b/exporters/geneva/src/exporter.cc index f9303e221..cb7d569ea 100644 --- a/exporters/geneva/src/exporter.cc +++ b/exporters/geneva/src/exporter.cc @@ -6,7 +6,7 @@ #ifdef _WIN32 #include "opentelemetry/exporters/geneva/metrics/etw_data_transport.h" #else -#include "opentelemetry/exporters/geneva/metrics/socket_data_transport.h" +#include "opentelemetry/exporters/geneva/metrics/unix_domain_socket_data_transport.h" #endif #include "opentelemetry/sdk/metrics/export/metric_producer.h" #include "opentelemetry/sdk_config.h" @@ -29,12 +29,11 @@ Exporter::Exporter(const ExporterOptions &options) new ETWDataTransport(kBinaryHeaderSize)); } #else - if (connection_string_parser_.transport_protocol_ == TransportProtocol::kUNIX - || connection_string_parser_.transport_protocol_ == TransportProtocol::kTCP - || connection_string_parser_.transport_protocol_ == TransportProtocol::kUDP) { + if (connection_string_parser_.transport_protocol_ == + TransportProtocol::kUNIX) { data_transport_ = - std::unique_ptr(new SocketDataTransport( - connection_string_parser_)); + std::unique_ptr(new UnixDomainSocketDataTransport( + connection_string_parser_.connection_string_)); } #endif } diff --git a/exporters/geneva/src/socket_data_transport.cc b/exporters/geneva/src/unix_domain_socket_data_transport.cc similarity index 62% rename from exporters/geneva/src/socket_data_transport.cc rename to exporters/geneva/src/unix_domain_socket_data_transport.cc index e4c635e82..d68d0cd85 100644 --- a/exporters/geneva/src/socket_data_transport.cc +++ b/exporters/geneva/src/unix_domain_socket_data_transport.cc @@ -1,8 +1,7 @@ // Copyright The OpenTelemetry Authors // SPDX-License-Identifier: Apache-2.0 -#include "opentelemetry/exporters/geneva/metrics/connection_string_parser.h" -#include "opentelemetry/exporters/geneva/metrics/socket_data_transport.h" +#include "opentelemetry/exporters/geneva/metrics/unix_domain_socket_data_transport.h" #include "opentelemetry/exporters/geneva/metrics/macros.h" OPENTELEMETRY_BEGIN_NAMESPACE @@ -10,28 +9,13 @@ namespace exporter { namespace geneva { namespace metrics { -SocketDataTransport::SocketDataTransport( - const ConnectionStringParser &parser) +UnixDomainSocketDataTransport::UnixDomainSocketDataTransport( + const std::string &connection_string) { - bool is_unix_domain = false; - - if (parser.transport_protocol_ == TransportProtocol::kTCP) { - socketparams_ = {AF_INET, SOCK_STREAM, 0}; - } - else if (parser.transport_protocol_ == TransportProtocol::kUDP) { - socketparams_ = {AF_INET, SOCK_DGRAM, 0}; - } - else if (parser.transport_protocol_ == TransportProtocol::kUNIX) { - socketparams_ = {AF_UNIX, SOCK_STREAM, 0}; - is_unix_domain = true; - } - else { - LOG_ERROR("Geneva Exporter: Invalid transport protocol"); - } - addr_.reset(new SocketTools::SocketAddr(parser.connection_string_.c_str(), is_unix_domain)); + addr_.reset(new SocketTools::SocketAddr(connection_string.c_str(), true)); } -bool SocketDataTransport::Connect() noexcept { +bool UnixDomainSocketDataTransport::Connect() noexcept { if (!connected_) { socket_ = SocketTools::Socket(socketparams_); connected_ = socket_.connect(*addr_); @@ -43,7 +27,7 @@ bool SocketDataTransport::Connect() noexcept { return connected_; } -bool SocketDataTransport::Send(MetricsEventType event_type, +bool UnixDomainSocketDataTransport::Send(MetricsEventType event_type, char const *data, uint16_t length) noexcept { int error_code = 0; @@ -74,7 +58,7 @@ bool SocketDataTransport::Send(MetricsEventType event_type, return true; } -bool SocketDataTransport::Disconnect() noexcept { +bool UnixDomainSocketDataTransport::Disconnect() noexcept { if (connected_) { connected_ = false; if (!socket_.invalid()) {