As far as I know, there is no way for a global filter to know which logger we're working it for. Which in my case is not the best since I would compute a hash for all the messages of all my loggers, instead of just the one I need them for.
On Tue, Nov 8, 2016 at 4:30 PM, Benjamin Jaton <[email protected]> wrote: > Ah, I can't use 'logEvent' but I can use 'message', perfect, thank you! > > On Tue, Nov 8, 2016 at 4:21 PM, Remko Popma <[email protected]> wrote: > >> Yes Filters can be applied at different stages of the logging pipeline. >> The Filter interface has separate methods for these stages. Different >> parameters are passed to these methods. >> >> Sent from my iPhone >> >> > On 9 Nov 2016, at 8:57, Benjamin Jaton <[email protected]> >> wrote: >> > >> > Ah, interesting. I seem to be able to make modification using this >> global >> > filter. >> > >> > However I don't seem to have access to the log event that way? >> > >> > Caused by: groovy.lang.MissingPropertyException: No such property: >> logEvent >> > for class: Script2 >> > at >> > org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(Scr >> iptBytecodeAdapter.java:53) >> > at >> > org.codehaus.groovy.runtime.callsite.PogoGetPropertySite.get >> Property(PogoGetPropertySite.java:52) >> > at >> > org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGr >> oovyObjectGetProperty(AbstractCallSite.java:307) >> > at Script2.run(Script2.groovy:8) >> > at >> > org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(Groov >> yScriptEngineImpl.java:343) >> > ... 12 more >> > >> >> On Tue, Nov 8, 2016 at 3:47 PM, Remko Popma <[email protected]> >> wrote: >> >> >> >> If you make it a global filter it will get applied before the LogEvent >> is >> >> constructed. Please try that. >> >> >> >> Remko >> >> >> >> Sent from my iPhone >> >> >> >>> On 9 Nov 2016, at 7:02, Benjamin Jaton <[email protected]> >> wrote: >> >>> >> >>> I am applying it on the root logger. >> >>> >> >>>> On Tue, Nov 8, 2016 at 12:47 PM, Matt Sicker <[email protected]> >> wrote: >> >>>> >> >>>> Where are you applying the filter? On the appender or somewhere else? >> >>>> >> >>>> On 8 November 2016 at 13:13, Benjamin Jaton < >> [email protected]> >> >>>> wrote: >> >>>> >> >>>>> hello, >> >>>>> >> >>>>> I was playing with log4j2 filters to generate a hash in groovy that >> I >> >>>> would >> >>>>> put in the threadcontext map, and then use in my log pattern: >> >>>>> >> >>>>> %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1.}:%L - %m [%X{myhash}] >> >>>>> >> >>>>> But the hash is printed on the NEXT log message. >> >>>>> My understanding is that at this point the log message is already >> >>>> formatted >> >>>>> and final. >> >>>>> >> >>>>> Is there another way I can use a custom script where the log event >> can >> >>>>> actually be modified? >> >>>>> >> >>>>> Thanks, >> >>>>> Ben >> >>>>> >> >>>> >> >>>> >> >>>> >> >>>> -- >> >>>> Matt Sicker <[email protected]> >> >>>> >> >> >> >> --------------------------------------------------------------------- >> >> To unsubscribe, e-mail: [email protected] >> >> For additional commands, e-mail: [email protected] >> >> >> >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >> >> >
