Skip to main content
Imaginez : votre application Rails enregistre des logs sous plusieurs groupes, tels que rails, shop et audit. Vous voulez voir uniquement les lignes shop, mais vous ne savez plus si le champ s’appelle group ou namespace. La barre de requête des logs vous suggère des champs, des opérateurs et des valeurs de gravité au fur et à mesure que vous tapez. Utilisez ces suggestions pour construire une requête sans avoir à mémoriser la syntaxe. Vous pouvez aussi saisir une requête directement et choisir des suggestions pour les parties dont vous ne vous souvenez pas.

Construire une requête

Sélectionnez la barre de requête pour ouvrir les suggestions regroupées sous Fields et Attributes :
  • Fields sont disponibles sur chaque ligne de log : severity, hostname, group et message.
  • Attributes sont les clés qu’AppSignal trouve dans le JSON des lignes de log affichées, comme amount ou cart_id. La liste affiche cinq attributs tant que vous n’avez pas commencé à taper. Tapez une partie d’un nom pour filtrer la liste.
Barre de requête des logs contenant une requête saisie se terminant par AND, avec un menu déroulant listant les champs severity, hostname, group et message, puis des attributs tels que amount, attempt et cart_id

Suggestions regroupées sous Fields et Attributes, affichées après AND pour le filtre suivant

Supposons qu’une tâche en arrière-plan échoue et que vous vouliez voir chaque ligne de niveau erreur mentionnant Active Job. Construisez severity=error AND message:"ActiveJob" à partir des suggestions :
  1. Sélectionnez severity. Severity saute l’étape de l’opérateur et propose directement les niveaux de gravité, comme error, warn et info. Ces suggestions insèrent du texte dans la requête, mais vous pouvez toujours le saisir ou le modifier directement.
  2. Sélectionnez error. La barre affiche désormais severity=error.
  3. Tapez un espace et sélectionnez AND parmi les suggestions de jonction, ou saisissez-le vous-même.
  4. Sélectionnez message, puis choisissez un opérateur : contains, is, is not ou does not contain. Sélectionnez contains et la barre affiche severity=error AND message:.
  5. Tapez "ActiveJob" et appuyez sur Entrée pour exécuter la requête. Les guillemets sont facultatifs pour un seul mot et obligatoires dès que la valeur contient un espace, comme dans message:"Error performing".
La page n’affiche désormais que les lignes de niveau erreur dont le message contient ActiveJob. Ajoutez AND group=shop pour restreindre à un seul groupe. Pour faire correspondre plusieurs niveaux de gravité, combinez des filtres avec OR, par exemple (severity=error OR severity=warn). Utilisez les touches fléchées pour mettre en surbrillance une suggestion et Entrée pour l’insérer. Si aucune suggestion n’est en surbrillance, Entrée exécute la requête. Appuyez sur Échap pour fermer les suggestions. Sélectionnez le bouton d’effacement à droite de la barre pour supprimer la requête et afficher tous les logs. Tant que la barre de requête a le focus, la lecture en direct se met en pause pour que les lignes actuelles restent en place. Elle reprend lorsque vous quittez la barre.

Saisir une requête directement

La barre de requête est un champ de texte, vous pouvez donc également saisir ou coller une requête. La syntaxe de requête des logs complète fonctionne toujours dans la barre si vous avez besoin de plus que ce qu’offrent les suggestions d’autocomplétion des logs. L’autocomplétion des requêtes de logs est en bêta via AppSignal Labs et se trouve derrière un feature flag. Contactez le support pour l’activer pour votre organisation. Partagez vos retours sur notre serveur Discord. Une fois qu’une requête renvoie les lignes dont vous avez besoin, vous pouvez les transformer en métrique basée sur les logs sans quitter la page.