When configuring multiple forwarders (upstream DNS servers) in Technitium, the server beautifully performs latency-based selection or concurrent forwarding to select the fastest response.
However, this data is currently completely transient and discarded after the resolution decision. When using third-party analytics dashboards (like tdns-stats), it is currently impossible for administrators to see a breakdown of:
- Which forwarder (upstream IP) handled how many queries.
- What the average round-trip time (RTT) / performance per forwarder looks like.
As confirmed by the developer of tdns-stats, neither the Query Logs app schema nor the /api/dashboard/stats endpoint currently record or expose which upstream nameserver actually produced the response for a given recursive query.
It would be incredibly valuable if Technitium could log and expose per-forwarder metrics. Specifically:
- Query Logs App Update: Add a
forwarder_ip column to the Query Logs schema (e.g., SQLite/PostgreSQL) for recursive responses, capturing which upstream IP successfully answered the query.
- Dashboard API Extension: Add a new stats section (e.g.,
forwarderStats or topForwarders) to the Dashboard API that lists active forwarders along with their query counts and mean RTT.
Looking at the DNS Client tool (api/dnsClient/resolve), but that's a manual, diagnostic one-shot utility, not an aggregated production metric.
Having this data available would allow administrators - especially those running high-availability cluster setups - to monitor upstream DNS health, compare performance (e.g., Cloudflare vs. Quad9 in their specific routing environment), and optimize their forwarder configuration based on real historical data.
When configuring multiple forwarders (upstream DNS servers) in Technitium, the server beautifully performs latency-based selection or concurrent forwarding to select the fastest response.
However, this data is currently completely transient and discarded after the resolution decision. When using third-party analytics dashboards (like
tdns-stats), it is currently impossible for administrators to see a breakdown of:As confirmed by the developer of
tdns-stats, neither the Query Logs app schema nor the/api/dashboard/statsendpoint currently record or expose which upstream nameserver actually produced the response for a given recursive query.It would be incredibly valuable if Technitium could log and expose per-forwarder metrics. Specifically:
forwarder_ipcolumn to the Query Logs schema (e.g., SQLite/PostgreSQL) for recursive responses, capturing which upstream IP successfully answered the query.forwarderStatsortopForwarders) to the Dashboard API that lists active forwarders along with their query counts and mean RTT.Looking at the DNS Client tool (
api/dnsClient/resolve), but that's a manual, diagnostic one-shot utility, not an aggregated production metric.Having this data available would allow administrators - especially those running high-availability cluster setups - to monitor upstream DNS health, compare performance (e.g., Cloudflare vs. Quad9 in their specific routing environment), and optimize their forwarder configuration based on real historical data.