inspectIT OCE - Easily Collect System and JVM Metrics Using the OpenCensus Standard
OpenCensus is a library that you can use to instrument your application, collect metrics and export them with any of several exporters that OpenCensus provides. The inspectIT OCE team is actively working on an open source Java agent that is implemented on top of OpenCensus. When using our agent you don’t need to manually instrument your application and change the source code in order to collect the performance data.
A few weeks ago we released version 0.1.M2 and celebrated the end of our second milestone. Our roadmap is long and there’s much more to come, but we want to brag right away about all the cool features we already have in place. This blog post provides only a short insight, so be sure to check out our official release documentation in order to get a complete picture on all features.
Adding the Agent to the JVM Is Easier Than Ever
Besides supporting the
-javaagent parameter to start a JVM with the inspectIT OCE agent, we introduced the possibility to attach the agent to already started JVMs. This means that you can add the agent and start collecting the metrics at any point in time. [Read more]
Prometheus Exporter Is Automatically Started
For us, zero-configuration really means that you don’t have to configure anything. The inspectIT OCE agent will automatically setup the Prometheus exporter for you and provide all collected metrics on the standard
/metrics endpoint. [Read more]
Metrics and Dashboards out-of-the-box
By default, the agent will provide metrics about:
- CPU (usage and number of cores)
- Disk Space (used and total)
- Memory (used and availalbe for various regions)
- Threads (counts and states)
- Garbage Collection (pause times and collection statistics)
- Class Loading (loaded and unloaded counts)
But that’s not all, you need a way to visualize those, right? That’s why we also provide Grafana dashboards that you can import in seconds. In addition, for each dashboard, we provide 3 versions that support different data sources – Prometheus, Elasticsearch and influxDB. You can freely choose where you want to store the collected data. [Read more]
Need to Configure? Do It as You Are Used To!
inspectIT OCE lets you externalize the configuration and influence every bit of its configuration if and when this is required. We admire the SpringBoot way of configuration, so we are using it internally. This means that you can configure the agent with Java system properties, OS environment variables and/or configuration files. Like you are used to. [Read more]
Change the Configuration During the Run-Time
Almost every configuration option supports run-time updates. Effectively, you will not need to restart your JVM in order to update the behavor of the inspectIT agent. Powerful stuff. [Read more]
Please Tell Me There Is a Demo I Can Start Quickly
Yes, there is! We provide not one, but three different demo scenarios using docker-compose. Each scenario includes the Spring PetClinic Microservices application monitored using inspectIT OCE agents, as well as complete infrastructure to collect, store and visualize metrics based on open source software. Everything is preconfigured and it’s only one
docker-compose command away from you. [Read more]
Stay tuned, because there is a lot more to come at the end of milestone #3, including instrumentation possibilities, automatic HTTP requests metrics collection, special support for thread switches, etc. Your feedback is always welcome, so get in touch with us and let us know what’s on your mind!