The Squid log analyzer

SquidAnalyzer

 

Configuration

Here follow the configuration directives used by SquidAnalyzer into the configuation file squidanalyzer.conf.

Output

Where SquidAnalyzer should dump all HTML, data and images files. You should give a path that can be read by a Web browser.

WebUrl

The URL of the SquidAnalyzer javascript, HTML and images files. Default: /squidreport

LogFile

Set the path to the Squid log file.

UseClientDNSName

If you want to use DNS name instead of client Ip address as username enable this directive. When you don't have authentication, the username is set to the client ip address, this allow you to use the DNS name instead. Note that you must have a working DNS resolution and that it can really slow down the generation of reports.

DNSLookupTimeout

If you have enabled UseClientDNSName and have lot of ip addresses that do not resolve you may want to increase the DNS lookup timeout. By default SquidAnalyzer will stop to lookup a DNS name after 0.0001 second (100 ms).

NetworkAlias

Set path to the file containing network alias name. Network are show as Ip addresses so if you want to display name instead create a file with this format:

    LOCATION_NAME IP_NETWORK_ADDRESS

Separator must be a tabulation.

You can use regex to match and group some network addresses. See network-aliases file for examples.

UserAlias

Set path to the file containing user alias name. If you don't have auth_proxy enable users are seen as ip addresses. So if you want to show username or computer name instead, create a file with this format:

    FULL_USERNAME IP_ADDRESS

If you have auth_proxy enable but want to replace login name by full user name for example, create a file with this format:

    FULL_USERNAME LOGIN_NAME

Separator for both must be a tabulation.

You can use regex to match and group some user login or ip addresses. See user-aliases file for examples.

You can also replace default ip address by his DNS name by enabling directive 'UseClientDNSName'.

AnonymizeLogin

Set this to 1 if you want to anonymize all user login. The username will be replaced by an unique id that change at each squid-analyzer run. Default disable.

OrderNetwork bytes|hits|duration

OrderUser bytes|hits|duration

OrderUrl bytes|hits|duration

Used to set how SquidAnalyzer sort Network, User and User detailed Urls reports screen. Value can be: bytes, hits or duration. Default is bytes. Note that OrderUrl is limited to User detailed Urls reports and does not apply to Top Url and Top domain report where there is three reports each already ordered.

OrderMime bytes|hits

Used to set how SquidAnalyzer sort Mime types report screen Value can be: bytes or hits. Default is bytes.

UrlReport 0|1

Should SquidAnalyzer display user details. This will show all URL read by user. Take care to have enougth space disk for large user. Default is 0, no url detail report.

UserReport 0|1

Should SquidAnalyzer display user details. This will show statistics about user. Default is 1, show user detail report. Disable it to be able to remove any user related reports, statistics about URL and domains will remain.

QuietMode 0|1

Run in quiet mode for batch processing or print debug information. Default is 0, verbose mode.

CostPrice

Used to set a cost of the bandwith per Mb. If you want to generate invoice per Mb for bandwith traffic this can help you. Value 0 mean no cost, this is the default value, the "Cost" column is not displayed

Currency

Used to set the currency of the bandwith cost. Preferably the html special character. Default is €

TopNumber

Used to set the number of top url and second level domain to show. Default is top 100.

TopUrlUser

Use this directive to show the top N users that look at an URL or a domain. Set it to 0 to disable this feature. Default is top 10.

Exclude

Used to set client ip addresses, network addresses, auth login or uri to exclude from report.

You can define one by line exclusion by specifying first the type of the exclusion (USER, CLIENT or URI) and a space separated list of valid regex.

You can also use the NETWORK type to define network address with netmask using the CIDR notation: xxx.xxx.xxx.xxx/n

See example bellow:

        NETWORK        192.168.1.0/24 10.10.0.0/16
        CLIENT         192\.168\.1\.2 
        CLIENT         10\.169\.1\.\d+ 192\.168\.10\..*
        USER           myloginstr
        USER           guestlogin\d+ guestdemo
        URI            http:\/\/myinternetdomain.dom.*
        URI            .*\.webmail\.com\/.*\/login\.php.*

you can have multiple line of the same exclusion type.

Lang

Used to set the translation file to be used. Value must be set to a file containing all string translated. See the lang directory for translation files. Default is defined internally in English.

DateFormat

Date format used to display date (year = %y, month = %m and day = %d) You can also use %M to replace month by its 3 letters abbreviation. Default: %y-%m-%d

SiblingHit

Adds peer cache hit (CD_SIBLING_HIT) to be taken has local cache hit. Enabled by default, you must disabled it if you don't want to report peer cache hit onto your stats.

TransfertUnit

Allow to change the default unit used to display transfert size. Default is BYTES, other possible values are KB, MB and GB.

MinPie

Minimum percentage of data in pie's graphs to not be placed in the others item. Lower values will be summarized into the others item.

Locale

Set this to your locale to display generated date in your language. Default is to use the current locale of the system. If you want date in German for example, set it to de_DE.

        Rapport genere le mardi 11 decembre 2012, 15:13:09 (UTC+0100).

with a Locale set to fr_FR.

Help support
SquidAnalyzer!

 

Copyright (c) 2001-2012 Gilles Darold - All rights reserved. (GPL v3).