sqmgrlog ChangeLog

Nov/09/2000: Two patches form Brad Guillory <proxyadm@baileylink.net> added:
              1. max-elapsed tag added to sqmgrlog.conf file:
                 # TAG: max_elapsed milliseconds
	         #      If elapsed time is recorded in log is greater than max_elapsed use 0 for elapsed time.
  	         #      Use 0 for no checking
                 #
                 #max_elapsed 0
                 # 8 Hours
                 max_elapsed 28800000
              2. day report (the one that looks like a calendar) changed:
	         Every minute that a request is logged your time is incremented by the smaller
                 of 1 minute or the total time for the requests.
                
                 Thank you Brad. Brad Guillory is the newest sqmgrlog contributor.

              Changed: sort now compare according to arithmetic value.
	        
Jul/11/2000: Dutch language fixed by Pieter Kooistra <pkooistra@hr.nl>
       		Thank you.
             Changed: Russian_koi8 changed to Russian_Koi8.
		Thank you to Eugene AKA Kevin Kevin <kevin@id.ru> 
             Slightly changed Czech language
             Added: TAG: replace_index
                Replace "index.html" in the main index file with this string
                Vladimir Smelhaus <smelhaus@atlas.cz>
             Bug fixed: For some reason, Squid occasionally logs a blank line. Running sqmgrlog
		against a log containing a blank line causes sqmgrlog to take 99+% CPU
		Thanks to Giese, Bill <bill@gieses.com> 
	     Added: now every squid code that contain the MISS word will be counted as out cache.
         	Thanks to Kostya Panov <twin@beep.ru> 

Jun/09/2000: Bug fixed: abnormal end if userid contain ';'
		Thanks to Victor Feoktistov <feoktist@triniti.ru>
             Japanese language fixed by
                Akira Kitamura <click@anet.ne.jp> Takamatsu-City Kagawa Japan
             Bug fixed: Wrong date when setting date_format u in sqmgrlog.conf file
                Thanks to Dale Perkel <dale@think.co.za, Nuno Almeida <nalm@vanguarda.com>, 
		          Marcio Rodrigo Bordignon <mrbordignon@uol.com.br> 

Mar/15/2000: Japanese language added by 
		Akira Kitamura <click@anet.ne.jp> Takamatsu-City Kagawa Japan
                Thank you.
             Serbian language added by 
		Radovan Drobnjakovic <admin.rts@rts.co.yu>
                Thank you.
             Bug fixed: wrong sort field when lower case used in
		sort tags.
		Thaks to Scott Larsen <slarsen@cascorp.com>
                  and to WOLETZ, Dusan <woletz@globtel.sk>
             Abuse report removed.
             Changed: report1_sort_field TAG in sqmgrlog.conf 
			changed to topuser_sort_field
             Changed: report2_sort_field TAG in sqmgrlog.conf 
			changed to user_sort_field
             Added: topsites sort field options added:
               # TAG: topsites_sort_order CONNECT|BYTES A|D
               #      Sort for topsites report, where A=Ascendent, D=Descendent
               #
               #topsite_sort_oder CONNECT D
             Implementation requested by
		 Michael G. Koch <Michael.G.Koch@globalknowledge.de>

Feb/26/2000: Bulgarian-windows1251 language added by
	      Ivan Minchev <vanko@uni-svishtov.bg>.
               Thank you.
             French language updated by 
	      Olivier Rousselot <olivier.rousselot@ssti.fr>
               Thank you.

Feb/15/2000: SmarfFilter report added.
               Implementation requested by Andrew Bradshaw <andyb@excite.co.uk>
             Bug fixed: files created with 09Feb2000-09022000 instead 09Feb2000-09Feb2000
               Thanks to Andy Parfenov <andy@nursat.net>
             Changed: ignore records with HTTP/0.0 string.
               Implementation requested by Bernd Kossmann <bko@shd.de>
             Changed: some code added to ignore broken records in access.log file
             Bug fixed: removing old file with lastlog dont work.
               Thanks to Evren Yurtesen <yurtesen@ispro.net.tr>

