Ошибки на форуме, где я волонтерю

Всем привет, я волонтёр-администратор этого форума, и у нас наблюдается множество ошибок 429, потерянных писем и других проблем. Я заметил, что Sidekiq требует увеличения памяти свыше 500 МБ, а также похоже, что почтовый сервер исчерпал место в очереди. Не уверен, какие ещё проблемы существуют, так как у меня нет доступа к базовому серверу, но надеюсь, что другие смогут предложить решения. Спасибо!

Discourse::InvalidParameters (строка содержит нулевой байт) app/controllers/application_controller.rb:134:in `block in <class:ApplicationController>' lib/middleware/omniauth_bypass_middleware.rb:74:in `c

Сообщение (919 копий)

Discourse::InvalidParameters (строка содержит нулевой байт)
app/controllers/application_controller.rb:134:in block in <class:ApplicationController>' lib/middleware/omniauth_bypass_middleware.rb:74:in call’
lib/content_security_policy/middleware.rb:12:in call' lib/middleware/anonymous_cache.rb:387:in call’
lib/middleware/gtm_script_nonce_injector.rb:10:in call' config/initializers/100-quiet_logger.rb:20:in call’
config/initializers/100-silence_logger.rb:29:in call' lib/middleware/enforce_hostname.rb:24:in call’
lib/middleware/request_tracker.rb:233:in `call’

Стек вызовов

app/controllers/application_controller.rb:134:in block in <class:ApplicationController>' activesupport (7.0.7) lib/active_support/rescuable.rb:116:in instance_exec’
activesupport (7.0.7) lib/active_support/rescuable.rb:116:in block in handler_for_rescue' activesupport (7.0.7) lib/active_support/rescuable.rb:92:in rescue_with_handler’
activesupport (7.0.7) lib/active_support/rescuable.rb:165:in rescue_with_handler' actionpack (7.0.7) lib/action_controller/metal/rescue.rb:26:in rescue in process_action’
actionpack (7.0.7) lib/action_controller/metal/rescue.rb:22:in process_action' actionpack (7.0.7) lib/action_controller/metal/instrumentation.rb:67:in block in process_action’
activesupport (7.0.7) lib/active_support/notifications.rb:206:in block in instrument' activesupport (7.0.7) lib/active_support/notifications/instrumenter.rb:24:in instrument’

Исключение задачи: время выполнения истекло

Сообщение (1704 копии)

Исключение задачи: время выполнения истекло

Стек вызовов

/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-smtp-0.4.0/lib/net/smtp.rb:631:in initialize' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-smtp-0.4.0/lib/net/smtp.rb:631:in open’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-smtp-0.4.0/lib/net/smtp.rb:631:in tcp_socket' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-smtp-0.4.0/lib/net/smtp.rb:641:in block in do_start’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/timeout-0.4.0/lib/timeout.rb:186:in block in timeout' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/timeout-0.4.0/lib/timeout.rb:193:in timeout’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-smtp-0.4.0/lib/net/smtp.rb:640:in do_start' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-smtp-0.4.0/lib/net/smtp.rb:610:in start’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/mail-2.8.1/lib/mail/network/delivery_methods/smtp.rb:109:in start_smtp_session' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/mail-2.8.1/lib/mail/network/delivery_methods/smtp.rb:100:in deliver!’

Исключение задачи: Net::ReadTimeout

Сообщение (75565 копий)
Исключение задачи: Net::ReadTimeout
Стек вызовов

/usr/local/lib/ruby/3.2.0/net/protocol.rb:229:in rbuf_fill' /usr/local/lib/ruby/3.2.0/net/protocol.rb:199:in readuntil’
/usr/local/lib/ruby/3.2.0/net/protocol.rb:377:in each_message_chunk' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:958:in block in retr’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:1016:in critical' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:956:in retr’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:810:in pop' /var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:47:in block (2 levels) in poll_pop3’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:669:in each' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:669:in each_mail’

Исключение задачи: X-MS-Exchange-CrossTenant-FromEntityHeader: Internet

Исключение задачи: X-MS-Exchange-CrossTenant-FromEntityHeader: Internet
Стек вызовов

/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:1004:in check_response' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:984:in quit’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:603:in do_finish' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:533:in ensure in start’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:533:in start' /var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:45:in poll_pop3’
/var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:14:in execute' /var/www/discourse/app/jobs/base.rb:292:in block (2 levels) in perform’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rails_multisite-5.0.0/lib/rails_multisite/connection_management.rb:82:in with_connection' /var/www/discourse/app/jobs/base.rb:279:in block in perform’

Исключение задачи: Received-SPF: None (отсутствует SPF-запись) ...<UNKNOWN>

Сообщение (4 копии)
Исключение задачи: Received-SPF: None (отсутствует SPF-запись) identity=helo; client-ip=…; envelope-from=<>; receiver=
Стек вызовов

/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:1004:in check_response' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:984:in quit’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:603:in do_finish' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:533:in ensure in start’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:533:in start' /var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:45:in poll_pop3’
/var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:14:in execute' /var/www/discourse/app/jobs/base.rb:292:in block (2 levels) in perform’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rails_multisite-5.0.0/lib/rails_multisite/connection_management.rb:82:in with_connection' /var/www/discourse/app/jobs/base.rb:279:in block in perform’

Исключение задачи: не удалось получить соединение из пула в течение 5.000 секунд (ожидание 5.000 секунд); все соединения в пуле заняты

Сообщение (92 копии)
Исключение задачи: не удалось получить соединение из пула в течение 5.000 секунд (ожидание 5.000 секунд); все соединения в пуле заняты
Стек вызовов

Исключение задачи: by mx with LMTP

Сообщение
Исключение задачи: by mx with LMTP
Стек вызовов
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:1004:in check_response' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:984:in quit’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:603:in do_finish' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:533:in ensure in start’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:533:in start' /var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:45:in poll_pop3’
/var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:14:in execute' /var/www/discourse/app/jobs/base.rb:292:in block (2 levels) in perform’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rails_multisite-5.0.0/lib/rails_multisite/connection_management.rb:82:in with_connection' /var/www/discourse/app/jobs/base.rb:279:in block in perform’

/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb:126:in block in wait_poll' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb:115:in loop’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb:115:in wait_poll' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb:76:in internal_poll’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb:202:in internal_poll' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb:71:in block in poll’
/usr/local/lib/ruby/3.2.0/monitor.rb:202:in synchronize' /usr/local/lib/ruby/3.2.0/monitor.rb:202:in mon_synchronize’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb:80:in synchronize' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb:71:in poll’

Не удалось отправить push-уведомление: Timeout::Error : Timeout::Error

Сообщение (52 копии)
Не удалось отправить push-уведомление: Timeout::Error : Timeout::Error
Стек вызовов

/var/www/discourse/lib/final_destination/resolver.rb:31:in block in lookup' /var/www/discourse/lib/final_destination/resolver.rb:8:in synchronize’
/var/www/discourse/lib/final_destination/resolver.rb:8:in lookup' /var/www/discourse/lib/final_destination/ssrf_detector.rb:127:in lookup_ips’
/var/www/discourse/lib/final_destination/ssrf_detector.rb:95:in lookup_and_filter_ips' /var/www/discourse/lib/final_destination/http.rb:13:in connect’
/usr/local/lib/ruby/3.2.0/net/http.rb:1248:in do_start' /usr/local/lib/ruby/3.2.0/net/http.rb:1237:in start’
/usr/local/lib/ruby/3.2.0/net/http.rb:1817:in request' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.1.1/lib/patches/net_patches.rb:19:in block in request_with_mini_profiler’

[details="NoMethodError (неопределённый метод `downcase’ для #<ActionController::Parameters {“proto”=>{“expect”=>“100-continue”}, “constructor”=>{“prototype”=>{“expect”=>“100-continue”}}} permitted: false>) app "]
Сообщение (65 копий)

