Aucune erreur, l'instance ne revient pas après la reconstruction

Pour la première fois depuis des années, après une reconstruction, mon instance ne redémarre pas. Ma dernière reconstruction réussie date d’hier.

Y a-t-il peut-être un nouveau commit qui pourrait en être la raison ?

Quels sont les symptômes ?

Que voyez-vous si vous exécutez

tail -f /var/discourse/shared/standalone/log/rails/production.log
Terminé en 89.60s.
Téléchargement de MaxMindDB...
Compression de Javascript et génération de Source Maps

I, [2023-03-08T17:11:55.996529 #1]  INFO -- : Fichier > /usr/local/bin/discourse  chmod : +x  chown :
I, [2023-03-08T17:11:55.999205 #1]  INFO -- : Fichier > /usr/local/bin/rails  chmod : +x  chown :
I, [2023-03-08T17:11:56.001899 #1]  INFO -- : Fichier > /usr/local/bin/rake  chmod : +x  chown :
I, [2023-03-08T17:11:56.004616 #1]  INFO -- : Fichier > /usr/local/bin/rbtrace  chmod : +x  chown :
I, [2023-03-08T17:11:56.007306 #1]  INFO -- : Fichier > /usr/local/bin/stackprof  chmod : +x  chown :
I, [2023-03-08T17:11:56.010710 #1]  INFO -- : Fichier > /etc/update-motd.d/10-web  chmod : +x  chown :
I, [2023-03-08T17:11:56.012746 #1]  INFO -- : Fichier > /etc/logrotate.d/rails  chmod :   chown :
I, [2023-03-08T17:11:56.014343 #1]  INFO -- : Fichier > /etc/logrotate.d/nginx  chmod :   chown :
I, [2023-03-08T17:11:56.017963 #1]  INFO -- : Fichier > /etc/runit/1.d/00-ensure-links  chmod : +x  chown :
I, [2023-03-08T17:11:56.020609 #1]  INFO -- : Fichier > /etc/runit/1.d/01-cleanup-web-pids  chmod : +x  chown :
I, [2023-03-08T17:11:56.023663 #1]  INFO -- : Fichier > /root/.bash_profile  chmod : 644  chown :
I, [2023-03-08T17:11:56.026021 #1]  INFO -- : Fichier > /usr/local/etc/ImageMagick-7/policy.xml  chmod :   chown :
I, [2023-03-08T17:11:56.026795 #1]  INFO -- : Remplacement de (?-mix:server.+{) par limit_req_zone $binary_remote_addr zone=flood:10m rate=$reqs_per_secondr/s;
limit_req_zone $binary_remote_addr zone=bot:10m rate=$reqs_per_minuter/m;
limit_req_status 429;
limit_conn_zone $binary_remote_addr zone=connperip:10m;
limit_conn_status 429;
server {
 dans /etc/nginx/conf.d/discourse.conf
I, [2023-03-08T17:11:56.026984 #1]  INFO -- : Remplacement de (?-mix:location @discourse {) par location @discourse {
  limit_conn connperip $conn_per_ip;
  limit_req zone=flood burst=$burst_per_second nodelay;
  limit_req zone=bot burst=$burst_per_minute nodelay; dans /etc/nginx/conf.d/discourse.conf
I, [2023-03-08T17:11:56.029658 #1]  INFO -- : Fichier > /etc/runit/1.d/remove-old-socket  chmod : +x  chown :
I, [2023-03-08T17:11:56.032272 #1]  INFO -- : Fichier > /etc/runit/3.d/remove-old-socket  chmod : +x  chown :
I, [2023-03-08T17:11:56.032398 #1]  INFO -- : Remplacement de (?-mix:listen 80;) par listen unix:/shared/nginx.http.sock;
set_real_ip_from unix:;
 dans /etc/nginx/conf.d/discourse.conf
I, [2023-03-08T17:11:56.032577 #1]  INFO -- : Remplacement de (?-mix:listen 443 ssl http2;) par listen unix:/shared/nginx.https.sock ssl http2;
set_real_ip_from unix:; dans /etc/nginx/conf.d/discourse.conf
I, [2023-03-08T17:11:56.035350 #1]  INFO -- : Fichier > /tmp/add-cloudflare-ips  chmod : +x  chown :
I, [2023-03-08T17:11:56.035435 #1]  INFO -- : > /tmp/add-cloudflare-ips
I, [2023-03-08T17:11:56.359453 #1]  INFO -- : IPs CloudFlare :
set_real_ip_from 173.245.48.0/20; set_real_ip_from 103.21.244.0/22; set_real_ip_from 103.22.200.0/22; set_real_ip_from 103.31.4.0/22; set_real_ip_from 141.101.64.0/18; set_real_ip_from 108.162.192.0/18; set_real_ip_from 190.93.240.0/20; set_real_ip_from 188.114.96.0/20; set_real_ip_from 197.234.240.0/22; set_real_ip_from 198.41.128.0/17; set_real_ip_from 162.158.0.0/15; set_real_ip_from 104.16.0.0/13; set_real_ip_from 104.24.0.0/14; set_real_ip_from 172.64.0.0/13; set_real_ip_from 131.0.72.0/22; set_real_ip_from 2400:cb00::/32; set_real_ip_from 2606:4700::/32; set_real_ip_from 2803:f800::/32; set_real_ip_from 2405:b500::/32; set_real_ip_from 2405:8100::/32; set_real_ip_from 2a06:98c0::/29; set_real_ip_from 2c0f:f248::/32;

I, [2023-03-08T17:11:56.359655 #1]  INFO -- : > rm /tmp/add-cloudflare-ips
I, [2023-03-08T17:11:56.361599 #1]  INFO -- :
I, [2023-03-08T17:11:56.361818 #1]  INFO -- : > echo "Beginning of custom commands"
I, [2023-03-08T17:11:56.363535 #1]  INFO -- : Beginning of custom commands

I, [2023-03-08T17:11:56.367829 #1]  INFO -- : Fichier > /etc/service/monerochan_merchant_rpc/run  chmod : +x  chown :
I, [2023-03-08T17:11:56.368034 #1]  INFO -- : > echo "End of custom commands"
I, [2023-03-08T17:11:56.369958 #1]  INFO -- : End of custom commands

I, [2023-03-08T17:11:56.370117 #1]  INFO -- : Arrêt des processus asynchrones
I, [2023-03-08T17:11:56.370225 #1]  INFO -- : Envoi de INT à HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main pid : 42
I, [2023-03-08T17:11:56.370261 #1]  INFO -- : Envoi de TERM à exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid : 103
2023-03-08 17:11:56.370 UTC [42] LOG : demande d'arrêt rapide reçue
103:signal-handler (1678295516) SIGTERM reçu, planification de l'arrêt...
2023-03-08 17:11:56.372 UTC [42] LOG : annulation de toutes les transactions actives
2023-03-08 17:11:56.374 UTC [42] LOG : l'worker d'arrière-plan « logical replication launcher » (PID 51) s'est terminé avec le code de sortie 1
2023-03-08 17:11:56.375 UTC [46] LOG : arrêt en cours
2023-03-08 17:11:56.392 UTC [42] LOG : le système de base de données est arrêté
103:M 08 Mar 2023 17:11:56.469 # L'utilisateur a demandé l'arrêt...
103:M 08 Mar 2023 17:11:56.469 * Sauvegarde du dernier instantané RDB avant de quitter.
103:M 08 Mar 2023 17:11:56.570 * DB sauvegardé sur disque
103:M 08 Mar 2023 17:11:56.570 # Redis est maintenant prêt à quitter, au revoir...
sha256:422bd26e098f3af0623647ebce02770ac1608bfac07260aeb5469ab975696363
a0b91a9cc45e8666352e172143854705faa97b38208fcfe0650ea929989b8570
Suppression de l'ancien conteneur
+ /usr/bin/docker rm app
app
➜  discourse git:(main) ✗ tail -f /var/discourse/shared/standalone/log/rails/production.log


Au revoir !
Avis de dépréciation : (siwe) full_screen_login est maintenant forcé. Le paramètre full_screen_login peut être supprimé de l'auth_provider. (suppression dans Discourse 2.9.0)
À /var/www/discourse/lib/plugin/instance.rb:763:in `public_send`
Migration vers MakeChatMentionNotificationIdNullable (20230227172543)
Migration vers DropBadgeGrantedTitleColumn (20230228105851)
Migration vers AddExternalToSidebarUrls (20230303015952)
Le type de paramètre de thème a changé mais ne peut pas être converti.

 #<ThemeSettingsManager::Upload:0x00007f60ff714e38 @name=:background_image, @default="", @theme=#<Theme id: 31, name: "Search Banner", user_id: 2, created_at: "2021-08-03 16:38:09.042735000 +0000", updated_at: "2021-08-03 17:01:41.329058000 +0000", compiler_version: 0, user_selectable: false, hidden: false, color_scheme_id: nil, remote_theme_id: 29, component: true, enabled: true, auto_update: true>, @opts={:description=>"background image for the banner", :textarea=>false, :json_schema=>nil, :refresh=>false}, @types={:integer=>0, :float=>1, :string=>2, :bool=>3, :list=>4, :enum=>5, :upload=>6}>
Au revoir !
Avis de dépréciation : (siwe) full_screen_login est maintenant forcé. Le paramètre full_screen_login peut être supprimé de l'auth_provider. (suppression dans Discourse 2.9.0)
À /var/www/discourse/lib/plugin/instance.rb:763:in `public_send`
Migration vers MakeChatMentionNotificationIdNullable (20230227172543)
Migration vers DropBadgeGrantedTitleColumn (20230228105851)
Migration vers AddExternalToSidebarUrls (20230303015952)
Le type de paramètre de thème a changé mais ne peut pas être converti.

 #<ThemeSettingsManager::Upload:0x00007f60ff714e38 @name=:background_image, @default="", @theme=#<Theme id: 31, name: "Search Banner", user_id: 2, created_at: "2021-08-03 16:38:09.042735000 +0000", updated_at: "2021-08-03 17:01:41.329058000 +0000", compiler_version: 0, user_selectable: false, hidden: false, color_scheme_id: nil, remote_theme_id: 29, component: true, enabled: true, auto_update: true>, @opts={:description=>"background image for the banner", :textarea=>false, :json_schema=>nil, :refresh=>false}, @types={:integer=>0, :float=>1, :string=>2, :bool=>3, :list=>4, :enum=>5, :upload=>6}>

Je ne vois rien d’inhabituel. Les lignes nginx vous dérangent peut-être ? (ma configuration nginx provient du tutoriel de la page de maintenance officielle de discourse).

Que se passe-t-il si vous visitez votre site ? Pouvez-vous partager l’URL ?

Plutôt pas en public, mais je t’enverrai un message privé.

Edit : j’ai redirigé nginx pour ignorer les erreurs 502, etc. Juste une erreur de passerelle défectueuse.

Vous devrez examiner le fichier journal lorsque quelque chose essaiera de charger le site et voir quelle est l’erreur.

Si Cloudflare (ou autre chose) empêche un navigateur d’accéder au site, vous pourrez peut-être parcourir les journaux pour rechercher une erreur 500 afin de voir quel est le problème.

Vous pourriez être en mesure de curl localhost depuis l’intérieur du conteneur.

C’est un bon retour. J’essaierai ça et je reviendrai.

EDIT : Hmm, je ne pense pas que quelque chose se passe dans les logs, mais je vois ce qui suit.

➜ ~ tail -f /var/discourse/shared/standalone/log/rails/production.log
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/subscribe.rb:14:in `subscribe'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:288:in `_subscription'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/commands/pubsub.rb:20:in `block in subscribe'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:265:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:265:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:265:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/commands/pubsub.rb:19:in `subscribe'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus/backends/redis.rb:302:in `global_subscribe'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus.rb:768:in `global_subscribe_thread'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus.rb:739:in `block in new_subscriber_thread'

Dans mon nginx, je vois :

2023/03/08 17:58:38 [crit] 115962#115962: *448 connect() to unix:/var/discourse/shared/standalone/nginx.http.sock failed (2: No such file or directory) while connecting to upstream, client: IP.XXX server: [domain.com](http://domain.com), request: "GET /service-worker.js HTTP/2.0", upstream: "http://unix:/var/discourse/shared/standalone/nginx.http.sock:/service-worker.js", host: "domain.com", referrer: "https://domain.com/service-worker.js"
2023/03/08 17:59:32 [notice] 318573#318573: signal process started

Est-ce que cela aide ? Ou devrais-je complètement annuler la configuration nginx pour cela ?

Si vous partagez le backtrace complet (quelques lignes de plus de ce fichier), nous pourrons vous aider.

Terminé 200 OK en 25 ms (Vues : 0,1 ms | ActiveRecord : 0,0 ms | Allocations : 17734)
Démarrage de GET "/categories_and_latest" pour [ip supprimée] le 2023-03-08 16:20:41 +0000
Traitement par CategoriesController#categories_and_latest au format JSON
  Rendu du modèle texte (Durée : 0,0 ms | Allocations : 1)
Terminé 200 OK en 112 ms (Vues : 0,2 ms | ActiveRecord : 0,0 ms | Allocations : 63242)
Démarrage de GET "/" pour [ip supprimée] le 2023-03-08 16:21:00 +0000
Traitement par CategoriesController#index au format HTML
  Rendu de categories/index.html.erb dans layouts/crawler (Durée : 1,4 ms | Allocations : 1135)
  Rendu de la mise en page layouts/crawler.html.erb (Durée : 6,7 ms | Allocations : 3536)
Terminé 200 OK en 75 ms (Vues : 7,7 ms | ActiveRecord : 0,0 ms | Allocations : 41712)
Démarrage de GET "/notifications?limit=30&recent=true&bump_last_seen_reviewable=true" pour [ip supprimée] le 2023-03-08 16:21:35 +0000
Traitement par NotificationsController#index au format JSON
  Paramètres : {"limit"=>"30", "recent"=>"true", "bump_last_seen_reviewable"=>"true"}
Terminé 200 OK en 60 ms (Vues : 0,1 ms | ActiveRecord : 0,0 ms | Allocations : 30822)
Démarrage de GET "/" pour [ip supprimée] le 2023-03-08 16:22:00 +0000
Traitement par CategoriesController#index au format HTML
  Rendu de categories/index.html.erb dans layouts/crawler (Durée : 1,1 ms | Allocations : 1135)
  Rendu de la mise en page layouts/crawler.html.erb (Durée : 5,4 ms | Allocations : 3536)
Terminé 200 OK en 86 ms (Vues : 6,1 ms | ActiveRecord : 0,0 ms | Allocations : 41842)
Arrêt en cours
Termination des threads inactifs
Le planificateur se termine...
Erreur lors de la récupération du travail : Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL)
Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL) : l'abonnement a échoué, reconnexion dans 1 seconde. Pile d'appels /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:398:in `rescue in establish_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:379:in `establish_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:115:in `block in connect'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:344:in `with_reconnect'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:114:in `connect'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:409:in `ensure_connected'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:269:in `block in process'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:356:in `logging'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:268:in `process'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:175:in `block in call_loop'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:331:in `with_socket_timeout'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:174:in `call_loop'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/subscribe.rb:44:in `subscription'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/subscribe.rb:14:in `subscribe'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:288:in `_subscription'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/commands/pubsub.rb:20:in `block in subscribe'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:265:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:265:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:265:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/commands/pubsub.rb:19:in `subscribe'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus/backends/redis.rb:302:in `global_subscribe'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus.rb:768:in `global_subscribe_thread'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus.rb:739:in `block in new_subscriber_thread'
Erreur lors de la récupération du travail : Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL)
Erreur lors de la récupération du travail : Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL)
Erreur lors de la récupération du travail : Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL)
Exception du travail : Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL)

Erreur lors de la récupération du travail : Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL)
Exception du travail : Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL)

Exception du travail : Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL)

Exception du travail : Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL)

Exception du travail : Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL)

Exception du travail : Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL)

Échec du traitement du travail : Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL) ["/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:398:in `rescue in establish_connection'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:379:in `establish_connection'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:115:in `block in connect'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:344:in `with_reconnect'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:114:in `connect'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:409:in `ensure_connected'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:269:in `block in process'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:356:in `logging'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:268:in `process'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:161:in `call'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.0.0/lib/mini_profiler/profiling_methods.rb:85:in `block in profile_method'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:270:in `block in send_command'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:269:in `synchronize'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:269:in `send_command'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/commands/scripting.rb:110:in `_eval'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/commands/scripting.rb:97:in `evalsha'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus/backends/redis.rb:463:in `cached_eval'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus/backends/redis.rb:150:in `publish'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus.rb:391:in `publish'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus.rb:751:in `block in new_subscriber_thread'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus/timer_thread.rb:117:in `do_work'", "/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus/timer_thread.rb:95:in `block (2 levels) in queue'"]
Mise en pause pour permettre aux travaux de se terminer...
heartbeat : Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL)
Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL) : l'abonnement a échoué, reconnexion dans 1 seconde. Pile d'appels /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:398:in `rescue in establish_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:379:in `establish_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:115:in `block in connect'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:344:in `with_reconnect'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:114:in `connect'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:409:in `ensure_connected'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:269:in `block in process'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:356:in `logging'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:268:in `process'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:161:in `call'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.0.0/lib/mini_profiler/profiling_methods.rb:85:in `block in profile_method'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:270:in `block in send_command'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:269:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:269:in `send_command'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/commands/strings.rb:191:in `get'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus/backends/redis.rb:401:in `process_global_backlog'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus/backends/redis.rb:286:in `block in global_subscribe'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus/backends/redis.rb:299:in `global_subscribe'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus.rb:768:in `global_subscribe_thread'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus.rb:739:in `block in new_subscriber_thread'
Exception du travail : Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL)

Au revoir !
Avis de dépréciation : (siwe) full_screen_login est désormais forcé. Le paramètre full_screen_login peut être supprimé du auth_provider. (suppression dans Discourse 2.9.0) 
À /var/www/discourse/lib/plugin/instance.rb:763:in `public_send`
Migration vers MakeChatMentionNotificationIdNullable (20230227172543)
Migration vers DropBadgeGrantedTitleColumn (20230228105851)
Migration vers AddExternalToSidebarUrls (20230303015952)
Le type de paramètre du thème a changé mais ne peut pas être converti. 

 #<ThemeSettingsManager::Upload:0x00007f60ff714e38 @name=:background_image, @default="", @theme=#<Theme id: 31, name: "Search Banner", user_id: 2, created_at: "2021-08-03 16:38:09.042735000 +0000", updated_at: "2021-08-03 17:01:41.329058000 +0000", compiler_version: 0, user_selectable: false, hidden: false, color_scheme_id: nil, remote_theme_id: 29, component: true, enabled: true, auto_update: true>, @opts={:description=>"background image for the banner", :textarea=>false, :json_schema=>nil, :refresh=>false}, @types={:integer=>0, :float=>1, :string=>2, :bool=>3, :list=>4, :enum=>5, :upload=>6}>
Avis de dépréciation : (siwe) full_screen_login est désormais forcé. Le paramètre full_screen_login peut être supprimé du auth_provider. (suppression dans Discourse 2.9.0) 
À /var/www/discourse/lib/plugin/instance.rb:763:in `public_send`
Erreur de connexion à Redis sur localhost:6379 (Errno::EADDRNOTAVAIL) : l'abonnement a échoué, reconnexion dans 1 seconde. Pile d'appels /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:398:in `rescue in establish_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:379:in `establish_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:115:in `block in connect'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:344:in `with_reconnect'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:114:in `connect'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:409:in `ensure_connected'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:269:in `block in process'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:356:in `logging'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:268:in `process'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:175:in `block in call_loop'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:331:in `with_socket_timeout'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/client.rb:174:in `call_loop'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/subscribe.rb:44:in `subscription'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/subscribe.rb:14:in `subscribe'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:288:in `_subscription'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/commands/pubsub.rb:20:in `block in subscribe'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:265:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:265:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis.rb:265:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/redis-4.8.1/lib/redis/commands/pubsub.rb:19:in `subscribe'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus/backends/redis.rb:302:in `global_subscribe'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus.rb:768:in `global_subscribe_thread'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/message_bus-4.3.2/lib/message_bus.rb:739:in `block in new_subscriber_thread'

Ceci provient du moment précédant la reconstruction « fatale », jusqu’après plusieurs tentatives supplémentaires avec des plugins supprimés, etc.

J’ai supprimé les plugins suivants, et mon instance démarre à nouveau.

C’est donc probablement lié aux commits récents de l’un d’entre eux.

L’erreur ne parvient pas dans le journal car elle se produit lorsque rails démarre :

root@test1-web-only:/var/www/discourse# rails c
bundler: failed to load command: pry (/var/www/discourse/vendor/bundle/ruby/3.2.0/bin/pry)
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/zeitwerk-2.6.7/lib/zeitwerk/loader/helpers.rb:135:in `const_get': uninitialized constant PluginInstance (NameError)

    parent.const_get(cname, false)
          ^^^^^^^^^^
Did you mean?  PluginStore

J’ai reproduit l’erreur sur une autre installation. J’essaie de déterminer de quel plugin il s’agit actuellement.

Pouvez-vous partager la liste des plugins et le commit de chaque plugin ?

J’ai découvert qu’il s’agissait d’un conflit entre Automation et un autre plugin. Il se reconstruira avec seulement Automation activé, mais pas avec d’autres plugins activés. Je suis sur le point de trouver l’autre coupable…

En fait, nous avions un bug dans l’automatisation et l’assignation, et nous venons de corriger les deux. Donc, reconstruire maintenant le corrigera.

cc @pfaffman

Quelqu’un d’autre vient de me dire que

Voici la liste des plugins (plus un autre qui est privé)

          - git clone https://github.com/discourse/docker_manager.git
            #- git clone https://github.com/discourse/discourse-docs.git
            #- git clone https://github.com/discourse/discourse-solved.git
            #- git clone https://github.com/discourse/discourse-voting.git
            #- git clone https://github.com/discourse/discourse-reactions.git
            #- git clone https://github.com/discourse/discourse-canned-replies.git
            #- git clone https://github.com/jomaxro/discourse-plugin-site-setting-override.git
            #- git clone https://github.com/discourse/discourse-automation.git

J’ai réussi à obtenir le

Aha. Donc, apparemment, mon test qui était censé confirmer le plugin cassé confirme la correction.

Pareil haha, comment ça pour le timing ! Merci Falco.

Je vais essayer de reconstruire maintenant et de restaurer les plugins supprimés. Au cas où, voici le reste des plugins :

EDIT : Fonctionne avec les 3 plugins supprimés réinstallés. Merci l’équipe !

discourse 12436d05 À jour
docker_manager e90c8f55 À jour
discourse-adplugin bfd4438b À jour
discourse-calendar adca3f65 À jour
discourse-category-lockdown 2cf5f064 À jour
discourse-chat-integration 75cf4136 À jour
discourse-chatbot eb9c50ae À jour
discourse-data-explorer 389b8e15 À jour
discourse-docs 63bb4629 À jour
discourse-encrypt 0f3c612b À jour
discourse-formatting-toolbar d99f3c6d À jour
discourse-gamification a842e183 À jour
discourse-patreon 778829aa À jour
discourse-policy b86d520c À jour
discourse-pushover-notifications 30711ac7 À jour
discourse-siwe 752687c8 À jour
discourse-solved 2c1c64af À jour
discourse-staff-alias 10ae5329 À jour
discourse-telegram-notifications d9886998 À jour
discourse-whos-online aeee51e4 À jour