Skip to content

DataKit AIX


DataKit AIX collects IBM AIX host metrics, host objects, errpt error logs, and can optionally enable middleware metrics for DB2, Oracle, Informix, Sybase, IBM MQ, WebSphere, IHS, SAP, and other products.

Tested versions:

  • AIX 7.2 TL5 SP10

Configuration

Installation

Run the installation script on the AIX host. DATAKITAIX_DATAWAY is written to the [dataway] section in /etc/datakitaix/datakitaix.toml.

Install the latest version:

DATAKITAIX_DATAWAY=https://openway.guance.com?token=<TOKEN> sh -c "$(curl -L https://static.guance.com/datakitaix/install.sh)"

Install a specific version:

DATAKITAIX_DATAWAY=https://openway.guance.com?token=<TOKEN> sh -c "$(curl -L https://static.guance.com/datakitaix/install-<VERSION>.sh)"

Example:

DATAKITAIX_DATAWAY=https://openway.guance.com?token=<TOKEN> sh -c "$(curl -L https://static.guance.com/datakitaix/install-1.0.0.sh)"

Default paths after installation:

Path Description
/opt/datakitaix/bin/datakitaix Main program
/usr/bin/datakitaix Command symlink for running datakitaix directly
/etc/datakitaix/datakitaix.toml Runtime configuration generated during installation
/etc/datakitaix/datakitaix.toml.sample Configuration sample for the current version; updated during upgrade
/var/lib/datakitaix Runtime data, spool, and errpt cursor
/var/log/datakitaix Runtime logs

The installation script registers the AIX SRC service datakitaix. If DataWay is not configured, the service is registered but not started automatically.

Upgrade

Run the following command on a host where DataKit AIX is already installed:

DATAKITAIX_UPGRADE=1 sh -c "$(curl -L https://static.guance.com/datakitaix/install.sh)"

To update DataWay during upgrade, also set DATAKITAIX_DATAWAY:

DATAKITAIX_DATAWAY=https://openway.guance.com?token=<TOKEN> DATAKITAIX_UPGRADE=1 sh -c "$(curl -L https://static.guance.com/datakitaix/install.sh)"

The upgrade replaces the binary, updates datakitaix.toml.sample, and preserves the existing /etc/datakitaix/datakitaix.toml. If DATAKITAIX_DATAWAY rewrites an existing configuration during upgrade, datakitaix.toml.old.<timestamp> is created in the same directory first.

Uninstall

/opt/datakitaix/bin/uninstall-aix.sh

By default, uninstall removes only the binary, helper script, command symlink, and SRC registration, while preserving configuration and runtime data. To also remove configuration and data:

PURGE=1 /opt/datakitaix/bin/uninstall-aix.sh

Commands

Command Description
datakitaix run -config /etc/datakitaix/datakitaix.toml Run in the foreground and start collectors, inputs, log tailers, health checks, and OpenTelemetry according to the configuration.
datakitaix once -config /etc/datakitaix/datakitaix.toml Run collectors once and report data to DataWay.
datakitaix once -dry-run -config /etc/datakitaix/datakitaix.toml Run collectors once and print line protocol without reporting data.
datakitaix check -config /etc/datakitaix/datakitaix.toml Validate configuration and run startup checks.
datakitaix version Print the current version.
startsrc -s datakitaix Start the AIX SRC service.
stopsrc -s datakitaix Stop the AIX SRC service.
lssrc -s datakitaix View AIX SRC service status.

Main configuration

The main configuration keeps only global settings. See the integration documents below for host collectors, middleware inputs, file logs, health checks, and OpenTelemetry configuration.

[logging]
# Agent runtime log configuration.
log = "/var/log/datakitaix/datakitaix.log"
error_log = "/var/log/datakitaix/error.log"
level = "info"
disable_color = false
rotate = 32
rotate_backups = 5

[dataway]
# DataWay URL. Setting `DATAKITAIX_DATAWAY` during installation writes this configuration automatically.
urls = ["https://openway.guance.com?token=<TOKEN>"]
timeout = "30s"
retry = 2
gzip = true
max_raw_body_size = 1048576

[spool]
# Enable local disk buffering for retryable upload failures.
enabled = true
# Directory for failed data buffering; also stores log tailer offset state.
path = "/var/lib/datakitaix/spool"
# Maximum disk usage for pending spool files. When exceeded, the oldest files are dropped first.
max_size_mb = 128
# Maximum number of pending spool files.
max_files = 5000
# Retry interval for pending spool data.
drain_interval = "30s"

