Depurar consulta en Laravel 5 sin la barra de depuración

A parte de la maravillosa barra de depuración que nos ofrece Laravel 5, podemos necesitar un log de las consultas que vamos haciendo. La forma más sencilla es con un evento:

Event::listen('illuminate.query', function($query){
var_dump($query);
});

Pero el otro día estaba montando un comando y no se ejecutaba correctamente la consulta que quería por lo que me toco usar otro método distinto, activando el log del propio query builder de Laravel:

DB::enableQueryLog();
// Aquí la query que queramos rastrear
$laQuery = DB::getQueryLog();
$this->info('query:' . $laQuery[0]['query']);
DB::disableQueryLog(); 

Liberar espacio en linux

Hoy me he quedado sin espacio en el disco duro de la máquina virtual que uso de servidor de desarrollo así que me he puesto a mirar donde se estaba comiendo más espacio.

Lo primero es ver el estado de las particiones:
df -h

A partir de ahí podemos empezar borrando los ficheros descargados en las instalaciones
apt-get autoclean

Después toca ver que directorios pesan más:
du -sch /DIRECTORIO

O si se tiene el tree instalado
tree -dh /DIRECTORIO

Una vez localizado el directorio que te interesa limpiar puedes ver el tamaño de los ficheros con un ls o con tree:
tree -h /DIRECTORIO

O directamente buscar los ficheros que más pesan (en este caso más de 10 megas)
find /DIRECTORIO -type f -size +10000k -exec ls -lh {} \; 2> /dev/null | awk '{ print $NF ": " $5 }' | sort -nrk 2,2

En mi caso resulta que me baje el otro día una web que tenía tropecientos pdfs repartidos en varias carpetas así que marchando comando para borrar todos los pdfs de un directorio recurrentemente:
find /DIRECTORIO -type f -name "*.pdf" -exec rm -rf {} \;

Y si, tener el disco duro al 98% de uso a tenerlo al 65% se nota.

PD: ya puestos también he liberado un poco de memoria RAM porque había lanzado un proceso de importación algo salvaje y había dejado la máquina tocada:

Ver consumo de memoria
watch -n 1 free -m

Liberarla
sync && sysctl -w vm.drop_caches=3

Modificando el proceso de autenticación de Laravel

Suelo implementar en los proyectos el modo «paranoico» de autenticación de usuarios, esto consiste en que cada vez que un usuario falla en el proceso de autenticación le mando un email de aviso y en caso de pasar de X intentos le bloqueo la cuenta. Para hacer esto en Laravel 5 lo que hago es modificar el proceso de logado de usuarios que ya trae Laravel por defecto, añadiendo en la tabla users un campo para establecer el estado del usuario (activo o no) y crear la tabla users_login para almacenar todos los intentos de acceso de los usuarios.

Se puede descargar los ficheros de mi repositorio de Github donde aparece todo el código comentado