Also suggested dynamic interceptors some years ago - so +1. Just not sure
if properties is the best way.
Maybe we should think about if we should someday introduce something like a
deltaspike xml config. Not sure.

2018-02-09 11:34 GMT+01:00 Gerhard Petracek <gpetra...@apache.org>:

> 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