Не удалось обработать исключение в middleware приложения: ActionController::UnfilteredParameters : невозможно преобразовать недопустимые параметры в хэш

Сообщение (167 копий)

Не удалось обработать исключение в middleware приложения: ActionController::UnfilteredParameters : невозможно преобразовать недопустимые параметры в хэш

Стек вызовов

actionpack-7.0.7/lib/action_controller/metal/strong_parameters.rb:289:in to_h' actionpack-7.0.7/lib/action_controller/metal/strong_parameters.rb:336:in to_query’
actionpack-7.0.7/lib/action_dispatch/http/url.rb:85:in block in add_params' actionpack-7.0.7/lib/action_dispatch/http/url.rb:85:in reject!’
actionpack-7.0.7/lib/action_dispatch/http/url.rb:85:in add_params' actionpack-7.0.7/lib/action_dispatch/http/url.rb:76:in path_for’
actionpack-7.0.7/lib/action_dispatch/routing/route_set.rb:333:in block in <class:RouteSet>' actionpack-7.0.7/lib/action_dispatch/routing/route_set.rb:846:in url_for’
actionpack-7.0.7/lib/action_dispatch/routing/route_set.rb:271:in call' actionpack-7.0.7/lib/action_dispatch/routing/route_set.rb:327:in block in define_url_helper’

