On Tue, Apr 15, 2014 at 3:59 PM, Christopher Schultz <
ch...@christopherschultz.net> wrote:

>
>
> Can you afford to wait for the request to complete (late), or do you
> need to know immediately when a request is taking too long?
>

My reasoning for measuring the long-running requests at a given period of
time is so that you can co-relate it to other metrics at that given time.
In my homegrown dashboard, I would graph the values returned alongside CPU,
thread-use, Heap-size, connection-pool size etc.  And then try to locate a
signature of the problem.  So just requests that have been inflight for the
last "n" seconds at a given period of time would help.  Or again, late
requests, like you mention might work too.  So at a given time, which
requests completed late.

Some of the tools out there have this troubleshooting down to a science and
it makes life so easy for all parties!


> In either case, this type of thing can be done easily with a filter.
> Whether you use JMX or not to report the condition is up to you.
>
> > Similarly, how many times a servlet is invoked in a given time
> > period would count as concurrent invocations.  Intervals used for
> > the reckoning here may be shorter - like 5 seconds - to make it
> > more meaningful for concurrency values.
>
> Again, Filters are your friends. Feel free to publish the information
> via JMX as well. My presentation contains all the information you need
> for the JMX stuff. Everything else is pure Java.
>
>
> Yes, I plan to explore that more.

Thanks again,

                      -Shanti

Reply via email to