Petite alerte ce matin d’un agent AWS, l’une de nos machines manque d’espace disque.
Si vous voulez passer une mauvaise journée, essayons donc d’attendre que votre serveur atteigne les 100%, vous verrez c’est sympathique de plus pouvoir se connecter en SSH.
Ni une ni deux nous cherchons les dossiers les plus volumineux à l’aide de la commande du
:
En étudiant le résultat de la recherche, nous ne sommes rendu compte que le dossier /tmp
présent à la racine du serveur faisait plus de 10 GO … soit plus de la moitié des capacités du disque de la machine.
Dans ce dossier, nous nous sommes retrouvés face à une montagne de fichier ayant un pattern similaire : “knp_snappy651be73555b004.69764999.html”.
Après téléchargement, il s’avère que les coupables sont des fichiers temporaires créés par le package laravel-snappy que nous utilisons pour générer des PDF.
Visiblement, dans certaines circonstances, le package n’est pas en mesure de supprimer ses propres fichiers temporaires … ce qui au fil des mois remplira votre serveur de plusieurs GO de fichiers inutiles, jusqu’à l’implosion.
Un rapide coup de suppression à l’aide d’un find :
Attention à vous, laravel-snappy n’est qu’un wrapper de KnpLabs/snappy qui lui-même encapsule le package wkhtmltopdf, un standard de l’industrie que vous utilisez probablement sans le savoir.
Le problème que nous avons rencontré n’est peut-être pas directement lié à laravel-snappy mais à l’une de ses dépendances, bon courage à vous.