【问题标题】:Creating a separate log for each Passenger process in a Rails app在 Rails 应用程序中为每个乘客进程创建单独的日志
【发布时间】:2013-05-03 01:18:44
【问题描述】:

我正在尝试确定应用服务器实例内存使用率高的原因,为此我需要为每个正在运行的乘客进程创建一个单独的日志(例如 production_18204.log)。有没有一种简单的方法可以在 Rails 应用程序中配置它?谢谢。

【问题讨论】:

  • 嘿。发现了什么?

标签: ruby-on-rails memory logging passenger


【解决方案1】:

要记录每个请求中进程使用的内存,请使用以下代码。

def log_memory_usage
  mem_usage = `ps -o rss= -p #{ Process.pid }`.to_i
  if logger
    logger.info("[MEMORY USAGE]: #{ number_to_human_size(mem_usage) } | PID: #{ Process.pid } | CONTROLLER: #{ controller_name } | ACTION: #{ action_name }")
  end
end

在您的基础或应用程序控制器中使用此作为之前的操作。务必包含 ActionView::Helpers::NumberHelper 以使 number_to_human_size 工作。

礼貌:https://github.com/binarylogic/memorylogic

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-01
    • 1970-01-01
    相关资源
    最近更新 更多