function getOverTimeData() { global $log; $dns_queries = getDnsQueries($log); $ads_blocked = getBlockedQueries($log); $domains_over_time = overTime($dns_queries); $ads_over_time = overTime($ads_blocked); alignTimeArrays($ads_over_time, $domains_over_time); return array('domains_over_time' => $domains_over_time, 'ads_over_time' => $ads_over_time); }
function getOverTimeData() { $domains = readInBlockList(); $log = readInLog(); $dns_queries = getDnsQueries($log); $ads_blocked = getBlockedQueries($log); $domains_over_time = overTime($dns_queries); $ads_over_time = overTime($ads_blocked); alignTimeArrays($ads_over_time, $domains_over_time); return array('domains_over_time' => $domains_over_time, 'ads_over_time' => $ads_over_time); }
<?php $domains = file("/etc/pihole/gravity.list"); $log = file("/var/log/pihole.log"); $domains_being_blocked = count($domains); $dns_queries = array_filter($log, "findQueries"); $dns_queries_today = count($dns_queries); $ads_blocked = array_filter($log, "findAds"); $ads_blocked_today = count($ads_blocked); $ads_percentage_today = $ads_blocked_today / $dns_queries_today * 100; $domains_over_time = overTime($dns_queries); $ads_over_time = overTime($ads_blocked); alignTimeArrays($ads_over_time, $domains_over_time); $topAds = topItems($ads_blocked); $topQueries = topItems($dns_queries, $topAds); function topItems($queries, $exclude = array()) { $splitQueries = array(); foreach ($queries as $query) { $exploded = explode(" ", $query); $domain = trim($exploded[5]); if (!isset($exclude[$domain])) { if (isset($splitQueries[$domain])) { $splitQueries[$domain]++; } else { $splitQueries[$domain] = 1; } } } arsort($splitQueries); return array_slice($splitQueries, 0, 10);