------ art_24714_7051979.1145965201597 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On 4/25/06, Ed Syrett <edward.syrett / kuehne-nagel.com> wrote: > > List Recv wrote: > > Is there anyway to set a context for log4r? > > > > log4j has somethign like NDC > > > > Basically, in a web app, I'd like to correlate messages for the same > > client. I'd like to do something like > > > > context = "#{user.ip} #{user.name}" > > > > and have it automatically appended to each logging message, or, even > > better, appended whenever the context changes (that is, if there are 5 > > messages in a row from the same user, no need to keep repeating the > > context) > > > > is this available? > > I had a similar issue with Log4r, and no there isn't currently a way to > automatically log the context (i.e. the logged in user etc) However, I > enhanced our copy of Log4r to take an extra optional parameter on all > log calls (.debug, .warn etc) that appears in all log messages, and I > plan to have the logged on user appear in there. That's probably as > good as it'd going to get; the logger object is a singleton, so you > couldn't just set a context into the object and have it available to the > user's session and automatically append the context to every log > message. That might be a useful enhancement though. > > -- > Posted via http://www.ruby-forum.com/. > > You need to use Thread local variables for this sort of behaviour. Ruby threads support this so its a matter of tweaking log4r Thread.current["name"] = "username" -- Into RFID? www.rfidnewsupdate.com Simple, fast, news. ------ art_24714_7051979.1145965201597--