The 'Rule' interface, RuleFactory and LoggingEventFieldResolver are used to support expressions..simple stuff, but it works...maybe it's time to throw this away completely and leverage a third-party API instead?
Yeah I don't mind doing that work. One thing that was a slightly significant change to the LoggingEvent implementation in log4j 1.2 - I needed to be able to track expression matches, which impacted the API a bit (find/colorizing expressions are displayed in the gutter on the right, time deltas show up in the gutter on the left)..that allows me to render a 'color' for an event without re-running the evaluation expression.
I think that's an implementation detail and doesn't need to be in the interface, but that's the one place in Chainsaw where the 'core' logging event wasn't sufficient.
ScottOn Mon, Feb 6, 2012 at 10:55 AM, ralph.goers @dslextreme.com <firstname.lastname@example.org> wrote:
On Mon, Feb 6, 2012 at 10:35 AM, Scott Deboy <email@example.com> wrote:I wouldn't mind getting rid of the implementation behind the current expression/expressionfilter support (also used in Chainsaw). Were there improvements in that area?
The expression support has some limits which I don't love - yes, you can define regexps and use relational and logical operators and grouping, but I would love to be able to have something like an 'around' operator that would work off of either of events (ten events around a warning message), and/or a time-based version (events within +- 1 minute of a warning message).
Oh - and I haven't ported chainsaw into Log4j2. When that happens I expect it will be a new module.Ralph