---
title: Tibco EMS
description: Track queue size, consumer count, unacknowledged messages, and more.
breadcrumbs: Docs > Integrations > Tibco EMS
---

# Tibco EMS
Supported OS Integration version2.5.0
## Overview{% #overview %}

This check monitors [TIBCO Enterprise Message Service](https://docs.tibco.com/products/tibco-enterprise-message-service) through the Datadog Agent.

**Minimum Agent version:** 7.57.0

## Setup{% #setup %}

Follow the instructions below to install and configure this check for an Agent running on a host. For containerized environments, see the [Autodiscovery Integration Templates](https://docs.datadoghq.com/agent/kubernetes/integrations.md) for guidance on applying these instructions.

### Installation{% #installation %}

The TIBCO EMS check is included in the [Datadog Agent](https://app.datadoghq.com/account/settings/agent/latest) package. No additional installation is needed on your server.

### Configuration{% #configuration %}

1. Edit the `tibco_ems.d/conf.yaml` file, in the `conf.d/` folder at the root of your Agent's configuration directory to start collecting your TIBCO EMS performance data. See the [sample tibco_ems.d/conf.yaml](https://github.com/DataDog/integrations-core/blob/master/tibco_ems/datadog_checks/tibco_ems/data/conf.yaml.example) for all available configuration options.

1. [Restart the Agent](https://docs.datadoghq.com/agent/guide/agent-commands.md#start-stop-and-restart-the-agent).

#### Metric collection{% #metric-collection %}

##### Create your Tibco EMS command script{% #create-your-tibco-ems-command-script %}

The Tibco EMS integration utilizes the `tibemsadmin` CLI tool provided by Tibco EMS. To reduce the number of calls to the `$sys.admin` queue, Datadog uses a script to batch the queries made to Tibco. To collect your Tibco EMS metrics, pass the script path and the absolute path of the `tibemsadmin` binary to the integration configuration.

*Note*: The `dd-agent` user needs execute permissions on the `tibemsadmin` binary.

1. Create a file named `show_commands` with the following contents:

```text
    show connections full
    show durables
    show queues
    show server
    show stat consumers
    show stat producers
    show topics
```
Add this configuration block to your `tibco_ems.d/conf.yaml` file to start gathering Tibco EMS metrics:
```yaml
init_config:
instances:
    ## @param script_path - string - optional
    ## The path to the script that will be executed to collect metrics. Since the script is executed by a subprocess,
    ## we need to know the path to the script. This must be the absolute path to the script.
    #
    script_path: <SCRIPT_PATH>

    ## @param tibemsadmin - string - optional
    ## The command or path to tibemsadmin (for example /usr/bin/tibemsadmin or docker exec <container> tibemsadmin)
    ## , which can be overwritten on an instance.
    ##
    ## This overrides `tibemsadmin` defined in `init_config`.
    #
    tibemsadmin: <TIBEMSADMIN>
```
[Restart the Agent](https://docs.datadoghq.com/agent/guide/agent-commands.md#start-stop-and-restart-the-agent) to begin sending Tibco EMS metrics to Datadog.
#### Log collection{% #log-collection %}

*Available for Agent versions >6.0*

1. Collecting logs is disabled by default in the Datadog Agent. Enable logs in your `datadog.yaml` file:

   ```yaml
   logs_enabled: true
   ```

1. Add this configuration block to your `tibco_ems.d/conf.yaml` file to start collecting your Tibco EMS logs:

   ```yaml
   logs:
     - type: file
       path: <PATH_TO_LOG_FILE>
       service: <MY_SERVICE>
       source: tibco_ems
   ```

Change the `service` and `path` parameter values and configure them for your environment. See the [sample tibco_ems.yaml](https://github.com/DataDog/integrations-core/blob/master/tibco_ems/datadog_checks/tibco_ems/data/conf.yaml.example) for all available configuration options.

1. [Restart the Agent](https://docs.datadoghq.com/agent/guide/agent-commands.md#start-stop-and-restart-the-agent).

### Validation{% #validation %}

[Run the Agent's status subcommand](https://docs.datadoghq.com/agent/guide/agent-commands.md#agent-status-and-information) and look for `tibco_ems` under the Checks section.

## Data Collected{% #data-collected %}

### Metrics{% #metrics %}

|  |
|  |
| **tibco\_ems.connection.consumers**(gauge)                       | The number of consumers on the connection.                                                  |
| **tibco\_ems.connection.producers**(gauge)                       | The number of producers on the connectio.                                                   |
| **tibco\_ems.connection.sessions**(gauge)                        | The number of sessions on the connection.                                                   |
| **tibco\_ems.connection.temporary\_queues**(gauge)               | The number of temporary queues created by the connection.                                   |
| **tibco\_ems.connection.temporary\_topics**(gauge)               | The number of temporary topics created by the connection.                                   |
| **tibco\_ems.connection.uncommitted\_transactions**(gauge)       | The number of messages in uncommitted transactions on the connection.                       |
| **tibco\_ems.connection.uncommitted\_transactions\_size**(gauge) | The combined size of messages in uncommitted transactions on the connection.*Shown as byte* |
| **tibco\_ems.consumer.messages\_rate**(gauge)                    | The rate, per second, at which messages are being consumed.                                 |
| **tibco\_ems.consumer.messages\_rate\_size**(gauge)              | The rate, per second, at which the size of messages is being consumed.*Shown as byte*       |
| **tibco\_ems.consumer.total\_messages**(gauge)                   | The total number of messages consumed by the consumer.                                      |
| **tibco\_ems.consumer.total\_messages\_size**(gauge)             | The total size of messages consumed by the consumer.*Shown as byte*                         |
| **tibco\_ems.durable.pending\_messages**(gauge)                  | The number of pending messages on the durable.                                              |
| **tibco\_ems.durable.pending\_messages\_size**(gauge)            | The total size of pending messages on the durable.*Shown as byte*                           |
| **tibco\_ems.producer.messages\_rate**(gauge)                    | The rate, per second, at which messages are being produced.                                 |
| **tibco\_ems.producer.messages\_rate\_size**(gauge)              | The rate, per second, at which the size of messages is being produced.*Shown as byte*       |
| **tibco\_ems.producer.total\_messages**(gauge)                   | The total number of messages produced by the producer.                                      |
| **tibco\_ems.producer.total\_messages\_size**(gauge)             | The total size of messages produced by the producer.*Shown as byte*                         |
| **tibco\_ems.queue.pending\_messages**(gauge)                    | The number of pending messages on the queue.                                                |
| **tibco\_ems.queue.pending\_messages\_size**(gauge)              | The total size of pending messages on the queue.*Shown as byte*                             |
| **tibco\_ems.queue.pending\_persistent\_messages**(gauge)        | The total number of pending persistent messages on the queue.                               |
| **tibco\_ems.queue.pending\_persistent\_messages\_size**(gauge)  | The total size of pending persistent messages on the queue.*Shown as byte*                  |
| **tibco\_ems.queue.receivers**(gauge)                            | The number of currently active receivers                                                    |
| **tibco\_ems.server.admin\_connections**(gauge)                  | The number of admin connections on the server.                                              |
| **tibco\_ems.server.asynchronous\_storage**(gauge)               | The amount of storage used for asynchronous message storage.                                |
| **tibco\_ems.server.client\_connections**(gauge)                 | The number of client connectons on the server.                                              |
| **tibco\_ems.server.consumers**(gauge)                           | The number of message consumers on the server.                                              |
| **tibco\_ems.server.durables**(gauge)                            | The number of durables on the server.                                                       |
| **tibco\_ems.server.inbound\_message\_rate**(gauge)              | The rate of total inbound messages.                                                         |
| **tibco\_ems.server.inbound\_message\_rate\_size**(gauge)        | The size of the rate of total inbound messages.*Shown as byte*                              |
| **tibco\_ems.server.message\_memory\_pooled**(gauge)             | The amount of memory pooled for message storage.                                            |
| **tibco\_ems.server.outbound\_message\_rate**(gauge)             | The rate of outbound messages on the server.                                                |
| **tibco\_ems.server.outbound\_message\_rate\_size**(gauge)       | The size of the rate of outbound messages on the server*Shown as byte*                      |
| **tibco\_ems.server.pending\_message\_size**(gauge)              | The total size of messages pending delivery.*Shown as byte*                                 |
| **tibco\_ems.server.pending\_messages**(gauge)                   | The total number of messages pending delivery.                                              |
| **tibco\_ems.server.producers**(gauge)                           | The number of message producers on the server.                                              |
| **tibco\_ems.server.queues**(gauge)                              | The total number of queues, including the count of dynamic and temporary topics.            |
| **tibco\_ems.server.sessions**(gauge)                            | The number of sessions currently active on the server.                                      |
| **tibco\_ems.server.storage\_read\_rate**(gauge)                 | The number of storage reads on the server                                                   |
| **tibco\_ems.server.storage\_read\_rate\_size**(gauge)           | The size of the rate of storage reads on the server*Shown as byte*                          |
| **tibco\_ems.server.storage\_write\_rate**(gauge)                | The number of storage writes on the server                                                  |
| **tibco\_ems.server.storage\_write\_rate\_size**(gauge)          | The size of the rate of storage writes on the server.*Shown as byte*                        |
| **tibco\_ems.server.synchronous\_storage**(gauge)                | The amount of storage used for synchronous message storage.                                 |
| **tibco\_ems.server.topics**(gauge)                              | The total number of topics, including the count of dynamic and temporary topics.            |
| **tibco\_ems.server.uptime**(gauge)                              | The total time the server has been running since it was last started.*Shown as second*      |
| **tibco\_ems.topic.durable\_subscriptions**(gauge)               | The number of current subscriptions on the topic, including durable subscriptions.          |
| **tibco\_ems.topic.pending\_messages**(gauge)                    | The number of pending messages on the topic.                                                |
| **tibco\_ems.topic.pending\_messages\_size**(gauge)              | The total size of pending messages on the topic.*Shown as byte*                             |
| **tibco\_ems.topic.pending\_persistent\_messages**(gauge)        | The number of pending persistent messages on the topic.                                     |
| **tibco\_ems.topic.pending\_persistent\_messages\_size**(gauge)  | The total size of pending persistent messages on the topic.*Shown as byte*                  |
| **tibco\_ems.topic.subsciptions**(gauge)                         | The number of durable subscriptions on the topic.                                           |

### Events{% #events %}

The TIBCO EMS integration does not include any events.

### Service Checks{% #service-checks %}

The TIBCO EMS integration does not include any service checks.

## Troubleshooting{% #troubleshooting %}

Need help? Contact [Datadog support](https://docs.datadoghq.com/help/).
