1

所以我创建了一个常量来引用我在初始化时执行的计划对象:

rule_engine = Ruleby::Core::Engine.new
Rails.logger.debug "#{Time.now.utc} - Created New Rules Engine"
RULES_ENG = RulesEngineCaller.new(rule_engine)

它计划通过我的代码每 x 分钟运行一次,这会调用一个运行的规则引擎,我会跟踪它运行的频率,它的初始化如下:

require_relative 'rules_eng'
require_relative 'notification'

class RulesEngineCaller
  # To change this template use File | Settings | File Templates.
  attr_accessor :rule_engine, :last_processing_timestamp, :last_processing_duration,     :last_processing_duration_history

  def initialize(rule_engine)
    @last_processing_timestamp = Time.now.utc
    @last_processing_duration = 0
    @last_processing_duration_history = Array.new
  end

当调用实际函数时会更新一些值:

@last_processing_duration = Time.now.utc - d

然后应该使用以下命令将其显示为我的家庭“视图”的一部分:

<%= RULES_ENG.last_processing_duration.to_s %>

这在我的本地副本上绝对完美,它位于 Windows 和 MySQL 等之下......但我把它放在我拥有的 AWS 实例上,并且这些值要么根本不显示,要么它们显示为它们本来应该存在的值过去,直到我刷新它并返回根本不显示它。

我能想到的唯一区别是:Redhat、Passenger 和 Apache 使其在我的本地副本只是本地的 AWS 上工作。并将其更改为 RULES::last_processing_duration 等似乎没有太大区别。

嗯,帮助这把我逼到了墙边,因为当我回到它大约 3 周时,我一直试图解决这个问题……Rails 并不是我有大量经验的东西。

4

0 回答 0