Come eseguire il debug dei problemi di connettività con ActivityPub

Ecco alcune cose da provare se non riesci a far comunicare la tua istanza Discourse con altri server nel Fediverso.

  1. Se hai un servizio che filtra le richieste al tuo server, come un geo-blocker o Cloudflare, prova a disattivarlo.

  2. Prova a disabilitare l’impostazione del sito activity pub require signed requests.

  3. Abilita le impostazioni del sito activity pub verbose logging e activity pub object logging e cerca voci in /logs con [Discourse Activity Pub] al loro interno. Segnala questi log qui.

  4. Verifica se le impostazioni del sito activity pub allowed request origins o activity pub blocked request origins contengono voci. Tieni presente che se consenti domini specifici, le richieste da tutti gli altri domini verranno bloccate.

2 Mi Piace

Solo per te, non in questo problema. Ci ho provato. Ma posso far bussare alle porte i nostri amici da Singapore e Russia per un po’ e disabilito. Solo un secondo.

E fatto.

Ok. Come è configurato quel geo-blocker? Se stai instradando il tuo traffico tramite un servizio come Cloudflare, potrebbe rimuovere gli header dalle richieste (anche con il blocker disabilitato). ActivityPub richiede anche header specifici per la validazione e l’autenticazione delle richieste.

Vedo molti errori 403. Ecco perché il mio primo pensiero è stato che si trattasse di una lista di bot o di blocco geografico. Ma non riesco a trovare nulla dagli user agent quando sfoglio error.log e provo principalmente da istanze situate in Finlandia o in altri paesi diversi da alcuni molto problematici. L’Australia è stata un grattacapo a un certo punto (se abbiamo davvero bisogno del blocco geografico qui è un altro argomento, ma a causa della mia storia con WordPress lo sto usando).

Qualcosa del genere:

[Discourse Activity Pub] La richiesta GET ricevuta da https://foorumi.katiska.eu/ap/actor/701e86455ed584115e0d22ddf294698c è fallita: 403 Forbidden

Capisco che qualcosa del genere accadrebbe se ci fosse un’istanza che non ho permesso, ma succede con tutti.

Posso comunque collegare il mio utente Discourse a un utente Mastodon.

Utilizzando un plugin di Discourse. Niente di speciale. Non sto usando Cloudflare perché non ha senso su un piccolo forum situato in Finlandia che serve utenti finlandesi.

Ok, la prossima cosa da provare è disabilitare l’impostazione del sito activity pub require signed requests. Fammi sapere quando l’hai fatto (sto solo pensando ad alta voce, penso che trasformerò questo argomento “sto ricevendo 403” in una wiki poiché vedo che si presenta abbastanza spesso).

Inoltre, quale plugin? E come funziona?

Non so come funzioni.

Posso provare a ricostruire senza di esso. Ma non capisco del tutto come potrebbe influire quando tutto il resto funziona :thinking:

Ci ho già provato. Principalmente perché, per quanto ne so, la maggior parte delle istanze non lo usa. Non ha aiutato, però. Ma l’ho disabilitato. È la stessa cosa per cui i server Mastodon hanno un’impostazione?

ActivityPub richiede una maggiore interconnessione rispetto a qualsiasi altra cosa che potresti usare. Non sto dicendo che quel plugin sia la causa, ma qualsiasi cosa che filtri tutte le richieste al tuo server (come dovrebbe fare qualsiasi geo-blocker) potrebbe potenzialmente causare problemi con ActivityPub. Se qualche altro plugin che stai usando potrebbe rientrare in questa categoria (cioè, filtrare le richieste al tuo server), condividilo anche quello.

Effettivamente, sì.

Ok, la prossima cosa da provare sono le tue impostazioni specifiche:

  1. Conferma che activity_pub_enabled sia true.
  2. Conferma lo stato attuale di activity_pub_allowed_request_origins e activity_pub_blocked_request_origins.
  3. Inoltre, condividi la configurazione attuale dell’attore di categoria che hai condiviso.
  1. C’è un modo più semplice per ottenere un elenco di activity_pub_allowed_request_origins? Rails o qualcosa di copiabile? Ma include tutti i domini che ho provato, ad esempio mastodontti.fi e mastodon.social.
    activity_pub_blocked_request_origins: fedsearch.io

Farò la ricostruzione senza geo-blocking a questo punto.

