PHP Classes

File: web/SSO/modules/statistics/bin/loganalyzer.php

Recommend this page to a friend!
  Classes of william amed   Raptor 2   web/SSO/modules/statistics/bin/loganalyzer.php   Download  
File: web/SSO/modules/statistics/bin/loganalyzer.php
Role: Example script
Content type: text/plain
Description: Example script
Class: Raptor 2
Framework that takes routes from annotations
Author: By
Last change:
Date: 8 years ago
Size: 1,865 bytes
 

Contents

Class file image Download
#!/usr/bin/env php
<?php


/* This is the base directory of the simpleSAMLphp installation. */
$baseDir = dirname(dirname(dirname(dirname(__FILE__))));

/* Add library autoloader. */
require_once($baseDir . '/lib/_autoload.php');

/* Initialize the configuration. */
SimpleSAML_Configuration::setConfigDir($baseDir . '/config');

SimpleSAML_Utilities::initTimezone();

$progName = array_shift($argv);
$debug = FALSE;
$dryrun = FALSE;

foreach(
$argv as $a) {
    if(
strlen($a) === 0) continue;

    if(
strpos($a, '=') !== FALSE) {
       
$p = strpos($a, '=');
       
$v = substr($a, $p + 1);
       
$a = substr($a, 0, $p);
    } else {
       
$v = NULL;
    }

   
/* Map short options to long options. */
   
$shortOptMap = array(
       
'-d' => '--debug',
    );
    if(
array_key_exists($a, $shortOptMap)) $a = $shortOptMap[$a];

    switch(
$a) {
        case
'--help':
           
printHelp();
            exit(
0);
        case
'--debug':
           
$debug = TRUE;
            break;
        case
'--dry-run':
           
$dryrun = TRUE;
            break;
        default:
            echo(
'Unknown option: ' . $a . "\n");
            echo(
'Please run `' . $progName . ' --help` for usage information.' . "\n");
            exit(
1);
        }
}

$aggregator = new sspmod_statistics_Aggregator(TRUE);
$aggregator->dumpConfig();
$aggregator->debugInfo();
$results = $aggregator->aggregate($debug);
$aggregator->debugInfo();

if (!
$dryrun) {
   
$aggregator->store($results);
}


foreach (
$results AS $slot => $val) {
     foreach (
$val AS $sp => $no) {
         echo
$sp . " " . count($no) . " - ";
     }
     echo
"\n";
}




/**
 * This function prints the help output.
 */
function printHelp() {
    global
$progName;

   
/* '======================================================================' */
   
echo('Usage: ' . $progName . ' [options]

This program parses and aggregates SimpleSAMLphp log files.

Options:
    -d, --debug Used when configuring the log file syntax. See doc.
    --dry-run Aggregate but do not store the results.

'
);
}