# Logging - using a different log for one method

**URL:** <https://www.ruby-forum.com/t/logging-using-a-different-log-for-one-method/166859>\
**Category:** Rails\
**Created:** [April 30, 2009, 9:12am UTC](https://www.ruby-forum.com/t/logging-using-a-different-log-for-one-method/166859 "2009-04-30T09:12:52Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![timhunter](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/71e660/32.png) [@timhunter](https://www.ruby-forum.com/u/timhunter)\
**Post date:** [April 30, 2009, 9:12am UTC](https://www.ruby-forum.com/t/logging-using-a-different-log-for-one-method/166859/1 "2009-04-30T09:12:52Z")

</div>

Hi there,

I’m wondering if there’s a way to have any log statements generated  
from a specific method on a model get logged into a separate file from  
the normal development/production log files?

i.e. I want the whole app to log as normal, apart from the  
Sprinter.run\_often method, which I’d like to log to  
sprinter\_running.log

Cheers,

Tim.

---

<div class="post-metadata">

**Author:** ![timhunter](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/71e660/32.png) [@timhunter](https://www.ruby-forum.com/u/timhunter)\
**Post date:** [April 30, 2009, 9:58am UTC](https://www.ruby-forum.com/t/logging-using-a-different-log-for-one-method/166859/2 "2009-04-30T09:58:35Z")

</div>

I guess it would be something like

sprinter\_log = BufferedLogger.new(“sprinter\_runner.log”)

sprinter\_log.log(‘yay I’m logging’)

---

<div class="post-metadata">

**Author:** ![timhunter](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/71e660/32.png) [@timhunter](https://www.ruby-forum.com/u/timhunter)\
**Post date:** [April 30, 2009, 10:10am UTC](https://www.ruby-forum.com/t/logging-using-a-different-log-for-one-method/166859/3 "2009-04-30T10:10:17Z")

</div>

Hi Ivan,

Thanks - I thought I was probably missing a detail. That will put my  
own log statements into a new log. But what I’m aiming for is to get  
AR generated log statements into the separate log file also. Without  
interfering with whatever other code is running concurrently.

Cheers,

Tim.

---

<div class="post-metadata">

**Author:** ![timhunter](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/71e660/32.png) [@timhunter](https://www.ruby-forum.com/u/timhunter)\
**Post date:** [April 30, 2009, 10:20am UTC](https://www.ruby-forum.com/t/logging-using-a-different-log-for-one-method/166859/4 "2009-04-30T10:20:14Z")

</div>

Monkey patch ActiveRecord::Base or your base class and override logger

def logger  
@logger = BufferedLogger.new(‘name’)

end