Nessuna fortuna con il geo-blocking.

Mi chiedo ancora se ActivityPub del mio forum viva in qualche modo nel passato, e abbia un morso o due in posizione sbagliata.

  • il mio profilo su mastodontti.fi segue la mia categoria, ma non riceve nulla. Non riesco a vederlo dal lato del forum. Quell’account era in uso 9 mesi fa quando ho provato ActivityPub l’ultima volta.
  • Ho due follower sul forum che non riesco a rimuovere. Anche questi due provengono dal passato. Potrebbe esserci un problema con il mastodon-server che ho distrutto totalmente per sbaglio. Ma non dovrebbe avere alcun ruolo nel forum?

Ma la ragione principale è il 403, e da dove proviene.

Sebbene ciò sia possibile, l’unico modo per affrontare problemi come questo, sia che si tratti di ActivityPub o di qualsiasi altra cosa, è affrontare i problemi noti, prima di cercare di trovare problemi sconosciuti.

Sì, concentriamoci interamente su questo per ora.

Ok, puoi confermarmi ora che activity_pub_verbose_logging e activity_pub_object_logging sono abilitati. Quando lo farai, invierò una richiesta e ti chiederò di controllare il forum /logs e di farmi sapere cosa vedi con [Discourse Activity Pub] al loro interno. Assicurati di avere tutti i livelli di log (ad esempio, debug e info) abilitati nel tuo visualizzatore di /log.

1 Mi Piace

Tutti sono accesi.

Ok, ho inviato alcune richieste. Fammi sapere cosa vedi.

I think these.

GET request received by https://foorumi.katiska.eu/ap/actor/701e86455ed584115e0d22ddf294698c failed: 403 Kielletty

