Quelqu’un m’a dit de le faire afin de garder une trace des dernières personnes frappant mon serveur:
tail -f access.log
Cependant, cela montre tous les “include”, y compris le fichier JS, les graphiques, etc. Et si je voulais juste voir les pages que les gens frappaient? Comment filtrer cela en utilisant tail -f?
Vous pouvez diriger la sortie via grep
ou awk
. Par exemple, si toutes vos pages ont un .php
dans l’URL, vous pouvez essayer ce qui suit:
tail -f access.log | grep '\.php'
Si vos journaux d’access incluent un champ de référence, ce qui précède correspondra également à de nombreuses ressources. Nous nous intéressons uniquement aux événements avec .php
dans le champ de requête, pas au champ référent. En utilisant awk
, nous pouvons distinguer entre ceux-ci.
tail -f access.log | awk '$7 ~ /\.php/ { print }'
Vous devrez peut-être ajuster $7
si votre format de journal est inhabituel.
si vous diffusez des fichiers .php:
tail -f access_log | grep ".php"
alternativement, si tous vos inclus sont dans un dossier nommé “include”, par exemple:
tail -f access_log | grep "include" -v
ou si vous voulez compter les hits dans un certain fichier:
grep "filename" access_log -c