Les avatars des utilisateurs ont disparu

Je prépare un nouveau forum pour sa mise en ligne. Discourse en auto-hébergement (2.6.0.beta1) sur DigitalOcean (soit dit en passant, je suis toujours étonné que vous offriez ce joyau gratuitement). Tout fonctionnait parfaitement et tous les utilisateurs (y compris moi-même) avaient des avatars.

Puis, à un moment précis, sans aucune modification de la configuration du forum, j’ai rafraîchi la page dans le navigateur et les avatars ont disparu.

Actuellement, la liste des sujets ressemble à ceci :

Curieusement, si j’ouvre un sujet, la « barre d’état » affiche bien les avatars :
existing_avatars

Édit : Je viens de tester à nouveau le forum en mode navigation privée. Tous les avatars ont disparu, donc je suppose que le fait de les avoir vus quelque part était lié à la mise en cache.

Cependant, si j’ouvre le profil d’un utilisateur, il n’y a pas d’avatar :

Heureusement, j’avais déjà commencé à sauvegarder les données et il n’y a pas encore beaucoup de testeurs sur le forum, donc j’espère pouvoir résoudre ce problème en restaurant simplement à partir d’une sauvegarde. Toutefois, sans identifier la cause racine, je risque de rencontrer à nouveau le même problème.

À ma connaissance, ces avatars proviennent de Gravatar.

Je suis nouveau sur Discourse, alors désolé par avance s’il n’y a pas assez d’informations dans ce rapport. Je fournirai toute information supplémentaire selon vos demandes.

Merci

Les photos de profil des utilisateurs sont récupérées depuis Gravatar s’ils possèdent un compte Gravatar. Je ne suis pas sûr de la fréquence de cette récupération, mais il est possible de forcer le téléchargement.

Si nécessaire, vous pouvez mettre à jour pour tous en exécutant :

./launcher enter app
rails r 'UserAvatar.find_each {|u| print "."; u.update_gravatar!}'

Cela prendra un certain temps à s’exécuter.

Référence : Automatic updates of Gravatar avatars? - #7 by sam

@IAmGav, merci pour votre recommandation.

Malheureusement, même après avoir effectué cette étape et attendu 30 minutes, aucun avatar n’apparaît toujours.

J’ai passé plusieurs heures sur ce problème, mais je n’ai pas trouvé de solution. La restauration à partir d’une sauvegarde n’a pas aidé non plus :frowning:

J’ai trouvé ce problème datant de 2018 : How to fix user avatar?

À en juger par ce que j’ai pu voir, le problème était lié à une certaine incompatibilité entre les composants internes de Discourse. Est-il possible que je rencontre un problème similaire ? Pour être honnête, je m’attendrais à ce qu’un problème de Discourse affecte beaucoup plus d’installations, mais le problème mentionné précédemment n’a concerné qu’un seul rapporteur.

Je vous serais reconnaissant de toute aide :pray:

Quelques recommandations :

  1. Regardez l’URL de l’une des images défectueuses : que se passe-t-il si vous ajoutez ?a à la fin de l’URL ? L’image commence-t-elle à s’afficher correctement ?

  2. Pouvez-vous corriger un seul utilisateur manuellement (passer à la lettre, télécharger un avatar, repasser à l’avatar, actualiser l’avatar) ?

Vos images sont-elles locales ou hébergées sur S3 ?

@sam

Les images sont locales. L’ajout de ?a à la fin de l’URL de l’image n’a pas aidé.

Curieusement, je peux toujours voir ma propre image sur les pages de préférences (mais ce n’est pas le cas pour les autres utilisateurs). D’un point de vue URL, voici ce qui se passe :

  • L’URL de mon image depuis la page principale renvoie vers le placeholder par défaut (même avec ?a) : https://forum.techyourchance.com/user_avatar/forum.techyourchance.com/vasiliy/45/2_2.png?a
  • L’URL de mon image depuis la page de préférences renvoie vers l’image correcte : https://forum.techyourchance.com/user_avatar/forum.techyourchance.com/vasiliy/120/2_2.png

J’ai essayé de corriger le problème pour un seul utilisateur. Passer à une lettre, puis à une image personnalisée, puis revenir à Gravatar n’a pas fonctionné.

Il y a un problème supplémentaire que je rencontre. Il semble sans rapport, mais comme la probabilité de rencontrer deux problèmes indépendants simultanément est très faible, je soupçonne un lien entre eux.

Le forum n’envoie plus d’invitations aux utilisateurs (il le faisait par le passé).

J’ai invité plusieurs utilisateurs, mais aucun n’a reçu d’invitation. J’ai donc envoyé une invitation à moi-même (avec une autre adresse e-mail), mais je ne l’ai pas reçue non plus. J’ai maintenant plusieurs invitations en attente :

J’ai immédiatement pensé que le problème venait de l’intégration avec Mailgun, ou même de la délivrabilité, alors j’ai envoyé un e-mail de test à moi-même, mais il est arrivé immédiatement. En regardant la page des e-mails envoyés, je vois ce qui suit :

Le forum a envoyé des e-mails de test, mais pas d’invitations.

À ce stade, je pense que mon installation de Discourse est gravement compromise. Probablement à cause de quelque chose que j’ai fait moi-même sans m’en rendre compte. Je lutte contre ce problème depuis plusieurs heures maintenant, au pire moment possible (le lancement de ma nouvelle communauté). Par conséquent, je vais simplement effectuer une installation propre de Discourse, sans restauration à partir d’une sauvegarde, et réinviter tous les utilisateurs. Heureusement, il n’y a pas encore beaucoup d’utilisateurs et peu de contenu sur le forum.

Je laisserai le droplet avec l’ancienne installation en place pendant un certain temps, au cas où vous auriez besoin de plus d’informations. Si vous décidez que cela vaut la peine d’être examiné, je n’hésiterai pas à vous donner un accès via SSH.

Merci pour votre aide. J’espère qu’une installation propre fonctionnera.

Vérifiez également ce sujet : Avatars lost after restore. How to get them back? - #57 by Overgrow

Bonjour @Vasiliy,

Avant de créer une nouvelle instance pour ce problème, vous pourriez vérifier le planificateur de tâches (Sidekiq) pour voir s’il fonctionne correctement, s’il y a des tâches échouées, si la file d’attente des tâches est encombrée, etc.

votre.magnifiquesite.com/sidekiq

Juste une pensée…

De plus, vous pourriez également vérifier le journal Rails, en particulier le journal des erreurs.

@neounix
Merci pour vos suggestions.

Je n’ai pas pu consacrer plus de temps au débogage de ce problème pour le moment, j’ai donc déjà créé un nouveau forum. Tout semble fonctionner correctement jusqu’à présent.

Franchement, je me sens un peu bête de ne pas avoir pensé à vérifier les journaux. Ce n’est pas que je m’attende à comprendre ce qu’ils disent, mais j’aurais dû les joindre au rapport. Bon, mieux vaut tard que jamais. Je joins maintenant tous les journaux du répertoire rails.

Je les ai un peu parcourus avec grep et il semble qu’il y ait effectivement des messages d’erreur. Cependant, je ne parviens pas à comprendre ce qu’ils signifient ni s’ils sont même liés aux problèmes. Probablement que des membres plus expérimentés pourront les examiner plus en détail.