• /
  • 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

Comportement du logging de l'agent d'infrastructure

L'agent infrastructure de New Relic collecte ses propres données ainsi que le log d'intégration et les consolide dans une source unique. Par défaut, les logs apparaissent dans standard-output et sont ajoutés à un fichier de log. Pour désactiver la connexion dans la sortie standard, consultez les options de configuration de l'agent.

Configuration de base

L'exemple suivant montre une configuration typique pour le log de l'agent dans un système Linux (modifier le chemin du fichier lors de l'exécution Windows ou d'une autre plateforme) :

log:
level: info
file: '/var/log/newrelic-infra/newrelic-infra.log'
rotate:
max_size_mb: 100
max_files: 5
compression_enabled: true
file_pattern: YYYY-MM-DD_hh-mm-ss.log

Niveaux de gravité du logging

L'infrastructure utilise un sous-ensemble des niveaux de gravité standardSyslog :

  • ERROR: Conditions d'erreur remplies
  • WARN: Conditions d'avertissement remplies
  • INFO:Messages d'information
  • DEBUG:Contient des messages de niveau débogage (utiles lors du dépannage)

formatage du log

Pour l'agent infrastructure v1.4.9 ou supérieur, les messages de log sont alignés avec les valeurs de contexte. Cela offre un meilleur regroupement et un meilleur filtrage ; par exemple :

containerized agent found in container
containerID: VALUE

Par défaut, les logs d’infrastructure sont formatés en texte :

  • En mode premier plan, la sortie log est colorée, sans horodatage :

    DEBUG Sending deltas divided in blocks component=PatchSender mentityKey=ohaimaci mnumberOfBlocks=1
  • En mode arrière-plan, les logs sont des sorties d'horodatage, utilisées lors de l'exécution en tant que service ou du vidage du log dans un fichier :

    time="2019-07-12T09:54:15+02:00" level=info msg="Agent service manager shutdown completed successfully." component=AgentService service=newrelic-infra

Alternativement, le log peut être formaté sous forme de fichier JSON :

{"context":{},"level":"info","msg":"upstart_interval_sec: 0","timestamp":"2019-07-11T18:24:03+02:00"}
{"context":{},"level":"info","msg":"plugin_dir: ","timestamp":"2019-07-11T18:24:03+02:00"}

Pour modifier le format du log, consultez les paramètres de configuration de l'agent.

Rotation log intégrée

Pour l'agent infrastructure v1.28.0 ou supérieur, un mécanisme de rotation et de compression log intégré est disponible dans l'agent.

Mode verbeux intelligent

Pour les versions d'agent infrastructure 1.9.0 ou supérieures, vous pouvez activer le mode verbeux intelligent pour le log.

Le mode verbeux intelligent empêche les messages de débogage d'être enregistrés jusqu'à ce qu'un message d'erreur soit détecté. Une fois qu'une erreur est détectée, les messages de débogage sont écrits dans le fichier log avant l'erreur. Notez que seul le nombre le plus récent de messages de débogage configurés est enregistré. Par exemple, si vous avez configuré une limite de 10, lorsqu'une erreur est détectée, les 10 messages de débogage les plus récents avant la détection de l'erreur sont enregistrés.

Pour plus d'informations sur l'activation du mode verbeux intelligent et de la limite des messages de débogage, consultez Paramètres de configuration de l'infrastructure.

intégration gestion des log

intégration écriture JSON charge dans STDOUT et texte brut (JSON structuré dans le futur) log dans STDERR.

L'agent infrastructure gère les lignes d'intégration STDERR et transmet cette sortie dans le log de l'agent.

L'agent gère chaque ligne STDERR comme suit :

  • When agent runs in verbose mode: il transmet simplement la ligne STDERR complète en tant qu'entrée log d'agent DEBUG en plaçant les contextes de ligne d'intégration dans le champ msg.
  • Otherwise:il analyse la ligne par rapport au format attendu (voir ci-dessous) et enregistre uniquement comme niveau d'ERREUR de l'agent, les entrées produites par l'intégration avec les niveaux de gravité fatal ou error . Dans ce cas, les champs sont extraits et transmis de manière structurée (donc si la sortie JSON est activée pour l'agent, les champs deviennent interrogeables).

Par défaut, l'agent infrastructure filtre toutes les erreurs d'intégration qui n'empêchent pas l'exécution de l'intégration. Vous ne verrez toutes les erreurs d'une intégration que si le niveau de log est défini sur DEBUG ou si l'intégration est spécifiquement répertoriée dans la log configuration. Par exemple, dans cette configuration, toutes les erreurs provenant de nri-mssql seront affichées, même si le niveau de log est INFO :

log:
include_filters:
integration_name:
- nri-mssql

intégration format attendu STDERR

Une ligne doit être une liste de paires valeur-clé séparées par un caractère égal. Les clés peuvent contenir n’importe quel caractère, tandis que les valeurs peuvent avoir trois formats différents :

  1. chaîne : <quote>tout caractère, y compris les guillemets échappés \"<quote>
  2. map: &{any character}
  3. mot : n'importe quel caractère sauf les espaces

En interne, l'agent a utilisé cette expression régulière pour extraire les champs :

([^\s]*?)=(".*?[^\\]"|&{.*?}|[^\s]*)

Par instance, cette ligne :

time="2015-03-26T01:27:38-04:00" level=error msg="Foo bar baz" foo=bar

Génèrera une ligne log d'agent structurée avec ces champs :

- "time": "2015-03-26T01:27:38-04:00"
- "level": "error"
- "msg": "Foo bar baz"
- "foo": "bar"
Droits d'auteur © 2025 New Relic Inc.

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