Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

How to Monitor the AdroitLogic ESB (UltraESB-X) With Kibana

DZone's Guide to

How to Monitor the AdroitLogic ESB (UltraESB-X) With Kibana

UltraESB-X can be used to publish metrics to Elasticsearch, and it can be monitored using Kibana. You can set this up in just six steps.

Free Resource

Evolve your approach to Application Performance Monitoring by adopting five best practices that are outlined and explored in this e-book, brought to you in partnership with BMC.

AdroitLogic Enterprise Service Bus (UltraESB-X) publishes metrics to the distributed RESTful search and analytics engine Elasticsearch. We can use the open-source visualization tool Kibana for monitoring purposes.

In this blog post, we will go through the steps to set up UltraESB-X monitoring with Kibana.

1. Install Kibana and Elasticsearch

The current UltraESB-X release, v17.01, uses Elasticsearch v5.1.1. I am going to assume that you have downloaded and familiarized yourself with UltraESB. If not, please go over to our developer portal to have a quick look. Let’s first download and install Kibana and Elasticsearch from the following links:

Also, check out the Elasticsearch Installation Guide and the Kibana Installation Guide.

2. Install X-Pack to Kibana and Elasticsearch

X-Pack is an Elastic Stack extension that bundles security, alerting, monitoring, reporting, and graphing capabilities. Follow this guide for X-Pack installation for both Elasticsearch and Kibana. Note that this extension comes as a 30-day trial.

3. Change UltraESB-X Metrics Configuration

UE-X by default is configured to publish to an embedded Elasticsearch server. However, it is recommended to use a standalone Elasticsearch server in production. Therefore, in this case, we will change the metrics configuration to publish to a standalone ES server. The metrics configuration is in the XML file in UltraESB-X_HOME/conf/metrics/metrics.xml.

There, comment the bean:

<bean id="es-server" class="org.adroitlogic.x.metrics.EmbeddedElasticsearchServer"/>

And uncomment the bean:

<bean id="es-server" class="org.adroitlogic.x.metrics.ExternalElasticsearchServer">
<constructor-arg>
<map>
<entry key="localhost" value="9300"/>
</map>
</constructor-arg>
<constructor-arg value="elasticsearch" type="java.lang.String"/>
</bean>

Also, for this case, we’ll disable the stats expiration. Change the rollover configuration section in the es-publisher bean as follows.

<!--RollOver Configuration-->
<property name="indexRollOverEnabled" value="false"/>
<property name="maxDocs" value="1000"/>
<property name="maxAgeInMinutes" value="15"/>
<property name="rollOverTimePeriodInMinutes" value="10"/>
<property name="deleteOldestIndexAfterRollOver" value="false"/>
<property name="deleteInactiveIndicesAtInit" value="false"/>
<property name="deleteInactiveIndicesAtDestroy" value="false"/>

The final updated configuration is in the metrics.xml file.

4. Start Elasticsearch, UltraESB-X, and Kibana

Start Elasticsearch by running the elasticsearch script in the ES_HOME/bin directory. Start Kibana by running the kibana script in the KIBANA_HOME/bin directory. Then, start UltraESB-X. Kibana by default runs at http://localhost:5601. The default credentials will be elastic/changeme.

Note: X-Pack comes with a security extension. You can disable it by adding xpack.security.enabled: false to the elasticsearch.yml file in the ES_HOME/conf directory. When the security extension is disabled, login will not be required.

5. Add Index Template to Kibana

In Kibana, we first need to add the index templates that we are interested in. To do that, let’s go to the Management tab in the left pane and add an index template pattern ultraesb_x*.Once the index pattern is entered, Kibana will automatically pick the time-field name as recordTime, as shown below.

Adding_index_template_ultraesb_x

6. Visualizations

Now, we can add visualizations. In order to add visualizations, it is better to have an understanding of the ultraesb_x index mapping first. Elasticsearch mapping is used in the full-mapping.json file.

Now, let’s add a line chart for received messages. Go to the Visualizations tab in the left pane and add a line chart by selecting Line Chart and the ultraesb_x-* index pattern.

selecting_pattern_ultraesb_x

Configure the x-axis as shown below:

configure_x

Configure the y-axis as follows:

configure_y

Finally, we can apply the changes using the Play button. There you go; your first visualization is a success!

final_line_chart

Finally, note that we can pick the time ranges from the top right button.

From: https://notebookbft.wordpress.com/2017/03/14/ultraesb-x-monitoring-with-kibana/

Learn tips and best practices for optimizing your capacity management strategy with the Market Guide for Capacity Management, brought to you in partnership with BMC.

Topics:
esb ,kibana ,monitoring ,integration ,elastricsearch ,tutorial

Published at DZone with permission of Rajind Ruparathna. See the original article here.

Opinions expressed by DZone contributors are their own.

THE DZONE NEWSLETTER

Dev Resources & Solutions Straight to Your Inbox

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

X

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}