Résolution des problèmes liés aux demandes de webhook et de contenu connecté
Cet article explique comment résoudre les codes d’erreur courants pour les webhooks et le contenu connecté, et fournit des explications supplémentaires sur la façon dont ces erreurs peuvent survenir dans vos requêtes.
Erreurs 4XX
Les erreurs 4XX indiquent un problème avec la requête envoyée à l’endpoint. Elles sont généralement causées par des requêtes erronées, notamment des paramètres mal formés, des en-têtes d’authentification manquants ou des URL incorrectes. Ces erreurs s’appliquent également au générateur de rapports.
Consultez le tableau suivant pour connaître les détails de chaque code d’erreur et les étapes de résolution :
| Code d'erreur | Signification | Marche à suivre |
|---|---|---|
| 400 Bad Request | La syntaxe de la requête est invalide. |
|
| 401 Unauthorized | La requête nécessite une authentification de l'utilisateur. |
|
| 403 Forbidden | L'endpoint comprend la requête mais refuse de l'autoriser. |
|
| 404 Not Found | L'endpoint ne trouve pas la ressource demandée. |
|
| 405 Method Not Allowed | La méthode de requête est connue par l'endpoint mais n'est pas prise en charge par la ressource cible. |
|
| 408 Request Timeout | L'endpoint a dépassé le délai de traitement de la requête. |
|
| 409 Conflict | La requête est incomplète en raison d'un conflit avec l'état actuel de la ressource. |
|
| 429 Too Many Requests | Trop de requêtes ont été envoyées dans un laps de temps donné. |
|
Erreurs 5XX
Les erreurs 5XX indiquent un problème au niveau de l’endpoint. Elles sont généralement dues à des problèmes côté serveur.
| Code d’erreur | Signification |
|---|---|
| 500 Internal Server Error | L’endpoint a rencontré une condition inattendue qui l’a empêché de traiter la requête. |
| 502 Bad Gateway | L’endpoint a reçu une réponse non valide du serveur en amont. |
| 503 Service Unavailable | L’endpoint est temporairement incapable de traiter la requête en raison d’une surcharge ou d’une maintenance. |
| 504 Gateway Timeout | L’endpoint n’a pas reçu de réponse en temps voulu de la part du serveur en amont. |
| 529 Host Overloaded | L’hôte de l’endpoint est surchargé et n’a pas pu répondre. |
| 598 Host Unhealthy | Braze a simulé la réponse parce que l’hôte de l’endpoint est temporairement marqué comme défaillant. Pour en savoir plus, consultez la section Détection d’un hôte défaillant. |
| 599 Connection Error | Braze a rencontré une erreur de délai de connexion réseau en essayant d’établir une connexion à l’endpoint, ce qui signifie que l’endpoint peut être instable ou hors service. |
Résolution des erreurs 5XX
Voici quelques conseils pour résoudre les erreurs 5XX les plus courantes :
- Consultez le message d’erreur pour obtenir des détails spécifiques dans le journal d’activité des messages. Pour les webhooks, rendez-vous dans la section Performance au fil du temps sur la page d’accueil de Braze et sélectionnez les statistiques des webhooks. Vous pourrez y trouver l’horodatage indiquant quand les erreurs se sont produites.
- Assurez-vous de ne pas envoyer trop de requêtes qui surchargent l’endpoint. Vous pouvez envoyer par lots ou ajuster la limite de débit pour vérifier si cela réduit les erreurs.
Détection d’un hôte défaillant
Les webhooks et le contenu connecté de Braze utilisent un mécanisme de détection d’hôte défaillant pour identifier les situations où l’hôte cible connaît un taux élevé de lenteur significative ou de surcharge entraînant des dépassements de délai, un trop grand nombre de requêtes ou d’autres problèmes empêchant Braze de communiquer correctement avec l’endpoint cible. Ce mécanisme agit comme un garde-fou pour réduire la charge inutile qui pourrait être à l’origine des difficultés de l’hôte cible. Il sert également à stabiliser l’infrastructure de Braze et à maintenir des vitesses d’envoi de messages rapides.
Les seuils de détection diffèrent entre les webhooks et le contenu connecté :
- Pour les webhooks : Si le nombre d’échecs dépasse 3 000 dans une fenêtre de temps glissante d’une minute (par combinaison unique de nom d’hôte et de groupe d’applications—et non par chemin d’accès à l’endpoint), Braze interrompt temporairement les requêtes vers l’hôte cible pendant une minute.
- Pour le contenu connecté : Si le nombre d’échecs dépasse 3 000 ET que le taux d’erreur dépasse 90 % dans une fenêtre de temps glissante d’une minute (par combinaison unique de nom d’hôte et de groupe d’applications—et non par chemin d’accès à l’endpoint), Braze interrompt temporairement les requêtes vers l’hôte cible pendant une minute.
Lorsque les requêtes sont interrompues, Braze simule des réponses avec un code d’erreur 598 pour signaler le mauvais état de santé de l’hôte. Au bout d’une minute, Braze reprend les requêtes à pleine vitesse si l’hôte est jugé sain. Si l’hôte est toujours défaillant, Braze attend une minute supplémentaire avant de réessayer.
Les codes d’erreur suivants contribuent au compteur d’échecs du détecteur d’hôte défaillant : 408, 429, 502, 503, 504, 529.
Pour les webhooks, Braze relance automatiquement les requêtes HTTP qui ont été interrompues par le détecteur d’hôte défaillant. Cette relance automatique utilise des délais exponentiels et n’effectue que quelques tentatives avant d’échouer définitivement. Pour plus d’informations sur les erreurs de webhook, consultez la section Erreurs, logique de réessai et délais d’attente.
Pour le contenu connecté, si les requêtes vers l’hôte cible sont interrompues par le détecteur d’hôte défaillant, Braze continue de rendre les messages et de suivre votre logique Liquid comme s’il avait reçu un code de réponse d’erreur. Si vous souhaitez que ces requêtes de contenu connecté soient relancées lorsqu’elles sont interrompues par le détecteur d’hôte défaillant, utilisez l’option :retry. Pour plus d’informations sur l’option :retry, consultez la section Nouvelles tentatives de contenu connecté.
Si vous pensez que la détection d’hôte défaillant est à l’origine de problèmes, contactez l’assistance Braze.
E-mails automatisés et entrées dans le journal d’activité des messages
Mise en place des e-mails automatisés
Si vous rencontrez plus de 100 000 erreurs d’endpoint de webhook ou de contenu connecté (tentatives incluses) dans un espace de travail sur une période de 24 heures, vous recevrez un e-mail contenant les informations suivantes pour vous aider à résoudre les erreurs :
- Nom de l’espace de travail
- Un lien vers le canvas ou la campagne
- URL de l’endpoint
- Code d’erreur
- Heure de la dernière occurrence de l’erreur
- Liens vers le journal d’activité des messages et la documentation associée
Vous pouvez configurer le seuil d’erreur par espace de travail. Pour ajuster ce seuil, contactez l’assistance Braze.
Les erreurs d’endpoint concernées sont les suivantes :
4XX:400,401,403,404,405,408,409,4295XX:500,502,503,504,598,599
Ces e-mails ne sont envoyés qu’une fois par jour au niveau de l’espace de travail. Si aucun utilisateur ne s’est inscrit pour recevoir ces e-mails, tous les administrateurs de la société en seront informés.
Pour vous inscrire à la réception de ces e-mails, procédez comme suit :
- Allez dans Paramètres > Paramètres d’administration > Préférences de notification.
- Sélectionnez Erreurs de contenu connecté et Erreurs de webhook dans la section Canvas et Campagnes.
Entrées du journal d’activité des messages
En cas d’échec, il y aura au moins une entrée dans le journal d’activité des messages liée à cet échec. Si la requête est relancée et finit par aboutir, ces détails seront disponibles dans Currents et Snowflake Data Share. Notez que même si une requête finit par aboutir après une relance, les erreurs peuvent tout de même déclencher l’e-mail automatisé.
Informations supplémentaires sur les échecs dans Braze Currents
Pour améliorer la transparence sur les problèmes liés aux webhooks, Braze transmet les événements détaillés d’échec des webhooks à Currents et à Snowflake Data Sharing. Ces événements incluent les requêtes de webhook ayant échoué (telles que les réponses HTTP 4xx ou 5xx), offrant ainsi une meilleure visibilité sur l’impact des problèmes de webhook sur la distribution des messages. Les événements d’échec comprennent aussi bien les erreurs terminales que les erreurs en cours de relance.
Les requêtes de contenu connecté ne sont pas incluses dans ces événements d’échec de webhook.
Pour plus d’informations, consultez le glossaire des événements d’engagement lié aux messages.
Modifier cette page sur GitHub