]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Rename a few things to alighn with dnsdist
authorOtto Moerbeek <otto.moerbeek@open-xchange.com>
Tue, 14 Oct 2025 11:05:05 +0000 (13:05 +0200)
committerOtto Moerbeek <otto.moerbeek@open-xchange.com>
Tue, 14 Oct 2025 14:15:00 +0000 (16:15 +0200)
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
pdns/protozero-trace.hh
pdns/recursordist/pdns_recursor.cc
pdns/recursordist/rec-main.cc
pdns/recursordist/syncres.cc

index c9c0779d30029db7c2e1974022f9036df60adbf0..b53cd54767f08fcf9a6cd3d8990e530e30ecec73 100644 (file)
@@ -31,6 +31,7 @@
 
 #include "dns_random.hh"
 #include "ednsoptions.hh"
+#include "misc.hh"
 
 // See https://github.com/open-telemetry/opentelemetry-proto/tree/main/opentelemetry/proto
 
@@ -694,13 +695,16 @@ struct TracesData
     return data;
   }
 
-  static TracesData boilerPlate(std::string&& service, std::string&& req, std::vector<Span>&& spans, const std::vector<KeyValue>& attributes)
+  static TracesData boilerPlate(std::string&& service, std::vector<Span>&& spans, const std::vector<KeyValue>& attributes, std::string& serverID)
   {
     auto& spanAttrs = spans.at(0).attributes;
-    spanAttrs.push_back({"arg", {std::move(req)}});
     spanAttrs.insert(spanAttrs.end(), attributes.begin(), attributes.end());
+    auto host = getHostname();
+    std::string hostname = host.value_or("unset");
+    InstrumentationScope scope{
+      .name = "rec", .version = VERSION, .attributes = {{"hostname", {hostname}}, {"server.id", {serverID}}}};
     return TracesData{
-      .resource_spans = {pdns::trace::ResourceSpans{.resource = {.attributes = {{"service.name", {{std::move(service)}}}}}, .scope_spans = {{.spans = std::move(spans)}}}}};
+      .resource_spans = {pdns::trace::ResourceSpans{.resource = {.attributes = {{"service.name", {{std::move(service)}}}}}, .scope_spans = {{.scope = scope, .spans = std::move(spans)}}}}};
   }
 };
 
index 7994067f4698b025fa88b2276f170033b7d92d75..bd16f5905735401a9e709b809c05288fd880171f 100644 (file)
@@ -1860,7 +1860,11 @@ void startDoResolve(void* arg) // NOLINT(readability-function-cognitive-complexi
         pbMessage.addEvents(resolver.d_eventTrace);
       }
       if (resolver.d_eventTrace.enabled() && SyncRes::eventTraceEnabled(SyncRes::event_trace_to_ot)) {
-        auto otTrace = pdns::trace::TracesData::boilerPlate("rec", comboWriter->d_mdp.d_qname.toLogString(), resolver.d_eventTrace.convertToOT(resolver.d_otTrace), {{"qtype", {QType(comboWriter->d_mdp.d_qtype).toString()}}});
+        auto otTrace = pdns::trace::TracesData::boilerPlate("rec", resolver.d_eventTrace.convertToOT(resolver.d_otTrace), {
+                                                                                                                            {"query.qname", {comboWriter->d_mdp.d_qname.toLogString()}},
+                                                                                                                            {"query.qtype", {QType(comboWriter->d_mdp.d_qtype).toString()}},
+                                                                                                                          },
+                                                            SyncRes::s_serverID);
         string otData = otTrace.encode();
         pbMessage.setOpenTelemetryData(otData);
       }
index a2e902a3f8b296372809fcd041aabf5364f26e0d..8c01a5eca73958e4f06ecf94ebd4ab8ca7bce42f 100644 (file)
@@ -633,7 +633,10 @@ void protobufLogResponse(const DNSName& qname, QType qtype,
     pbMessage.addEvents(eventTrace);
   }
   if (eventTrace.enabled() && (SyncRes::s_event_trace_enabled & SyncRes::event_trace_to_ot) != 0) {
-    auto trace = pdns::trace::TracesData::boilerPlate("rec", qname.toLogString(), eventTrace.convertToOT(otTrace), {{"qtype", {qtype.toString()}}});
+    auto trace = pdns::trace::TracesData::boilerPlate("rec", eventTrace.convertToOT(otTrace),
+                                                      {{"query.qname", {qname.toLogString()}},
+                                                       {"query.qtype", {qtype.toString()}}},
+                                                      SyncRes::s_serverID);
     pbMessage.setOpenTelemetryData(trace.encode());
   }
   pbMessage.addPolicyTags(policyTags);
index 8faa8c90059cd45c89351bd7f3eb8d1cd2bedb87..5c4c9d74de05e432220236e10b014701cb2d128f 100644 (file)
@@ -5454,7 +5454,7 @@ bool SyncRes::doResolveAtThisIP(const std::string& prefix, const DNSName& qname,
       s_ecsqueries++;
     }
     auto match = d_eventTrace.add(RecEventTrace::AuthRequest, qname.toLogString(), true, 0);
-    d_eventTrace.addExtraValues(match, {{"qtype", qtype.toString()}, {"ip", remoteIP.toStringWithPortExcept(53)}});
+    d_eventTrace.addExtraValues(match, {{"query.qtype", qtype.toString()}, {"auth.address", remoteIP.toStringWithPortExcept(53)}});
     updateQueryCounts(prefix, qname, remoteIP, doTCP, doDoT);
     resolveret = asyncresolveWrapper(LogObject(prefix), remoteIP, d_doDNSSEC, qname, auth, qtype.getCode(),
                                      doTCP, sendRDQuery, &d_now, ednsmask, &lwr, &chained, nsName); // <- we go out on the wire!