BTW, would be nice to have a summary of various audit requirements
(also see a thread that started last night on the user list). There's
SQL-level audit, object-level audit, anything else?
For object-level audit, the simplest thing is to track DataChannel
graph events. Unlike lifecycle events that we borrowed from JPA, those
actually contain all object deltas (this is why I sometimes call
Cayenne "the git of ORM").
(Now there's too many events / interceptors / delegates accumulated in
the framework over the years... almost feel like going tapestry5 by
dumping all backwards compatibility at some point and designing
something consistent end to end :-/ )
Andrus
On Feb 11, 2009, at 9:01 AM, Andrus Adamchik wrote:
>
> On Feb 11, 2009, at 8:50 AM, Aristedes Maniatis wrote:
>
>> Would Cayenne keep aggregate statistics (min/av/max/count) tracked
>> internally? That would make it easy for a user to monitor for slow
>> selects without writing a listener at all.
>
> The main goal is to to expose enough raw data via JMX. So all events
> will be stored in an MBean ("MBean" is a JMX term for managed
> object), but no statistical postprocessing is planned at this level.
> More advanced aggregation and reporting should be done via custom
> extensions (which we may or may not include in Cayenne). This is the
> most flexible pattern from my past JMX experience.
>
>
>> Is there a symmetry between Lifecycle events which track the
>> progress of an object entity, and these QueryLogger events which
>> track what happens to the database (although not db entities?)?
>
> Due to potential ORM complexities (things often don't map one to one
> between DB rows and objects), I'd say there will be a substantial
> mismatch.
>
>> Would QueryLogger listeners be something to be configured in the
>> modeler?
>
> No plans for that yet.
>
> Andrus
>
This archive was generated by hypermail 2.0.0 : Wed Feb 11 2009 - 02:12:47 EST