Backstory: We have monitoring configured on our JIRA instance that monitors memory (heap commited, used, code cache size, amount used etc), disk space, read/write speed, threads allocated / used, we monitor cpu usage overall and on a per core basis, etc.
Ask: The one item I really feel is missing, the one that I want to monitor most of all is individual plugin performance.
Does anyone know of a way to dive deeper to get stats on what each plugin in JIRA is taking away (CPU, memory, threads)?
One thing that comes to my mind is get thread dumps + CPU information and check the percentage of CPU a given thread is using. You can do this with the following command: ps -Lo pcpu,pid,lwp -p 15503 (where 15503 is the proccess id).
Then you can map the thread that refers to the classes of a given plugin and compare with the CPU info.
The secret is that you need to convert the nid from the threads and convert to decimal. Example:
"ajp-bio-8085-exec-835" daemon prio=10 tid=0x000000001f1ac000 nid=0x3471 runnable [0x00000000658a9000] java.lang.Thread.State: RUNNABLE
nid=0x3471 is 13425, which can be used against the CPU information:
$ grep 13425 jira-cpu-usage-09_1* %CPU PID LWP 15.2 17314 13425
I hope it helps.
Connect with like-minded Atlassian users at free events near you!Find a group
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no AUG chapters near you at the moment.Start an AUG
We're bringing product updates and pro tips on teamwork to ten cities around the world.Save your spot