Skip to content

Commit 9e432cb

Browse files
committed
Store value of hostname in member field
1 parent e13e5d1 commit 9e432cb

File tree

2 files changed

+8
-7
lines changed

2 files changed

+8
-7
lines changed

src/datadog/tracer_telemetry.cpp

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@ namespace tracing {
1212
TracerTelemetry::TracerTelemetry(
1313
const Clock& clock, const std::shared_ptr<Logger>& logger,
1414
const std::shared_ptr<const SpanDefaults>& span_defaults)
15-
: clock_(clock), logger_(logger), span_defaults_(span_defaults) {
15+
: clock_(clock),
16+
logger_(logger),
17+
span_defaults_(span_defaults),
18+
hostname_(get_hostname().value_or("hostname-unavailable")) {
1619
metrics_snapshots_.emplace_back(metrics_.tracer.spans_created,
1720
MetricSnapshot{});
1821
metrics_snapshots_.emplace_back(metrics_.tracer.spans_finished,
@@ -47,7 +50,7 @@ std::string TracerTelemetry::app_started(nlohmann::json&& tracer_config) {
4750
time_t tracer_time = std::chrono::duration_cast<std::chrono::seconds>(
4851
clock_().wall.time_since_epoch())
4952
.count();
50-
53+
5154
seq_id++;
5255
auto payload =
5356
nlohmann::json::object(
@@ -68,8 +71,7 @@ std::string TracerTelemetry::app_started(nlohmann::json&& tracer_config) {
6871
})},
6972
// TODO: host information (os, os_version, kernel, etc)
7073
{"host", nlohmann::json::object({
71-
{"hostname",
72-
get_hostname().value_or("hostname-unavailable")},
74+
{"hostname", hostname_},
7375
})},
7476
{"payload",
7577
nlohmann::json::object({
@@ -109,8 +111,6 @@ std::string TracerTelemetry::heartbeat_and_telemetry() {
109111
time_t tracer_time = std::chrono::duration_cast<std::chrono::seconds>(
110112
clock_().wall.time_since_epoch())
111113
.count();
112-
std::string hostname = get_hostname().value_or("hostname-unavailable");
113-
114114
auto heartbeat = nlohmann::json::object({
115115
{"request_type", "app-heartbeat"},
116116
});
@@ -161,7 +161,7 @@ std::string TracerTelemetry::heartbeat_and_telemetry() {
161161
})},
162162
// TODO: host information (hostname, os, os_version, kernel, etc)
163163
{"host", nlohmann::json::object({
164-
{"hostname", hostname},
164+
{"hostname", hostname_},
165165
})},
166166
{"payload", nlohmann::json::array({
167167
heartbeat,

src/datadog/tracer_telemetry.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ class TracerTelemetry {
1616
Clock clock_;
1717
std::shared_ptr<Logger> logger_;
1818
std::shared_ptr<const SpanDefaults> span_defaults_;
19+
std::string hostname_;
1920
uint64_t seq_id = 0;
2021
using MetricSnapshot = std::vector<std::pair<time_t, uint64_t>>;
2122
// This uses a reference_wrapper so references to internal metric values can

0 commit comments

Comments
 (0)