SARG - Generador de informes de análisis de calamar y herramienta de monitoreo de ancho de banda de Internet
SARG es una herramienta de código abierto que le permite analizar los archivos de registro de calamar y genera hermosos informes en formato HTML con información sobre los usuarios, direcciones IP, sitios de mayor acceso, uso total de ancho de banda, tiempo transcurrido, descargas, sitios web de acceso denegado, informes diarios, informes semanales e informes mensuales.
El SARG es una herramienta muy útil para ver cuánto ancho de banda de Internet utilizan las máquinas individuales en la red y puede ver en qué sitios web acceden los usuarios de la red.

En este artículo, lo guiaré sobre cómo instalar y configurar SARG - Squid Analysis Report Generator en sistemas RHEL/CentOS/Fedora y Debian/Ubuntu/Linux Mint.
Instalación de Sarg - Squid Log Analyzer en Linux
Supongo que ya instaló, configuró y probó el servidor Squid como un proxy transparente y DNS para la resolución de nombres en modo de almacenamiento en caché. De lo contrario, instálelos y configúrelos primero antes de continuar con la instalación de Sarg.
Importante: recuerde que sin la configuración de Squid y DNS, no es necesario instalar sarg en el sistema, no funcionará en absoluto. Entonces, es una solicitud para instalarlos primero antes de continuar con la instalación de Sarg.
Siga estas guías para instalar DNS y Squid en sus sistemas Linux:
- Install Cache Only DSN Server in RHEL/CentOS 7
- Install Cache Only DSN Server in RHEL/CentOS 6
- Install Cache Only DSN Server in Ubuntu and Debian
- Setting Up Squid Transparent Proxy in Ubuntu and Debian
- Install Squid Cache Server on RHEL and CentOS
El paquete "sarg" por defecto no está incluido en las distribuciones basadas en RedHat, por lo que necesitamos compilarlo e instalarlo manualmente desde el archivo tarball de origen. Para ello, necesitamos que se instalen en el sistema algunos paquetes de requisitos previos adicionales antes de compilarlo desde el código fuente.
# yum install –y gcc gd gd-devel make perl-GD wget httpd
Una vez que haya instalado todos los paquetes requeridos, descargue el último tarball fuente de sarg o puede usar el siguiente comando wget para descargarlo e instalarlo como se muestra a continuación.
# wget http://liquidtelecom.dl.sourceforge.net/project/sarg/sarg/sarg-2.3.10/sarg-2.3.10.tar.gz # tar -xvzf sarg-2.3.10.tar.gz # cd sarg-2.3.10 # ./configure # make # make install
En las distribuciones basadas en Debian, el paquete sarg se puede instalar fácilmente desde los repositorios predeterminados usando el administrador de paquetes apt-get.
$ sudo apt-get install sarg
Ahora es el momento de editar algunos parámetros en el archivo de configuración principal de SARG. El archivo contiene muchas opciones para editar, pero solo editaremos los parámetros requeridos como:
- Access logs path
- Output directory
- Date Format
- Overwrite report for the same date.
Abra el archivo sarg.conf con el editor que elija y realice los cambios que se muestran a continuación.
# vi /usr/local/etc/sarg.conf [On RedHat based systems]
$ sudo nano /etc/sarg/sarg.conf [On Debian based systems]
Ahora elimine el comentario y agregue la ruta original a su archivo de registro de acceso de Squid.
# sarg.conf # # TAG: access_log file # Where is the access.log file # sarg -l file # access_log /var/log/squid/access.log
A continuación, agregue la ruta correcta del directorio de salida para guardar los informes de calamar generados en ese directorio. Tenga en cuenta que en las distribuciones basadas en Debian, el directorio raíz web de Apache es "/ var/www". Por lo tanto, tenga cuidado al agregar las rutas raíz web correctas en sus distribuciones de Linux.
# TAG: output_dir # The reports will be saved in that directory # sarg -o dir # output_dir /var/www/html/squid-reports
Establezca el formato de fecha correcto para los informes. Por ejemplo, "date_format e" mostrará informes en formato "dd/mm/aa".
# TAG: date_format # Date format in reports: e (European=dd/mm/yy), u (American=mm/dd/yy), w (Weekly=yy.ww) # date_format e
A continuación, descomente y establezca Sobrescribir informe en "Sí".
# TAG: overwrite_report yes|no # yes - if report date already exist then will be overwritten. # no - if report date already exist then will be renamed to filename.n, filename.n+1 # overwrite_report yes
¡Eso es! Guarde y cierre el archivo.
Una vez que haya terminado con la parte de configuración, es hora de generar el informe de registro de calamar utilizando el siguiente comando.
# sarg -x [On RedHat based systems]
# sudo sarg -x [On Debian based systems]
[[email protected] squid]# sarg -x SARG: Init SARG: Loading configuration from /usr/local/etc/sarg.conf SARG: Deleting temporary directory "/tmp/sarg" SARG: Parameters: SARG: Hostname or IP address (-a) = SARG: Useragent log (-b) = SARG: Exclude file (-c) = SARG: Date from-until (-d) = SARG: Email address to send reports (-e) = SARG: Config file (-f) = /usr/local/etc/sarg.conf SARG: Date format (-g) = USA (mm/dd/yyyy) SARG: IP report (-i) = No SARG: Keep temporary files (-k) = No SARG: Input log (-l) = /var/log/squid/access.log SARG: Resolve IP Address (-n) = No SARG: Output dir (-o) = /var/www/html/squid-reports/ SARG: Use Ip Address instead of userid (-p) = No SARG: Accessed site (-s) = SARG: Time (-t) = SARG: User (-u) = SARG: Temporary dir (-w) = /tmp/sarg SARG: Debug messages (-x) = Yes SARG: Process messages (-z) = No SARG: Previous reports to keep (--lastlog) = 0 SARG: SARG: sarg version: 2.3.7 May-30-2013 SARG: Reading access log file: /var/log/squid/access.log SARG: Records in file: 355859, reading: 100.00% SARG: Records read: 355859, written: 355859, excluded: 0 SARG: Squid log format SARG: Period: 2014 Jan 21 SARG: Sorting log /tmp/sarg/172_16_16_55.user_unsort ......
Nota: El comando "sarg -x" leerá el archivo de configuración "sarg.conf", tomará la ruta del calamar "access.log" y generará un informe en formato html.
Los informes generados se encuentran en "/ var/www/html/squid-reports /" o "/ var/www/squid-reports /" a los que se puede acceder desde el navegador web utilizando la dirección.
http://localhost/squid-reports OR http://ip-address/squid-reports








Automatizar el proceso de generación de informes sarg en un período de tiempo determinado mediante trabajos cron. Por ejemplo, supongamos que desea generar informes por horas automáticamente, para hacer esto, necesita configurar un trabajo Cron.
# crontab -e
A continuación, agregue la siguiente línea al final del archivo. Guárdalo y ciérralo.
* */1 * * * /usr/local/bin/sarg -x
La regla Cron anterior generará un informe SARG cada 1 hora.
Enlaces de referencia
Página de inicio de Sarg
¡Eso es todo con SARG! Estaré con algunos artículos más interesantes sobre Linux, hasta entonces, estad atentos a TecMint.com y no olvides agregar tus valiosos comentarios.