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]
>>
>>
>

Reply via email to