env etc
hostname	foorumi-hel-app
process_id	1069
application_version	486ff2a5643f7a5ac66ccef11a97d6c2a282c9ee
HTTP_HOST	foorumi.katiska.eu
REQUEST_URI	/ap/actor/701e86455ed584115e0d22ddf294698c
REQUEST_METHOD	GET
HTTP_ACCEPT	application/ld+json; profile="https://www.w3.org/ns/activitystreams"
HTTP_X_FORWARDED_FOR	178.222.29.79
HTTP_X_REAL_IP	178.222.29.79
time	1:12 pm
activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:130:in `block in warn'  
activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `block in dispatch'  
activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `each'  
activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `dispatch'  
activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:130:in `warn'  
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/logger.rb:22:in `log'  
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/logger.rb:59:in `warn'  
/var/www/discourse/plugins/discourse-activity-pub/app/controllers/discourse_activity_pub/ap/objects_controller.rb:128:in `log_request_error'  
/var/www/discourse/plugins/discourse-activity-pub/app/controllers/discourse_activity_pub/ap/objects_controller.rb:106:in `render_activity_pub_error'  
/var/www/discourse/plugins/discourse-activity-pub/app/controllers/concerns/discourse_activity_pub/domain_verification.rb:5:in `ensure_domain_allowed'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:362:in `block in make_lambda'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:179:in `block in call'  
actionpack-7.2.2.1/lib/abstract_controller/callbacks.rb:34:in `block (2 levels) in <module:Callbacks>'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:180:in `call'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:559:in `block in invoke_before'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:559:in `each'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:559:in `invoke_before'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:119:in `block in run_callbacks'  
/var/www/discourse/app/controllers/application_controller.rb:424:in `block in with_resolved_locale'  
i18n-1.14.6/lib/i18n.rb:353:in `with_locale'  
/var/www/discourse/app/controllers/application_controller.rb:424:in `with_resolved_locale'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:130:in `block in run_callbacks'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:141:in `run_callbacks'  
actionpack-7.2.2.1/lib/abstract_controller/callbacks.rb:260:in `process_action'  
actionpack-7.2.2.1/lib/action_controller/metal/rescue.rb:27:in `process_action'  
actionpack-7.2.2.1/lib/action_controller/metal/instrumentation.rb:77:in `block in process_action'  
activesupport-7.2.2.1/lib/active_support/notifications.rb:210:in `block in instrument'  
activesupport-7.2.2.1/lib/active_support/notifications/instrumenter.rb:58:in `instrument'  
activesupport-7.2.2.1/lib/active_support/notifications.rb:210:in `instrument'  
actionpack-7.2.2.1/lib/action_controller/metal/instrumentation.rb:76:in `process_action'  
actionpack-7.2.2.1/lib/action_controller/metal/params_wrapper.rb:259:in `process_action'  
activerecord-7.2.2.1/lib/active_record/railties/controller_runtime.rb:39:in `process_action'  
actionpack-7.2.2.1/lib/abstract_controller/base.rb:163:in `process'  
actionview-7.2.2.1/lib/action_view/rendering.rb:40:in `process'  
actionpack-7.2.2.1/lib/action_controller/metal.rb:252:in `dispatch'  
actionpack-7.2.2.1/lib/action_controller/metal.rb:335:in `dispatch'  
actionpack-7.2.2.1/lib/action_dispatch/routing/route_set.rb:67:in `dispatch'  
actionpack-7.2.2.1/lib/action_dispatch/routing/route_set.rb:50:in `serve'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:53:in `block in serve'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:133:in `block in find_routes'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:126:in `each'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:126:in `find_routes'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:34:in `serve'  
actionpack-7.2.2.1/lib/action_dispatch/routing/route_set.rb:896:in `call'  
railties-7.2.2.1/lib/rails/engine.rb:535:in `call'  
railties-7.2.2.1/lib/rails/railtie.rb:226:in `public_send'  
railties-7.2.2.1/lib/rails/railtie.rb:226:in `method_missing'  
actionpack-7.2.2.1/lib/action_dispatch/routing/mapper.rb:33:in `block in <class:Constraints>'  
actionpack-7.2.2.1/lib/action_dispatch/routing/mapper.rb:62:in `serve'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:53:in `block in serve'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:133:in `block in find_routes'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:126:in `each'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:126:in `find_routes'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:34:in `serve'  
actionpack-7.2.2.1/lib/action_dispatch/routing/route_set.rb:896:in `call'  
/var/www/discourse/lib/middleware/omniauth_bypass_middleware.rb:64:in `call'  
rack-2.2.10/lib/rack/tempfile_reaper.rb:15:in `call'  
rack-2.2.10/lib/rack/conditional_get.rb:27:in `call'  
rack-2.2.10/lib/rack/head.rb:12:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/http/permissions_policy.rb:38:in `call'  
/var/www/discourse/lib/content_security_policy/middleware.rb:12:in `call'  
/var/www/discourse/lib/middleware/anonymous_cache.rb:401:in `call'  
/var/www/discourse/lib/middleware/csp_script_nonce_injector.rb:12:in `call'  
/var/www/discourse/config/initializers/008-rack-cors.rb:14:in `call'  
rack-2.2.10/lib/rack/session/abstract/id.rb:266:in `context'  
rack-2.2.10/lib/rack/session/abstract/id.rb:260:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/cookies.rb:704:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/callbacks.rb:31:in `block in call'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:101:in `run_callbacks'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/callbacks.rb:30:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/debug_exceptions.rb:31:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/show_exceptions.rb:32:in `call'  
logster-2.20.0/lib/logster/middleware/reporter.rb:40:in `call'  
railties-7.2.2.1/lib/rails/rack/logger.rb:41:in `call_app'  
railties-7.2.2.1/lib/rails/rack/logger.rb:29:in `call'  
/var/www/discourse/config/initializers/100-quiet_logger.rb:20:in `call'  
/var/www/discourse/config/initializers/100-silence_logger.rb:29:in `call'  
request_store-1.7.0/lib/request_store/middleware.rb:19:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/request_id.rb:33:in `call'  
/var/www/discourse/lib/middleware/enforce_hostname.rb:24:in `call'  
rack-2.2.10/lib/rack/method_override.rb:24:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/executor.rb:16:in `call'  
rack-2.2.10/lib/rack/sendfile.rb:110:in `call'  
/var/www/discourse/lib/middleware/processing_request.rb:12:in `call'  
message_bus-4.3.8/lib/message_bus/rack/middleware.rb:60:in `call'  
/var/www/discourse/lib/middleware/request_tracker.rb:385:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/remote_ip.rb:96:in `call'  
railties-7.2.2.1/lib/rails/engine.rb:535:in `call'  
railties-7.2.2.1/lib/rails/railtie.rb:226:in `public_send'  
railties-7.2.2.1/lib/rails/railtie.rb:226:in `method_missing'  
rack-2.2.10/lib/rack/urlmap.rb:74:in `block in call'  
rack-2.2.10/lib/rack/urlmap.rb:58:in `each'  
rack-2.2.10/lib/rack/urlmap.rb:58:in `call'  
unicorn-6.1.0/lib/unicorn/http_server.rb:634:in `process_client'
unicorn-6.1.0/lib/unicorn/http_server.rb:739:in `worker_loop'
unicorn-6.1.0/lib/unicorn/http_server.rb:547:in `spawn_missing_workers'
unicorn-6.1.0/lib/unicorn/http_server.rb:143:in `start'
unicorn-6.1.0/bin/unicorn:128:in `<top (required)>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `load'  
/var/www/discourse/vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `<main>' 

POST request received by https://foorumi.katiska.eu/ap/actor/996e21c65a6841b3a6c28f291af8e6c0/inbox failed: 403 Kielletty

env etc
hostname foorumi-hel-app
process_id 1069
application_version 486ff2a5643f7a5ac66ccef11a97d6c2a282c9ee
HTTP_HOST foorumi.katiska.eu
REQUEST_URI /ap/actor/996e21c65a6841b3a6c28f291af8e6c0/inbox
REQUEST_METHOD POST
HTTP_USER_AGENT http.rb/5.1.1 (Mastodon/4.1.21; +https://mastodon.sdf.org/)
HTTP_X_FORWARDED_FOR 66.148.120.148
HTTP_X_REAL_IP 66.148.120.148
time 1:13 pm
activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:130:in `block in warn'  
activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `block in dispatch'  
activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `each'  
activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `dispatch'  
activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:130:in `warn'  
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/logger.rb:22:in `log'  
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/logger.rb:59:in `warn'  
/var/www/discourse/plugins/discourse-activity-pub/app/controllers/discourse_activity_pub/ap/objects_controller.rb:128:in `log_request_error'  
/var/www/discourse/plugins/discourse-activity-pub/app/controllers/discourse_activity_pub/ap/objects_controller.rb:106:in `render_activity_pub_error'  
/var/www/discourse/plugins/discourse-activity-pub/app/controllers/concerns/discourse_activity_pub/domain_verification.rb:5:in `ensure_domain_allowed'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:362:in `block in make_lambda'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:179:in `block in call'  
actionpack-7.2.2.1/lib/abstract_controller/callbacks.rb:34:in `block (2 levels) in <module:Callbacks>'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:180:in `call'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:559:in `block in invoke_before'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:559:in `each'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:559:in `invoke_before'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:119:in `block in run_callbacks'  
/var/www/discourse/app/controllers/application_controller.rb:424:in `block in with_resolved_locale'  
i18n-1.14.6/lib/i18n.rb:353:in `with_locale'  
/var/www/discourse/app/controllers/application_controller.rb:424:in `with_resolved_locale'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:130:in `block in run_callbacks'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:141:in `run_callbacks'  
actionpack-7.2.2.1/lib/abstract_controller/callbacks.rb:260:in `process_action'  
actionpack-7.2.2.1/lib/action_controller/metal/rescue.rb:27:in `process_action'  
actionpack-7.2.2.1/lib/action_controller/metal/instrumentation.rb:77:in `block in process_action'  
activesupport-7.2.2.1/lib/active_support/notifications.rb:210:in `block in instrument'  
activesupport-7.2.2.1/lib/active_support/notifications/instrumenter.rb:58:in `instrument'  
activesupport-7.2.2.1/lib/active_support/notifications.rb:210:in `instrument'  
actionpack-7.2.2.1/lib/action_controller/metal/instrumentation.rb:76:in `process_action'  
actionpack-7.2.2.1/lib/action_controller/metal/params_wrapper.rb:259:in `process_action'  
activerecord-7.2.2.1/lib/active_record/railties/controller_runtime.rb:39:in `process_action'  
actionpack-7.2.2.1/lib/abstract_controller/base.rb:163:in `process'  
actionview-7.2.2.1/lib/action_view/rendering.rb:40:in `process'  
actionpack-7.2.2.1/lib/action_controller/metal.rb:252:in `dispatch'  
actionpack-7.2.2.1/lib/action_controller/metal.rb:335:in `dispatch'  
actionpack-7.2.2.1/lib/action_dispatch/routing/route_set.rb:67:in `dispatch'  
actionpack-7.2.2.1/lib/action_dispatch/routing/route_set.rb:50:in `serve'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:53:in `block in serve'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:133:in `block in find_routes'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:126:in `each'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:126:in `find_routes'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:34:in `serve'  
actionpack-7.2.2.1/lib/action_dispatch/routing/route_set.rb:896:in `call'  
railties-7.2.2.1/lib/rails/engine.rb:535:in `call'  
railties-7.2.2.1/lib/rails/railtie.rb:226:in `public_send'  
railties-7.2.2.1/lib/rails/railtie.rb:226:in `method_missing'  
actionpack-7.2.2.1/lib/action_dispatch/routing/mapper.rb:33:in `block in <class:Constraints>'  
actionpack-7.2.2.1/lib/action_dispatch/routing/mapper.rb:62:in `serve'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:53:in `block in serve'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:133:in `block in find_routes'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:126:in `each'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:126:in `find_routes'  
actionpack-7.2.2.1/lib/action_dispatch/journey/router.rb:34:in `serve'  
actionpack-7.2.2.1/lib/action_dispatch/routing/route_set.rb:896:in `call'  
/var/www/discourse/lib/middleware/omniauth_bypass_middleware.rb:64:in `call'  
rack-2.2.10/lib/rack/tempfile_reaper.rb:15:in `call'  
rack-2.2.10/lib/rack/conditional_get.rb:40:in `call'  
rack-2.2.10/lib/rack/head.rb:12:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/http/permissions_policy.rb:38:in `call'  
/var/www/discourse/lib/content_security_policy/middleware.rb:12:in `call'  
/var/www/discourse/lib/middleware/anonymous_cache.rb:403:in `call'  
/var/www/discourse/lib/middleware/csp_script_nonce_injector.rb:12:in `call'  
/var/www/discourse/config/initializers/008-rack-cors.rb:14:in `call'  
rack-2.2.10/lib/rack/session/abstract/id.rb:266:in `context'  
rack-2.2.10/lib/rack/session/abstract/id.rb:260:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/cookies.rb:704:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/callbacks.rb:31:in `block in call'  
activesupport-7.2.2.1/lib/active_support/callbacks.rb:101:in `run_callbacks'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/callbacks.rb:30:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/debug_exceptions.rb:31:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/show_exceptions.rb:32:in `call'  
logster-2.20.0/lib/logster/middleware/reporter.rb:40:in `call'  
railties-7.2.2.1/lib/rails/rack/logger.rb:41:in `call_app'  
railties-7.2.2.1/lib/rails/rack/logger.rb:29:in `call'  
/var/www/discourse/config/initializers/100-quiet_logger.rb:20:in `call'  
/var/www/discourse/config/initializers/100-silence_logger.rb:29:in `call'  
request_store-1.7.0/lib/request_store/middleware.rb:19:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/request_id.rb:33:in `call'  
/var/www/discourse/lib/middleware/enforce_hostname.rb:24:in `call'  
rack-2.2.10/lib/rack/method_override.rb:24:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/executor.rb:16:in `call'  
rack-2.2.10/lib/rack/sendfile.rb:110:in `call'  
/var/www/discourse/lib/middleware/processing_request.rb:12:in `call'  
message_bus-4.3.8/lib/message_bus/rack/middleware.rb:60:in `call'  
/var/www/discourse/lib/middleware/request_tracker.rb:385:in `call'  
actionpack-7.2.2.1/lib/action_dispatch/middleware/remote_ip.rb:96:in `call'  
railties-7.2.2.1/lib/rails/engine.rb:535:in `call'  
railties-7.2.2.1/lib/rails/railtie.rb:226:in `public_send'  
railties-7.2.2.1/lib/rails/railtie.rb:226:in `method_missing'  
rack-2.2.10/lib/rack/urlmap.rb:74:in `block in call'  
rack-2.2.10/lib/rack/urlmap.rb:58:in `each'  
rack-2.2.10/lib/rack/urlmap.rb:58:in `call'  
unicorn-6.1.0/lib/unicorn/http_server.rb:634:in `process_client'
unicorn-6.1.0/lib/unicorn/http_server.rb:739:in `worker_loop'
unicorn-6.1.0/lib/unicorn/http_server.rb:547:in `spawn_missing_workers'
unicorn-6.1.0/lib/unicorn/http_server.rb:143:in `start'
unicorn-6.1.0/bin/unicorn:128:in `<top (required)>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `load'  
/var/www/discourse/vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `<main>' 

