L'agent PHP capture des métriques spéciales pour les sites Web Drupal. Lorsque ces métriques sont collectées, un onglet Drupal apparaît dans l'interface utilisateur de New Relic : Accédez à one.newrelic.com > All capabilities > APM & services > (select a Drupal app).
Configuration
La collecte de métriques spécifiques à Drupal peut être contrôlée par newrelic.framework.drupal.modules
. Il est activé par défaut (dans les versions 3.0 ou supérieures) et peut être désactivé avec :
newrelic.framework.drupal.modules = 0
Bien que ce paramètre utilise le mot « modules », il contrôle la collecte de toutes les métriques Drupal : modules, vues et hooks.
Métriques
L'agent PHP collecte des métriques pour les éléments suivants :
- Modules:Versions 2.5 ou supérieures. Ces métriques indiquent le temps passé dans chaque module Drupal. Dans les versions 3.5 ou supérieures, le temps est calculé à partir des fonctions de répartition des hooks
module_invoke
etmodule_invoke_all
. Dans les versions précédentes, le temps était calculé à partir de fonctions provenant d'un fichier avec le ".module" extension où le nom du fichier et le préfixe de fonction correspondaient. - Hooks:Versions 3.5 ou supérieures. Ces métriques indiquent le temps passé dans chaque hook Drupal. Le temps est calculé à partir des fonctions de répartition des hooks
module_invoke
etmodule_invoke_all
. - Views:Versions 3.5 ou supérieures. Ces métriques indiquent le temps passé dans la méthode
view::execute
d'une vue.
instrumentationDrupal et navigateur
Dans Drupal 7.15, Compress cached pages est activé par défaut. Si vous sélectionnez également Cache pages for anonymous users, le JavaScript n'est pas inséré dans les pages servies pour l'utilisateur anonyme. C'est parce que les pages de Drupal sont compressées directement à partir de la base de données avant d'être stockées dans le cache (avec gzip), donc l'agent PHP de New Relic n'a aucune chance d'analyser le HTML.
Dans cette situation, instrumentation manuelle offre une meilleure opportunité de capturer des données pour un utilisateur anonyme. Pour plus d'informations, voir monitoring des navigateurs et l' agent PHP
Drupal 10.2 a introduit un nouveau changement qui lui permet de définir un en-tête content-length
. L'agent PHP New Relic ne peut pas injecter automatiquement l'auto-instrumentation du navigateur lorsque le champ d'en-tête HTTP Content-Length
est défini. Pour continuer à utiliser monitoring des navigateurs, désactivez auto-instrumentation du navigateur et insérez manuellement l'en-tête et le pied de page JavaScript dans vos modèles. Pour plus d'informations, veuillez consulter ici.
Tâches Cron
Drupal prend en charge l'exécution périodique de tâches pour effectuer une maintenance de routine ou un travail similaire au nom des modules Drupal installés. Ces tâches peuvent être exécutées sans aucune intervention manuelle au-delà de la configuration initiale. On les appelle généralement tâches cron. À partir de la version 4.3, l'agent PHP New Relic détecte l'exécution de ces tâches et les marque automatiquement comme transactions d'arrière-plan, quelle que soit la manière dont elles ont été démarrées.