[global_tags]
# Global tags appended to all collected data.
# env = "prod"

[self_monitor]
# Report datakitaix process, Go runtime, and spool status.
enabled = true
# Self-monitoring metric reporting interval.
interval = "30s"

Host collectors

Host collectors collect AIX host metrics, process objects, host objects, and errpt data.

[collectors]
enabled = true
command_timeout = "10s"
Collector Name Description
CPU (cpu) Collect host CPU usage.
Disk (disk) Collect disk and filesystem usage.
Disk I/O (diskio) Collect host disk I/O metrics.
Mem (mem) Collect host memory usage.
Swap (swap) Collect paging space usage.
System (system) Collect host operating system load.
Net (net) Collect host network traffic and protocol stack metrics.
LPARStat (lparstat) Collect LPAR and hypervisor metrics. Disabled by default.
Process (process) Collect host process objects.
Host Object (hostobject) Collect basic host information, such as operating system and hardware information.
Errpt (errpt) Collect AIX error reports.

Middleware Inputs

Middleware inputs are disabled by default. Set [inputs].enabled = true and enable the specific instance to collect them.

[inputs]
enabled = true
command_timeout = "15s"
Collector Name Description
DB2 (db2) Collect IBM DB2 instance, database, tablespace, and HADR status.
Oracle (oracle) Collect Oracle database, tablespace, ASM, FRA, and wait event metrics.
Informix (informix) Collect Informix instance, session, dbspace, and log usage.
Sybase (sybase) Collect Sybase ASE connections and database capacity.
IBM MQ (ibm_mq) Collect Queue Manager, queue, channel, and listener status.
WebSphere (websphere) Collect WebSphere server, JVM, thread pool, and HTTP session metrics.
IHS (ihs) Collect IBM HTTP Server worker, request count, and scoreboard metrics.
SAP (sap) Collect SAP instance processes, queue, enqueue, and alert metrics.

File Logs

File Logs Local file logs are collected with [logs] and one or more [[logs.files]] blocks.

Health Check

health-check TCP/HTTP availability checks are configured with [healthcheck].

OpenTelemetry

OpenTelemetry The OpenTelemetry HTTP/gRPC receiver is configured with [otel].

Self Metrics

DataKit AIX can report self-monitoring metrics through [self_monitor] to observe the datakitaix process, Go runtime, and spool status.

datakitaix

Tags & Fields Description
host
(tag)
Hostname.
uptime_seconds datakitaix process uptime.
Type: int | (gauge)
Unit: s
goroutines Current number of Go goroutines.
Type: int | (gauge)
Unit: count
cpu_usage CPU usage of the datakitaix process.
Type: float | (gauge)
Unit: percent
cpu_cores Number of CPU cores visible to the Go runtime.
Type: int | (gauge)
Unit: count
go_mem_heap_alloc Current bytes allocated on the Go heap.
Type: int | (gauge)
Unit: byte
go_mem_heap_inuse Current bytes in use on the Go heap.
Type: int | (gauge)
Unit: byte
go_mem_heap_released Bytes returned by the Go heap to the operating system.
Type: int | (gauge)
Unit: byte
go_mem_stack_inuse Current bytes used by Go stacks.
Type: int | (gauge)
Unit: byte
go_mem_sys Total bytes requested by the Go runtime from the operating system.
Type: int | (gauge)
Unit: byte
go_gc_count Cumulative number of Go GC cycles.
Type: int | (count)
Unit: count
go_gc_pause_total_ns Cumulative Go GC pause time.
Type: int | (count)
Unit: ns
spool_pending Current number of spool files pending send.
Type: int | (gauge)
Unit: count
spool_bytes Current number of spool bytes pending send.
Type: int | (gauge)
Unit: byte
spool_bad_files Current number of damaged spool files.
Type: int | (gauge)
Unit: count
spool_bad_bytes Current bytes in damaged spool files.
Type: int | (gauge)
Unit: byte
spool_tmp_files Current number of temporary spool files.
Type: int | (gauge)
Unit: count
spool_tmp_bytes Current bytes in temporary spool files.
Type: int | (gauge)
Unit: byte
spool_dropped_files Current number of dropped spool files.
Type: int | (gauge)
Unit: count
spool_dropped_bytes Current bytes in dropped spool files.
Type: int | (gauge)
Unit: byte

For OpenTelemetry receiver self metrics datakitaix_otel_receiver, see OpenTelemetry.

Feedback

Is this page helpful? ×