It is always same.

Ok, abbiamo trovato il problema :)\n\nLe tue richieste vengono bloccate dagli elenchi di domini consentiti/negati. Quindi hai o:\n\n- inserito domini nell’elenco activity pub allowed request origins. Ciò significa che le richieste da tutti gli altri domini verranno bloccate; o\n- c’è un bug in questo codice.\n\nCondividi esattamente cosa hai nelle impostazioni activity_pub_allowed_request_origins e activity_pub_blocked_request_origins.

Scusate screenshot :wink: Non mi sono preoccupato di iniziare a scrivere.

activity_pub_allowed_request_origins

Ogni istanza che ho provato è presente, e un paio in più. Ad esempio mstdn.social che non sto usando, ma riceve molti 402. Cerco principalmente di usare mastodontti.fi (quello ha il mio follower fantasma) e kvarkki.nexus (quello è mio) e quelli non funzionano.

activity_pub_blocked_request_origins

fedsearch.io, niente di più.

Per me un bug sarebbe gradito, per te non tanto. Ma se e quando sarò l’unico… :man_shrugging:

Quindi, ricevi un errore perché il server che hai usato non è in quella lista, giusto?

Ho trovato la causa del tuo problema. Tecnicamente non è un bug, ma una svista nel modo in cui funziona la funzionalità di consentire/negare domini (e con ciò intendo come interagisce con Mastodon). La correzione consisterà nel consentire l’uso di consentire/negare domini solo insieme all’uso di richieste firmate. Ho aperto una PR a riguardo.

