4. Herramientas de monitoreo y prueba de rendimiento

4.1. Google Analytics

  • Es una herramienta de Google para medir y analizar el tráfico de visitantes a una página web.
  • Una vez registrado, se debe colocar un código <script> al final de la etiqueta <head>de cada página que se quiera analizar.
  • Google Analytics usa cookies para identificar de forma única a cada visitante, además de registrar datos como su dirección IP, su localización aproximada (basándose en esa IP), el modelo de dispositivo móvil que ha usado para conectarse, etc. Por tanto, hay que indicar a los usuarios de la página que se están recolectando esos datos para fines estadísticos.
  • Existe un parámetro de configuración que permite ocultar los últimos digitos de las direcciones IP:
    • Dentro del <script>, sustituye la llamada a la función gtag con el parámetro config por lo siguiente:
      gtag('config', 'CODIGO_SEGUIMIENTO', {'anonymize_ip': true});
  • Para deshabilitar el rastreo (por ejemplo si el usuario tiene la opción de rechazar las cookies):
 window['ga-disable-GA_TRACKING_ID'] = true; 
  • También se puede hacer un script que inserte el código de Analytics (toda la etiqueta <script>) solo si el usuario ha aceptado las cookies en el banner de aceptación.

4.2. NetData

  • Monitoriza una amplía variedad de recursos del servidor. Interfaz amigable.
    • sudo apt install netdata
    • Acceso a través del puerto 19999
    • Para acceder desde fuera de la red local (no recomendado, es mejor usar redireccionamiento con SSH por ejemplo o limitando el acceso por firewall)
      • vim /etc/netdata/netdata.conf
        • bind socket to IP = 0.0.0.0
      • sudo service netdata restart

4.3. Zabbix

  • Similar a NetData, permite monitorizar varios servidores
wget https://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.4-1+bionic_all.deb 

dpkg -i zabbix-release_3.4-1+bionic_all.deb

apt update apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent

mysql -uroot -p #contraseña
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'password';
mysql> quit;

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p zabbix
# Edit file /etc/zabbix/zabbix_server.conf
DBPassword=password
# Edit file /etc/zabbix/apache.conf, uncomment and set the right timezone for you.
php_value date.timezone Europe/Riga

systemctl restart zabbix-server zabbix-agent apache2
systemctl enable zabbix-server zabbix-agent apache2

4.4. Phoronix Test Suite

  • Permite hacer pruebas de rendimiento
  • sudo apt install phoronix-test-suite
  • Requiere de zip o php7.2-zip
  • phoronix-test-suite install <<test>>
  • phoronix-test-suite run <<test>>
  • Tests populares:
    • pts/compress-gzip