Ruby 在 old/not 现有版本上搜索模板

Ruby searching template on old/not existant release

我在 rails 上使用 ruby,我正在使用名为 UserNotifier 的 gem 向用户发送通知。

最近我尝试更改那些通知的模板,但发送的电子邮件根本没有改变。我正在使用 sentry 检查一些事件和错误,然后发生了一件奇怪的事情,搜索模板并发布旧版和删除版。


哨兵日志

缺少模板 user_notifier/mailer/confirm_contribution_subject 与 {:locale=>[:pt], :formats=>[:html, :text, :js, :css, :ics , :csv, :vcf, :png, :jpeg, :gif, :bmp, :tiff, :mpeg, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json, :pdf, :zip], :variants=>[], :handlers=>[:erb, :builder, :raw, :ruby, :slim, :咖啡]}。搜索于:

"/home/folder/folder/releases/20190530165426/app/views/catarse_bootstrap"

"/home/folder/folder/releases/20190530165426/app/views"


我想搜索另一个版本或更好的 当前 版本,但我不知道这个 错误路径 在哪里被保存。

我也在使用 sidekiq...我搜索了代码和一些 Path 变量,但到目前为止什么都没有。我不确定是否有人更改了 Capistrano 默认 Path,我现在正在检查... 我肯定遗漏了一些东西...


[编辑] Capistrano realease_path 链接到正确的路径

[编辑2] 我在想它与 "Unicorn"/"Nginx" 有关,也许使用旧的 PID worker...

类似于此 "resque" 问题的内容: Rails.root points to the wrong directory in production during a Resque job

我找到了真正的问题...

自 5 月以来有一项 "Sidekiq" 任务 运行。 它应该在每次部署后重新启动,但部署代码并没有终止这个旧进程。

我用过这个

ps -eo pid,lstart,cmd

查找所有 运行 进程并找到自日期 (20190530165426)

以来的旧 "sidekiq" 运行

已将其终止,"redeployed" 现在仅使用新的 "sidekiq" 进程。