Quando questa verrà unita, ti chiederò di testare di nuovo.

2 Mi Piace

Sì! Ce l’hai fatta, di nuovo. I messaggi vanno qui, lì e ovunque. E il follow funziona in entrambi i sensi.

Grazie. Ottimo lavoro davvero!

3 Mi Piace

Hi there. This is in response to this post over in this thread

  • No service filtering requests/geo-blockers, etc enabled.
  • activity pub require signed requests is disabled.
  • Nothing is listed within activity pub allowed request origins or activity pub blocked request origins.
  • The logs:

This is @padraig@mastodon.ie trying to follow @general@gamersandgeeks.net

  • [Discourse Activity Pub] GET request to https://mastodon.ie/users/padraig failed: Expected([200, 201, 202, 301, 302, 307, 308]) <=> Actual(401 Unauthorized)
backtrace/env
hostname	39Discourse-ubuntu-s-1vcpu-2gb-amd-ams3-01-app
process_id	787
application_version	f4857d3b1c6a33ce6a5e4d2675ae2538d2c36357
job	Jobs::DiscourseActivityPubProcess
db	default
time	9:52 pm

/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:130:in `block in warn'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `block in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `each'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:130:in `warn'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/logger.rb:22:in `log'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/logger.rb:59:in `warn'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/request.rb:61:in `rescue in perform'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/request.rb:48:in `perform'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/request.rb:30:in `get_json_ld'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/request.rb:118:in `get_json_ld'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/json_ld.rb:57:in `request_object'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/json_ld.rb:53:in `resolve_object'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/object.rb:200:in `resolve'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/object.rb:179:in `resolve_and_store'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:132:in `process_actor_and_object'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:56:in `process_activity'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:36:in `block in perform_transactions'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/transaction.rb:616:in `block in within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/concurrency/null_lock.rb:9:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/transaction.rb:613:in `within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/database_statements.rb:361:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/transactions.rb:234:in `block in transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:421:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_handling.rb:296:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/transactions.rb:233:in `transaction'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:34:in `perform_transactions'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:26:in `process'
/var/www/discourse/plugins/discourse-activity-pub/app/jobs/discourse_activity_pub_process.rb:12:in `execute'
/var/www/discourse/app/jobs/base.rb:316:in `block (2 levels) in perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rails_multisite-6.1.0/lib/rails_multisite/connection_management/null_instance.rb:49:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rails_multisite-6.1.0/lib/rails_multisite/connection_management.rb:21:in `with_connection'
/var/www/discourse/app/jobs/base.rb:303:in `block in perform'
/var/www/discourse/app/jobs/base.rb:299:in `each'
/var/www/discourse/app/jobs/base.rb:299:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:202:in `execute_job'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:170:in `block (2 levels) in process'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:177:in `block in invoke'
/var/www/discourse/lib/sidekiq/pausable.rb:132:in `call'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:179:in `block in invoke'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:182:in `invoke'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:169:in `block in process'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:136:in `block (6 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_retry.rb:113:in `local'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:135:in `block (5 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq.rb:44:in `block in <module:Sidekiq>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:131:in `block (4 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:263:in `stats'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:126:in `block (3 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_logger.rb:13:in `call'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:125:in `block (2 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_retry.rb:80:in `global'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:124:in `block in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_logger.rb:39:in `prepare'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:123:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:168:in `process'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:78:in `process_one'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:68:in `run'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/component.rb:8:in `watchdog'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/component.rb:17:in `block in safe_thread'
  • [Discourse Activity Pub] Failed to process https://mastodon.ie/users/padraig: Could not resolve actor
backtrace/env
hostname	39Discourse-ubuntu-s-1vcpu-2gb-amd-ams3-01-app
process_id	787
application_version	f4857d3b1c6a33ce6a5e4d2675ae2538d2c36357
job	Jobs::DiscourseActivityPubProcess
db	default
time	9:52 pm

/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:130:in `block in warn'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `block in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `each'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:130:in `warn'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/logger.rb:22:in `log'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/logger.rb:59:in `warn'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/object.rb:140:in `process_failed'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/object.rb:153:in `process_failed'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/object.rb:202:in `resolve'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/object.rb:179:in `resolve_and_store'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:132:in `process_actor_and_object'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:56:in `process_activity'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:36:in `block in perform_transactions'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/transaction.rb:616:in `block in within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/concurrency/null_lock.rb:9:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/transaction.rb:613:in `within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/database_statements.rb:361:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/transactions.rb:234:in `block in transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:421:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_handling.rb:296:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/transactions.rb:233:in `transaction'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:34:in `perform_transactions'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:26:in `process'
/var/www/discourse/plugins/discourse-activity-pub/app/jobs/discourse_activity_pub_process.rb:12:in `execute'
/var/www/discourse/app/jobs/base.rb:316:in `block (2 levels) in perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rails_multisite-6.1.0/lib/rails_multisite/connection_management/null_instance.rb:49:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rails_multisite-6.1.0/lib/rails_multisite/connection_management.rb:21:in `with_connection'
/var/www/discourse/app/jobs/base.rb:303:in `block in perform'
/var/www/discourse/app/jobs/base.rb:299:in `each'
/var/www/discourse/app/jobs/base.rb:299:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:202:in `execute_job'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:170:in `block (2 levels) in process'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:177:in `block in invoke'
/var/www/discourse/lib/sidekiq/pausable.rb:132:in `call'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:179:in `block in invoke'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:182:in `invoke'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:169:in `block in process'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:136:in `block (6 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_retry.rb:113:in `local'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:135:in `block (5 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq.rb:44:in `block in <module:Sidekiq>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:131:in `block (4 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:263:in `stats'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:126:in `block (3 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_logger.rb:13:in `call'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:125:in `block (2 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_retry.rb:80:in `global'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:124:in `block in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_logger.rb:39:in `prepare'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:123:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:168:in `process'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:78:in `process_one'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:68:in `run'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/component.rb:8:in `watchdog'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/component.rb:17:in `block in safe_thread'
  • [Discourse Activity Pub] Failed to process https://mastodon.ie/41434029-d0bc-47fa-8ffa-4fe22e28b919: Could not create actor
backtrace/env
hostname	39Discourse-ubuntu-s-1vcpu-2gb-amd-ams3-01-app
process_id	787
application_version	f4857d3b1c6a33ce6a5e4d2675ae2538d2c36357
job	Jobs::DiscourseActivityPubProcess
db	default
time	9:52 pm

/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:130:in `block in warn'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `block in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `each'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:130:in `warn'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/logger.rb:22:in `log'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/logger.rb:59:in `warn'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/object.rb:140:in `process_failed'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:133:in `process_actor_and_object'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:56:in `process_activity'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:36:in `block in perform_transactions'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/transaction.rb:616:in `block in within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/concurrency/null_lock.rb:9:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/transaction.rb:613:in `within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/database_statements.rb:361:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/transactions.rb:234:in `block in transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:421:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_handling.rb:296:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/transactions.rb:233:in `transaction'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:34:in `perform_transactions'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:26:in `process'
/var/www/discourse/plugins/discourse-activity-pub/app/jobs/discourse_activity_pub_process.rb:12:in `execute'
/var/www/discourse/app/jobs/base.rb:316:in `block (2 levels) in perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rails_multisite-6.1.0/lib/rails_multisite/connection_management/null_instance.rb:49:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rails_multisite-6.1.0/lib/rails_multisite/connection_management.rb:21:in `with_connection'
/var/www/discourse/app/jobs/base.rb:303:in `block in perform'
/var/www/discourse/app/jobs/base.rb:299:in `each'
/var/www/discourse/app/jobs/base.rb:299:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:202:in `execute_job'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:170:in `block (2 levels) in process'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:177:in `block in invoke'
/var/www/discourse/lib/sidekiq/pausable.rb:132:in `call'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:179:in `block in invoke'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:182:in `invoke'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:169:in `block in process'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:136:in `block (6 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_retry.rb:113:in `local'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:135:in `block (5 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq.rb:44:in `block in <module:Sidekiq>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:131:in `block (4 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:263:in `stats'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:126:in `block (3 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_logger.rb:13:in `call'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:125:in `block (2 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_retry.rb:80:in `global'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:124:in `block in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_logger.rb:39:in `prepare'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:123:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:168:in `process'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:78:in `process_one'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:68:in `run'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/component.rb:8:in `watchdog'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/component.rb:17:in `block in safe_thread'
  • [Discourse Activity Pub] DiscourseActivityPub::AP::Handlers::Warning
backtrace/env
hostname	39Discourse-ubuntu-s-1vcpu-2gb-amd-ams3-01-app
process_id	787
application_version	f4857d3b1c6a33ce6a5e4d2675ae2538d2c36357
job	Jobs::DiscourseActivityPubProcess
db	default
time	9:52 pm

/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:130:in `block in warn'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `block in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `each'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:130:in `warn'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/logger.rb:22:in `log'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/logger.rb:59:in `warn'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:42:in `rescue in block in perform_transactions'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:35:in `block in perform_transactions'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/transaction.rb:616:in `block in within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.2.1/lib/active_support/concurrency/null_lock.rb:9:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/transaction.rb:613:in `within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/database_statements.rb:361:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/transactions.rb:234:in `block in transaction'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:421:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/connection_handling.rb:296:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.2.2.1/lib/active_record/transactions.rb:233:in `transaction'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:34:in `perform_transactions'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/ap/activity.rb:26:in `process'
/var/www/discourse/plugins/discourse-activity-pub/app/jobs/discourse_activity_pub_process.rb:12:in `execute'
/var/www/discourse/app/jobs/base.rb:316:in `block (2 levels) in perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rails_multisite-6.1.0/lib/rails_multisite/connection_management/null_instance.rb:49:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rails_multisite-6.1.0/lib/rails_multisite/connection_management.rb:21:in `with_connection'
/var/www/discourse/app/jobs/base.rb:303:in `block in perform'
/var/www/discourse/app/jobs/base.rb:299:in `each'
/var/www/discourse/app/jobs/base.rb:299:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:202:in `execute_job'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:170:in `block (2 levels) in process'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:177:in `block in invoke'
/var/www/discourse/lib/sidekiq/pausable.rb:132:in `call'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:179:in `block in invoke'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:182:in `invoke'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:169:in `block in process'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:136:in `block (6 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_retry.rb:113:in `local'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:135:in `block (5 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq.rb:44:in `block in <module:Sidekiq>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:131:in `block (4 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:263:in `stats'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:126:in `block (3 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_logger.rb:13:in `call'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:125:in `block (2 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_retry.rb:80:in `global'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:124:in `block in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/job_logger.rb:39:in `prepare'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:123:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:168:in `process'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:78:in `process_one'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:68:in `run'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/component.rb:8:in `watchdog'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sidekiq-6.5.12/lib/sidekiq/component.rb:17:in `block in safe_thread'

Hope this helps :slight_smile:

Grazie per i log utili. Come primo passo, potresti seguire announcements@test.pavilion.tech con padraig@mastodon.ie.

Ho cliccato su “Segui” e sembra che abbia funzionato. :slight_smile: