linux

  • Control de log de servidor

    Si en algún momento tienes la necesidad de revisar los logs de tu sistema, necesitas armarte de valor y paciencia, ya que suele ser una tareas bastante engorrosa.

    Cuando tienes una web es fundamental revisar los logs de tu servidor, ya que podremos comprobar que todo va correctamente, los registros de log habituales en un sistema con apache son : log de acceso y log errores, donde encontraras los errores de php.

    Hay aplicaciones muy interesante que puedes probar como :

    • Splunk
    • Sumo Logic
    • LogStash
    • GrayLog
    • Loggly
    • PaperTrails
    • ...

    En este linkhace un pequeño analisis de algunas de ella, aunque nosostros somo de la vieja escuela y utilizamos la terminal.

    El primero y gran problema es que suele ser los ficheros log suelen ser muy grandes y comprimidos.

    Como cortar un fichero muy grande y pesado

    Con la instrucción split , ser puede dividir un fichero en pedazos.

    Hay muchas veces que podemos necesitar dividir los ficheros:

    Lo podemos hacer por lineas:

    split -l 24000 nombreficherooriginal  nombredestino[suffix]

    Explicacion del comando anterior:
    El comando anteriorr lo que hace es dividir el fichero [nombreficheroriginal] cada 24000 lineas y crear tantos ficheros [nombredestino] con [suffix] por defecto letras.

    Dividir por peso:

    split nombreficherooriginal  -b 20MB nombrefichero[suffix]

    En el ejemplo anterior , lo que hace es dividir el fichero en bloque de 20MB

    Programas de lectura de ficheros desde terminal

    Somos pro terminal por naturaleza y por edad :-) , por ello lo recomendamos , utilizar programar a ejecutar desde terminal que nos faciliten la lectura de estos ficheros sin necesidad utilizar aplicaciones pesada, incluso desde termnal podermo cargar todo el fichero, con programas como :

    • head
    • tail
    • cat
    • less

     Tail para leer log

     Con la siguiente instrucción nos lee constantemente las ultimas lineas del log que le indiquemos

    tail -f error.log

    Este programa queda activo mientras no lo canceles con CTRL+c, por lo que si se produce un error te va añadiendo lineas.

    Me parece super interesante tenerlo activo mientras estas programando en proyecto y estas en desarrollo.

    Cat para leer logs

    Este nos hace un lectura rápida del fichero, no muestra el texto por pantalla, todo de un sopetón.

    cat error.log

    Si el fichero estuviera comprimido, como error.log.2.gz, algo típico en servidores para guardar históricos de errores, pues la instruccion seria este otro comando:

    zcat error.log2.gz

    No muestra el fichero entero por pantalla.

    Less para leer ficheros.

    La gran diferencia entre less y cat es que pagina, es decir less nos muestra la primera pagina del fichero, luego pulsando la [barra espaciadora] nos muestra la siguiente, asi sucesivamente hasta termine el fichero.