---
schema_version: "1"
id: 283f91dcc1f6cfe55a4d5b49318ac70ae957213b4c79decd0cdeb0f8e4e3608a
title: Analyze Business and API Data Using ELK
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/private-cloud/3.2/ext-analytics-elk.md
canonical_url: https://docs.mulesoft.com/private-cloud/3.2/ext-analytics-elk
source_site: docs.mulesoft.com
content_type: documentation
content_hash: cdb8a7c59c8a6d76f9318d7f1358967cd20c18ea93321421f914397431b3aece
description: MuleSoft Documentation Site
release: "3.2"
latest: false
---
---
product: Anypoint Platform Private Cloud Edition
version: 3.2
---

# Analyze Business and API Data Using ELK

> For the full documentation index, see: https://docs.mulesoft.com/llms.txt

Use the Elastic Stack (ELK stack) to analyze the business data and API analytics generated by
Anypoint Platform Private Cloud Edition (Anypoint Platform PCE). You can use Filebeat to process
Anypoint Platform log files, insert them into an Elasticsearch database, and then analyze them with
Kibana.

The following example shows how API data appears in Kibana:

![kibana example](/mulesoft/current/en-us/private-cloud/3.2/_images/kibana-example.png)

## Prerequisites

- Required software

  To export external analytics data to ELK, you must have the following software:

  - Mule runtime engine (Mule), version 3.8.4 or later

  - Anypoint Runtime Manager agent, version 1.7.0 or later

  - Elasticsearch, version 7.6.2

  - Filebeat, version 7.6.2

  - Kibana, version 7.6.2

- Ensure that you have installed and configured your Mule runtime engine instances.

- Ensure that you have registered your Mule runtime engine instances with Runtime Manager.

## Edit the wrapper.conf Properties File

In your Mule runtime installation, edit the following properties in the `conf/wrapper.conf` file:

1.  Set the `analytics_enabled` property to `true`:

    wrapper.java.additional.<n>=-Danypoint.platform.analytics\_enabled=true

2.  Remove the URI value from the `analytics_base_uri` property:

    wrapper.java.additional.<n>=-Danypoint.platform.analytics\_base\_uri=

3.  Set the `on_prem` property to `true`:

    wrapper.java.additional.<n>=-Danypoint.platform.on\_prem=true

## Enable Event Tracking

To export business and event tracking data, you must enable event tracking in Runtime Manager:

1.  From Anypoint Platform, select **Runtime Manager**.

2.  Select **Servers**.

3.  Select the row containing the server on which you want to configure ELK.

4.  Select **Manager Server** and then select the **Plugins** tab.

5.  In **Event Tracking**, select **Business Events** from the **Levels** drop-down menu.

6.  Select the switch to enable event tracking on ELK.

    Runtime Manager displays the **ELK Integration** dialog.

7.  Configure the log files as necessary.

8.  Select **Apply**.

## Enable API Analytics

To export API analytics, you must enable API analytics in Runtime Manager.

1.  From Anypoint Platform, select **Runtime Manager**.

2.  Select **Servers**.

3.  Select the row containing the server on which you want to configure ELK.

4.  Select the switch to enable API analytics and then select the switch next to **ELK**.

5.  Configure the log files as necessary.

6.  Select **Apply**.

## Install and Configure the Filebeat Agent

On each server with Mule runtime instances, download and install Filebeat for your operating system.

## Configure the Mule Filebeat Module

On each server with Mule runtime instances, download and expand the Filebeat Module archive from the
following URL:

https://s3.us-east-2.amazonaws.com/elk-integration/elk-integration-06-08-20/elk-integration.tar.gz

1.  Add the absolute paths of each log file to the `manifest.yml` files:

    - Inside the `businessevents` folder, set the event log paths to the `var` variable of your
      operating system (OS):

      var:
      - name: paths default:
        - /var/mule/logs/events.log os.darwin:
        - /var/mule/logs/events.log os.windows:
        - /var/mule/logs/events.log

    - Inside the `apianalytics` folder, set the API analytics log paths to the `var` variable of
      your OS:

      var:
      - name: paths default:
        - /var/mule/logs/api-analytics-elk.log\* os.darwin:
        - /var/mule/logs/api-analytics-elk.log\* os.windows:
        - c:/programdata/mule/logs/api-analytics-elk.log\*

2.  Copy the `mule` module folder to the `module` folder of your Filebeat installation.

3.  Copy the `mule.yml` file to the `modules.d` folder of your Filebeat installation.

4.  Start Elasticsearch and then Kibana.

5.  Set up Filebeat and provision dashboards to Kibana.

    Inside your Filebeat installation folder, execute the following command. Replace the
    `${filebeat-installation-folder}` with the path to your Filebeat installation root folder, and
    change the Elasticsearch host if needed.

    ***

    /filebeat setup -e \\

    -E output.elasticsearch.hosts="\['localhost:9200'\]" \\ -E
    output.elasticsearch.index="mule-%{+yyyy.MM.dd}" \\ -E setup.dashboards.enabled=true \\ -E
    setup.dashboards.directory=${filebeat-installation-folder}/module/mule/\_meta/kibana \\ -E
    setup.ilm.enabled=false \\ -E setup.template.name="mule" \\ -E setup.template.pattern="mule-\*"
    \\ -E setup.template.overwrite=true
    ---

6.  Start Filebeat.

    Inside your Filebeat installation folder, execute the following command. Replace the
    `${filebeat-installation-folder}` with the path to your Filebeat installation root folder, and
    change the Elasticsearch host if needed.

    ./filebeat -e \\ -E output.elasticsearch.hosts="\['localhost:9200'\]" \\ -E
    output.elasticsearch.index="mule-%{+yyyy.MM.dd}" \\ -E setup.dashboards.enabled=true \\ -E
    setup.dashboards.directory=${filebeat-installation-folder}/module/mule/\_meta/kibana \\ -E
    setup.ilm.enabled=false \\ -E setup.template.name="mule" \\ -E setup.template.pattern="mule-\*"
    \\ -E setup.template.overwrite=true

## Configure Kibana to Load an Index

After installing Filebeat and Elasticsearch, you must configure Kibana to consume data from Anypoint
Platform.

MuleSoft provides a default Kibana configuration that you can use to analyze business and API data.
This configuration includes dashboards, searches, and visualizations.

1.  Configure an index pattern

    You must create an Elasticsearch index for Anypoint Platform data:

    1.  Generate an initial set of data.

        This is required for Kibana to be able to recognize the index to be created. To send a
        request to a test API to generate an initial set of data:

        1.  In the Kibana management console, create an index pattern with `mule-*` as the value.

        2.  Select **@timestamp** in **Time Filter field name**.

        3.  In **Show advanced options**, set **mule-index** as the value in the **Custom index
            pattern ID** field.

    2.  Create the index.

        You can now access all the Mule dashboards in the **Dashboard** tab.
