L'agent Ruby New Relic dispose d'un support optionnel pour les tâches Rake instrumentées. Cela nécessite :
- Rake version 10.0.0 ou supérieure
- Agent Ruby version 3.13.0 ou supérieure
Pour instrumenter les tâches Rake, spécifiez les tâches par nom dans votre fichier newrelic.yml
.
Activer la prise en charge de Rake
Pour instrumenter les tâches Rake de votre application, ajoutez les noms des tâches cibles à l'élément rake.tasks
de votre fichier newrelic.yml
. L'agent Ruby fait correspondre ces noms à vos tâches actives à l'aide d'une expression régulière de chaîne.
Example: Instrumenting two Rake tasks
Par exemple, pour instrumenter les tâches Rake deploy
et deploy:all
, ajoutez ce qui suit à votre fichier newrelic.yml
:
rake: tasks: ["deploy", "deploy:all"]
Étant donné que la correspondance des noms de tâches s'effectue avec une expression régulière, vous pouvez instrumenter toutes les tâches Rake de votre application en utilisant une expression régulière générique telle que [".+"]
. Cependant, cela n'inclura pas les tâches Rake qui figurent dans votre liste de refus par défaut à partir du paramètre de configuration autostart.denylisted_rake_tasks
, comme db:migrate
.
- Pour inclure toutes les tâches Rake qui figurent dans votre liste de refus par défaut, incluez-les dans votre liste de refus personnalisée.
- Pour garantir que les tâches sont instrumentées avant leur exécution si vous utilisez Rails mais que votre tâche Rake ne nécessite pas l'environnement Rails , ajoutez
require 'tasks/newrelic'
en haut des tâches Rake.
Capturer les arguments de la tâche Rake
Par défaut, les arguments de la tâche Rake ne sont pas capturés. Pour capturer les arguments de la tâche Rake, utilisez :
attributes.include: job.rake.*