ruby-on-rails - 旧版本/不存在版本上的 Ruby 搜索模板
问题描述
我正在使用 ruby on rails 并使用名为 UserNotifier 的 gem 向用户发送通知。
最近我尝试更改这些通知的模板,但发送的电子邮件根本没有改变。我正在使用哨兵检查一些事件和错误,然后发生了一件奇怪的事情,模板被搜索,旧版本和删除版本。
哨兵日志
缺少模板 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, :coffee]}。搜索:
“/home/文件夹/文件夹/releases/20190530165426/app/views/catarse_bootstrap”
“/home/文件夹/文件夹/releases/20190530165426/app/views”
我想搜索另一个版本,甚至更好,当前版本,但我不知道这个错误路径保存在哪里。
我也在使用sidekiq ...我搜索了代码和一些路径变量,但到目前为止什么都没有。我不确定是否有人更改了 Capistrano 默认路径,我现在正在检查这个......我肯定错过了一些东西......
[编辑] Capistrano realease_path 链接到正确的路径
[EDIT2] 我在想它关于“独角兽”/“Nginx”的一些东西,也许使用的是一个旧的 PID 工作者......
类似于这个“resque”问题的东西: Rails.root 在 Resque 作业期间指向生产中的错误目录
解决方案
我发现了真正的问题...
从五月开始就有一个“Sidekiq”任务在运行。它应该在每次部署后重新启动,但部署代码并没有杀死这个旧进程。
我用这个
ps -eo pid,lstart,cmd
查找所有正在运行的进程并找到自日期 (20190530165426) 以来运行的旧“sidekiq”
现在只使用新的“sidekiq”进程将其杀死并“重新部署”。
推荐阅读
- javascript - 修改之前在JS中定义的样式
- c# - C# Entity Framework 数据库首先缺少键冲突 EntitySet '' 基于类型 '' 没有定义键
- ssl - SSL/TLS 证书 - CN 中的重复域
- java - 尝试设置 httpOnly 标志时出错
- c# - 无法读取/写入数据(TcpClient/Server)
- python-3.x - 如何计算数据集中正面和负面句子的总数?
- ruby-on-rails - rails 如何从 yml 文件创建临时数据库?
- java - Spring-boot 项目给出“应用程序运行失败”错误
- javascript - JavaScript 更改具有相同 ID 的元素的值的困境
- javascript - 分配后更改输入值