Bloqué avec une erreur 500 après des bugs étranges et une reconstruction

Mon site est actuellement hors service. Je ne sais pas pourquoi, mais je ferai de mon mieux pour raconter ce qui s’est passé et ce que j’ai essayé.


Je n’ai pas visité mon site depuis un mois, mais je n’ai entendu aucune plainte concernant un dysfonctionnement de la part des utilisateurs ou des modérateurs. Aujourd’hui, j’ai visité le site, ouvert quelques pages dans de nouveaux onglets et accédé au tableau de bord administrateur.

Sur le tableau de bord administrateur, j’ai vu que 3 composants de thème étaient obsolètes. L’un d’eux était discotoc, je ne me souviens pas des deux autres. J’ai utilisé l’interface utilisateur pour les mettre à jour. J’ai également vu qu’il était recommandé de supprimer le plugin checklist, mais je suis à 90% sûr de ne pas l’avoir eu dans ma liste de plugins.

Je visitais l’une des pages de catégorie, et elle semblait très buggée. Au début, j’ai reçu une erreur du navigateur indiquant que la page ne répondait pas. Une autre visite et elle affichait une liste de catégories vide, et une autre visite elle affichait le haut de l’interface de la page de catégorie répété environ 100 fois.

  • POTENTIELLEMENT, cela a quelque chose à voir avec les mises à jour des composants de thème ???

Quoi qu’il en soit, j’ai trouvé cela étrange, et le tableau de bord m’a dit que je devais mettre à jour, alors je suis allé dans la ligne de commande et j’ai exécuté ./launcher rebuild app. Je ne me souviens pas si cela a échoué ou non. Après son exécution, le site ne se chargeait plus et affichait l’erreur 500 ci-dessus.

Nous avons essayé un tas de choses et rien ne semble résoudre le problème.

  • Je peux accéder à l’application via la ligne de commande et créer une sauvegarde, et elle a également été téléchargée dans notre bucket de sauvegarde.
  • discourse doctor fonctionne. Il envoie avec succès un e-mail de test, et j’ai pu visualiser avec succès le fichier .txt de sortie dans le navigateur servi par l’URL du site web. (il semble qu’il soit hors service en ce moment, peut-être depuis que j’ai relancé rebuild ?)
    • Il a montré que la version de discourse était NON TROUVÉE pour le site et localhost.
  • pinger le site depuis la ligne de commande du droplet fonctionne très bien.
  • j’ai essayé de redémarrer le droplet DO.
  • j’ai essayé de commenter tous les plugins et de reconstruire.
  • j’ai essayé d’exécuter git pull, il a dit que tout était déjà à jour.
  • j’ai essayé de vider le cache CDN des assets statiques.
  • j’ai essayé de définir la version de discourse sur v3.2.0.beta1, ce qui a certainement fonctionné par le passé.
  • j’ai essayé de visiter /safe-mode et /?safe_mode=no_themes,no_plugins, mais j’obtiens la même erreur 500.

Nous avons vu une variété d’erreurs, certaines fatales, d’autres non. Mais il ne semble pas que nous ayons trouvé quoi que ce soit.

Nous avons contourné celle-ci, je ne me souviens plus de ce que nous avons fait. Peut-être désactiver les plugins ?

1 gem installed
gem install prizm -v 0.0.3 -i /var/www/discourse/plugins/discourse-topic-previews-sidecar/gems/3.2.2 --no-document --ignore-dependencies --no-user-install
Successfully installed prizm-0.0.3
1 gem installed

