Statistik Mail-Traffic beim Monatswechsel

Dieses Thema im Forum "Entwicklerforum" wurde erstellt von ramsys, 1. März 2014.

  1. ramsys

    ramsys Member

    Mir ist gerade noch etwas anderes aufgefallen.

    Heute Nacht am 1.3.2014 wurde die Statistiken (Webtraffic, Mailtraffic) aktualisiert. Monatswechsel vom 28.2. zum 1.3.

    Für den Webtraffic funktioniert das einwandfrei, da hier in der Tabelle "web_traffic" jeder einzelne Tag enthalten ist. Im Interface werden dann für den Aufbau der Liste die einzelnen Werte (z.B. aktueller Monat, vergangener Monat) die jeweiligen Werte addiert.

    interface/web/sites/web_sites_stats.php

    PHP:
    //** Traffic of the current month
    $tmp_year date('Y');
    $tmp_month date('m');
    $tmp_rec $app->db->queryOneRecord("SELECT SUM(traffic_bytes) as t FROM web_traffic WHERE hostname = '".$app->db->quote($rec['domain'])."' AND YEAR(traffic_date) = '$tmp_year' AND MONTH(traffic_date) = '$tmp_month'");

    //** Traffic of the current year
    $tmp_rec $app->db->queryOneRecord("SELECT sum(traffic_bytes) as t FROM web_traffic WHERE hostname = '".$app->db->quote($rec['domain'])."' AND YEAR(traffic_date) = '$tmp_year'");
    Beim Mailtraffic ist das jedoch nicht so. Hier stehen in der Tabelle "mail_traffic" nur die bereits addierten Monatswerte (keine Tagesangaben), die dann im Interface ausgelesen werden

    interface/web/mail/mail_user_stats.php

    PHP:
    //** Traffic of the current month
    $tmp_date date('Y-m');
    $tmp_rec $app->db->queryOneRecord("SELECT traffic as t FROM mail_traffic WHERE mailuser_id = ".$app->functions->intval($rec['mailuser_id'])." AND month = '$tmp_date'");

    //** Traffic of the current year
    $tmp_date date('Y');
    $tmp_rec $app->db->queryOneRecord("SELECT sum(traffic) as t FROM mail_traffic WHERE mailuser_id = ".$app->functions->intval($rec['mailuser_id'])." AND month like '$tmp_date%'");
    In der "cron_daily.php" wird offensichtlich date('Y-m') benutzt, um die Daten zu aktualisieren. Damit steht der Timestamp während der Ausführung des Scripts (00:30 Uhr) bei einem Monatswechsel aber bereits auf den nächsten Tag. Der letzte Tag des Monats wird also in der Tabelle "mail_traffic" als Wert für den nächsten Monat eingetragen und im Interface daher auch falsch dargestellt.
     
  2. Till

    Till Administrator

    Mach bitte einen bugreport im bugtracker, dann sehen wir uns das für die nächste version an.
     

Diese Seite empfehlen