Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets...
Transcript of Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets...
![Page 1: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/1.jpg)
Monitoring Java Applications using Thermostat
Lets find out what your application is really doing
Omair [email protected] Software Engineer @ Red Hat2017-05-04
![Page 2: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/2.jpg)
Agenda
● Performance
● Thermostat
● Plugins
● New Features
● Next Steps
![Page 3: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/3.jpg)
What Matters To You?
![Page 4: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/4.jpg)
Performance - Host
What information do I care about?
● OS
● CPU
● Memory
● IO
![Page 5: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/5.jpg)
Performance - JVM
What JVM information do I care about?
● CPU Usage
● Memory
● Garbage Collection
● Classes
● JIT behaviour
● IO Calls
● Threads
![Page 6: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/6.jpg)
Performance – Modify the JVM
What JVM information do I care about?
● Heap Dumps
● Invoke Garbage Collector
● Detect Deadlocks
● Inject custom code for on-demand instrumentation
![Page 7: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/7.jpg)
Too Many Things
![Page 8: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/8.jpg)
Thermostat
● Serviceability and Monitoring for OpenJDK
![Page 9: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/9.jpg)
Thermostat
● Single Machine
● Multiple Hosts/JVMs
![Page 10: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/10.jpg)
Thermostat
● Up and down the stack
![Page 11: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/11.jpg)
Thermostat
● Historical Information
![Page 12: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/12.jpg)
Thermostat
● Command Line & GUI
![Page 13: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/13.jpg)
Thermostat
● Open Source
● Same license as OpenJDK
![Page 14: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/14.jpg)
Usage
$ thermostat local
$ thermostat web-storage-service$ thermostat shell
![Page 15: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/15.jpg)
![Page 16: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/16.jpg)
Demo
![Page 17: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/17.jpg)
![Page 18: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/18.jpg)
![Page 19: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/19.jpg)
![Page 20: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/20.jpg)
![Page 21: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/21.jpg)
![Page 22: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/22.jpg)
![Page 23: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/23.jpg)
Plugins
![Page 24: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/24.jpg)
Plugins
● Customize Agent and/or Client
● Collect, Record, Analyze your own metrics
● Integrate your own tools
● Most built in functionality is actually plugins
● Documented API
![Page 25: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/25.jpg)
New Features
![Page 26: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/26.jpg)
New Features
● Byteman UI
● “Monitoring Application-Specific Behavior Using Thermostat And Byteman”
● https://youtu.be/teL7qnulUTM
![Page 27: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/27.jpg)
New Features
● Stack Trace Profiler
![Page 28: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/28.jpg)
New Features
● Shenandoah
![Page 29: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/29.jpg)
New Features
● Automatically Identifying (Some) Problems
![Page 30: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/30.jpg)
New Features
● Windows port in progress
![Page 31: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/31.jpg)
Next Steps
![Page 32: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/32.jpg)
Release History
Initial ReleaseMay 2012
Version 1.0November 2013
Version 1.2December 2014
Version 1.4November 2015
Version 1.6July 2016
![Page 33: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/33.jpg)
Development
● Adhering to standard API versioning
● API breaking changes → Thermostat 2.0 / NG
● Non-breaking changes/bugfixes → Thermostat 1.6
![Page 34: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/34.jpg)
Future Tasks
● Integration with more tools
● More automated learning/detection
![Page 35: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/35.jpg)
Cloud/Microservices
![Page 36: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/36.jpg)
Try It!
Red Hat Enterprise Linux 6 and 7
Red Hat Software Collections
yum install thermostat16-thermostat
Fedora 21+
yum install thermostat
Sources
http://icedtea.classpath.org/download/thermostat/
![Page 37: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/37.jpg)
Contributing
Starting point: http://icedtea.classpath.org/thermostat
● Mailing lists
● IRC
● Bug tracker
● Features
● Report Bugs
● Code
![Page 38: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/38.jpg)
Summary
● Why Thermostat
● Thermostat: What & How
● Plugins
● New Features
● Next Steps
http://icedtea.classpath.org/thermostat/
![Page 39: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/39.jpg)
THANK YOUplus.google.com/+RedHat
linkedin.com/company/red-hat
youtube.com/user/RedHatVideos
facebook.com/redhatinc
twitter.com/RedHatNews
![Page 40: Monitoring Java Applications using Thermostat...Monitoring Java Applications using Thermostat Lets find out what your application is really doing Omair Majid omajid@redhat.com Senior](https://reader033.fdocuments.us/reader033/viewer/2022042805/5f668e57ad6a4643724fe7d8/html5/thumbnails/40.jpg)