#include "protozero-trace.hh"
#include "base64.hh"
+#include "misc.hh"
#include <string>
#include <variant>
random(span.span_id);
}
+std::string SpanID::toLogString() const
+{
+ return makeHexDump(std::string(this->begin(), this->end()), "");
+}
+
} // namespace pdns::trace
};
using TraceID = std::array<uint8_t, 16>;
-using SpanID = std::array<uint8_t, 8>;
+struct SpanID : public std::array<uint8_t, 8>
+{
+ [[nodiscard]] std::string toLogString() const;
+ friend std::ostream& operator<<(std::ostream& ostrm, const SpanID& val)
+ {
+ return ostrm << val.toLogString();
+ }
+};
constexpr TraceID s_emptyTraceID = {};