NoMethodError (неопределённый метод downcase' для #<ActionController::Parameters {"__proto__"=>{"expect"=>"100-continue"}, "constructor"=>{"prototype"=>{"expect"=>"100-continue"}}} permitted: false>) app/models/tag.rb:26:in map’
app/models/tag.rb:26:in block in <class:Tag>' lib/topic_query.rb:1241:in filter_by_tags’
lib/topic_query.rb:768:in default_results' lib/topic_query.rb:538:in latest_results’
lib/topic_query.rb:281:in list_latest' app/controllers/tags_controller.rb:159:in public_send’
app/controllers/tags_controller.rb:159:in block (2 levels) in <class:TagsController>' app/controllers/tags_controller.rb:181:in show’
app/controllers/application_controller.rb:421:in block in with_resolved_locale' app/controllers/application_controller.rb:421:in with_resolved_locale’
lib/middleware/omniauth_bypass_middleware.rb:74:in call' lib/content_security_policy/middleware.rb:12:in call’
lib/middleware/anonymous_cache.rb:387:in call' lib/middleware/gtm_script_nonce_injector.rb:10:in call’
config/initializers/100-quiet_logger.rb:20:in call' config/initializers/100-silence_logger.rb:29:in call’
lib/middleware/enforce_hostname.rb:24:in call' lib/middleware/request_tracker.rb:233:in call’

Стек вызовов

app/models/tag.rb:26:in map' app/models/tag.rb:26:in block in class:Tag
activerecord (7.0.7) lib/active_record/relation.rb:435:in instance_exec' activerecord (7.0.7) lib/active_record/relation.rb:435:in block in _exec_scope’
activerecord (7.0.7) lib/active_record/relation.rb:881:in _scoping' activerecord (7.0.7) lib/active_record/relation.rb:435:in _exec_scope’
activerecord (7.0.7) lib/active_record/scoping/named.rb:175:in block in scope' lib/topic_query.rb:1241:in filter_by_tags’
lib/topic_query.rb:768:in default_results' lib/topic_query.rb:538:in latest_results’
[/details]

Sidekiq потребляет слишком много памяти (используется: 504.11M)

Сообщение (4012 копии)

Sidekiq потребляет слишком много памяти (используется: 504.11M) для ‘discuss.domain.com’, перезапуск

Стек вызовов

config/unicorn.conf.rb:164:in check_sidekiq_heartbeat' config/unicorn.conf.rb:244:in master_sleep’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/unicorn-6.1.0/lib/unicorn/http_server.rb:295:in join' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/unicorn-6.1.0/bin/unicorn:128:in <top (required)>’
/var/www/discourse/vendor/bundle/ruby/3.2.0/bin/unicorn:25:in load' /var/www/discourse/vendor/bundle/ruby/3.2.0/bin/unicorn:25:in

Похоже, сервер нужно обновить и изменить некоторые настройки в файлах yml. Сделать это изнутри Discourse нельзя.

Sidekiq был увеличен до 1 ГБ оперативной памяти, а очередь электронной почты Amazon очищена. Ошибки в логах, которые я сейчас вижу, все относятся к Job exception: execution expired.

Сообщение (532 копии)

Job exception: execution expired

Стек вызовов

/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-smtp-0.4.0/lib/net/smtp.rb:631:in initialize' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-smtp-0.4.0/lib/net/smtp.rb:631:in open’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-smtp-0.4.0/lib/net/smtp.rb:631:in tcp_socket' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-smtp-0.4.0/lib/net/smtp.rb:641:in block in do_start’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/timeout-0.4.1/lib/timeout.rb:186:in block in timeout' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/timeout-0.4.1/lib/timeout.rb:193:in timeout’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-smtp-0.4.0/lib/net/smtp.rb:640:in do_start' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-smtp-0.4.0/lib/net/smtp.rb:610:in start’
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/mail-2.8.1/lib/mail/network/delivery_methods/smtp.rb:109:in start_smtp_session' /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/mail-2.8.1/lib/mail/network/delivery_methods/smtp.rb:100:in deliver!’