Open AntoineAugusti opened 8 months ago
cc @thbar si tu as des idées pour continuer l'enquête ou déterminer si le problème vient de notre infrastructure ou non.
Plusieurs points:
Je pense que je vais essayer de relire le code du proxy pour voir ce qui peut se passer, puis aller vers la mise en place d'un suivi avec la distinction plus haut.
Voilà à "brûle pourpoint".
@thbar Ce sont de bonnes pistes pour améliorer les choses !
Je voulais dans un premier temps vérifier qu'il n'y avait pas de problème évident du côté de l'infra Clever Cloud ou de notre proxy avec ces analyses et ce script.
À ce stade et sans retour d'autres éléments de Google il semble qu'on relaie simplement les problèmes des serveurs de notre producteur.
@thbar Si ça te convient, je te laisse traiter la partie "modification du code proxy" et créer éventuellement un autre ticket ou directement une PR ? Je vais m'en tenir à l'investigation et indiquer les résultats sur cette issue.
@thbar Si ça te convient, je te laisse traiter la partie "modification du code proxy" et créer éventuellement un autre ticket ou directement une PR ? Je vais m'en tenir à l'investigation et indiquer les résultats sur cette issue.
Tout à fait - il faut voir quelle priorité on assigne à ça ; et je suis curieux de voir les retours, j'irai voir la discussion.
@thbar Google vient de nous partager quelques éléments. J'ai regardé rapidement et il y a une erreur que je n'explique pas, les erreurs status_code = 504 et le détail est
Failed to download (HTTP status: GatewayTimeout. Content: {"fault":{"faultstring":"Gateway Timeout","detail":{"errorcode":"messaging.adaptors.http.flow.GatewayTimeout"}}}) Status code: GatewayTimeout. Content: {"fault":{"faultstring":"Gateway Timeout","detail":{"errorcode":"messaging.adaptors.http.flow.GatewayTimeout"}}}.
je ne vois pas ce qui pourrait retourner ça chez nous et je n'ai pas constaté ça dans mes tests. Je ne vois pas les requêtes de notre côté dans AppSignal non plus.
J'ai regardé pour Divia trip updates et SNCF TER en particulier.
Tu as une idée ? Sinon je demanderai des infos complémentaires. Je me demande si c'est pas une gateway intermédiaire chez eux.
J'ai plusieurs idées pour aller voir:
Côté AppSignal les requêtes sont filtrées chez nous pour économiser le budget (les vraies requêtes je veux dire) donc on ne les retrouvera pas (et au pire on pourrait sélectivement les laisser passer, pour un subset, le temps de l'enquête).
Ca pourrait être autant un souci chez nous, que sur notre load balancer, que sur un proxy intermédiaire chez eux (type gateway anti-sorties)...
Il va falloir instrumenter avec une probe pour s'en sortir je pense.
Il y a déjà normalement quelques éléments à regarder en ouvrant le CSV et en regardant certains flux. Certaines erreurs sont de toute évidence côté producteur mais pour par exemple SNCF et Divia il y a beaucoup de 504. AppSignal donne quelques traces de logs quand même.
Je vais de toute façon demander des clarifications côté Google et éventuellement leur demandant de spécifier un user-agent précis ou de passer des params dans l'URL pour faciliter les choses.
AppSignal donne quelques traces de logs quand même.
Oui juste les logs mais pas les requêtes pour le coup ; je pense que j'irai sûrement activer la trace sur les requêtes mais de façon sélective, avec un flux précis, pour ne pas exploser notre quota !
@thbar Tu as bien les requêtes dans AppSignal avec le rate limiter et LOG_USER_AGENT = true
. Mais il y a des choses à améliorer dans le code proxy pour distinguer d'où vient l'erreur (on relaie le producteur ou pas).
Je vais de toute façon demander des clarifications côté Google et éventuellement leur demandant de spécifier un user-agent précis ou de passer des params dans l'URL pour faciliter les choses.
@thbar Si ça te convient, je te laisse traiter la partie "modification du code proxy" et créer éventuellement un autre ticket ou directement une PR ? Je vais m'en tenir à l'investigation et indiquer les résultats sur cette issue.
J'ai créé:
(dont je m'occuperai à un moment)
Je reste abonné ici pour suivre l'aventure :-)
@thbar Tu as bien les requêtes dans AppSignal avec le rate limiter et
LOG_USER_AGENT = true
. Mais il y a des choses à améliorer dans le code proxy !
Tu pourras pointer où ça sort dans AppSignal? Du coup je me demande si on ne double-compte pas des choses!
Je verrai en fonction du lien. Merci!
Dans les logs
https://github.com/etalab/transport-site/issues/3580 sur le sujet des logs et des attributs pour pouvoir les filtrer correctement dans AppSignal
Google indique
De mon côté, je ne peux malheureusement pas te fournir plus d'informations.
Toutefois, ils ont ajouté les paramètres suivants à leurs requêtes vers les flux GTFS-RT ?client=Google-Transit-GTFSRT
.
Google Maps nous a remonté rencontrer des erreurs lors du requêtage de certains flux GTFS-RT.
J'ai investigué et je n'ai rien trouvé mettant en évidence un dysfonctionnement de notre infrastructure pour le moment, le problème semble être au niveau des serveurs sources des producteurs de données.
J'ai :
qui m'a donné 8 timeout ou bad gateway sur 100 000 requêtes en requêtant pendant 15-20 minutes.
J'attends des retours plus précis de l'équipe technique de Google.
cc @thbar si tu as des idées pour continuer l'enquête ou déterminer si le problème vient de notre infrastructure ou non.