Analyzing Java Applications Using Thermostat (Omair Majid)
-
Upload
red-hat-developers -
Category
Software
-
view
180 -
download
0
Transcript of Analyzing Java Applications Using Thermostat (Omair Majid)
Analyzing Java Applications Using Thermostat
Omair Majid
Agenda
● Performance
● Thermostat
● Demos
● Plugins
● Getting Involved
What Do You Care About?
Performance - Host
● What information do I care about?
– OS
– CPU
– Memory
– IO
Performance JVM● What JVM information do I care about?
– CPU Usage
– Memory Regions
– Garbage Collection
– Loaded Classes
– JMX Notifications
– JIT Compilation Time
– I/O Calls
– Threads
JVM Actions
● What can I ask the JVM to do?
– Heap Dumps
– Invoke Garbage Collector
– Deadlock Detection
– Inject Custom Code
Too many things!
Thermostat
● Serviceability and Monitoring for OpenJDK
● Multiple Hosts/JVMs
● Plug-in Architecture
● Command Line & GUI
● Open Source
Thermostat
$ thermostat local
$ thermostat web-storage-service
$ thermostat shell
Thermostat
Demo
Components
Components
Components
Components
Components
Components
New Features
● Heap Tree Map
● Profiling
● Setup
● Tab Completion
● I/O Metrics
● New GC Details
● Security Improvements
Demo
Plugins
● Customize Agent and/or Client
– Collect, Record, Analyze your own metrics
– Integrate your own tools
● Most Built-in Functionality are Plugins
● Loaded using OSGi
● Documented & Stable API
http://icedtea.classpath.org/thermostat/docs/1.4/javadocs/
Demo
Release History
Initial ReleaseMay 2012
Version 1.0November 2013
Version 1.2December 2014
Version 1.4November 2015
Development
● Adhering to standard API versioning
● API breaking changes Thermostat 2.0→
● Non-breaking changes Thermostat 1.6→
● Bug fixes Thermostat 1.4.x→
Future Tasks
● Byteman Integration
● Platform API
● Integration with more tools
● Security Improvements
Try Us
● Red Hat Enterprise Linux 6 and 7
– Red Hat Software Collections (1.1+, 2.0+)
yum install thermostat1-thermostat
● Fedora 21+
yum install thermostat
● Source Releases
http://icedtea.classpath.org/download/thermostat/
Contributing● Potential Tasks
– New Metrics
– Porting to other architectures or operating systems
– New Clients (Web, Mobile, Eclipse?)
● Mailing List
http://icedtea.classpath.org/mailman/listinfo/thermostat
● IRC
#thermostat on freenode
Don't Miss
● Monitoring application-specific behavior using Thermostat and Byteman
– Presented by Andrew Dinn, creator of Byteman
– Wednesday 11:30 a.m. to 12:30 p.m.
– Room 132
+
Thank you
http://icedtea.classpath.org/thermostat