<?php 
/*  
 * The configuration of simpleSAMLphp statistics package 
 */ 
 
$config = array ( 
 
    /* Authentication & authorization for statistics. */ 
 
    /* Whether the statistics require authentication before use. */ 
    'protected' => FALSE, 
 
    /* The authentication source that should be used. */ 
    'auth' => 'admin', 
 
    /* Alternative 1: List of allowed users. */ 
    //'useridattr' => 'eduPersonPrincipalName', 
    //'allowedUsers' => array('[email protected]', '[email protected]'), 
 
    /* Alternative 2: External ACL list. */ 
    //'acl' => 'adminlist', 
 
 
 
    'default' => 'sso', 
 
    'statdir' => '/tmp/stats/', 
    'inputfile' => '/var/log/simplesamlphp.stat', 
    'offset' => 60*60*2 + 60*60*24*3, // Two hours offset to match epoch and norwegian winter time. 
     
    'datestart' => 1, 
    'datelength' => 15, 
    'offsetspan' => 21, 
     
    // Dimensions on graph from Google Charts in pixels... 
    'dimension.x' => 800, 
    'dimension.y' => 350, 
     
    /* 
     * Do you want to generate statistics using the cron module? If so, specify which cron tag to use. 
     * Examples: daily, weekly 
     * To not run statistics in cron, set value to  
     *     'cron_tag' => NULL, 
     */ 
    'cron_tag' => 'daily', 
 
    /* 
     * Set max running time for this script. This is also controlle by max_execution_time in php.ini 
     * and is defalut set to 30 sec. Your web server can have other timeout configurations that may 
     * also interrupt PHP execution. Apache has a Timeout directive and IIS has a 
     * CGI timeout function. Both default to 300 seconds. 
     */ 
    'time_limit' => 300, 
     
    'timeres' => array( 
        'day' => array( 
            'name' => 'Day', 
            'slot'        => 60*15,            // Slots of 15 minutes 
            'fileslot'    => 60*60*24,        // One day (24 hours) file slots 
            'axislabelint' => 6*4,            // Number of slots per label. 4 per hour *6 = 6 hours  
            'dateformat-period'    => 'j. M',             //  4. Mars 
            'dateformat-intra'    => 'j. M H:i',         //  4. Mars 12:30     
        ), 
        'week' => array( 
            'name' => 'Week', 
            'slot'        => 60*60,            // Slots of one hour 
            'fileslot'    => 60*60*24*7,        // 7 days of data in each file 
            'axislabelint' => 24,            // Number of slots per label. 24 is one each day 
            'dateformat-period'    => 'j. M',             //  4. Mars 
            'dateformat-intra'    => 'j. M H:i',         //  4. Mars 12:30 
        ), 
        'month' => array( 
            'name' => 'Month', 
            'slot'        => 60*60*24,        // Slots of one day 
            'fileslot'    => 60*60*24*30,        // 30 days of data in each file 
            'axislabelint' => 7,            // Number of slots per label. 7 days => 1 week 
            'dateformat-period'    => 'j. M Y H:i',     //  4. Mars 12:30 
            'dateformat-intra'    => 'j. M',             //  4. Mars 
        ), 
        'monthaligned' => array( 
            'name' => 'AlignedMonth', 
            'slot'        => 60*60*24,        // Slots of one day 
            'fileslot'    => NULL,        // 30 days of data in each file 
            'customDateHandler' => 'month', 
            'axislabelint' => 7,            // Number of slots per label. 7 days => 1 week 
            'dateformat-period'    => 'j. M Y H:i',     //  4. Mars 12:30 
            'dateformat-intra'    => 'j. M',             //  4. Mars 
        ), 
         
        'days180' => array( 
            'name' => '180 days', 
            'slot'        => 60*60*24,        // Slots of 1 day (24 hours) 
            'fileslot'    => 60*60*24*180,    // 80 days of data in each file 
            'axislabelint' => 30,            // Number of slots per label. 7 days => 1 week 
            'dateformat-period'    => 'j. M',         //  4. Mars 
            'dateformat-intra'    => 'j. M',         //  4. Mars 
        ), 
    ), 
     
    'time_limit' => 300, 
     
    'timeres' => array( 
        'day' => array( 
            'name' => 'Day', 
            'slot'        => 60*15,            // Slots of 15 minutes 
            'fileslot'    => 60*60*24,        // One day (24 hours) file slots 
            'axislabelint' => 6*4,            // Number of slots per label. 4 per hour *6 = 6 hours  
            'dateformat-period'    => 'j. M',             //  4. Mars 
            'dateformat-intra'    => 'j. M H:i',         //  4. Mars 12:30     
        ), 
        'week' => array( 
            'name' => 'Week', 
            'slot'        => 60*60,            // Slots of one hour 
            'fileslot'    => 60*60*24*7,        // 7 days of data in each file 
            'axislabelint' => 24,            // Number of slots per label. 24 is one each day 
            'dateformat-period'    => 'j. M',             //  4. Mars 
            'dateformat-intra'    => 'j. M H:i',         //  4. Mars 12:30 
        ), 
        'month' => array( 
            'name' => 'Month', 
            'slot'        => 60*60*24,        // Slots of one day 
            'fileslot'    => 60*60*24*30,        // 30 days of data in each file 
            'axislabelint' => 7,            // Number of slots per label. 7 days => 1 week 
            'dateformat-period'    => 'j. M Y H:i',     //  4. Mars 12:30 
            'dateformat-intra'    => 'j. M',             //  4. Mars 
        ), 
        'monthaligned' => array( 
            'name' => 'AlignedMonth', 
            'slot'        => 60*60*24,        // Slots of one day 
            'fileslot'    => NULL,        // 30 days of data in each file 
            'customDateHandler' => 'month', 
            'axislabelint' => 7,            // Number of slots per label. 7 days => 1 week 
            'dateformat-period'    => 'j. M Y H:i',     //  4. Mars 12:30 
            'dateformat-intra'    => 'j. M',             //  4. Mars 
        ), 
         
        'days180' => array( 
            'name' => '180 days', 
            'slot'        => 60*60*24,        // Slots of 1 day (24 hours) 
            'fileslot'    => 60*60*24*180,    // 80 days of data in each file 
            'axislabelint' => 30,            // Number of slots per label. 7 days => 1 week 
            'dateformat-period'    => 'j. M',         //  4. Mars 
            'dateformat-intra'    => 'j. M',         //  4. Mars 
        ), 
    ), 
    'statrules' => array( 
        'sloratio' => array( 
            'name'         => 'SLO to SSO ratio', 
            'descr'        => 'Comparison of the number of Single Log-Out compared to Single Sign-On. Graph shows how many logouts where initiated for each Single Sign-On.', 
            'type' => 'calculated', 
            'presenter' => 'statistics:Ratio', 
            'ref' => array('slo', 'sso'), 
            'fieldPresentation' => array( 
                'class' => 'statistics:Entity', 
                'config' => 'saml20-sp-remote', 
            ), 
        ), 
        'ssomulti' => array( 
            'name'         => 'Requests per session', 
            'descr'        => 'Number of SSO request pairs exchanged between IdP and SP within the same IdP session. A high number indicates that the session at the SP is timing out faster than at the IdP.', 
            'type' => 'calculated', 
            'presenter' => 'statistics:Ratio', 
            'ref' => array('sso', 'ssofirst'), 
            'fieldPresentation' => array( 
                'class' => 'statistics:Entity', 
                'config' => 'saml20-sp-remote', 
            ), 
        ), 
        'sso' => array( 
            'name'         => 'SSO to service', 
            'descr'        => 'The number of logins at a Service Provider.', 
            'action'     => 'saml20-idp-SSO', 
            'col'        => 6,                // Service Provider EntityID 
            'fieldPresentation' => array( 
                'class' => 'statistics:Entity', 
                'config' => 'saml20-sp-remote', 
            ), 
        ), 
        'ssofirst' => array( 
            'name'         => 'SSO-first to service', 
            'descr'        => 'The number of logins at a Service Provider.', 
            'action'     => 'saml20-idp-SSO-first', 
            'col'        => 6,                // Service Provider EntityID 
            'fieldPresentation' => array( 
                'class' => 'statistics:Entity', 
                'config' => 'saml20-sp-remote', 
            ), 
        ), 
        'slo' => array( 
            'name'         => 'SLO initiated from service', 
            'descr'        => 'The number of initated Sinlge Logout from each of the service providers.', 
            'action'     => 'saml20-idp-SLO', 
            'col'        => 7,                // Service Provider EntityID that initiated the logout. 
            'fieldPresentation' => array( 
                'class' => 'statistics:Entity', 
                'config' => 'saml20-sp-remote', 
            ), 
        ), 
        'consent' => array( 
            'name'         => 'Consent', 
            'descr'        => 'Consent statistics. Everytime a user logs in to a service an entry is logged for one of three states: consent was found, consent was not found or consent storage was not available.', 
            'action'     => 'consent', 
            'col'        => 6, 
            'fieldPresentation' => array( 
                'class' => 'statistics:Entity', 
                'config' => 'saml20-sp-remote', 
            ), 
        ), 
        'consentresponse' => array( 
            'name'         => 'Consent response', 
            'descr'        => 'Consent response statistics. Everytime a user accepts consent, it is logged whether the user selected to remember the consent to next time.', 
            'action'     => 'consentResponse', 
            'col'        => 6, 
            'fieldPresentation' => array( 
                'class' => 'statistics:Entity', 
                'config' => 'saml20-sp-remote', 
            ), 
        ), 
        'slopages' => array( 
            'name'         => 'SLO iframe pages', 
            'descr'        => 'The varioust IFrame SLO pages a user visits', 
            'action'     => 'slo-iframe', 
            'col'        => 6,                // Page the user visits. 
        ), 
        'slofail' => array( 
            'name'         => 'Failed iframe IdP-init SLOs', 
            'descr'        => 'The number of logout failures from various SPs', 
            'action'     => 'slo-iframe-fail', 
            'col'        => 6,                // Service Provider EntityID that wasn't logged out. 
            'fieldPresentation' => array( 
                'class' => 'statistics:Entity', 
                'config' => 'saml20-sp-remote', 
            ), 
        ), 
    ), 
 
); 
 
 
 |