basically +1 for adding such modules (independent of the details, since we
can improve parts once it's needed).

regards,
gerhard



2018-02-09 10:51 GMT+01:00 Romain Manni-Bucau <rmannibu...@gmail.com>:

> Hi Mark
>
> I like interdync and it is a generic fit but invomon is a bit limited in
> current flavor and I would be tempted to say we can just inherit from the
> related sirona part of code if we want to go this way.
>
>
> Romain Manni-Bucau
> @rmannibucau <https://twitter.com/rmannibucau> |  Blog
> <https://rmannibucau.metawerx.net/> | Old Blog
> <http://rmannibucau.wordpress.com> | Github <https://github.com/
> rmannibucau> |
> LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book
> <https://www.packtpub.com/application-development/java-
> ee-8-high-performance>
>
> 2018-02-09 10:49 GMT+01:00 Mark Struberg <strub...@yahoo.de.invalid>:
>
> > Hi folks!
> >
> > Some of you might know my interdyn + invomon projects [1].
> >
> > For the others, what are they about?
> >
> > interdyn is a dynamic interceptor binding Extension.
> > It allows to declare a regexp pattern and a class name of an Interceptor
> > annotation.
> > It then applies this annotation to all the classes which map the regexp.
> > Of course you can define multiple rules.
> >
> > rule.1.match=.*ServiceImpl
> > rule.1.interceptor=net.struberg.devtools.cdi.invomon.InvocationMonitored
> >
> > The other part is exactly that @InvocationMonitored interceptor.
> >
> > It logs the most expensive methods and classes after each request.
> > The output looks like the following:
> >
> > 2011-03-19 12:36:27,291 [2046767960@qtp-1243908618-9]  INFO
> > invomon.InvocationResultLogger Top Class Invocations:
> >   count: 51     net.struberg.myproject.core.be.semester.
> > SemesterRemoteServiceImpl
> >   count: 21     net.struberg.myproject.core.be.security.service.
> > SecurityServiceImpl
> >   count: 5      net.struberg.myproject.util.be.config.ConfigServiceImpl
> >   count: 2      net.struberg.myproject.course.be.CourseServiceImpl
> >   count: 1      net.struberg.myproject.events.be.EventServiceImpl
> >   count: 1      net.struberg.myproject.core.be.persons.
> > PersonRemoteServiceImpl
> >   count: 1      net.struberg.myproject.course.be.LecturerServiceImpl
> >   count: 1      net.struberg.myproject.events.be.EventRemoteServiceImpl
> >
> > 2011-03-19 12:36:27,292 [2046767960@qtp-1243908618-9]  INFO
> > invomon.InvocationResultLogger Top Method Invocations:
> >   dur[ms]: 442.48096    count: 1        net.struberg.myproject.course.
> > be.CourseServiceImpl#deleteCourse
> >   dur[ms]: 349.34717    count: 1        net.struberg.myproject.course.
> > be.CourseServiceImpl#getByFilter
> >   dur[ms]: 104.53423    count: 1        net.struberg.myproject.events.
> > be.EventRemoteServiceImpl#getEvent
> >   dur[ms]: 100.43162    count: 1        net.struberg.myproject.events.
> > be.EventServiceImpl#getEvent
> >   dur[ms]: 24.677048    count: 1        net.struberg.myproject.course.
> > be.LecturerServiceImpl#getEmployeeIdsInvolvedInOrgUnitCourses
> >   dur[ms]: 1.596834     count: 1        net.struberg.myproject.core.
> > be.persons.PersonRemoteServiceImpl#getByEmployeeIdList
> >   dur[ms]: 0.892522     count: 51       net.struberg.myproject.core.
> > be.semester.SemesterRemoteServiceImpl#getCorrespondingSemesterCode
> >   dur[ms]: 0.288455     count: 5        net.struberg.myproject.util.
> > be.config.ConfigServiceImpl#getStringProperty
> >   dur[ms]: 0.248038     count: 3        net.struberg.myproject.core.
> > be.security.service.SecurityServiceImpl#isGranted
> >   dur[ms]: 0.203102     count: 18       net.struberg.myproject.core.
> > be.security.service.SecurityServiceImpl#isAuthenticated
> >
> >
> > The initial version requires an own property file. But of course all this
> > configuration could also be provided via DS-config.
> >
> > wdyt?
> > Worth moving over to DeltaSpike?
> >
> > LieGrue,
> > strub
> >
> >
> >
> > [1] https://github.com/struberg/interdyn
> >
> >
>

Reply via email to