[Logo] Thermostat

Thermostat: Serviceability and Monitoring for OpenJDK

Thermostat is an instrumentation tool for the Hotspot JVM, with support for monitoring multiple JVM instances on multiple hosts, optionally in a cloud environment. The name Thermostat is intended as a play on words: Thermostat is to Hotspot much as IcedTea is to Java.

Examine memory regions and their sizes
Visualize thread states
Dump, browse and search the Java heap
See garbage collections


  • Local and remote monitoring (threads, numa, heap-analysis, garbage collection, etc.)
  • Records and visualizes both high level (uptime, cpu and memory usage) and low level (HotSpot's perf) data
  • Designed to work well against OpenJDK and IcedTea
  • Stand-alone Swing GUI client
  • Web layer for increased security
  • Command line interface client
  • Usable in production environment, with minimal overhead

Basic System Requirements

  • OpenJDK >= 1.7
  • Mongodb >= 2.2 (or 2.0 if no SSL required)
  • Servlet container (optional)


The latest stable version is Thermostat 1.4.0 (md5). Please see the User Guide to get started and send us email if you have any trouble installing/using Thermostat — we'd be happy to help you out.

Other Downloads 

You can also download pre-release versions to try out newer features in advance. Please note that these may contain significant bugs.

Historical archives of all releases are also available.

Staying in Touch

Want the latest Thermostat news? It's available several ways: Feel free to subscribe to the Thermostat development mailing list or join us on IRC in #thermostat on freenode.net

Helping Out

Found a bug? Please report it in our bugzilla. Want a feature? Please email us at our mailing list.


Thermostat is made available under GPLv2+ with classpath exception.