function start()
{
    if ($GLOBALS["VERBOSE"]) {
        echo "Starting....\n";
    }
    $pidfile = "/etc/artica-postfix/pids/" . basename(__FILE__) . "." . __FUNCTION__ . ".pid";
    $unix = new unix();
    $pid = $unix->get_pid_from_file($pidfile);
    if ($unix->process_exists($pid, basename(__FILE__))) {
        ufdbguard_admin_events("already {$pid} pid exists in memory, aborting", __FUNCTION__, __FILE__, __LINE__, "backup");
        return;
    }
    @file_put_contents($pidfile, getmypid());
    LoadParams();
    if ($GLOBALS["EnableBackup"] == 0) {
        ufdbguard_admin_events("Backup database statistics is currently disabled, remove this task in this case...", __FUNCTION__, __FILE__, __LINE__, "backup");
        return;
    }
    $DaysbackupOlder = $GLOBALS["DaysbackupOlder"];
    $workdir = $GLOBALS["WORKDIR"];
    $q = new mysql_squid_builder();
    $sql = "SELECT tablename,zDate,DATE_FORMAT(zDate,'%Y%m%d') AS suffix FROM  tables_day WHERE backuped=0 AND zDate<DATE_SUB(NOW(),INTERVAL {$DaysbackupOlder} DAY) ORDER BY zDate";
    echo $sql . "\n";
    $workdir = $SquidBackupStats["workdir"];
    @mkdir($workdir, 0755, true);
    if (!is_dir($workdir)) {
        ufdbguard_admin_events("{$workdir}, permission denied...", __FUNCTION__, __FILE__, __LINE__, "backup");
        return;
    }
    $results = $q->QUERY_SQL($sql);
    if (!$q->ok) {
        ufdbguard_admin_events("Fatal, {$q->mysql_error}", __FUNCTION__, __FILE__, __LINE__, "backup");
        return;
    }
    $GLOBALS["TABLECOUNT"] = 0;
    $GLOBALS["BACKUPED_SIZE"] = 0;
    while ($ligne = @mysql_fetch_array($results, MYSQL_ASSOC)) {
        if ($GLOBALS["VERBOSE"]) {
            echo "To backup {$ligne["tablename"]}\n";
        }
        $filename = "{$workdir}/{$ligne["tablename"]}.gz";
        if (is_file($filename)) {
            @unlink($filename);
        }
        if (!$q->TABLE_EXISTS($ligne["tablename"])) {
            continue;
        }
        if (!backupTable($ligne["tablename"], $filename)) {
            continue;
        }
        $filesize = $unix->file_size($filename);
        $GLOBALS["BACKUPED_SIZE"] = $GLOBALS["BACKUPED_SIZE"] + $filesize;
        $GLOBALS["TABLECOUNT"]++;
        if ($GLOBALS["VERBOSE"]) {
            echo "{$filename} ({$filesize})\n";
        }
        $q->QUERY_SQL("UPDATE tables_day SET backuped=1 WHERE tablename='{$ligne["tablename"]}'");
        if (!$q->ok) {
            ufdbguard_admin_events("Fatal, MySQL error {$q->mysql_error} on tables_day", __FUNCTION__, __FILE__, __LINE__, "backup");
            return;
        }
        if (system_is_overloaded(basename(__FILE__))) {
            sleep(15);
            if (system_is_overloaded(__FILE__)) {
                sleep(10);
                if (system_is_overloaded(__FILE__)) {
                    sleep(5);
                }
            }
        }
        if (system_is_overloaded(basename(__FILE__))) {
            ufdbguard_admin_events("Fatal, Overloaded system, aborting task and restart in newt cycle...", __FUNCTION__, __FILE__, __LINE__, "backup");
            if ($GLOBALS["TABLECOUNT"] > 0) {
                $GLOBALS["BACKUPED_SIZET"] = FormatBytes($GLOBALS["BACKUPED_SIZE"] / 1024);
                ufdbguard_admin_events("Success backuped {$GLOBALS["TABLECOUNT"]} tables {$GLOBALS["BACKUPED_SIZET"]} added in backuped directory", __FUNCTION__, __FILE__, __LINE__, "backup");
                return;
            }
            return;
        }
    }
    days_visited();
    week_visited();
    month_visited();
    $took = $unix->distanceOfTimeInWords($t, time());
    if ($GLOBALS["TABLECOUNT"] > 0) {
        $GLOBALS["BACKUPED_SIZET"] = FormatBytes($GLOBALS["BACKUPED_SIZE"] / 1024);
        ufdbguard_admin_events("Success backuped {$GLOBALS["TABLECOUNT"]} tables {$GLOBALS["BACKUPED_SIZET"]} added in backuped directory took:{$took}", __FUNCTION__, __FILE__, __LINE__, "backup");
        return;
    }
}
    ini_set('display_errors', 1);
    ini_set('html_errors', 0);
    ini_set('display_errors', 1);
    ini_set('error_reporting', E_ALL);
}
include_once dirname(__FILE__) . '/ressources/class.templates.inc';
include_once dirname(__FILE__) . '/framework/class.unix.inc';
include_once dirname(__FILE__) . '/ressources/class.os.system.inc';
include_once dirname(__FILE__) . '/ressources/class.mysql.dump.inc';
include_once dirname(__FILE__) . "/framework/frame.class.inc";
if ($argv[1] == "--visited") {
    days_visited();
    exit;
}
if ($argv[1] == "--week") {
    week_visited();
    exit;
}
if ($argv[1] == "--month") {
    month_visited();
    exit;
}
start();
function start()
{
    if ($GLOBALS["VERBOSE"]) {
        echo "Starting....\n";
    }
    $pidfile = "/etc/artica-postfix/pids/" . basename(__FILE__) . "." . __FUNCTION__ . ".pid";
    $pidTime = "/etc/artica-postfix/pids/exec.squid.squeezer.php.start.time";
    $unix = new unix();