No need for gnome, ssh in with forwarding for a reasonable port (e.g. 27635) and use the JMX remote support (built into the JVM, nothing for you to write), you probably need to restart the server with the appropriate flags for this to work[1]. The run jVisualVM on your local box connecting to the local port you forwarded to the remote machine's port. [1] A possible set of options (note, this is NOT secure, reenable the security options before using in production!) is: -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=27635 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=the.public.ip The last option might be better set to the loopback address since you're using port forwarding to pull that via ssh back to your local box, but you'll have to experiment to see what works... Note also that JMX allows you to modify the running JVM as well as monitor, so make CERTAIN you secure the port and interfaces before using this on a public server, as any port knocking attack would open your entire process to arbitrary malicious interference. On 10/09/2013 05:47 PM, Vimal Shah wrote: > That makes sense and the script is writing itself! It seems that jmap and > jhat would be good to: > http://www.marcsturlese.com/2009/05/09/analyzing-java-heaps-with-jmap-and-jhat/ > > To get jvisualvm working, I'm assuming I need to put Gnome on the server > and then use putty with X-windows and forwarding enabled? If this is > correct, are there performance ramifications to adding Gnome? If not, any > references to how to do this? > > > On Wed, Oct 9, 2013 at 4:19 PM, James Mcphee wrote: > >> You can plot a graph during these times to see if it's spending a lot of >> time in garbage collection. Other options are to take jstack thread dumps >> and see what the app is up to at that time. >> >> My favorite way to fiddle is to plug VisualVM (replacement for jconsole) >> into the jvm and watch when issues are occuring. That uses JMX and you can >> monitor threads and mbeans. >> >> >> On Wed, Oct 9, 2013 at 4:13 PM, Vimal Shah wrote: >> >>> jstat works nicely now James. Thank you. I will try the various options >>> as well. >>> >>> A little more about the problem. Every 4-6 weeks the CPU util looks like: >>> >>> [image: Inline image 1] >>> >>> >>> The application slows and Alerts are emailed. The application is >>> restarted (in this case on 10/2 at 1:00). This allows the application to >>> return to normal responsiveness and allows the box itself to go back to 3% >>> CPU util. The ideal tool would be one that would help us understand this. >>> Can jstat be used to investigate this? Would a call trace and heap dump be >>> more useful as identification to the function that was called when this >>> error occurred? >>> >>> >>> >>> On Wed, Oct 9, 2013 at 3:25 PM, James Mcphee wrote: >>> >>>> For jstat, you have to be a user with permission to the process. In >>>> this case, either the user the java process is running as, or root. I use >>>> jstat when I want to script things to watch them on the console. >>>> >>>> For JMX, there are jvm arguments you can use to open it up to external >>>> hosts, provide authentication, etc. That will depend on the server you're >>>> running and you should consult the documentation for that server. >>>> >>>> >>>> On Wed, Oct 9, 2013 at 3:19 PM, Vimal Shah wrote: >>>> >>>>> James, >>>>> >>>>> What other details can I provide? >>>>> >>>>> It does sound like JMX is the standard. When running jstat with my JAVA >>>>> PID >>>>> >>>>> $ jstat -gc 19326 >>>>> Could not attach to 19326 >>>>> >>>>> I don't have JMX configured. After some reading it seems that I need to >>>>> get a Mbeans server running. Is this what I have to do? >>>>> >>>>> http://docs.oracle.com/javase/tutorial/jmx/mbeans/standard.html >>>>> >>>>> >>>>> On Wed, Oct 9, 2013 at 1:15 PM, James Mcphee wrote: >>>>> >>>>>> We'd need more details to give you much more than "Using JMX or jstat >>>>>> would be easiest" >>>>>> >>>>>> Example: >>>>>> ./jstat -gc 27104 >>>>>> S0C S1C S0U S1U EC EU OC OU >>>>>> PC PU YGC YGCT FGC FGCT GCT >>>>>> 20928.0 21312.0 0.0 4864.0 305728.0 128383.7 262656.0 223537.3 >>>>>> 170240.0 130738.6 295 6.912 10 8.268 15.180 >>>>>> >>>>>> http://docs.oracle.com/javase/1.5.0/docs/tooldocs/share/jstat.html >>>>>> >>>>>> >>>>>> On Wed, Oct 9, 2013 at 1:05 PM, Vimal Shah wrote: >>>>>> >>>>>>> Hello, >>>>>>> >>>>>>> Does anyone have a step by step guide to getting monitoring (heap >>>>>>> stack) set up of a Java app on an Amazon VPC box? The application is >>>>>>> smartfoxserver and it's on Ubuntu 12.04. >>>>>>> >>>>>>> I've scratched the surface on the following: >>>>>>> >>>>>>> - https://code.google.com/p/javamelody/ >>>>>>> - >>>>>>> http://docs.oracle.com/javase/6/docs/technotes/guides/management/jconsole.html >>>>>>> - http://jamonapi.sourceforge.net/ >>>>>>> >>>>>>> >>>>>>> Application code changes aren't within my reach at the moment. An >>>>>>> apt-get install of a monitoring tool on the server under question would be >>>>>>> ideal. If this tool can have low overhead even better. >>>>>>> >>>>>>> Thank you all in advance. >>>>>>> >>>>>>> -- >>>>>>> Vimal (rhymes with Kimmel) Shah >>>>>>> Front-End / Infrastructure Engineer >>>>>>> Sokikom >>>>>>> Mobile: (480) 752-9269 >>>>>>> Email: vimals@sokikom.com >>>>>>> Web: www.sokikom.com >>>>>>> >>>>>>> Follow us: twitter.com/sokikom >>>>>>> Like us: facebook.com/sokikom >>>>>>> >>>>>>> --------------------------------------------------- >>>>>>> PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org >>>>>>> To subscribe, unsubscribe, or to change your mail settings: >>>>>>> http://lists.phxlinux.org/mailman/listinfo/plug-discuss >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> James McPhee >>>>>> jmcphe@gmail.com >>>>>> >>>>>> --------------------------------------------------- >>>>>> PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org >>>>>> To subscribe, unsubscribe, or to change your mail settings: >>>>>> http://lists.phxlinux.org/mailman/listinfo/plug-discuss >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Vimal (rhymes with Kimmel) Shah >>>>> Front-End / Infrastructure Engineer >>>>> Sokikom >>>>> Mobile: (480) 752-9269 >>>>> Email: vimals@sokikom.com >>>>> Web: www.sokikom.com >>>>> >>>>> Follow us: twitter.com/sokikom >>>>> Like us: facebook.com/sokikom >>>>> >>>>> --------------------------------------------------- >>>>> PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org >>>>> To subscribe, unsubscribe, or to change your mail settings: >>>>> http://lists.phxlinux.org/mailman/listinfo/plug-discuss >>>>> >>>> >>>> >>>> >>>> -- >>>> James McPhee >>>> jmcphe@gmail.com >>>> >>>> --------------------------------------------------- >>>> PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org >>>> To subscribe, unsubscribe, or to change your mail settings: >>>> http://lists.phxlinux.org/mailman/listinfo/plug-discuss >>>> >>> >>> >>> >>> -- >>> Vimal (rhymes with Kimmel) Shah >>> Front-End / Infrastructure Engineer >>> Sokikom >>> Mobile: (480) 752-9269 >>> Email: vimals@sokikom.com >>> Web: www.sokikom.com >>> >>> Follow us: twitter.com/sokikom >>> Like us: facebook.com/sokikom >>> >>> --------------------------------------------------- >>> PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org >>> To subscribe, unsubscribe, or to change your mail settings: >>> http://lists.phxlinux.org/mailman/listinfo/plug-discuss >>> >> >> >> >> -- >> James McPhee >> jmcphe@gmail.com >> >> --------------------------------------------------- >> PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org >> To subscribe, unsubscribe, or to change your mail settings: >> http://lists.phxlinux.org/mailman/listinfo/plug-discuss >> > > > > > > --------------------------------------------------- > PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org > To subscribe, unsubscribe, or to change your mail settings: > http://lists.phxlinux.org/mailman/listinfo/plug-discuss >