On Fri, Dec 7, 2012 at 2:18 AM, Andrea Aime <[email protected]>wrote:
> On Fri, Dec 7, 2012 at 5:38 AM, Justin Deoliveira <[email protected]>wrote:
>
>> Hi all,
>>
>> I mentioned this briefly a week or so back but I would like to propose
>> some refactoring of the monitoring module. To sum up basically moving out
>> the monitoring dao into a separate module resulting in two modules.
>>
>> 1. The monitor core module - as it exists today, minus the hibernate dao
>> 2. The hibernate module - with everything hibernate
>>
>> Implicit in this change is making the backend dao fully pluggable, which
>> isn't the case today. This should make it easier to implement new back end
>> daos.
>>
>> The biggest impact is that projects that are using on the hibernate
>> backend will have to update their dependencies. Aside from that not much
>> should really change. The plan is do the refactoring in a way that behaves
>> exactly like it does today when the hibernate module is present.
>>
>> However there are some subtle things that will change in the core module
>> related to configuration. Currently the monitor config has the "mode"
>> property which is currently a mix of two things. The first is that it
>> controls which dao is chosen, the memory dao or the hibernate dao. But it
>> also controls how the hibernate dao operates with respect to when during
>> the life cycle of a request it persists to the database.
>>
>> In light of this i am also proposing the following configuration changes.
>>
>> 1. A new config parameter named "storage", which would control specially
>> what dao is used. Its values would be "memory", "hibernate", and the future
>> names of daos yet to be implemented. I was also thinking "none" would make
>> sense as well which would basically make persistent a no-op. For instance
>> this would be handy for folks who only use the audit logging functionality
>> and don't want to pay the overhead of the memory dao, even though the
>> overhead is fairly minimal.
>>
>> 2. A change to the "mode" parameter to be one of "live" or "history",
>> which is a subset of what he values are today. Basically removing the
>> "hybrid" mode. The value "live" specifies that the dao should
>> persist continuously over the life cycle of the request. The value
>> "history" specifies that the dao should only persist after the request is
>> fully completed. To retain backward compatibility the value "hybrid" will
>> still be recognized by the hibernate extension but will essentially be an
>> alias for "live". Which is more or less the same behaviour as today.
>>
>
> Seems reasonable, makes me just wonder if audit logging should not be seen
> as a separate storage mechanism with its own DAO... although there is a
> catch, it would not be able to operate in live mode, but only in history
> mode.
>
Yeah, makes sense. I can take a crack at it if you would like since i am
already playing around there. Regarding support for modes we actually have
the same issue with the memory dao, in that it doesn't really do history
mode. I imagine just having the daos log a warning when a mode is set that
they don;t support would probably suffice though.
>
>
>>
>> I've thrown together an initial cut of the work, located here:
>>
>>
>> https://github.com/jdeolive/geoserver/commit/6c46371e6b7816cd08219ecce175e582f5be119e
>>
>>
>> Thoughts? Opinions?
>>
>
> Monitoring is growing quite a bit for a community module. Any plans to
> graduate it to extension status?
>
Agreed. This change was really the last major change i had on my todo list.
I think it would great to push monitoring to extension. Happy to start
pushing on this.
>
> Cheers
> Andrea
>
> --
> ==
> Our support, Your Success! Visit http://opensdi.geo-solutions.it for more
> information.
> ==
>
> Ing. Andrea Aime
> @geowolf
> Technical Lead
>
> GeoSolutions S.A.S.
> Via Poggio alle Viti 1187
> 55054 Massarosa (LU)
> Italy
> phone: +39 0584 962313
> fax: +39 0584 1660272
> mob: +39 339 8844549
>
> http://www.geo-solutions.it
> http://twitter.com/geosolutions_it
>
> -------------------------------------------------------
>
>
--
Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.
------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
Geoserver-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-devel