---
title: HikariCP
description: HikariCP integration with openmetrics v2
breadcrumbs: Docs > Integrations > HikariCP
---

# HikariCP
Supported OS Integration version1.2.1
## Overview{% #overview %}

[HikariCP](https://github.com/brettwooldridge/HikariCP) is a lightweight and fast JDBC connection pooling framework. This check monitors HikariCP through the Datadog Agent.

## Setup{% #setup %}

### Installation{% #installation %}

To install the HikariCP check on your host:

1. Install the [developer toolkit](https://docs.datadoghq.com/developers/integrations/python/) on any machine.

1. Clone the [integrations-extras](https://github.com/DataDog/integrations-extras) repo and navigate into the directory.

1. Run `ddev release build hikaricp` to build the package.

1. [Download the Datadog Agent](https://app.datadoghq.com/account/settings/agent/latest).

1. Upload the build artifact to any host with an Agent and run `datadog-agent integration install -w path/to/hikaricp/dist/<ARTIFACT_NAME>.whl`.

### Configuration{% #configuration %}

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

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

### Validation{% #validation %}

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

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

### Metrics{% #metrics %}

|  |
|  |
| **hikaricp.connections**(gauge)                          | Number of connections                                      |
| **hikaricp.connections.timeout.count**(count)            | Total number of timeout connections                        |
| **hikaricp.connections.active**(gauge)                   | Number of active connections                               |
| **hikaricp.connections.idle**(gauge)                     | Number of idle connections                                 |
| **hikaricp.connections.max**(gauge)                      | Max number of connections*Shown as connection*             |
| **hikaricp.connections.min**(gauge)                      | Min number of connections*Shown as connection*             |
| **hikaricp.connections.pending**(gauge)                  | Number of pending connections                              |
| **hikaricp.connections.acquire.seconds.count**(count)    | Count of acquire connection time*Shown as second*          |
| **hikaricp.connections.acquire.seconds.max**(gauge)      | Max of acquire connection time*Shown as second*            |
| **hikaricp.connections.acquire.seconds.sum**(count)      | Sum of acquire connection time*Shown as second*            |
| **hikaricp.connections.creation.seconds.count**(count)   | Count of creation connection time*Shown as second*         |
| **hikaricp.connections.creation.seconds.max**(gauge)     | Max of creation connection time*Shown as second*           |
| **hikaricp.connections.creation.seconds.sum**(count)     | Sum of creation connection time*Shown as second*           |
| **hikaricp.connections.usage.seconds.count**(count)      | Count of usage connection time*Shown as second*            |
| **hikaricp.connections.usage.seconds.max**(gauge)        | Max of usage connection time*Shown as second*              |
| **hikaricp.connections.usage.seconds.sum**(count)        | Sum of usage connection time*Shown as second*              |
| **hikaricp.threads.pending**(gauge)                      | Number of pending threads*Shown as thread*                 |
| **hikaricp.connections.acquired.nanos.count**(count)     | Count of acquired connection time*Shown as nanosecond*     |
| **hikaricp.connections.acquired.nanos.sum**(count)       | Sum of acquired connection time*Shown as nanosecond*       |
| **hikaricp.connections.acquired.nanos.quantile**(gauge)  | Quantile of acquired connection time*Shown as nanosecond*  |
| **hikaricp.connections.creation.millis.count**(count)    | Count of connection creation time*Shown as millisecond*    |
| **hikaricp.connections.creation.millis.sum**(count)      | Sum of connection creation time*Shown as millisecond*      |
| **hikaricp.connections.creation.millis.quantile**(gauge) | Quantile of connection creation time*Shown as millisecond* |
| **hikaricp.connections.usage.millis.count**(count)       | Count of connection usage time*Shown as millisecond*       |
| **hikaricp.connections.usage.millis.sum**(count)         | Sum of connection usage time*Shown as millisecond*         |
| **hikaricp.connections.usage.millis.quantile**(gauge)    | Quantile of connection usage time*Shown as millisecond*    |

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

**hikaricp.openmetrics.health**

Returns `CRITICAL` if the Agent is unable to connect to the HikariCP OpenMetrics endpoint, otherwise returns `OK`.

*Statuses: ok, critical*

### Events{% #events %}

HikariCP does not include any events.

## Troubleshooting{% #troubleshooting %}

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