Jan/20/2000: Indonesian language added by V Gatut Harijoso  <gatut@student.unpar.ac.id>
	       Thank you.
             Fixed: change in conf.h to compile on OpenBSD 2.6 system.
	       Thanks to Kenneth Ingham <ingham@i-pi.com>
             Fixed: small bug, which fills the "periodo" with 
		    "01Jan2000-20000101" instead of "01Jan2000-01Jan2000".
               Thanks to Schlosser, Carsten ECOFIS <c.schlosser@ecofis.de>
             Fixed: After calling system function malloc, variable excludecode 
		    have some symbols inside (excludecode wasn't zeroed).
               Thanks to Andrew Katkov <askat@crimea.net>

Dec/29/1999: Czech language added by Milos Prudek <prudek@nembv.cz>
               Thank you.
             Russian-windows1251 language added by Dima I. Allaverdov <allav@ur.rags.ru>
               Thank you.
             Changed: Russian language changed to Russian_koi8 language.
             Bug fixed: Sites&Users report dont resolve ip address.
               Thanks to Pavel Jezek <Pavel.Jezek@i.cz>

Nov/29/1999: Bug fixed: DENIED word translated to another language never printed.
               Thanks to Rodolphe SIBERT <rsi@kyxar.fr>
             New report added: Sites & Users
               Implementation requested by Rodolphe SIBERT <rsi@kyxar.fr>
             Added: The date format now also has the option "w" for week.
                    The report is then 1999.47-1999.47 for instance.
               Implemented by Seth Mos <stimpy@stimpy.multiweb.nl>, thank you for the patch.
             Dutch language added by Seth Mos <stimpy@stimpy.multiweb.nl>
               Thank you.
             Added: new tag on sqmgrlog.conf, named user_ip, for setting a system wire -p, use ip address
                    instead userid.
               Implemented by Carlo Marcelo Arenas Belon <carenas@chasqui.lared.net.pe>
               Thank you for the patch.
             Added: new tag on sqmgrlog.conf, exclude_codes pointing to a file with codes to be
                    ignored by sqmgrlog. Eg.: NONE/400
               Implementation asked by Doug Burks <DBurks@Augserv.com>

Sep/28/1999: Bug fixed: -split and -convert dont work with multiples -l options.
               Thanks to G. Kelana Sudibyo" <kelana@inn.bppt.go.id>
             Bug fixed: Bytes and Average corrupted in index.html after second execution.
               Thanks to Rob Glasser <orso@onelist.com>

Sep/13/1999: Bug fixed: get wrong access.log file when using access_log in sqmgrlog.conf file.
               Thanks to Michael G. Koch <Michael.G.Koch@globalknowledge.de>

Sep/10/1999: Spanish language added by Leonardo A. D'Angelo <ldangelo@san-cayetano.com>
               Thank you.
             New report added: topsites. This report show the top n sites accessed.
                    You can set the top num sites in topuser_num tag in sqmgrlog.conf file.
             Bug fixed: wrong userid when using Samba authenticator.
	       Thanks to klaubert@bcb.gov.br (Klaubert Herr da Silveira)
	     Changed: -v option removed. No more suport for Squid-1 log format.
               Thanks to Nik Oxley <nik.oxley@iholland.co.uk>

Aug/18/1999: New fields added to sqmgrlog.conf: 
               - lastlog n
                   With lastlog you can tell to sqmgrlog to remove old reports files.
                   Usage: lastlog 0  - no remove nothing
                          lastlog 10 - maintain only the last 10 reports
                   Implementation requested by Evren Yurtesen <yurtesen@ispro.net.tr>
                      Thank you for your help.
               - remove_temp_files yes|no
                   Remove temporary files: geral, usuarios, top, periodo from root report directory.
                   Impementation requested by Fred Pacquier <fredp@dial.oleane.com>
               - index yes|no|only
                   Usage: index yes  - will genereate the main index.html in reports
                          index no   - dont generate the main index.html in reports
                          index only - generate only the main index.html in reports
                   Implementation asked by Fred Pacquier <fredp@dial.oleane.com>
               - overwrite_report yes|no
                   If yes and the report already exist for that date, the reports will be overwrited.
                   If no and the report alread exist, that report will be renamed to filename.n, filename.n+1
                     Implementation requested by Eugeny Kuzakov <CoreDumped@CoreDumped.null.ru>
               - records_without_userid ignore|ip|everybody
                    What can I do with records without user id (no authentication) in access.log file ?
                      ignore - This record will be ignored.
                          ip - Use ip address instead. (default)
                   everybody - Use "everybody" instead.
               - use_comma
                   Use comma instead point in reports.
                     Eg.: use_comma yes => 23,450,110
                          use_comma no  => 23.450.110
               - mail_utility mail|mailx
                   Which mail command must I use to send reports ?

             Added: now every squid code that contain the MISS word will be counted as out cache. 
                Implementation requested by Eugeny Kuzakov <CoreDumped@CoreDumped.null.ru>
                   Thank you for your help and for share your FreeBSD with me.
             Changed: the field url was changed to 8192 bytes to suport big urls.
                Thanks to Eugeny Kuzakov <CoreDumped@CoreDumped.null.ru>
             Changed: the header "TIME SPENT" changed to "USED TIME" in topuser report.
             Changed: no more nouser will be in reports but IP address instead.
             Changed: no more squid 1 log format supported.
             Bug fixed: wrong reports when using common log format (emulate_http on).
                Thanks to Patrick LIN <patrickl@cst.ca>  

Aug/06/1999: French language added by Fred Pacquier <fredp@dial.oleane.com>
                Thank you
             Bug fixed: negative percentage in IN-CACHE-OUT.
                Thanks to brad@baileylink.net
             Bug fixed: wrong directory name created when using -g e and -d
                Thanks to Fred Pacquier <fredp@dial.oleane.com>
             Changed: atol use to get total bytes changed to atoll.
                Thanks to brad@baileylink.net for the patch.
             Changed: now use ',' as separator instead '.' when using US date (-g u)
                Implementations requested by brad@baileylink.net
             Changed: added -convert and -split to usage help (-h)
                      new messages added to easy translation.
                Implementations requested by Fred Pacquier <fredp@dial.oleane.com>

Jul/29/1999: Changed: convert userid to lowercase to disable username case-sensitivity
                when using auth_smb.
                Implementations requested by Doug Burks <DBurks@Augserv.com>               
             Changed: the sqmgrlog.conf now installs into /usr/local/etc
                Implementations requested by Daniel L Sjvsvdrd <daniel.sjosvard@paals.se>

Jul/06/1999: Y2K bug fixes.
                Thanks to askat@crimea.net  (JSC CRELCOM)
             Bug fixed: special character in userid cause core dump.
	        Thanks to Rick_Barzilli@xircom.com
	     Splitlog function added:  -split will split the log file by date in -d parameter.
                Eg.: sqmgrlog -split -d 01/07/1999-02/07/1999 [-convert] [-g e]

Jun/14/1999: German language added by Andreas Piesk <a.piesk@gmx.net>
                Thank you
             Some minor changes made by Andreas Piesk, thanks for the patches.

Jun/09/1999: Bug fixed: to send reports via mail, use mail instead mailx in FreeBSD.
                Thanks to Evren Yurtesen <yurtesen@ispro.net.tr> to share your FreeBSD with me.
             Bug fixed: wrong userid when using smb_auth autenticator.
                        The userid will be changed from NTDOMAIN\username to NTDOMAIN.username.
                Thanks to Jouko Ylikulju <Jouko.Ylikulju@pkcables.com>

Jun/04/1999: Y2K compliance implemented.
             Bug fixed: wrong report created when using common log format.
                Thanks to Carlos Santillana <Carlos@los-fresnos-cons.k12.tx.us>
             Bug fixed: wrong fopen with "rt", must be "r".
                Thanks to Wayne Bastow <wbastow@ccahs.health.nsw.gov.au>

May/31/1999: Turkish language added by Evren Yurtesen <yurtesen@ispro.net.tr>
                Thank you
             Bug fixed: users in exclude_users file were not removed from reports.
                Thanks to Arthur S. Petrossian <arthur@ipia.sci.am>
                Thanks to Evren Yurtesen <yurtesen@ispro.net.tr>
             Bug fixed: core dump when using output_email parm and mailx not installed.
                Thanks to Evren Yurtesen <yurtesen@ispro.net.tr>
             Thanks to Evren Yurtesen <yurtesen@ispro.net.tr> to share your FreeBSD with me.

May/20/1999: New report field added: IN CACHE and OUT CACHE. 
                This field show how many bytes (percent) was retrieved from the cache.
  	        Implementations requested by Arthur S. Petrossian <arthur@ipia.sci.am>

May/14/1999: Bug fixed. Abnormal End when using -i option
                Thanks to Carlos Canau <canau@ionia.EUnet.pt> for the patch.            
             Bug fixed. Sqmgrlog freeze if some records are broken in access.log file.
                Thanks to Rick_Barzilli@xircom.com
             Bugfix that prevents sqmgrlog from freezing up if a log file has "holes" (sequences of zeros) 
             (caused by filesystem crash).
                Thanks to drdivano@mail.axon.ru for the patch.

Apr/14/1999: Per user limit added.
                 If the user exceed the limit, userid will be saved in a file that can
                 be used in squid acl.
	         Field per_user_limit added to sqmgrlog.conf: per_user_limit file limit
                    file : where userid must be saved
                    limit: in MB   Eg. 40 will limit in 40 MB.
	         Implementation requested by Csaba Kabai <ckabai@icnpharm.com>

Mar/11/1999: Field exclude_users now accept indexonly to create only index.html report.
                Implementation requested by Hanni Daniel <daniel.haenni@softlab.ch>
	     Bug fixed for FreeBSD. Missing \n on topuser.
                Thanks to Andrew <andrew@extrim.ru> for share your FreeBSD-3.1
             Some minors fixes and changes in html layout.
                Thanks to Andrew Barnes <a.barnes@kaldor.com.au>

Mar/03/1999: Bug fixed. Wrong href link if userid in format userid.name...
                Thanks to Manon Goo <manon@manon.de>
             Some changes on variable translations.
                Thanks to Matteo Colombo <matteo@calcol.it>
             Russian language (KOI8-R) added by Palamarchuk Eugen <eugen@cit.od.ukrtel.net>
                Thank you
             Field exclude_users added to sqmgrlog.conf. 
	        Users within the file will be excluded from reports.
                Implementation requested by Hanni Daniel <daniel.haenni@softlab.ch>

Feb/26/1999: New date/time report added.
	        Look at http://www.orso.x5.net/squid-reports/1999Feb01-1999Feb08/duser24.html
	     -d option now accept from-until (dd/mm/yy-dd/mm/yy) dates.
	        Requested by Eric V. Pino <ericvp@roadrunner.com.ph>

Feb/10/1999: Italian language added by Matteo Colombo <matteo@calcol.it>
             Thank you.
             -convert option added. Convert the access.log file to a legible date
             and time format. May be used with -l and/or -g options.

Feb/05/1999: Field date_format added to sqmgrlog.conf.
                date_format u: reports with USA format mm/dd/yy
                date_format e: reports with Europe format dd/mm/yy
                Implementation requested by Matteo Colombo <matteo@calcol.it>
             Bug fixed: temporary file cannot be created if not run in root.
                Thanks to Carlos Canau <canau@ionia.EUnet.pt> for the patch.
             Changes from Tony Lorime <alorimes@csc.com>: use atoll instead atol in Solaris
			                                : ignore .htaccess when selecting files
	        Thank you.

Dec/21/1998: -b option added. Generate useragent report. 
                field useragent_log added to sqmgrlog.conf
    	        Implementation requested by Alp <support@x5.net>
             -j option added. Generate a kind of abuse report.
    	        Implementation requested by Alp <support@x5.net>
                To use this feature you must apply a patch (http://www.orso.x5.net/patches) on Squid.
             -c exclude option improved. Now you can exclude B classes
    	        Implementation requested by Yin Jun <yinj@mars.ahu.edu.cn>
             Bug fixed for Solaris. Must user -lsocket and -lnsl to resolve names.
                Thanks to Ryan Roehrich <ryanscott@mindless.com>

Dec/11/1998:  Bug fixed for long long int in Alpha Digital
   	        Thanks to Ilya V. Komarov <mur@mur.lynx.ru> for share your Digital server.

Dec/10/1998:  Version 2.2 released
	     -n option added. Resolve domain name for reports with IP Address.
                Field resolve_ip added to sqmgrlog.conf
             Sort report by header fields implemented
                Fields report1_sort_field and report2_sort_field added to sqmgrlog.conf 
             -f option added. Allow config file override
             Exclude hosts implemented            
                Field exclude_hosts file added to sqmgrlog.conf. Exclude ips, names, subnets
                  from reports.
  	        Implementations requested by Arthur S. Petrossian <arthur@ipia.sci.am>

Dec/07/1998:  Version 2.1 released
             sqmgrlog now can read log file in gzip or compress format.
    	        Implementation requested by Alp <support@x5.net>

Nov/09/1998:  Version 2.0 released
             -p option added. Allow redirect output report to email address.
             sqmgrlog.conf with colors, headers, title, font size, backgound color, text color,
                background image, font face, etc... added.
             Reports will be generated only for users in passwd file (tag password in sqmgrlog.conf).
             Many changes in html output layout.
                Thanks to Alp <support@x5.net>

Oct/19/1998:  Bug fixed by Maxim Berlin <mak@unesco.mitht.rssi.ru> for long long int in FreeBsd.
             Many thanks.
             Thanks to Ilya V. Komarov <mur@mur.lynx.ru> to share your FreeBSD 3.0 server to help on fixing.

Sep/28/1998:  Bug fixed for log with emulate http on (Squid 1.2.beta)
                Thanks to Alp <support@x5.net>
	     -p option added. Generated reports with IP Address insted Userid.
	     Use this option if you do not use Proxy authentication on Squid.
    	        Implementation requested by Szalma Zoltan <zszalma@file.matav.hu>
	
Aug/11/1998:  Bug fixed for memory slack. 
		Thanks to kevin@mcpeake.net
		 	  Jose Luiz <jluiz@projesom.com.br>
			  Patrick Darden <darden@server2.armc.org>
			  Steve Chan <Steve.Chan@lucasfilm.com>

Jul/07/1998:  Spent time added for native Squid log format (emulate_httpd_log off).
	     Connect added.
	     Layout change in html reports.

Jun/02/1998:  -o option added. Allow output dir override.
	     Implemented index.html on root output dir.
	     Implemented auto rename if output dir already exist.
	     bug fixed, link error if user change output dir in conf.h
	     Thanks to Alp <cybergulf@cybergulf.net>

May/28/1998:  -v option added. Allow Squid version override.

May/28/1998:  Bug fixed in common log format
	     Thanks to Tony Lorimer <tlorimer@health.csc.com.au>
                       Alp <cybergulf@cybergulf.net>
	               Carlos Santillana <carlos@los-fresnos-cons.k12.tx.us

May/21/1998:  Implemented Squid version verification because common log 
	     from 1.1 differ from 1.2 version.
	     -i option added (report by user and IP address)

May/19/1998:  configure script implemented.

May/18/1998:  Implemented auto log format recognize (Squid and Common log)

Apr/15/1998:  bug fixed. Some garbage on period.
             Thanks to Lee Shakespeare <lee@webfoundry.co.uk>
 
Apr/15/1998:  -z option added (debug)

Apr/07/1998:  top.html changed to index.html

Mar/31/1998:  index.html added

Mar/25/1998:  sqmgrlog was created
