20#ifndef ORES_TELEMETRY_GENERATORS_TRACE_ID_GENERATOR_HPP
21#define ORES_TELEMETRY_GENERATORS_TRACE_ID_GENERATOR_HPP
26#include "ores.telemetry/domain/trace_id.hpp"
76 std::uint16_t machine_id_;
77 std::mt19937_64 random_engine_;
78 mutable std::mutex mutex_;
80 static std::uint16_t derive_machine_id();
ID generators for telemetry types.
Definition ores.telemetry.generators.hpp:28
A 128-bit trace identifier, compatible with OpenTelemetry.
Definition trace_id.hpp:42
Generator for 128-bit trace IDs with embedded metadata.
Definition trace_id_generator.hpp:44
std::uint16_t machine_id() const
Gets the machine ID being used by this generator.
Definition trace_id_generator.cpp:76
trace_id_generator()
Constructs the generator with locally derived machine ID.
Definition trace_id_generator.cpp:32
domain::trace_id operator()()
Generates a new trace_id.
Definition trace_id_generator.cpp:40