Когда выполняется ежедневное задание для значка 'Reader'?

Согласно решению о том, почему пользователи могут не видеть присвоения значка «Читатель», я хотел бы узнать, как можно определить, когда именно выполняется ежедневная задача для этого значка?

Я зашел в свой экземпляр Discourse и посмотрел файл /shared/log/rails/production.log, но не нашел там многого. Также, похоже, нет записи в crontab для этой задачи (команда crontab -l ничего подходящего не возвращает).

Есть ли какие-либо подсказки, как выяснить время запуска? И используется ли UTC или какой-то конкретный часовой пояс? Спасибо! :slight_smile:

Если это поможет, я думаю, что задача запланирована в файле /discourse/blob/main/app/jobs/scheduled/badge_grant.rb.

Однако я не очень опытен в Ruby, так что относитесь к этому с долей скептицизма!

Перейдите в /sidekiq и найдите имя задачи, которую вы обнаружили. Вы можете принудительно запустить её, и тогда она выполнится в то же время на следующий день.

Извините, я не совсем понимаю… Я ничего не знаю о Sidekiq или Rails :sweat_smile:

Я попытался вывести все запланированные задачи в Discourse:

ss = Sidekiq::ScheduledSet.new
ss.map{|job| job['args']}

=> [[{"topic_id"=>19, "current_site_id"=>"default"}],
 [{"topic_id"=>17, "current_site_id"=>"default"}],
 [{"type"=>"user_posted",
   ...
   "current_site_id"=>"default"}],
 [{"type"=>"user_replied",
  ...
   "current_site_id"=>"default"}],
 [{"post_id"=>1386, "current_site_id"=>"default"}],
 [{"type"=>"user_posted",
   ...
   "current_site_id"=>"default"}],
 [{"type"=>"user_replied",
   ...
   "current_site_id"=>"default"}],
 [{"post_id"=>1385, "current_site_id"=>"default"}]]

но, похоже, их там нет. Возможно, я выполнил эту команду неправильно (ответ 3 на SO).

Есть какие-нибудь советы? Не запускается ли по умолчанию задача выдачи значков?

Благодарю за помощь!

перейдите по ссылке https://yourforum.com/sidekiq

О, спасибо! Решает всё :slight_smile: