- Accueil
- Info légales
- Aide (FAQ)
- Les tags de ce site
- Bloc note
- Articles techniques
- Notes system
- Divers articles
- Drupal
- Notes ITIL 2007
- Notes MS
- Dans le quartier...
- Emploi
- Recettes de cuisine et adresses gourmandes
- mes applis ubuntu préferées
- Divers acronymes du monde social
- Internet 2018
- P2 meublé à louer - quartier du Poteau 75018
- apcos - réseaux sociaux et outils
- Articles techniques
- Divers liens
- Fun
- Mon CV IT
- Nouveautés
Gestion de la mémoire, Module memory_profiler et syslog
Module memory_profiler
https://www.drupal.org/project/memory_profiler pour drupal 6 et 7. Sans devel, log les pics de mémoire dans watchdog bien pour la prod.
Voir cet article, qui parle de ce module : http://www.pixelite.co.nz/article/how-to-profile-php-memory-with-drupal/
Activer syslog (core) : drush en syslog memory_profiler
pour regarder une simple requete : grep "memory profiler" drupal-watchdog.log | head -n 1
ou (juste URL et mémoire php) grep "memory profiler" drupal-watchdog.log | head -n 1 | awk -F'|' -v OFS=',' '{print $5, $9}'
requetes selon mémoire: grep "memory profiler" drupal-watchdog.log | awk -F'|' -v OFS=',' '{print $5, $9}' | sed 's/ MB.*//' | sort -t, -k+2 -n -r | head -n 20
Syslog
configuration syslog
Conf Syslog à /etc/syslog.conf (par défaut ils vont à /var/log/messages) -
cf https://www.drupal.org/documentation/modules/syslog
Conf à admin/config/development/logging :
- modifier le nom du site (remplacer "drupal" à "Identité Syslog" par le nom du site). Utiliser par ex Log0 pour lui, log1 pour un autre....
- Log 0 à 7
Pour avoir le log dans un fichier séparé - local0 correspond au niveau de log (cf admin/config/development/logging)
Ajouter dans /etc/rsyslog.conf tout en bas : local0.* /var/log/drupal.log
sudo service rsyslog restart
tail -f /var/log/drupal.log
grep "memory profiler" /var/log/xaou.log | head -n 1
ou mieux :
Puis désactiver dblog : drush dis dblog
Voir aussi https://amme86.wordpress.com/2015/01/03/drupal-logging-to-rsyslog/ et http://manpages.ubuntu.com/manpages/trusty/man5/rsyslog.conf.5.html
Utilisation
grep "memory profiler" /var/log/xaou.log | head -n 1
le format vient de (drush vget syslog_format)
: !base_url|!timestamp|!type|!ip|!request_uri|!referer|!uid|!link|!message
après le lien demandé, on a le referer, l'ID du user
Voir URL et mémoire PHP : grep "memory profiler" /var/log/xaou.log | head -n 1
| awk -F'|' -v OFS=',' '{print $5, $9}'
Créer un CSV : echo "request_uri,max_memory" > /tmp/memory.csv && grep "memory profiler"
/var/log/xaou.log
| awk -F'|' -v OFS=',' '{print $5, $9}' | sed 's/ MB.*//' >> /tmp/memory.csv
Combien le core requiert ?
drupal 7 core: 32 Mo et la v6 prend 16 Mo.