2013-05-08 2 views
3

Я пытаюсь определить причину использования памяти экземпляра высокого сервера приложений, и для этого мне нужен отдельный журнал для каждого выполняемого процесса Пассажира (например, production_18204.log). Есть ли простой способ настроить это в приложении Rails? Благодарю.Создание отдельного журнала для каждого процесса Пассажира в приложении Rails

+0

Эй. Нашел что-то? – jaspreet21anand

ответ

0

Для записи в память, используемой процессом в каждом запросе, используйте следующий код.

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

Смежные вопросы