feat(dcrouter): Wire DNS server query events to MetricsManager for time-series tracking and bump @push.rocks/smartdns to ^7.9.0

This commit is contained in:
2026-02-20 15:37:15 +00:00
parent 2a94ffd4c9
commit c7418d9e1a
6 changed files with 33 additions and 20 deletions

View File

@@ -3,6 +3,6 @@
*/
export const commitinfo = {
name: '@serve.zone/dcrouter',
version: '7.2.0',
version: '7.3.0',
description: 'A multifaceted routing service handling mail and SMS delivery functions.'
}

View File

@@ -1256,6 +1256,20 @@ export class DcRouter {
// Start the DNS server (UDP only)
await this.dnsServer.start();
logger.log('info', `DNS server started on UDP ${vmIpAddress}:53`);
// Wire DNS query events to MetricsManager for time-series tracking
if (this.metricsManager && this.dnsServer) {
this.dnsServer.on('query', (event: plugins.smartdns.dnsServerMod.IDnsQueryCompletedEvent) => {
for (const question of event.questions) {
this.metricsManager.trackDnsQuery(
question.type,
question.name,
false,
event.responseTimeMs,
);
}
});
}
// Validate DNS configuration
await this.validateDnsConfiguration();