Out of the box, WebLogic Server generates a large set of metrics. Thousands of individual metrics are available to capture performance data, such as invocation counts, session activity, work manager threads, etc. These metrics are exposed by JMX and web services and are supported by Oracle’s administrative tools such as the WLS admin console and Enterprise Manager, as well as other 3rd party clients.
One of the most common 3rd party tools used by Oracle customers is called Prometheus. Several JMX exporters exist to scrape data and feed it to a Prometheus server. Once data is received by Prometheus, data can be retrieved with Prometheus itself or other tools that assist in processing data, such as Grafana. Using a JMX exporter, however, has many issues, including:
- Must run as a Java agent. JMX is built on top of RMI, something that has been discontinued as of Java SE 9, therefore the exporter used must be packaged with a platform-specific RMI implementation.
- JMX exporters are extremely processor intensive. A separate invocation of JMX must be used to obtain each Bean in a MBean tree.
- Can be extremely difficult to configure. JMX exporters rely on MBean names and regular expressions. Selecting a subset of MBean attributes is possible, but can become incredibly complex. Therefore, most customers usually just export everything and incur the costs, then apply filtering when the data is viewed.
WebLogic Monitoring Exporter:
WebLogic 12.2.1.x.x and later provides a RESTful Management Interface for accessing runtime states and metrics. Included in this interface is a powerful bulk access capability that allows a client to POST a query that describes exactly what information is desired and to retrieve a single response that includes only that information.
Oracle has created a tool called the WebLogic Monitoring Exporter, which takes advantage of the RESTful Management Interface. The exporter can either be run as a web application that is deployed to the WebLogic Server instance being monitored, or a separate process that is run alongside the server instance.
The WebLogic Monitoring Exporter proves much more practical to use than a JMX exporter for the following reasons…
- Easier to configure the desired metrics.
- Ability to scrape metrics in a single HTTP query rather than multiple JMX queries (Better performance).
- Ability to scrape from clustered WLS instances, so that metrics may be grabbed from multiple WebLogic instances.
- Metrics can be viewed directly from the web application deployed on top of WLS.
With the recent certification of WebCenter Content and Sites on Kubernetes, the WebLogic exporter tool simplifies and improves upon exporting metrics from Docker/Kubernetes environments.
Is your business looking to take advantage of Docker or Kubernetes-based WebCenter environments? Oftentimes, customers with large WebCenter infrastructure can reap massive benefits when upgrading their environments to containerized environments. Contact Inspired ECM today to learn how we can assist your organization.