I, [2024-01-06T03:44:20.128194 #1]  INFO -- : > cd /var/www/discourse & su discourse -c 'bundle exec rake themes:update assets:precompile'
Plugin name is 'discourse-topic-voting', but plugin directory is named 'discourse-voting'
^Cnode:events:492
      throw er; // Unhandled 'error' event
      ^

Error: write EPIPE
    at afterWriteDispatched (node:internal/stream_base_commons:160:15)
    at writeGeneric (node:internal/stream_base_commons:151:3)
    at Socket._writeGeneric (node:net:931:11)
    at Socket._write (node:net:943:8)
    at writeOrBuffer (node:internal/streams/writable:392:12)
    at _write (node:internal/streams/writable:333:10)
    at Writable.write (node:internal/streams/writable:337:10)
    at DestroyableTransform.ondata (/var/www/discourse/app/assets/javascripts/node_modules/readable-stream/lib/_stream_readable.js:629:20)
    at DestroyableTransform.emit (node:events:514:28)
    at addChunk (/var/www/discourse/app/assets/javascripts/node_modules/readable-stream/lib/_stream_readable.js:279:12)
    at readableAddChunk (/var/www/discourse/app/assets/javascripts/node_modules/readable-stream/lib/_stream_readable.js:262:11)
    at Readable.push (/var/www/discourse/app/assets/javascripts/node_modules/readable-stream/lib/_stream_readable.js:228:10)
    at Transform.push (/var/www/discourse/app/assets/javascripts/node_modules/readable-stream/lib/_stream_transform.js:132:32)
    at DestroyableTransform.afterTransform (/var/www/discourse/app/assets/javascripts/node_modules/readable-stream/lib/_stream_transform.js:85:10)
    at DestroyableTransform._transform (/var/www/discourse/app/assets/javascripts/node_modules/console-ui/lib/index.js:46:7)
    at Transform._read (/var/www/discourse/app/assets/javascripts/node_modules/readable-stream/lib/_stream_transform.js:166:10)
    at Transform._write (/var/www/discourse/app/assets/javascripts/node_modules/readable-stream/lib/_stream_transform.js:155:83)
    at doWrite (/var/www/discourse/app/assets/javascripts/node_modules/readable-stream/lib/_stream_writable.js:390:139)
    at writeOrBuffer (/var/www/discourse/app/assets/javascripts/node_modules/readable-stream/lib/_stream_writable.js:381:5)
    at Writable.write (/var/www/discourse/app/assets/javascripts/node_modules/readable-stream/lib/_stream_writable.js:302:11)
    at UI.write (/var/www/discourse/app/assets/javascripts/node_modules/console-ui/lib/index.js:73:25)
    at UI.writeLine (/var/www/discourse/app/assets/javascripts/node_modules/console-ui/lib/index.js:85:10)
    at UI.writeInfoLine (/var/www/discourse/app/assets/javascripts/node_modules/console-ui/lib/index.js:111:10)
    at Class._handleProgress (/var/www/discourse/app/assets/javascripts/ember-cli-progress-ci/index.js:45:23)
    at listOnTimeout (node:internal/timers:569:17)
    at process.processTimers (node:internal/timers:512:7) {
  errno: -32,
  code: 'EPIPE',
  syscall: 'write'
}

Node.js v18.17.1
error Command failed with exit code 1.
I, [2024-01-06T03:45:42.152091 #1]  INFO -- : Terminating async processes
I, [2024-01-06T03:45:42.152209 #1]  INFO -- : Sending INT to 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: 41
I, [2024-01-06T03:45:42.152250 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 110
110:signal-handler (1704512742) Received SIGTERM scheduling shutdown...
2024-01-06 03:45:42.152 UTC [41] LOG:  received fast shutdown request
2024-01-06 03:45:42.179 UTC [41] LOG:  aborting any active transactions
2024-01-06 03:45:42.181 UTC [41] LOG:  background worker "logical replication launcher" (PID 50) exited with exit code 1
2024-01-06 03:45:42.183 UTC [45] LOG:  shutting down
2024-01-06 03:45:42.222 UTC [41] LOG:  database system is shut down
110:M 06 Jan 2024 03:45:42.240 # User requested shutdown...
110:M 06 Jan 2024 03:45:42.240 * Saving the final RDB snapshot before exiting.
110:M 06 Jan 2024 03:45:45.463 * DB saved on disk
110:M 06 Jan 2024 03:45:45.463 # Redis is now ready to exit, bye bye...
/usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/exec_command.rb:122:in `readlines': Interrupt
        from /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/exec_command.rb:122:in `block in spawn'
        from /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/exec_command.rb:115:in `popen'
        from /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/exec_command.rb:115:in `spawn'
        from /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/exec_command.rb:88:in `block in run'
        from /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/exec_command.rb:86:in `each'
        from /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/exec_command.rb:86:in `run'
        from /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/command.rb:10:in `run'
        from /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/config.rb:227:in `block (2 levels) in run_commands'
        from /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/config.rb:211:in `each'
        from /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/config.rb:211:in `block in run_commands'
        from /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/config.rb:210:in `each'
        from /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/config.rb:210:in `run_commands'
        from /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/config.rb:191:in `run'
        from /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/cli.rb:89:in `run'
        from /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/bin/pups:9:in `<top (required)>'
        from /usr/local/bin/pups:25:in `load'
        from /usr/local/bin/pups:25:in `<main>'
sha256:da4950febbafda88432e357e0bd7cc8e0ba528b750569e60cce2a05dcdbed2a8
18c1a3ab556d2c4ddca2cf35a934fba94d748e48c1e09907ca16e17b91b64564
Removing old container
+ /usr/bin/docker rm app
app

L’erreur ci-dessous a été trouvée dans les logs de unicorn, mais je ne sais pas si elle est fatale (je n’ai qu’une capture d’écran d’une partie du texte)

app error: Missing 'secret_key_base' for 'production' environment, set this stri....

Et une autre bizarrerie où je suis entré dans l’application pour faire une sauvegarde. Mais ensuite, une deuxième personne est entrée dans l’application et elle a commencé à télécharger une image Discourse. Il n’y a eu aucun changement ou redémarrage entre ces deux événements, bien que nous ayons accédé depuis deux ordinateurs distincts.

./launcher enter app
WARNING: We are about to start downloading the Discourse base image
This process may take anywhere between a few minutes to an hour, depending on your network speed

Please be patient
...

Je manque d’idées sur quoi faire.

  • Je n’ai rien essayé concernant la désactivation des thèmes-composants, je ne sais pas comment faire si je ne peux pas accéder au panneau d’administration.
  • Je suppose que nous pourrions effacer le droplet et restaurer à partir de la dernière ou de l’avant-dernière sauvegarde.
  • Je ne sais pas quoi d’autre.

500 est une erreur back-end, il est donc peu probable qu’elle soit due à un composant de thème.

Je suggère de reconstruire sans aucun plugin non officiel, de voir si cela fonctionne, puis de réajouter les plugins supplémentaires un par un, en reconstruisant à chaque fois, et de voir si vous pouvez isoler le problème.

Assurez-vous d’utiliser les sources originales des plugins et non des forks non pris en charge.

J’ai supprimé toutes les lignes de plugins pour être absolument prudent. La reconstruction a échoué, j’ai donc changé la version pour le hachage de commit de v3.2.0.beta1. Cela ne fonctionne toujours pas et je vois quelques erreurs dans le journal. Les journaux ci-dessous proviennent de l’exécution de discourse-doctor, qui a échoué puis a tenté de reconstruire

I, [2024-01-06T16:44:38.708297 #1]  INFO -- : > cd /var/www/discourse && git reset --hard
205:C 06 Jan 2024 16:44:38.710 # oO0OoO0OoO0Oo Redis est en cours de démarrage oO0OoO0OoO0Oo
205:C 06 Jan 2024 16:44:38.710 # Version Redis=6.2.3, bits=64, commit=00000000, modifié=0, pid=205, vient de démarrer
205:C 06 Jan 2024 16:44:38.710 # Configuration chargée
205:M 06 Jan 2024 16:44:38.711 * horloge monotone : POSIX clock_gettime
205:M 06 Jan 2024 16:44:38.711 * Mode d'exécution=standalone, port=6379.
205:M 06 Jan 2024 16:44:38.711 # Serveur initialisé
205:M 06 Jan 2024 16:44:38.711 # AVERTISSEMENT : overcommit_memory est défini à 0 ! La sauvegarde en arrière-plan peut échouer en cas de faible mémoire. Pour corriger ce problème, ajoutez 'vm.overcommit_memory = 1' à /etc/sysctl.conf, puis redémarrez ou exécutez la commande 'sysctl vm.overcommit_memory=1' pour que cela prenne effet.
205:M 06 Jan 2024 16:44:38.711 # Impossible de gérer la version du format RDB 10
205:M 06 Jan 2024 16:44:38.711 # Erreur fatale lors du chargement de la base de données : Argument invalide. Sortie.
I, [2024-01-06T16:44:49.503562 #1]  INFO -- : > cd /var/www/discourse && find /var/www/discourse ! -user discours
e -exec chown discourse {} \+
I, [2024-01-06T16:44:52.109667 #1]  INFO -- : 
I, [2024-01-06T16:44:52.109952 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle install --deployment
ment --retry 3 --jobs 4 --verbose --without test development'
[OBSOLÈTE] L'option `--deployment` est obsolète car elle dépend d'être mémorisée entre les invocations de bundler, ce que bundler ne fera plus dans les versions futures. Veuillez plutôt utiliser `bundle config set --local deployment 
'true'`, et arrêtez d'utiliser ce drapeau.
[OBSOLÈTE] L'option `--without` est obsolète car elle dépend d'être mémorisée entre les invocations de bundler,
 ce que bundler ne fera plus dans les versions futures. Veuillez plutôt utiliser `bundle config set --local without 'test 
development'`, et arrêtez d'utiliser ce drapeau.
Bundler::PathError : Le chemin `/var/www/discourse/vendor/bundle/ruby/2.7.0/bundler/gems/sprockets-f4d3dae71ef2` n'existe pas.
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/source/path.rb:209:in `load_spec_files'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/source/git.rb:206:in `load_spec_files'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/source/path.rb:107:in `local_specs'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/source/git.rb:172:in `specs'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/lazy_specification.rb:82:in `materialize_for_ins
tallation'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/spec_set.rb:205:in `map!'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/spec_set.rb:205:in `specs_for_dependency'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/spec_set.rb:34:in `block in for'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/spec_set.rb:22:in `loop'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/spec_set.rb:22:in `for'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/spec_set.rb:85:in `materialize'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/definition.rb:209:in `missing_specs'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/definition.rb:213:in `missing_specs?'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/installer.rb:255:in `resolve_if_needed'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/installer.rb:82:in `block in run'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/process_lock.rb:12:in `block in lock'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/process_lock.rb:9:in `open'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/process_lock.rb:9:in `lock'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/installer.rb:71:in `run'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/installer.rb:23:in `install'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/cli/install.rb:62:in `run'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/cli.rb:261:in `block in install'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/settings.rb:131:in `temporary'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/cli.rb:260:in `install'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
 /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/cli.rb:34:in `dispatch'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/cli.rb:28:in `start'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/exe/bundle:45:in `block in <top (required)>'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/friendly_errors.rb:117:in `with_friendly_errors'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/exe/bundle:33:in `<top (required)>'
  /usr/local/bin/bundle:23:in `load'
  /usr/local/bin/bundle:23:in `<main>'
Bundler::InstallError : colored2-4.0.0 nécessite une version de ruby >= 3.1, ce qui est incompatible avec la version actuelle, 2.7.2
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/installer.rb:233:in `block in ensure_specs_are_compatible!'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/spec_set.rb:165:in `each'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/spec_set.rb:165:in `each'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/installer.rb:231:in `ensure_specs_are_compatible!'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/installer.rb:83:in `block in run'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/process_lock.rb:12:in `block in lock'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/process_lock.rb:9:in `open'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/process_lock.rb:9:in `lock'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/installer.rb:71:in `run'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/installer.rb:23:in `install'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/cli/install.rb:62:in `run'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/cli.rb:261:in `block in install'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/settings.rb:131:in `temporary'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/cli.rb:260:in `install'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/cli.rb:34:in `dispatch'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/cli.rb:28:in `start'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/exe/bundle:45:in `block in <top (required)>'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/friendly_errors.rb:117:in `with_friendly_errors'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/exe/bundle:33:in `<top (required)>'
  /usr/local/bin/bundle:23:in `load'
  /usr/local/bin/bundle:23:in `<main>'
I, [2024-01-06T16:45:02.658038 #1]  INFO -- : Exécution de `bundle install --deployment --jobs 4 --retry 3 --verbose --without "test" "development"` avec bundler 2.4.13
Gelé, utilisant la résolution depuis le fichier lockfile
La définition manque de dépendances, échec de la résolution et de la matérialisation locale (https://github.com/rails/sprockets (at 3.x@f4d3dae) n'est pas encore vérifié. Exécutez d'abord `bundle install`.)
Gelé, utilisant la résolution depuis le fichier lockfile
HTTP GET https://index.rubygems.org/versions
HTTP 206 Contenu partiel https://index.rubygems.org/versions
HTTP GET https://index.rubygems.org/versions
HTTP 200 OK https://index.rubygems.org/versions
Récupération des métadonnées du gem depuis https://rubygems.org/
HTTP 206 Contenu partiel https://index.rubygems.org/info/domain_name
HTTP 200 OK https://index.rubygems.org/info/cucumber-tag_expressions
Recherche des gems ["powerbar", "coffee-script-source", "needle", "jruby-pageant", "bcrypt_pbkdf", "rbnacl", "rbnacl-libsodium", "pattern-match", "middleware", "virtus"]
HTTP GET https://index.rubygems.org/info/middleware
HTTP GET https://index.rubygems.org/info/virtus
HTTP 206 Contenu partiel https://index.rubygems.org/info/virtus
HTTP 200 OK https://index.rubygems.org/info/middleware
Recherche des gems ["ansi", "descendants_tracker", "axiom-types", "coercible", "equalizer"]
Recherche des gems ["adamantium", "ice_nine"]
Recherche des gems ["memoizable"]
Récupération de https://github.com/rails/sprockets

I, [2024-01-06T16:45:02.658395 #1]  INFO -- : Terminaison des processus asynchrones
I, [2024-01-06T16:45:02.658420 #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: 59
2024-01-06 16:45:02.658 UTC [59] LOG : demande de fermeture rapide reçue
2024-01-06 16:45:02.662 UTC [59] LOG : annulation de toutes les transactions actives
2024-01-06 16:45:02.664 UTC [59] LOG : l'agent de travail en arrière-plan « lanceur de réplication logique » (PID 68) s'est terminé avec le code de sortie 1
2024-01-06 16:45:02.665 UTC [63] LOG : arrêt en cours
2024-01-06 16:45:02.701 UTC [59] LOG : le système de base de données est arrêté


ÉCHEC
--------------------
Pups::ExecError : cd /var/www/discourse && su discourse -c 'bundle install --deployment --retry 3 --jobs 4 --verbose --without test development' a échoué avec le retour #<Process::Status: pid 339 exit 5>
Emplacement de l'échec : /pups/lib/pups/exec_command.rb:112:in `spawn'
Échec de l'exécution avec les paramètres {"cd"=>"$home", "hook"=>"bundle_exec", "cmd"=>["su discourse -c 'bundle install --deployment --retry 3 --jobs 4 --verbose --without test development'"]}
2c272af0e6076b670160aa14969f8864f1178ccce394e13b8dcfad9ae5ab3fa1
** ÉCHEC DE L'INITIALISATION ** Veuillez faire défiler vers le haut et rechercher les messages d'erreur antérieurs, il peut y en avoir plus d'un.
./discourse-doctor peut aider à diagnostiquer le problème.
==================== FIN DU JOURNAL DE RECONSTRUCTION ====================
Échec de la reconstruction de l'application.

Vérification de votre nom de domaine . . .

Connexion à discuss.eroscripts.com réussie.
Vous devriez probablement supprimer tous les plugins non standard et reconstruire.
Tentative de redémarrage du conteneur existant . . . 

démarrage du conteneur existant
+ /usr/bin/docker start app
app
Le conteneur a été redémarré.

Il indique que j’ai des plugins non officiels, mais j’ai certainement supprimé chaque ligne dans la section des plugins.

==================== PLUGINS ====================


AVERTISSEMENT :
Vous semblez avoir des plugins non officiels.
Si vous rencontrez des problèmes, vous devriez les désactiver et essayer de reconstruire à nouveau.

Voir https://github.com/discourse/discourse/blob/master/lib/plugin/metadata.rb pour la liste officielle.

========================================
Version de Discourse à discuss.eroscripts.com : NON TROUVÉE
Version de Discourse à localhost : NON TROUVÉE


==================== INFORMATIONS SUR LA MÉMOIRE ====================
OS : Linux
RAM (Mo) : 16773

              total        utilisé        libre      partagé  cache/buff  disponible
Mémoire :          15996         347        8980           0        6668       15310
Swap :          2047           2        2045

==================== VÉRIFICATION DE L'ESPACE DISQUE ====================
---------- Espace disque OS ----------
Système de fichiers      Taille  Utilisé  Disponible %Utilisation Monté sur
/dev/vda1       310G  117G  194G  38% /

==================== INFORMATIONS SUR LE DISQUE ====================
Disque /dev/vda : 320 GiB, 343597383680 octets, 671088640 secteurs
Unités : secteurs de 1 * 512 = 512 octets
Taille du secteur (logique/physique) : 512 octets / 512 octets
Taille E/S (min/opt) : 512 octets / 512 octets
Type d'étiquette de disque : gpt
Identifiant du disque : 3D5B5FC8-E964-4310-AC68-89DD2E51D6D4

Device      Start       End   Sectors   Size Type
/dev/vda1  227328 671088606 670861279 319.9G Système de fichiers Linux
/dev/vda14   2048     10239      8192     4M Démarrage BIOS
/dev/vda15  10240    227327    217088   106M Données de base Microsoft

Les entrées de la table de partitions ne sont pas dans l'ordre du disque.

==================== FIN DES INFORMATIONS SUR LE DISQUE ====================

Il a également envoyé un test de délivrabilité des e-mails, qui semble avoir échoué. La partie étrange est que le test d’e-mail fonctionnait au moins hier. Peut-être parce que la reconstruction ne tombait pas en échec à l’époque, même si le site était toujours cassé.

C’est très suspect - quel type d’installation est-ce ? Avez-vous suivi l’installation standard ?

La version actuelle de Ruby dont dépend tout un tas de code est 3.2.2

Utilisez-vous le dépôt officiel de discourse sur la branche tests-passed ?

Quelque chose ne va pas du tout avec votre installation ici.

Cette instance fonctionne depuis 2 ans, et je pense que j’ai suivi les instructions d’installation standard. J’utilisais la version juste avant l’avant-dernière avant que tout ne casse. Je n’avais pas modifié la version dans app.yml auparavant, donc elle aurait dû être par défaut sur la branche tests-passed.

J’essaie actuellement de configurer une nouvelle instance et d’y restaurer ma sauvegarde. Mais j’ai du mal à faire apparaître quoi que ce soit, peut-être à cause de mes paramètres app.yml pour le CDN sur les ressources statiques ou à cause de l’utilisation de l’adresse IP au lieu d’une URL.

Je vais essayer de restaurer sur une nouvelle instance. Mais avez-vous des conseils sur la façon de le faire sans pointer immédiatement le nom d’hôte vers la nouvelle adresse IP ? Idéalement, je voudrais configurer/restaurer le site sans que personne ne puisse accéder à la nouvelle page de création d’administrateur lors du premier chargement d’une nouvelle instance Discourse. Mais lorsque j’essaie des choses comme définir le nom d’hôte sur l’adresse IP dans app.yml, les choses ne fonctionnent pas. (Je pense l’avoir déjà fait et que cela fonctionnait, mais je comprends que les instructions disent que ce n’est pas possible).

Mon conseil serait de mordre la balle et de la pointer vers le nouvel emplacement - cela ne devrait pas prendre plus de 30 minutes, ce qui n’est rien dans le grand schéma des choses et vous êtes dans un peu de mal :slight_smile:

N’essayez pas d’épingler Discourse à une balise spécifique, fiez-vous simplement aux mises à jour normales.

Choisissez stable ou tests-passed et tenez-vous-en à cela…

Cette fois, j’ai créé un nouveau droplet, j’ai fait le strict minimum pour être prêt à restaurer, puis j’ai suivi ces instructions pour restaurer la sauvegarde que j’ai réussi à créer après que mon site soit tombé, même s’il était encore accessible via la ligne de commande : Restore a backup from the command line

Je rencontre maintenant l’erreur ci-dessous. Peut-être que ma base de données a été corrompue d’une manière ou d’une autre ? :thinking:

Je peux essayer de restaurer une sauvegarde plus ancienne.

./launcher rebuild app
x86_64 arch detected.
WARNING: containers/app.yml file is world-readable. You can secure this file by running: chmod o-rwx containers/app.yml
Ensuring launcher is up to date
Fetching origin
Launcher is up-to-date
Stopping old container
+ /usr/bin/docker stop -t 600 app
app
2.0.20231218-0429: Pulling from discourse/base
Digest: sha256:468f70b9bb4c6d0c6c2bbb3efc1a5e12d145eae57bdb6946b7fe5558beb52dc1
Status: Image is up to date for discourse/base:2.0.20231218-0429
docker.io/discourse/base:2.0.20231218-0429
/usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups.rb
/usr/local/bin/pups --stdin
I, [2024-01-06T21:09:54.354218 #1]  INFO -- : Reading from stdin
I, [2024-01-06T21:09:54.365267 #1]  INFO -- : > locale-gen $LANG && update-locale
I, [2024-01-06T21:09:54.421443 #1]  INFO -- : Generating locales (this might take a while)...
Generation complete.

I, [2024-01-06T21:09:54.421795 #1]  INFO -- : > mkdir -p /shared/postgres_run
I, [2024-01-06T21:09:54.427121 #1]  INFO -- : 
I, [2024-01-06T21:09:54.427537 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run
I, [2024-01-06T21:09:54.434259 #1]  INFO -- : 
I, [2024-01-06T21:09:54.434795 #1]  INFO -- : > chmod 775 /shared/postgres_run
I, [2024-01-06T21:09:54.441347 #1]  INFO -- : 
I, [2024-01-06T21:09:54.441696 #1]  INFO -- : > rm -fr /var/run/postgresql
I, [2024-01-06T21:09:54.448226 #1]  INFO -- : 
I, [2024-01-06T21:09:54.448601 #1]  INFO -- : > ln -s /shared/postgres_run /var/run/postgresql
I, [2024-01-06T21:09:54.454601 #1]  INFO -- : 
I, [2024-01-06T21:09:54.454965 #1]  INFO -- : > socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres already running stop container ; exit 1
2024/01/06 21:09:54 socat[19] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36): Connection refused
I, [2024-01-06T21:09:54.470043 #1]  INFO -- : 
I, [2024-01-06T21:09:54.470647 #1]  INFO -- : > rm -fr /shared/postgres_run/.s*
I, [2024-01-06T21:09:54.478233 #1]  INFO -- : 
I, [2024-01-06T21:09:54.478786 #1]  INFO -- : > rm -fr /shared/postgres_run/*.pid
I, [2024-01-06T21:09:54.486059 #1]  INFO -- : 
I, [2024-01-06T21:09:54.486533 #1]  INFO -- : > mkdir -p /shared/postgres_run/13-main.pg_stat_tmp
I, [2024-01-06T21:09:54.491565 #1]  INFO -- : 
I, [2024-01-06T21:09:54.491920 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run/13-main.pg_stat_tmp
I, [2024-01-06T21:09:54.496463 #1]  INFO -- : 
I, [2024-01-06T21:09:54.508217 #1]  INFO -- : File > /etc/service/postgres/run  chmod: +x  chown: 
I, [2024-01-06T21:09:54.519782 #1]  INFO -- : File > /etc/service/postgres/log/run  chmod: +x  chown: 
I, [2024-01-06T21:09:54.531602 #1]  INFO -- : File > /etc/runit/3.d/99-postgres  chmod: +x  chown: 
I, [2024-01-06T21:09:54.545224 #1]  INFO -- : File > /root/upgrade_postgres  chmod: +x  chown: 
I, [2024-01-06T21:09:54.545698 #1]  INFO -- : > chown -R root /var/lib/postgresql/13/main
I, [2024-01-06T21:09:57.594747 #1]  INFO -- : 
I, [2024-01-06T21:09:57.596324 #1]  INFO -- : > [ ! -e /shared/postgres_data ] && install -d -m 0755 -o postgres -g postgres /shared/postgres_data && sudo -E -u postgres /usr/lib/postgresql/13/bin/initdb -D /shared/postgres_data || exit 0
I, [2024-01-06T21:09:57.601398 #1]  INFO -- : 
I, [2024-01-06T21:09:57.601559 #1]  INFO -- : > chown -R postgres:postgres /shared/postgres_data
I, [2024-01-06T21:09:57.647669 #1]  INFO -- : 
I, [2024-01-06T21:09:57.648126 #1]  INFO -- : > chown -R postgres:postgres /var/run/postgresql
I, [2024-01-06T21:09:57.654847 #1]  INFO -- : 
I, [2024-01-06T21:09:57.655228 #1]  INFO -- : > /root/upgrade_postgres
I, [2024-01-06T21:09:57.671346 #1]  INFO -- : 
I, [2024-01-06T21:09:57.671840 #1]  INFO -- : > rm /root/upgrade_postgres
I, [2024-01-06T21:09:57.677190 #1]  INFO -- : 
I, [2024-01-06T21:09:57.678815 #1]  INFO -- : Replacing data_directory = '/var/lib/postgresql/13/main' with data_directory = '/shared/postgres_data' in /etc/postgresql/13/main/postgresql.conf
I, [2024-01-06T21:09:57.680570 #1]  INFO -- : Replacing (?-mix:#?listen_addresses *=.*) with listen_addresses = '*' in /etc/postgresql/13/main/postgresql.conf
I, [2024-01-06T21:09:57.681591 #1]  INFO -- : Replacing (?-mix:#?synchronous_commit *=.*) with synchronous_commit = $db_synchronous_commit in /etc/postgresql/13/main/postgresql.conf
I, [2024-01-06T21:09:57.693950 #1]  INFO -- : Replacing (?-mix:#?shared_buffers *=.*) with shared_buffers = $db_shared_buffers in /etc/postgresql/13/main/postgresql.conf
I, [2024-01-06T21:09:57.696644 #1]  INFO -- : Replacing (?-mix:#?work_mem *=.*) with work_mem = $db_work_mem in /etc/postgresql/13/main/postgresql.conf
I, [2024-01-06T21:09:57.699678 #1]  INFO -- : Replacing (?-mix:#?default_text_search_config *=.*) with default_text_search_config = '$db_default_text_search_config' in /etc/postgresql/13/main/postgresql.conf
I, [2024-01-06T21:09:57.706129 #1]  INFO -- : > install -d -m 0755 -o postgres -g postgres /shared/postgres_backup
I, [2024-01-06T21:09:57.716052 #1]  INFO -- : 
I, [2024-01-06T21:09:57.716636 #1]  INFO -- : Replacing (?-mix:#?checkpoint_segments *=.*) with checkpoint_segments = $db_checkpoint_segments in /etc/postgresql/13/main/postgresql.conf
I, [2024-01-06T21:09:57.717255 #1]  INFO -- : Replacing (?-mix:#?logging_collector *=.*) with logging_collector = $db_logging_collector in /etc/postgresql/13/main/postgresql.conf
I, [2024-01-06T21:09:57.721602 #1]  INFO -- : Replacing (?-mix:#?log_min_duration_statement *=.*) with log_min_duration_statement = $db_log_min_duration_statement in /etc/postgresql/13/main/postgresql.conf
I, [2024-01-06T21:09:57.727937 #1]  INFO -- : Replacing (?-mix:^#local +replication +postgres +peer$) with local replication postgres  peer in /etc/postgresql/13/main/pg_hba.conf
I, [2024-01-06T21:09:57.728569 #1]  INFO -- : Replacing (?-mix:^host.*all.*all.*127.*$) with host all all 0.0.0.0/0 md5 in /etc/postgresql/13/main/pg_hba.conf
I, [2024-01-06T21:09:57.732277 #1]  INFO -- : Replacing (?-mix:^host.*all.*all.*::1\/128.*$) with host all all ::/0 md5 in /etc/postgresql/13/main/pg_hba.conf
I, [2024-01-06T21:09:57.733290 #1]  INFO -- : > 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
I, [2024-01-06T21:09:57.738665 #1]  INFO -- : > sleep 5
2024-01-06 21:09:57.897 UTC [42] LOG:  starting PostgreSQL 13.13 (Debian 13.13-1.pgdg110+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 10.2.1-6) 10.2.1 20210110, 64-bit
2024-01-06 21:09:57.897 UTC [42] LOG:  listening on IPv4 address "0.0.0.0", port 5432
2024-01-06 21:09:57.897 UTC [42] LOG:  listening on IPv6 address "::", port 5432
2024-01-06 21:09:57.904 UTC [42] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2024-01-06 21:09:57.914 UTC [45] LOG:  database system was interrupted; last known up at 2024-01-06 21:06:38 UTC
2024-01-06 21:09:58.287 UTC [45] LOG:  database system was not properly shut down; automatic recovery in progress
2024-01-06 21:09:58.300 UTC [45] LOG:  redo starts at 6/3F42F228
I, [2024-01-06T21:10:02.744704 #1]  INFO -- : 
I, [2024-01-06T21:10:02.745102 #1]  INFO -- : > su postgres -c 'createdb discourse' || true
2024-01-06 21:10:02.852 UTC [49] postgres@postgres FATAL:  the database system is starting up
2024-01-06 21:10:02.857 UTC [50] postgres@template1 FATAL:  the database system is starting up
createdb: error: could not connect to database template1: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: FATAL:  the database system is starting up
I, [2024-01-06T21:10:02.865413 #1]  INFO -- : 
I, [2024-01-06T21:10:02.867743 #1]  INFO -- : > su postgres -c 'psql discourse -c "create user discourse;"' || true
2024-01-06 21:10:02.984 UTC [54] postgres@discourse FATAL:  the database system is starting up
psql: error: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: FATAL:  the database system is starting up
I, [2024-01-06T21:10:02.989529 #1]  INFO -- : 
I, [2024-01-06T21:10:02.989918 #1]  INFO -- : > su postgres -c 'psql discourse -c "grant all privileges on database discourse to discourse;"' || true
2024-01-06 21:10:03.100 UTC [58] postgres@discourse FATAL:  the database system is starting up
psql: error: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: FATAL:  the database system is starting up
I, [2024-01-06T21:10:03.107339 #1]  INFO -- : 
I, [2024-01-06T21:10:03.107772 #1]  INFO -- : > su postgres -c 'psql discourse -c "alter schema public owner to discourse;"'
2024-01-06 21:10:03.200 UTC [62] postgres@discourse FATAL:  the database system is starting up
psql: error: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: FATAL:  the database system is starting up
I, [2024-01-06T21:10:03.222053 #1]  INFO -- : 
I, [2024-01-06T21:10:03.222926 #1]  INFO -- : Terminating async processes
I, [2024-01-06T21:10:03.223018 #1]  INFO -- : Sending INT to 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
2024-01-06 21:10:03.238 UTC [42] LOG:  received fast shutdown request
2024-01-06 21:10:03.362 UTC [65] LOG:  shutting down
2024-01-06 21:10:03.602 UTC [42] LOG:  database system is shut down


ÉCHEC
--------------------
Pups::ExecError: su postgres -c 'psql discourse -c "alter schema public owner to discourse;"' a échoué avec le code de retour #<Process::Status: pid 59 exit 2>
Emplacement de l'échec : /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
L'exécution a échoué avec les paramètres "su postgres -c 'psql $db_name -c \"alter schema public owner to $db_user;\"'"
Le démarrage a échoué avec le code de sortie 2
** ÉCHEC DU DÉMARRAGE ** veuillez faire défiler vers le haut et rechercher les messages d'erreur précédents, il peut y en avoir plus d'un.
./discourse-doctor peut aider à diagnostiquer le problème.
a74fe31949946fbbd088418657abc63cca8f2d8ecda9d2d200979f275df55711

Vous pouvez déplacer un site Discourse vers un autre VPS avec rsync. Cela copiera les certificats ainsi que la base de données.

Bizarre, c’est là que ça commence à mal tourner, tout ce qui précède semble normal.

Ça devrait, je crois, ressembler à ceci :

2024-01-06 11:20:06.423 UTC [44] LOG:  la base de données a été arrêtée à 2024-01-06 10:47:08 UTC
2024-01-06 11:20:06.467 UTC [41] LOG:  la base de données est prête à accepter les connexions

Et si on créait simplement un Discourse de base sans la sauvegarde, puis qu’on restaurait la sauvegarde en ligne ?

Retour à :

la base de données n'a pas été correctement arrêtée ; récupération automatique en cours

Une recherche rapide sur Google suggère en effet que c’est un symptôme de corruption de la base de données.

Oui, essayez une sauvegarde plus ancienne !

Peut-être que je progresse.

J’obtiens maintenant une page 502 bad gateway. Si j’exécute ./launcher logs app, je vois ceci :


nginx: [emerg] cannot load certificate "/shared/ssl/discuss.eroscripts.com.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0909006C:PEM routines:get_name:no start line:Expecting: TRUSTED CERTIFICATE)
nginx: [warn] the "listen ... http2" directive is deprecated, use the "http2" directive instead in /etc/nginx/conf.d/discourse.conf:60
nginx: [emerg] cannot load certificate "/shared/ssl/discuss.eroscripts.com.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0909006C:PEM routines:get_name:no start line:Expecting: TRUSTED CERTIFICATE)
Shutting Down
run-parts: executing /etc/runit/3.d/01-nginx
ok: down: nginx: 0s, normally up, want up
run-parts: executing /etc/runit/3.d/02-unicorn
(5248) exiting
ok: down: unicorn: 1s, normally up
run-parts: executing /etc/runit/3.d/10-redis
ok: down: redis: 0s, normally up
run-parts: executing /etc/runit/3.d/99-postgres
timeout: run: postgres: (pid 5242) 2470s, want down, got TERM
run-parts: /etc/runit/3.d/99-postgres exited with return code 1
ok: down: nginx: 9s, normally up
ok: down: redis: 8s, normally up
ok: down: unicorn: 9s, normally up
ok: down: cron: 1s, normally up
ok: down: rsyslog: 1s, normally up
kill: run: postgres: (pid 5242) 2478s, want down, got TERM
run-parts: executing /etc/runit/1.d/00-ensure-links
run-parts: executing /etc/runit/1.d/00-fix-var-logs
run-parts: executing /etc/runit/1.d/01-cleanup-web-pids
run-parts: executing /etc/runit/1.d/anacron
run-parts: executing /etc/runit/1.d/cleanup-pids
Cleaning stale PID files
run-parts: executing /etc/runit/1.d/copy-env
run-parts: executing /etc/runit/1.d/letsencrypt
[Sat 06 Jan 2024 10:44:40 PM UTC] Using CA: https://acme-v02.api.letsencrypt.org/directory
[Sat 06 Jan 2024 10:44:40 PM UTC] Single domain='discuss.eroscripts.com'
[Sat 06 Jan 2024 10:44:41 PM UTC] Getting domain auth token for each domain
[Sat 06 Jan 2024 10:44:43 PM UTC] Getting webroot for domain='discuss.eroscripts.com'
[Sat 06 Jan 2024 10:44:43 PM UTC] Verifying: discuss.eroscripts.com
[Sat 06 Jan 2024 10:44:44 PM UTC] Pending, The CA is processing your order, please just wait. (1/30)
[Sat 06 Jan 2024 10:44:48 PM UTC] discuss.eroscripts.com:Verify error:159.223.125.223: Invalid response from https://discuss.eroscripts.com/.well-known/acme-challenge/ygqIckpuhRNDWk1xFI_LdPhAHKd3WIncOluj_7oQusc: 502
[Sat 06 Jan 2024 10:44:48 PM UTC] Please check log file for more details: /shared/letsencrypt/acme.sh.log
Can't open ca.cer for reading, No such file or directory
139736654603584:error:02001002:system library:fopen:No such file or directory:../crypto/bio/bss_file.c:69:fopen('ca.cer','r')
139736654603584:error:2006D080:BIO routines:BIO_new_file:no such file:../crypto/bio/bss_file.c:76:
unable to load certificate
Error loading file /dev/fd/63
[Sat 06 Jan 2024 10:44:49 PM UTC] Using CA: https://acme-v02.api.letsencrypt.org/directory
[Sat 06 Jan 2024 10:44:50 PM UTC] Single domain='discuss.eroscripts.com'
[Sat 06 Jan 2024 10:44:50 PM UTC] Getting domain auth token for each domain
[Sat 06 Jan 2024 10:44:51 PM UTC] Create new order error. Le_OrderFinalize not found. {
  "type": "urn:ietf:params:acme:error:rateLimited",
  "detail": "Error creating new order :: too many failed authorizations recently: see https://letsencrypt.org/docs/failed-validation-limit/",
  "status": 429
}
[Sat 06 Jan 2024 10:44:51 PM UTC] Please check log file for more details: /shared/letsencrypt/acme.sh.log
[Sat 06 Jan 2024 10:44:52 PM UTC] Installing key to: /shared/ssl/discuss.eroscripts.com.key
[Sat 06 Jan 2024 10:44:52 PM UTC] Installing full chain to: /shared/ssl/discuss.eroscripts.com.cer
cat: /shared/letsencrypt/discuss.eroscripts.com/fullchain.cer: No such file or directory
[Sat 06 Jan 2024 10:44:53 PM UTC] Using CA: https://acme-v02.api.letsencrypt.org/directory
[Sat 06 Jan 2024 10:44:53 PM UTC] Single domain='discuss.eroscripts.com'
[Sat 06 Jan 2024 10:44:54 PM UTC] Getting domain auth token for each domain
[Sat 06 Jan 2024 10:44:55 PM UTC] Create new order error. Le_OrderFinalize not found. {
  "type": "urn:ietf:params:acme:error:rateLimited",
  "detail": "Error creating new order :: too many failed authorizations recently: see https://letsencrypt.org/docs/failed-validation-limit/",
  "status": 429
}
[Sat 06 Jan 2024 10:44:55 PM UTC] Please check log file for more details: /shared/letsencrypt/acme.sh.log
Can't open ca.cer for reading, No such file or directory
140139135829312:error:02001002:system library:fopen:No such file or directory:../crypto/bio/bss_file.c:69:fopen('ca.cer','r')
140139135829312:error:2006D080:BIO routines:BIO_new_file:no such file:../crypto/bio/bss_file.c:76:
unable to load certificate
Error loading file /dev/fd/63
[Sat 06 Jan 2024 10:44:56 PM UTC] Using CA: https://acme-v02.api.letsencrypt.org/directory
[Sat 06 Jan 2024 10:44:56 PM UTC] Single domain='discuss.eroscripts.com'
[Sat 06 Jan 2024 10:44:57 PM UTC] Getting domain auth token for each domain
[Sat 06 Jan 2024 10:44:58 PM UTC] Create new order error. Le_OrderFinalize not found. {
  "type": "urn:ietf:params:acme:error:rateLimited",
  "detail": "Error creating new order :: too many failed authorizations recently: see https://letsencrypt.org/docs/failed-validation-limit/",
  "status": 429
}
[Sat 06 Jan 2024 10:44:58 PM UTC] Please check log file for more details: /shared/letsencrypt/acme.sh.log
[Sat 06 Jan 2024 10:44:58 PM UTC] Installing key to: /shared/ssl/discuss.eroscripts.com_ecc.key
[Sat 06 Jan 2024 10:44:58 PM UTC] Installing full chain to: /shared/ssl/discuss.eroscripts.com_ecc.cer
cat: /shared/letsencrypt/discuss.eroscripts.com_ecc/fullchain.cer: No such file or directory
Can't open ca.cer for reading, No such file or directory
140163653252416:error:02001002:system library:fopen:No such file or directory:../crypto/bio/bss_file.c:69:fopen('ca.cer','r')

et en copiant ceux qui sont en rouge

[Sat 06 Jan 2024 10:44:48 PM UTC] discuss.eroscripts.com:Verify error:159.223.125.223: Invalid response from https://discuss.eroscripts.com/.well-known/acme-challenge/ygqIckpuhRNDWk1xFI_LdPhAHKd3WIncOluj_7oQusc: 502
[Sat 06 Jan 2024 10:44:48 PM UTC] Please check log file for more details: /shared/letsencrypt/acme.sh.log

[Sat 06 Jan 2024 10:44:51 PM UTC] Create new order error. Le_OrderFinalize not found. {
  "type": "urn:ietf:params:acme:error:rateLimited",
  "detail": "Error creating new order :: too many failed authorizations recently: see https://letsencrypt.org/docs/failed-validation-limit/",
  "status": 429
}

Salut,
J’administre également le même serveur et voici ce que j’ai fait jusqu’à présent.
J’ai mis à niveau l’hôte de focal à jammy, supprimé toutes les images et téléchargé de nouvelles images.
J’ai découvert que nous étions sur la branche master, j’ai donc changé pour la branche main.
Je me suis assuré d’être sur le dernier commit.

Il compile maintenant, mais nous avons toujours un problème d’erreur 500.
J’ai regardé les logs de unicorn et j’ai trouvé qu’il spamme :

E, [2024-01-07T04:58:49.140147 #682] ERROR -- : app error: Missing `secret_key_base` for 'production' environment, set this string with `bin/rails credentials:edit` (ArgumentError)
E, [2024-01-07T04:58:49.140266 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/railties-7.0.8/lib/rails/application.rb:576:in `validate_secret_key_base'
E, [2024-01-07T04:58:49.140278 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/railties-7.0.8/lib/rails/application.rb:419:in `secret_key_base'
E, [2024-01-07T04:58:49.140287 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/railties-7.0.8/lib/rails/application.rb:254:in `env_config'
E, [2024-01-07T04:58:49.140295 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/railties-7.0.8/lib/rails/engine.rb:716:in `build_request'
E, [2024-01-07T04:58:49.140304 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/railties-7.0.8/lib/rails/application.rb:598:in `build_request'
E, [2024-01-07T04:58:49.140311 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/railties-7.0.8/lib/rails/engine.rb:529:in `call'
E, [2024-01-07T04:58:49.140319 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/railties-7.0.8/lib/rails/railtie.rb:226:in `public_send'
E, [2024-01-07T04:58:49.140327 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/railties-7.0.8/lib/rails/railtie.rb:226:in `method_missing'
E, [2024-01-07T04:58:49.140336 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-2.2.8/lib/rack/urlmap.rb:74:in `block in call'
E, [2024-01-07T04:58:49.140344 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-2.2.8/lib/rack/urlmap.rb:58:in `each'
E, [2024-01-07T04:58:49.140353 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-2.2.8/lib/rack/urlmap.rb:58:in `call'
E, [2024-01-07T04:58:49.140368 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/unicorn-6.1.0/lib/unicorn/http_server.rb:634:in `process_client'
E, [2024-01-07T04:58:49.140378 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/unicorn-6.1.0/lib/unicorn/http_server.rb:739:in `worker_loop'
E, [2024-01-07T04:58:49.140386 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/unicorn-6.1.0/lib/unicorn/http_server.rb:547:in `spawn_missing_workers'
E, [2024-01-07T04:58:49.140409 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/unicorn-6.1.0/lib/unicorn/http_server.rb:143:in `start'
E, [2024-01-07T04:58:49.140417 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/unicorn-6.1.0/bin/unicorn:128:in `<top (required)>'
E, [2024-01-07T04:58:49.140426 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/bin/unicorn:25:in `load'
E, [2024-01-07T04:58:49.140434 #682] ERROR -- : /var/www/discourse/vendor/bundle/ruby/3.2.0/bin/unicorn:25:in `<main>'

C’est actuellement ma seule indication de ce qui ne va pas.

Nous avons résolu ce problème.
Veuillez fermer ou verrouiller ce fil de discussion. Nous avons finalement migré vers un nouveau serveur et restauré à partir d’une sauvegarde.

L’histoire courte est la suivante : nous avons rencontré une grande variété de problèmes apparemment aléatoires qui sont apparus sur le serveur d’origine. La migration vers une nouvelle goutte et la restauration semblent avoir tout résolu. Nous n’avons toujours aucune idée de la raison pour laquelle le problème d’origine s’est produit en premier lieu.

Quelques détails supplémentaires sur les problèmes que nous avons rencontrés et essayés sur le serveur d’origine :

  • Le site ne pouvait pas communiquer avec postgres et redis car le propriétaire du dossier/des fichiers n’existait pas. Ils avaient des identifiants incompatibles d’une précédente image docker.
  • Il a fallu mettre à jour le système d’exploitation hôte pour avoir la bonne version de Ruby et passer de la branche principale à la branche maître. Nous avons modifié les dépôts de paquets de focal à jammy et exécuté la mise à jour, cela n’a finalement pas résolu les problèmes de dépendances, mais cela a résolu un échec de construction de l’image.
  • Le serveur web Unicorn générait une erreur concernant une secret_base_key manquante. Nous ne gérons aucun jeton sensible dans le serveur web, donc nous ne savons pas pourquoi cela était généré.

Nous avons eu quelques difficultés avec la durée de vie (TTL) DNS trop longue, ce qui a rendu difficile le test des correctifs, mais c’est de notre faute.

Cependant, nous avons rencontré des erreurs étranges avec notre CDN qui ont finalement été résolues :

  • Nous n’avons modifié aucun paramètre, nous avons purgé le cache pour le re-peupler avec la version de sauvegarde. Pendant un certain temps, cela a généré une tonne d’erreurs 500, mais cela a semblé se résoudre avec le temps. Nous avons contacté leur support technique, mais ils n’ont trouvé aucun problème de leur côté. Discourse semblait servir des fichiers avec content-length: 0, ou du moins c’est la seule erreur que nous avons examinée. Mais cela a semblé se résoudre de lui-même avec le temps pour une raison quelconque.

Au final, nous n’avons vraiment aucune idée de ce qui s’est passé sur le serveur d’origine qui a causé tous ces problèmes.

Nos e-mails semblent être en panne (nous utilisons Amazon SES). Je n’ai pas encore enquêté sur ce qui ne va pas.

Après une restauration, le paramètre disable emails est automatiquement activé. Cela pourrait-il être le problème ? Si oui, vous pouvez le remettre sur « non ».

Je ne devrais pas avoir besoin de faire des modifications dans AWS, DNS, app.yml ou les paramètres après une restauration, n’est-ce pas ?

Dans les paramètres, les emails n’étaient pas activés après la restauration. Il indique toujours « désactiver les emails : non ».

AWS SES affiche 0 envois d’emails depuis la restauration.

/sidekiq affiche 44 934 Traité, 1 470 Échoué, mais je ne sais pas comment obtenir plus d’informations sur les jobs échoués.

Onglet fatal des logs (veuillez excuser les titres NSFW)


ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "posts" does not exist LINE 1: SELECT COUNT(*) FROM "posts" WHERE "posts"."deleted_at" IS N... ^ ) lib
Dim 10:15 am
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "topics" does not exist LINE 1: ...cs"."bannered_until", "topics"."external_id" FROM "topics" W...
Dim 10:15 am
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "topics" does not exist LINE 1: ...cs"."bannered_until", "topics"."external_id" FROM "topics" W...
Dim 10:16 am
4
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "users" does not exist LINE 1: SELECT "users".* FROM "users" WHERE "users"."username_lower"... ^ ) ap
Dim 10:17 am
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "categories" does not exist LINE 1: ..., "categories"."uploaded_background_dark_id" FROM "categorie...
Dim 10:17 am
2
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "categories" does not exist LINE 1: ..., "categories"."uploaded_background_dark_id" FROM "categorie...
Dim 10:17 am
2
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "categories" does not exist LINE 1: SELECT "categories"."id" FROM "categories" WHERE "categories...
Dim 10:18 am
4
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "user_auth_tokens" does not exist LINE 1: SELECT "user_auth_tokens".* FROM "user_auth_tokens" WHERE ((...
Dim 10:18 am
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "user_auth_tokens" does not exist LINE 1: SELECT "user_auth_tokens".* FROM "user_auth_tokens" WHERE ((...
Dim 10:29 am
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "posts" does not exist LINE 1: ...ge_upload_id", "posts"."outbound_message_id" FROM "posts" WH...
Dim 10:29 am
2
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "sitemaps" does not exist LINE 1: SELECT "sitemaps".* FROM "sitemaps" WHERE "sitemaps"."name" ...
Dim 10:32 am
74
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "user_auth_tokens" does not exist LINE 1: SELECT "user_auth_tokens".* FROM "user_auth_tokens" WHERE ((...
Dim 10:33 am
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "themes" does not exist LINE 1: SELECT "themes"."color_scheme_id" FROM "themes" WHERE "theme...
Dim 10:33 am
3
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "tags" does not exist LINE 1: SELECT "tags"."name" FROM "tags" WHERE "tags"."id" NOT IN (S... ^ )
Dim 10:33 am
8
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "categories" does not exist LINE 1: SELECT "categories"."id" FROM "categories" LEFT OUTER JOIN "...
Dim 10:33 am
15
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "user_auth_tokens" does not exist LINE 1: SELECT "user_auth_tokens".* FROM "user_auth_tokens" WHERE ((...
Dim 10:34 am
29
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "categories" does not exist LINE 1: SELECT "categories"."id" FROM "categories" WHERE "categories...
Dim 10:34 am
3
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "users" does not exist LINE 1: SELECT "users".* FROM "users" INNER JOIN "user_emails" ON "u... ^ ) ap
Dim 10:34 am
9
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "stylesheet_cache" does not exist LINE 1: SELECT "stylesheet_cache"."created_at" FROM "stylesheet_cach...
Dim 10:35 am
5
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "categories" does not exist LINE 1: SELECT "categories"."id" FROM "categories" WHERE "categories...
Dim 10:35 am
39
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "permalinks" does not exist LINE 1: SELECT 1 AS one FROM "permalinks" WHERE "permalinks"."url" =... ^
Dim 10:35 am
50
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "user_auth_tokens" does not exist LINE 1: SELECT "user_auth_tokens".* FROM "user_auth_tokens" WHERE ((...
Dim 10:35 am
457
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "categories" does not exist LINE 1: SELECT "categories"."id" FROM "categories" WHERE "categories...
Dim 10:35 am
30
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "permalinks" does not exist LINE 1: SELECT 1 AS one FROM "permalinks" WHERE "permalinks"."url" =... ^
Dim 10:35 am
1189
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "user_auth_tokens" does not exist LINE 1: SELECT "user_auth_tokens".* FROM "user_auth_tokens" WHERE ((...
Dim 10:35 am
553
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "categories" does not exist LINE 1: SELECT "categories"."id" FROM "categories" WHERE "categories...
Dim 10:35 am
36
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "user_auth_tokens" does not exist LINE 1: SELECT "user_auth_tokens".* FROM "user_auth_tokens" WHERE ((... 

Onglet erreurs des logs

Échec du préchargement du texte enrichi : PG::UndefinedTable: ERROR: relation "custom_emojis" does not exist LINE 1: SELECT "custom_emojis".* FROM "custom_emojis" ORDER BY "cust...
Dim 10:27 am
2
Exception de job : impossible d'obtenir une connexion du pool dans les 5.000 secondes (attendu 5.036 secondes) ; toutes les connexions du pool étaient utilisées
Dim 10:53 am
default: Échec de la récupération de l'image hotlinkée (https://discourse-s3-cdn.eroscripts.com/uploads/optimized/3X/3/3/33050afb6576555544a856d5c6f19583bfc854be_2_690x362.png) post: 325176 PG::UniqueViolation: ERRO
Dim 17:33
default: Échec de la récupération de l'image hotlinkée (https://rule34video.com/contents/videos_screenshots/3125000/3125485/preview.jpg) post: 338794 PG::UniqueViolation: ERROR: duplicate key value violates unique
01:04
2
default: Échec de la récupération de l'image hotlinkée (https://rule34video.com/contents/videos_screenshots/3125000/3125482/preview_1080p.mp4.jpg) post: 338794 PG::UniqueViolation: ERROR: duplicate key value violat 

Onglet avertissements des logs

 Charger plus
553
Échec de la gestion de l'exception dans le middleware d'exception de l'application : ActiveRecord::StatementInvalid : PG::UndefinedTable: ERROR: relation "categories" does not exist LINE 1: SELECT "categories"."id" FROM "catego
Dim 10:35 am
36
Échec de la gestion de l'exception dans le middleware d'exception de l'application : ActiveRecord::StatementInvalid : PG::UndefinedTable: ERROR: relation "user_auth_tokens" does not exist LINE 1: SELECT "user_auth_tokens".* FRO
Dim 10:36 am
645
Erreur inattendue dans Message Bus : ActiveRecord::StatementInvalid : PG::UndefinedTable: ERROR: relation "user_auth_tokens" does not exist LINE 1: SELECT "user_auth_tokens".* FROM "user_auth_tokens" WH
Dim 10:36 am
2
Le thème/composant Topic List Previews génère des erreurs : TypeError: e.capitalize n'est pas une fonction. (Dans 'e.capitalize()', 'e.capitalize' est indéfini)
Dim 10:36 am
L'actualisation du jeton Patreon a échoué avec le statut : 401. {"error": "invalid_grant"}
Dim 10:41 am
4
Le thème/composant Topic List Previews génère des erreurs : TypeError: e.capitalize n'est pas une fonction
Dim 10:41 am
10
Le thème/composant Topic List Previews génère des erreurs : TypeError: e.capitalize n'est pas une fonction
Dim 10:41 am
[DiscourseJsProcessor] DÉPRÉCIATION : L'invoquer le composant `<LinkTo>` avec des arguments positionnels est déprécié. Veuillez utiliser les arguments nommés équivalents (`@route`). ('discourse/theme-10/discourse/templ
Dim 10:46 am
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 10:51 am
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 10:53 am
Avis de dépréciation : `SiteSetting.min_trust_to_edit_post` a été déprécié. Veuillez utiliser `SiteSetting.edit_post_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/lib/guardian/
Dim 10:58 am
2
Avis de dépréciation : `SiteSetting.min_trust_level_to_allow_ignore` a été déprécié. Veuillez utiliser `SiteSetting.ignore_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/lib/gua
Dim 13:33
Avis de dépréciation : `SiteSetting.min_trust_to_create_tag` a été déprécié. Veuillez utiliser `SiteSetting.create_tag_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/lib/guardia
Dim 15:01
Avis de dépréciation : `SiteSetting.min_trust_level_to_allow_ignore` a été déprécié. Veuillez utiliser `SiteSetting.ignore_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/lib/gua
Dim 15:16
10
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-City.mmdb) introuvable : No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-City.mmdb
Dim 16:39
10
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) introuvable : No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb
Dim 16:39
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 16:40
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;CreativeWork&quot;, &quot;name&quot;: &quot;Abella Anderson shows her perfect T--- while ridin
Dim 16:42
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 16:50
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 17:04
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 17:06
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 17:06
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 17:06
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-City.mmdb) introuvable : No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-City.mmdb
Dim 17:06
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) introuvable : No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb
Dim 17:06
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 17:10
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 17:11
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 17:33
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 17:35
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 18:05
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 18:15
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 18:20
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 18:20
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 18:20
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 18:20
3
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-City.mmdb) introuvable : No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-City.mmdb
Dim 18:32
3
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) introuvable : No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb
Dim 18:32
2
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 18:43
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 18:50
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 18:50
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 19:05
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 19:05
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 19:19
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 19:20
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 19:20
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 19:35
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 19:35
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 19:35
Échec du traitement correct de la réponse hijackée : NoMethodError : méthode `days_visited' indéfinie pour nil:NilClass
Dim 20:27
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 20:51
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 21:36
2
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;CreativeWork&quot;, &quot;name&quot;: &quot;PHONKY HERO&quot;, &quot;description&quot;: &quot
Dim 22:21
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 22:41
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 22:51
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
Dim 22:51
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 22:51
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
Dim 23:07
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;CreativeWork&quot;, &quot;name&quot;: &quot;【HMV】mizumizuni&quot;, &quot;description&quot;: &
Dim 23:07
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;CreativeWork&quot;, &quot;name&quot;: &quot;(TIER 1 EARLY-ACCESS) SK3L3T0K. DARK ELF LINK&quot
Dim 23:22
2
Avis de dépréciation : `SiteSetting.min_trust_level_to_allow_ignore` a été déprécié. Veuillez utiliser `SiteSetting.ignore_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/lib/gua
Dim 23:32
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;CreativeWork&quot;, &quot;name&quot;: &quot;Dezyred - Sensual Blowjob With Sybil (Bonus Scene)
Dim 23:36
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;CreativeWork&quot;, &quot;name&quot;: &quot;Dezyred - Sensual Blowjob With Sybil (Bonus Scene)
Dim 23:36
2
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
00:52
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
01:00
4
Avis de dépréciation : `SiteSetting.min_trust_to_create_tag` a été déprécié. Veuillez utiliser `SiteSetting.create_tag_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/lib/guardia
01:02
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
01:05
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
01:21
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
01:31
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
01:51
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
02:20
4
Avis de dépréciation : `SiteSetting.min_trust_level_to_allow_ignore` a été déprécié. Veuillez utiliser `SiteSetting.ignore_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/lib/gua
02:33
5
Avis de dépréciation : `SiteSetting.min_trust_to_edit_post` a été déprécié. Veuillez utiliser `SiteSetting.edit_post_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/lib/guardian/
03:26
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
03:34
4
Avis de dépréciation : `SiteSetting.min_trust_to_edit_post` a été déprécié. Veuillez utiliser `SiteSetting.edit_post_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/app/models/co
03:53
6
Avis de dépréciation : `SiteSetting.min_trust_level_to_allow_ignore` a été déprécié. Veuillez utiliser `SiteSetting.ignore_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/lib/gua
04:33
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
04:34
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
05:18
2
Avis de dépréciation : `SiteSetting.min_trust_to_edit_post` a été déprécié. Veuillez utiliser `SiteSetting.edit_post_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/app/models/co
05:53
9
Sidekiq consomme trop de mémoire (utilisé : 523.61M) pour 'discuss.eroscripts.com', redémarrage
05:59
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ImageObject&quot;, &quot;contentUrl&quot;: &quot;https://c10.patreonusercontent.com/4/patreon-
06:24
14
Avis de dépréciation : `SiteSetting.min_trust_to_edit_post` a été déprécié. Veuillez utiliser `SiteSetting.edit_post_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/lib/guardian/
06:26
4
Avis de dépréciation : `SiteSetting.min_trust_level_to_allow_ignore` a été déprécié. Veuillez utiliser `SiteSetting.ignore_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/lib/gua
06:33
2
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;CreativeWork&quot;, &quot;name&quot;: &quot;Recovery - Golden Hands&quot;, &quot;description&
06:34
10
Avis de dépréciation : `SiteSetting.min_trust_to_edit_post` a été déprécié. Veuillez utiliser `SiteSetting.edit_post_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/app/models/co
06:56
5
Avis de dépréciation : `SiteSetting.min_trust_to_flag_posts` a été déprécié. Veuillez utiliser `SiteSetting.flag_post_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/lib/site_set
07:01
5
Avis de dépréciation : `SiteSetting.min_trust_level_to_allow_user_card_background` a été déprécié. Veuillez utiliser `SiteSetting.user_card_background_allowed_groups` à la place. (suppression dans Discourse 3.3) À
07:01
5
Avis de dépréciation : `SiteSetting.min_trust_level_to_allow_ignore` a été déprécié. Veuillez utiliser `SiteSetting.ignore_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/lib/sit
07:01
5
Avis de dépréciation : `SiteSetting.min_trust_to_create_tag` a été déprécié. Veuillez utiliser `SiteSetting.create_tag_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/lib/site_se
07:01
16
Avis de dépréciation : `SiteSetting.min_trust_to_create_tag` a été déprécié. Veuillez utiliser `SiteSetting.create_tag_allowed_groups` à la place. (suppression dans Discourse 3.3) À /var/www/discourse/lib/guardia
07:02
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;CreativeWork&quot;, &quot;name&quot;: &quot;Dezyred - Sensual Blowjob With Sybil (Bonus Scene)
07:03
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;CreativeWork&quot;, &quot;name&quot;: &quot;Dezyred - Sensual Blowjob With Sybil (Bonus Scene)
07:03
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;CreativeWork&quot;, &quot;name&quot;: &quot;Dezyred - A Day With Bella Rolland - Netflix and C
07:03
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;ProfilePage&quot;, &quot;author&quot;: { &quot;@type&quot;: &quot;Person&quot;, &quot;name
07:03
2
Erreur d'analyse JSON-LD : { &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;CreativeWork&quot;, &quot;name&quot;: &quot;VRConk - Jessica Rabbit - Vanna Bardot&quot;, &qu 

Ah d’accord, le problème était que app.yml avait été mis à jour à cause de discourse-setup ou quelque chose comme ça. Les lignes pour

  • DISCOURSE_SMTP_DOMAIN:
  • DISCOURSE_NOTIFICATION_EMAIL:

avaient été décommentées et avaient le placeholder par défaut de discourse.example.com. Je suppose que nous avions configuré l’e-mail avant que ces lignes ne soient ajoutées. Remplir ces champs permet à nouveau à l’e-mail de fonctionner.

Lors de la migration, vous n’utilisez généralement pas discourse-setup, vous copiez normalement votre app.yml et exécutez rebuild directement.