À propos des échecs de livraison de webhook
Une livraison de webhook peut échouer pour plusieurs raisons. Par exemple, si votre serveur est arrêté ou prend plus de 10 secondes pour répondre, GitHub enregistre la remise en tant qu’échec.
GitHub ne renvoie pas automatiquement les livraisons ayant échoué.
Gestion des échecs de livraison
Vous pouvez relivrer manuellement les livraisons ayant échoué. Pour plus d’informations, consultez « Nouvelle livraison des webhooks ».
Vous pouvez également écrire un script qui vérifie les livraisons ayant échoué et tente de relivrer toutes les livraisons en échec. Votre script doit s’exécuter selon une planification et effectuer les opérations suivantes :
-
Utilisez l’API GitHub REST pour récupérer des données sur les remises de webhook qui ont été tentées depuis la dernière exécution de votre script. Pour plus d’informations, consultez Points de terminaison d’API REST pour les webhooks du référentiel, Points de terminaison d’API REST pour les webhooks de l'organisation et Points de terminaison d’API REST pour GitHub App webhooks.
Il n’existe aucun point de terminaison d’API pour obtenir des données sur GitHub Marketplace les webhooks ou GitHub Sponsors les webhooks.
- Examiner les données extraites pour voir si des livraisons ont échoué. Les données d’une livraison ayant échoué auront une valeur
statusqui n’est pasOK. - Utilisez l’API GitHub REST pour redéliver toutes les remises qui ont échoué. Pour plus d’informations, consultez Points de terminaison d’API REST pour les webhooks du référentiel, Points de terminaison d’API REST pour les webhooks de l'organisation et Points de terminaison d’API REST pour GitHub App webhooks.
Pour obtenir des exemples de scripts, reportez-vous à :
- Renvoi automatique des livraisons échouées pour un webhook de référentiel
- Livrer de nouveau de manière automatique les livraisons échouées pour un webhook d'organisation
- Réenvoyer automatiquement les livraisons ayant échoué pour un webhook d'une application GitHub
Si une livraison de webhook échoue à plusieurs reprises, vous devez enquêter sur la cause. Chaque livraison ayant échoué donnera une raison d’échec. Pour plus d’informations, consultez « Résolution des problèmes liés aux webhooks ».