Passer au contenu principal
🔐 N’envoyez pas d’informations personnelles identifiables (PII) à AppSignal. Filtrez les PII (par exemple, noms, e-mails) des journaux et utilisez un identifiant, un hash ou un identifiant pseudonymisé à la place.

Pour les entités couvertes par la HIPAA, plus d’informations sur la signature d’un Business Associate Agreement (BAA) sont disponibles dans notre documentation Business Add-Ons.
Le point de terminaison HTTP est le point de terminaison le plus flexible pour envoyer des journaux à AppSignal. Vous pouvez formater le message de plusieurs façons comme décrit ci-dessous. Si vous utilisez un langage qui dispose d’une bibliothèque d’intégration pour AppSignal, nous vous recommandons d’utiliser l’une des bibliothèques d’intégration plutôt que le point de terminaison HTTP. Si vous créez une intégration personnalisée, nous vous recommandons d’utiliser le point de terminaison HTTP-JSON pour garantir que les messages sont formatés exactement comme prévu.

Point de terminaison

Vous pouvez POST des journaux à AppSignal. Vos journaux doivent être formatés en JSON, Logfmt ou Plaintext et envoyés au point de terminaison suivant :
Shell
https://appsignal-endpoint.net/logs?api_key=YOUR_LOG_SOURCE_API_KEY
Remplacez YOUR_LOG_SOURCE_API_KEY par la clé fournie lors de la création d’une source de journaux. Nous utiliserons l’heure à laquelle nos serveurs reçoivent la requête POST comme horodatage du journal. La sévérité par défaut sera INFO. Vous pouvez envoyer les paramètres hostname, severity et group/appname en les ajoutant à l’URL, par exemple :
Shell
https://appsignal-endpoint.net/logs?group=app&hostname=frontend1&severity=debug&api_key=YOUR_LOG_SOURCE_API_KEY
Vous pouvez envoyer plusieurs lignes de journal en séparant chaque ligne de journal par un caractère de saut de ligne : \n

Messages structurés

Afin d’ajouter des métadonnées supplémentaires à une ligne de journal, vous pouvez envoyer un message structuré.

Plaintext

Par défaut, la source est créée avec le formateur Plaintext sélectionné, vous pouvez envoyer n’importe quelle chaîne comme partie message de la ligne de journal, par exemple :
This is a log message
And this is another message
Cela donnera deux lignes de journal avec le message This is a log message et And this is another message respectivement.

Logfmt

Lorsque Logfmt est sélectionné comme format de message, vous pouvez envoyer une ligne de journal avec des paires clé-valeur séparées par un espace, par exemple :
This is a log message user_id=123 action=login
This is another log message user_id=123 action=logout
Cela donnera deux lignes de journal avec le message This is a log message et This is another log message respectivement, et les attributs suivants :
{
  "user_id": 123,
  "action": "login"
}
{
  "user_id": 123,
  "action": "logout"
}

JSON

Lorsque JSON est sélectionné comme format de message, vous pouvez envoyer une ligne de journal avec un objet JSON, par exemple :
{"message": "This is a log message", "user_id": 123, "action": "login"}
{"msg": "This is another log message", "user_id": 123, "action": "logout"}
Nous attendons soit une clé msg soit une clé message pour le message de la ligne de journal, et toutes les autres clés seront ajoutées comme attributs. Si aucune clé msg ou message n’est fournie, nous utiliserons l’intégralité de l’objet JSON (non analysé) comme message. Les attributs seront tout de même analysés et ajoutés à cette ligne. Vous pouvez en savoir plus sur les spécificités du formatage des messages dans notre documentation sur le formatage.