You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
djbdns/040-dnscache-less-chatty-log

40 lines
786 B
Plaintext

--- a/log.h
+++ b/log.h
@@ -1,6 +1,8 @@
#ifndef LOG_H
#define LOG_H
+#define STATS_DISPLAY_INTERVAL 5
+
#include "uint64.h"
extern void log_startup(void);
--- a/log.c
+++ b/log.c
@@ -1,6 +1,7 @@
#include "buffer.h"
#include "uint32.h"
#include "uint16.h"
+#include "time.h"
#include "error.h"
#include "byte.h"
#include "log.h"
@@ -274,11 +275,17 @@ void log_rrsoa(const char server[4],cons
void log_stats(void)
{
+ static time_t prev = 0;
+ time_t cur = time(NULL);
extern uint64 numqueries;
extern uint64 cache_motion;
extern int uactive;
extern int tactive;
+ if(prev == 0) prev = time(NULL);
+ if(cur - prev < STATS_DISPLAY_INTERVAL) return;
+ prev = cur;
+
string("stats ");
number(numqueries); space();
number(cache_motion); space();