IBM i

Supported OS Linux Mac OS

Integration version2.2.0

Overview

This check monitors IBM i remotely through the Datadog Agent.

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 for guidance on applying these instructions.

Note: This check is not available on Windows as it uses the fcntl() system call, which is specific to Unix-like operating systems.

Installation

The IBM i check is included in the Datadog Agent package. No additional installation is needed on your server.

ODBC driver

The IBM i check uses the IBM i ODBC driver to connect remotely to the IBM i host.

Download the driver from the IBM i Access - Client Solutions page. Click on Downloads for IBM i Access Client Solutions and login to gain access to the downloads page.

Choose the ACS App Pkg package for your platform, such as ACS Linux App Pkg for Linux hosts. Download the package and follow the installation instructions to install the driver.

Configuration

The IBM i check queries an IBM i system remotely from a host running the Datadog Agent. To communicate with the IBM i system, you need to set up the IBM i ODBC driver on the host running the Datadog Agent.

ODBC driver

Once the ODBC driver is installed, find the ODBC configuration files: odbc.ini and odbcinst.ini. The location may vary depending on your system. On Linux they may be located in the /etc directory or in the /etc/unixODBC directory.

Copy these configuration files to the embedded Agent environment, such as /opt/datadog-agent/embedded/etc/ on Linux hosts.

The odbcinst.ini file defines the available ODBC drivers for the Agent. Each section defines one driver. For instance, the following section defines a driver named IBM i Access ODBC Driver 64-bit:

[IBM i Access ODBC Driver 64-bit]
Description=IBM i Access for Linux 64-bit ODBC Driver
Driver=/opt/ibm/iaccess/lib64/libcwbodbc.so
Setup=/opt/ibm/iaccess/lib64/libcwbodbcs.so
Threading=0
DontDLClose=1
UsageCount=1

The name of the IBM i ODBC driver is needed to configure the IBM i check.

IBM i check

  1. Edit the ibm_i.d/conf.yaml file, in the conf.d/ folder at the root of your Agent’s configuration directory to start collecting your IBM i performance data. See the sample ibm_i.d/conf.yaml for all available configuration options. Use the driver name from the obdcinst.ini file.

  2. Restart the Agent.

Validation

Run the Agent’s status subcommand and look for ibm_i under the Checks section.

Data Collected

Metrics

ibm_i.asp.io_requests_per_s
(gauge)
The average number of I/O requests for read and write operations that occurred per second
Shown as unit
ibm_i.asp.percent_busy
(gauge)
The percentage of time the disk unit is in use
Shown as percent
ibm_i.asp.percent_used
(gauge)
The percentage consumed from the disk unit
Shown as percent
ibm_i.asp.unit_space_available
(gauge)
The space on the unit available for use
Shown as byte
ibm_i.asp.unit_storage_capacity
(gauge)
The storage capacity of the unit
Shown as byte
ibm_i.job.active_duration
(gauge)
The amount of time a job has been active
Shown as second
ibm_i.job.cpu_usage
(gauge)
The CPU usage by a job
ibm_i.job.cpu_usage.pct
(gauge)
The CPU usage by a job as a percentage
Shown as percent
ibm_i.job.jobq_duration
(gauge)
The amount of time a job has been in the JOBQ status
Shown as second
ibm_i.job.status
(gauge)
Whether a job is currently active or not.
ibm_i.job.temp_storage
(gauge)
The amount of temporary storage that is currently allocated to a job
Shown as mebibyte
ibm_i.job_queue.held_size
(gauge)
The number of jobs in *HELD status in a job queue
Shown as unit
ibm_i.job_queue.released_size
(gauge)
The number of jobs in *RELEASED status in a job queue
Shown as unit
ibm_i.job_queue.scheduled_size
(gauge)
The number of jobs in *SCHEDULED status in a job queue
Shown as unit
ibm_i.job_queue.size
(gauge)
The number of jobs in a job queue
Shown as unit
ibm_i.message_queue.critical_size
(gauge)
The number of critical messages in a system message queue
Shown as unit
ibm_i.message_queue.size
(gauge)
The number of messages in a system message queue
Shown as unit
ibm_i.pool.defined_size
(gauge)
The size of a pool as defined in the shared pool, subsystem description, or system value QMCHPOOL
Shown as mebibyte
ibm_i.pool.reserved_size
(gauge)
The amount of storage in a pool reserved for system use
Shown as mebibyte
ibm_i.pool.size
(gauge)
The amount of main storage in a pool
Shown as mebibyte
ibm_i.subsystem.active
(gauge)
Whether a subsystem is currently active
ibm_i.subsystem.active_jobs
(gauge)
The number of jobs currently active in a subsystem
Shown as unit
ibm_i.system.configured_cpus
(gauge)
The total number of configured CPUs for the partition.
Shown as unit
ibm_i.system.cpu_usage
(gauge)
The average CPU utilization for all the active processors.
Shown as percent
ibm_i.system.current_cpu_capacity
(gauge)
The processor units that are being used in the partition.
ibm_i.system.normalized_cpu_usage
(gauge)
The normalized percentage of CPU utilization for processing units in use.
Shown as percent
ibm_i.system.shared_cpu_usage
(gauge)
The percentage of the total shared processor pool capacity used by all partitions using the pool.
Shown as percent

Events

The IBM i check does not include any events.

Troubleshooting

Need help? Contact Datadog support.