Hi, Are there plans to expose kernel stats from Oak ? >From a client point of view: I am thinking access to an immutable map of read only long values that give the client information about the internal health and throughput of an Oak kernel, rather like the information available under /proc on linux.
>From a kernel pov it might just be AtomicLongs in a map. All they do is count certain actions or set an absolute value with as low a cost as possible to the internal workings of the core, and no risk of concurrency issues. I am not thinking of anything as sophisticated as the RepositoryStatistics TimeSeries thats in Jackrabbit. The only need to be centralised and exposed, clients can decide what to do with the values. Use Case: The Jackrabbit ObservationDispatcher has a queue that contains a AtomicInteger indicating the size of the queue. If Observers are slow in responding to asynchronous notifications the queue can grow rapidly. Having stats on the queue would give valuable feedback into this area and in certain cases fast long running notifiers (JCR writers) could adjust their behaviour based on the even. Even seeing the size of the queue in a monitoring tool would be useful. Having telemetry in the Oak kernel will certainly help clients and may also help optimise and benchmark Oak. Ian