In a previous blogpost (https://dirknachbar.blogspot.com/2020/02/weblogic-monitoring-with-prometheus-and.html) I was already talking about the Oracle WebLogic Monitoring Exporter, which is generating Prometheus conform metrics out of the Oracle WebLogic Server 12.2.x.
In the WebLogic Monitoring Exporter release 1.1.1 was a small issue with the option "domainQualifier: true". This option was causing, that a non Prometheus conform metric was generated and therefor your Prometheus Server couldn't capture the metrics.
With the actual release 1.1.2 of the WebLogic Monitoring Exporter this issue is fixed, many thanks to the Development Team behind the WebLogic Monitoring Exporter.
So, what you will need, is a running WebLogic Server 14.1.1.0.0 domain, download the get1.1.2.sh file from https://github.com/oracle/weblogic-monitoring-exporter/releases and create a YAML file for the to be generated metrics:
#
$ cat exporter-config.yml
metricsNameSnakeCase: true
domainQualifier: true
queries:
- key: name
keyName: location
prefix: wls_server_
applicationRuntimes:
key: name
keyName: app
componentRuntimes:
prefix: wls_webapp_config_
type: WebAppComponentRuntime
key: name
values: [deploymentState, contextRoot, sourceInfo, sessionsOpenedTotalCount, openSessionsCurrentCount, openSessionsHighCount]
servlets:
prefix: wls_servlet_
key: servletName
- JVMRuntime:
prefix: wls_jvm_
key: name
- executeQueueRuntimes:
prefix: wls_socketmuxer_
key: name
values: [pendingRequestCurrentCount]
- workManagerRuntimes:
prefix: wls_workmanager_
key: name
values: [stuckThreadCount, pendingRequests, completedRequests]
- threadPoolRuntime:
prefix: wls_threadpool_
key: name
values: [executeThreadTotalCount, queueLength, stuckThreadCount, hoggingThreadCount]
- JMSRuntime:
key: name
keyName: jmsruntime
prefix: wls_jmsruntime_
JMSServers:
prefix: wls_jms_
key: name
keyName: jmsserver
destinations:
prefix: wls_jms_dest_
key: name
keyName: destination
- persistentStoreRuntimes:
prefix: wls_persistentstore_
key: name
- JDBCServiceRuntime:
JDBCDataSourceRuntimeMBeans:
prefix: wls_datasource_
key: name
- JTARuntime:
prefix: wls_jta_
key: name
Place the get1.1.2.sh and the YAML file in one directory and execute from your Shell following command, which will add your YAML file into the wls-exporter.war file.
#
$ ls -la
-rw-r--r-- 1 oracle oinstall 1401 Apr 2 11:46 exporter-config.yml
-rwxr-xr-x@ 1 oracle oinstall 373 Apr 2 11:43 get1.1.2.sh
$ ./get1.1.2.sh exporter-config.yml
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 607 100 607 0 0 1568 0 --:--:-- --:--:-- --:--:-- 1564
100 2018k 100 2018k 0 0 937k 0 0:00:02 0:00:02 --:--:-- 2009k
created /var/folders/b_/ldw8b91n7h7dp58hd3xf2qmc0000gn/T/ci-XXXXXXXXXX.EUmQ8eka
/var/folders/b_/ldw8b91n7h7dp58hd3xf2qmc0000gn/T/ci-XXXXXXXXXX.EUmQ8eka ~/Downloads/test
in temp dir
updating: config.yml
zip warning: Local Entry CRC does not match CD: config.yml
(deflated 64%)
~/Downloads/test
$ ls -la wls-exporter.war
-rw-r--r-- 1 oracle oinstall 2066869 Apr 2 11:47 wls-exporter.war
Now, just deploy the newly generated war file wls-exporter.war on your WebLogic 14.1.1.0.0 domain, start the webapp and you can access the metrics over the URL http://<Your Servername>:<Port of Managed Server or AdminServer>/wls-exporter/metrics
Snippet from an AdminServer
Snippet from a Managed Server
How to integrate the metrics from your WebLogic Server 14.1.1.0.0 into your Prometheus, just have a look on my previous blogpost "Weblogic Monitoring with Prometheus and Grafana" https://dirknachbar.blogspot.com/2020/02/weblogic-monitoring-with-prometheus-and.html. The method remains the same as for Oracle WebLogic Server 12.2.x
