mirror of
https://github.com/pi-hole/FTL.git
synced 2024-10-26 16:52:18 +02:00
Add dns_queries_all_types field to ">stats". While dns_queries is the number of entires in the query log (only A and AAAA queries), the new counter also takes PTR, SOA, etc. into account.
Signed-off-by: DL6ER <dl6er@dl6er.de>
This commit is contained in:
@@ -72,6 +72,17 @@
|
||||
// How many client connection do we accept at once?
|
||||
#define MAXCONNS 255
|
||||
|
||||
// FTLDNS enums
|
||||
enum { DATABASE_WRITE_TIMER, EXIT_TIMER, GC_TIMER, LISTS_TIMER, REGEX_TIMER };
|
||||
enum { QUERIES, FORWARDED, CLIENTS, DOMAINS, OVERTIME, WILDCARD };
|
||||
enum { DNSSEC_UNSPECIFIED, DNSSEC_SECURE, DNSSEC_INSECURE, DNSSEC_BOGUS, DNSSEC_ABANDONED, DNSSEC_UNKNOWN };
|
||||
enum { QUERY_UNKNOWN, QUERY_GRAVITY, QUERY_FORWARDED, QUERY_CACHE, QUERY_WILDCARD, QUERY_BLACKLIST };
|
||||
enum { TYPE_A = 1, TYPE_AAAA, TYPE_ANY, TYPE_SRV, TYPE_SOA, TYPE_PTR, TYPE_TXT, TYPE_MAX };
|
||||
enum { REPLY_UNKNOWN, REPLY_NODATA, REPLY_NXDOMAIN, REPLY_CNAME, REPLY_IP };
|
||||
enum { PRIVACY_SHOW_ALL = 0, PRIVACY_HIDE_DOMAINS, PRIVACY_HIDE_DOMAINS_CLIENTS, PRIVACY_MAXIMUM };
|
||||
enum { MODE_IP, MODE_NX, MODE_NULL };
|
||||
enum { REGEX_UNKNOWN, REGEX_BLOCKED, REGEX_NOTBLOCKED };
|
||||
|
||||
// Static structs
|
||||
typedef struct {
|
||||
const char* conf;
|
||||
@@ -112,7 +123,7 @@ typedef struct {
|
||||
int gravity;
|
||||
int gravity_conf;
|
||||
int overTime;
|
||||
int querytype[7];
|
||||
int querytype[TYPE_MAX-1];
|
||||
int wildcarddomains;
|
||||
int forwardedqueries;
|
||||
int reply_NODATA;
|
||||
@@ -208,16 +219,6 @@ typedef struct {
|
||||
|
||||
// Prepare timers, used mainly for debugging purposes
|
||||
#define NUMTIMERS 5
|
||||
enum { DATABASE_WRITE_TIMER, EXIT_TIMER, GC_TIMER, LISTS_TIMER, REGEX_TIMER };
|
||||
|
||||
enum { QUERIES, FORWARDED, CLIENTS, DOMAINS, OVERTIME, WILDCARD };
|
||||
enum { DNSSEC_UNSPECIFIED, DNSSEC_SECURE, DNSSEC_INSECURE, DNSSEC_BOGUS, DNSSEC_ABANDONED, DNSSEC_UNKNOWN };
|
||||
enum { QUERY_UNKNOWN, QUERY_GRAVITY, QUERY_FORWARDED, QUERY_CACHE, QUERY_WILDCARD, QUERY_BLACKLIST };
|
||||
enum { TYPE_A = 1, TYPE_AAAA, TYPE_ANY, TYPE_SRV, TYPE_SOA, TYPE_PTR, TYPE_TXT, TYPE_MAX };
|
||||
enum { REPLY_UNKNOWN, REPLY_NODATA, REPLY_NXDOMAIN, REPLY_CNAME, REPLY_IP };
|
||||
enum { PRIVACY_SHOW_ALL = 0, PRIVACY_HIDE_DOMAINS, PRIVACY_HIDE_DOMAINS_CLIENTS, PRIVACY_MAXIMUM };
|
||||
enum { MODE_IP, MODE_NX, MODE_NULL };
|
||||
enum { REGEX_UNKNOWN, REGEX_BLOCKED, REGEX_NOTBLOCKED };
|
||||
|
||||
// Used to check memory integrity in various structs
|
||||
#define MAGICBYTE 0x57
|
||||
|
||||
@@ -75,6 +75,14 @@ void getStats(int *sock)
|
||||
counters.domains, counters.forwardedqueries, counters.cached);
|
||||
ssend(*sock, "clients_ever_seen %i\n", counters.clients);
|
||||
ssend(*sock, "unique_clients %i\n", activeclients);
|
||||
|
||||
// Sum up all query types (A, AAAA, ANY, SRV, SOA, ...)
|
||||
int sumalltypes = 0;
|
||||
for(i=0; i < TYPE_MAX-1; i++)
|
||||
{
|
||||
sumalltypes += counters.querytype[i];
|
||||
}
|
||||
ssend(*sock, "dns_queries_all_types %i\n", sumalltypes);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user