• /
  • EnglishEspañolFrançais日本語한국어Português
  • Se connecterDémarrer

Cette traduction automatique est fournie pour votre commodité.

En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.

Créer un problème

Ignorer des transactions spécifiques

New Relic pour Ruby vous permet de désactiver de manière sélective instrumentation pour requests particulières au sein de votre application Rails, Roda ou Sinatra.

Blocage de toute l'instrumentation

Appelez newrelic_ignore sans argument depuis un contrôleur Rails , une application Roda ou une application Sinatra pour empêcher instrumentation de toutes requests traitées par ce contrôleur ou cette application :

newrelic_ignore

L'utilisation de newrelic_ignore empêche l'agent d'enregistrer des données de performance (métriques, trace de transaction, événement, erreurs de trace, etc.) pour les transactions ciblées et empêchera également les transactions de contribuer à votre score Apdex global.

Ignorer des actions spécifiques avec Rails

Si vous souhaitez ignorer uniquement des actions spécifiques avec un contrôleur Rails, vous pouvez utiliser les options :only ou :except avec newrelic_ignore.

Par exemple, pour ignorer uniquement les actions index et show sur le contrôleur, utilisez :

newrelic_ignore :only => [:index, :show]

Pour ignorer toutes les actions sur le contrôleur except index:

newrelic_ignore :except => [:index]

Ignorer les itinéraires spécifiques avec Roda

Ignorez les itinéraires spécifiques dans les applications Roda en transmettant un itinéraire de style Roda à newrelic_ignore depuis l'extérieur du bloc route de votre application Roda. Pour plus d'informations, voir Roda : Ignorer les itinéraires.

Ignorer les itinéraires spécifiques avec Sinatra

Si vous souhaitez ignorer uniquement des itinéraires spécifiques au sein de votre application Sinatra, vous pouvez transmettre une définition d'itinéraire de style Sinatra à newrelic_ignore depuis votre application Sinatra. Pour plus d’informations, voir Sinatra : Ignorer les itinéraires.

Ignorer les contributions d'Apdex

Si vous souhaitez empêcher toutes les actions d'un contrôleur de contribuer à votre score Apdex, mais que vous souhaitez néanmoins d'autres données de performances, utilisez newrelic_ignore_apdex:

newrelic_ignore_apdex

Dans une application Rails, newrelic_ignore_apdex prend en charge les mêmes options:only et :except que newrelic_ignore. Dans une application Roda ou Sinatra, il acceptera le même itinéraire de style Roda ou Sinatra pour cibler des transactions spécifiques.

Blocage de l'instrumentation du navigateur

L'utilisation de newrelic_ignore_enduser empêche l'agent d'insérer automatiquement le JavaScript utilisé pour capturer les données . L'instrumentation côté serveur ne sera pas affectée.

Pour empêcher l'injection d'agent de navigateur pour toutes les actions d'un contrôleur, ajoutez un appel comme celui-ci à la classe du contrôleur :

newrelic_ignore_enduser

Dans une application Rails, newrelic_ignore_enduser prend en charge les mêmes options:only et :except que newrelic_ignore. Dans une application Roda ou Sinatra, il acceptera le même itinéraire de style Roda ou Sinatra pour cibler des transactions spécifiques.

Ignorer les transactions de manière dynamique

Dans certains cas, vous souhaiterez peut-être baser la décision d'ignorer une transaction spécifique sur des critères connus uniquement au moment de l'exécution, pendant la demande. Pour des scénarios comme celui-ci, les mécanismes déclaratifs expliqués ci-dessus ne sont pas adaptés. À partir de la version 3.9.2 de l'agent Ruby, vous pouvez plutôt utiliser la famille d'appel d'API suivante à partir de n'importe quel point de votre transaction :

NewRelic::Agent.ignore_transaction
NewRelic::Agent.ignore_apdex
NewRelic::Agent.ignore_enduser

Ces méthodes auront des résultats similaires aux appels newrelic_ignore, newrelic_ignore_apdex et newrelic_ignore_enduser , mais peuvent être appelées pendant une requête plutôt que pendant la définition de la classe.

Ignorer les transactions par URL avec configuration

Vous pouvez ignorer les transactions par URL à l'aide du paramètre de configuration rules.ignore_url_regexes :

rules:
ignore_url_regexes: ["secret", "^/admin"]

Cette configuration empêchera uniquement les événements de transaction correspondant au modèle défini d'être signalés. Utilisez l’une des méthodes de la famille newrelic_ignore* si vous souhaitez empêcher toutes les données, telles que les données de trace, d’être signalées à partir d’une transaction.

Notez que les expressions régulières n'incluent aucun type d'ancrage par défaut. L'expression régulière /secret/ correspondra à « newrelic.com/secret/login » et cela correspondra également à « newrelic.com/users/secretpanda ». L'expression régulière d'administration ancrée correspondra à « newrelic.com/admin/praetorians » mais cela ne correspondra pas à 'newrelic.com/users/totally-real-admin'.

Si nécessaire, vous pouvez également fournir une liste d'expressions régulières dans une chaîne séparée par des virgules, vous permettant ainsi de définir les expressions régulières à ignorer avec une variable d'environnement :

bash
$
NEW_RELIC_RULES_IGNORE_URL_REGEXES="secret,^/admin"

Comme toujours, la configuration à partir des variables d'environnement remplacera la configuration dans newrelic.yml.

Dépannage

La famille de méthodes newrelic_ignore* ne fonctionnera qu'à partir des classes de contrôleur Rails, en dehors du bloc route des applications Roda (sous-classes de Roda) ou dans les applications Sinatra (sous-classes de Sinatra::Base). D'autres applications doivent utiliser la famille d'appels NewRelic::Agent.ignore_* à partir de chaque requête que vous souhaitez ignorer, ce qui fonctionnera dans n'importe quel contexte.

Si vous obtenez un NoMethodError lorsque vous essayez d'utiliser newrelic_ignore à partir d'un contrôleur Rails, d'une application Roda ou d'une application Sinatra, assurez-vous que newrelic_rpm a été requis avant d'essayer d'appeler newrelic_ignore dans votre définition de classe.

Droits d'auteur © 2025 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.