Bryn,
without JMX, straight and simple console output and thread-dump based… that's what the
monitor-sample tool was doing, it has a potential to answer the back-end of that (e.g.
DB-queries). In particular, it is the only one that can express the query being hanging
and this is exactly what was needed for us.
JMX is a simple way to communicate to the internals of the java process. Standard things
are typically delivered with JMX (e.g. the heap size).
On 1 nov. 2014, at 20:15, Bryn Jeffries <bryn.jeffries(a)sydney.edu.au> wrote:
Many thanks for your contribution. I'll certainly
look into Zabbix, although I must confess to being aghast at what appears to be a large
and complex tool for what I'd hoped was quite simple. I hadn't realised these
servers were so temperamental. Before I loose myself in getting acquainted with a new
sophisticated product, could you tell me whether Zabbix (or something else) will help me
identify the following?:
- When are users suffering timeouts (doesn't have to be real time, happy to check
summary later)
Yes, you'd get that with the tomcat connection time or apache workers.
- Where was the timeout occuring (network, Apache,
Tomcat, Postgres)
That's a tick more delicate since one timeout creates others...
- What was the cause of the timeout (too many
connections, low memory, long Java operation, long query, etc)
You really can't disambiguate this so clearly.
But you can see the amount of connections the heap memory or the amount of active threads
with JMX. That helps you in this direction, I think.
- What specific item (Java program, DB query) was
responsible
I wonder whether all this should be discoverable in the logs, with the right
configuration.
The DB query I could only get with the combined log monitor… but if you can get warned by
zabbix, then you can run a "get full processlist" from mysql.
FWIW, the combined monitor is at
https://github.com/xwiki-contrib/xwiki-clams-core/tree/master/tools/appserv… but
it is likely to be very specific to our installation (e.g. it requires key-based ssh).
I've seen a lot of mention of JMX for Tomcat
monitoring, but I've shied away from it since I wanted to start simple, but perhaps
there is no simple ... ;-(
Typically, this gets you measures for free… some of which can really be useful.
paul