Skip to content

Commit ab2c39b

Browse files
committed
Add runtime flag
1 parent 7cdf2d4 commit ab2c39b

File tree

7 files changed

+21
-7
lines changed

7 files changed

+21
-7
lines changed

exporters/otlp/src/otlp_http_client.cc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -989,6 +989,7 @@ OtlpHttpClient::createSession(
989989
request->SetBody(body_vec);
990990
request->ReplaceHeader("Content-Type", content_type);
991991
request->ReplaceHeader("User-Agent", options_.user_agent);
992+
request->EnableLogging(options_.console_debug);
992993

993994
if (options_.compression == "gzip")
994995
{

ext/include/opentelemetry/ext/http/client/curl/http_client_curl.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,8 @@ class Request : public opentelemetry::ext::http::client::Request
102102
compression_ = compression;
103103
}
104104

105+
void EnableLogging(bool needs_to_log) noexcept override { needs_to_log_ = needs_to_log; };
106+
105107
public:
106108
opentelemetry::ext::http::client::Method method_;
107109
opentelemetry::ext::http::client::HttpSslOptions ssl_options_;
@@ -111,6 +113,7 @@ class Request : public opentelemetry::ext::http::client::Request
111113
std::chrono::milliseconds timeout_ms_{5000}; // ms
112114
opentelemetry::ext::http::client::Compression compression_{
113115
opentelemetry::ext::http::client::Compression::kNone};
116+
bool needs_to_log_{false};
114117
};
115118

116119
class Response : public opentelemetry::ext::http::client::Response

ext/include/opentelemetry/ext/http/client/curl/http_operation_curl.h

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,8 @@ class HttpOperation
158158
// Default connectivity and response size options
159159
bool is_raw_response = false,
160160
std::chrono::milliseconds http_conn_timeout = default_http_conn_timeout,
161-
bool reuse_connection = false);
161+
bool reuse_connection = false,
162+
bool needs_to_log_ = false);
162163

163164
/**
164165
* Destroy CURL instance
@@ -306,6 +307,8 @@ class HttpOperation
306307

307308
const opentelemetry::ext::http::client::Compression &compression_;
308309

310+
const bool needs_to_log_;
311+
309312
// Processed response headers and body
310313
long response_code_;
311314
std::vector<uint8_t> response_headers_;

ext/include/opentelemetry/ext/http/client/http_client.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -245,6 +245,8 @@ class Request
245245

246246
virtual void SetCompression(const Compression &compression) noexcept = 0;
247247

248+
virtual void EnableLogging(bool needs_to_log) noexcept = 0;
249+
248250
virtual ~Request() = default;
249251
};
250252

ext/src/http/client/curl/http_client_curl.cc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -116,10 +116,10 @@ void Session::SendRequest(
116116
#endif
117117
}
118118

119-
curl_operation_.reset(new HttpOperation(http_request_->method_, url, http_request_->ssl_options_,
120-
callback_ptr, http_request_->headers_,
121-
http_request_->body_, http_request_->compression_, false,
122-
http_request_->timeout_ms_, reuse_connection));
119+
curl_operation_.reset(new HttpOperation(
120+
http_request_->method_, url, http_request_->ssl_options_, callback_ptr,
121+
http_request_->headers_, http_request_->body_, http_request_->compression_, false,
122+
http_request_->timeout_ms_, reuse_connection, http_request_->needs_to_log_));
123123
bool success =
124124
CURLE_OK == curl_operation_->SendAsync(this, [this, callback](HttpOperation &operation) {
125125
if (operation.WasAborted())

ext/src/http/client/curl/http_operation_curl.cc

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -262,7 +262,8 @@ HttpOperation::HttpOperation(opentelemetry::ext::http::client::Method method,
262262
// Default connectivity and response size options
263263
bool is_raw_response,
264264
std::chrono::milliseconds http_conn_timeout,
265-
bool reuse_connection)
265+
bool reuse_connection,
266+
bool needs_to_log)
266267
: is_aborted_(false),
267268
is_finished_(false),
268269
is_cleaned_(false),
@@ -282,6 +283,7 @@ HttpOperation::HttpOperation(opentelemetry::ext::http::client::Method method,
282283
request_nwrite_(0),
283284
session_state_(opentelemetry::ext::http::client::SessionState::Created),
284285
compression_(compression),
286+
needs_to_log_(needs_to_log),
285287
response_code_(0)
286288
{
287289
/* get a curl handle */
@@ -641,7 +643,7 @@ CURLcode HttpOperation::Setup()
641643
curl_error_message_[0] = '\0';
642644
curl_easy_setopt(curl_resource_.easy_handle, CURLOPT_ERRORBUFFER, curl_error_message_);
643645

644-
rc = SetCurlLongOption(CURLOPT_VERBOSE, 1L);
646+
rc = SetCurlLongOption(CURLOPT_VERBOSE, static_cast<long>(needs_to_log_));
645647
if (rc != CURLE_OK)
646648
{
647649
return rc;

test_common/include/opentelemetry/test_common/ext/http/client/nosend/http_client_nosend.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,8 @@ class Request : public opentelemetry::ext::http::client::Request
6969
compression_ = compression;
7070
}
7171

72+
void EnableLogging(bool needs_to_log) noexcept override { needs_to_log_ = needs_to_log; };
73+
7274
public:
7375
opentelemetry::ext::http::client::Method method_;
7476
opentelemetry::ext::http::client::HttpSslOptions ssl_options_;
@@ -78,6 +80,7 @@ class Request : public opentelemetry::ext::http::client::Request
7880
std::chrono::milliseconds timeout_ms_{5000}; // ms
7981
opentelemetry::ext::http::client::Compression compression_{
8082
opentelemetry::ext::http::client::Compression::kNone};
83+
bool needs_to_log_{false};
8184
};
8285

8386
class Response : public opentelemetry::ext::http::client::Response

0 commit comments

Comments
 (0)