Operations / Operations

Operator CLI

Inspect redacted daemon snapshots with ngz-iot, the packaged operator CLI.

Snapshot-file client

ngz-iot is the packaged operator CLI—the shell client that ships in every self-hosted image. It is not the operator console. The console is the browser dashboard; ngz-iot is the command you run on the node.

nginz-iotctl is the compatibility name for the same binary.

The CLI reads the local admin snapshot file. It does not open shared-memory rings or bypass nginx admin authorization. Health, readiness, sessions, and bridges come from the same redacted snapshot the console displays.

Common commands

ngz-iot version
ngz-iot --json version
ngz-iot --admin-file /run/nginz-iot/iotd/admin.json status
ngz-iot --admin-file /run/nginz-iot/iotd/admin.json health
ngz-iot --admin-file /run/nginz-iot/iotd/admin.json routes
ngz-iot --admin-file /run/nginz-iot/iotd/admin.json metrics
ngz-iot --admin-file /run/nginz-iot/iotd/admin.json modules
ngz-iot --admin-file /run/nginz-iot/iotd/admin.json clients --limit=50
ngz-iot --admin-file /run/nginz-iot/iotd/admin.json sessions
ngz-iot --admin-file /run/nginz-iot/iotd/admin.json subscriptions
ngz-iot --admin-file /run/nginz-iot/iotd/admin.json bridges
ngz-iot --admin-file /run/nginz-iot/iotd/admin.json rules
ngz-iot --admin-file /run/nginz-iot/iotd/admin.json schemas
ngz-iot --admin-file /run/nginz-iot/iotd/admin.json gateways
ngz-iot --admin-file /run/nginz-iot/iotd/admin.json config
ngz-iot --admin-file /run/nginz-iot/iotd/admin.json support
ngz-iot --admin-file /run/nginz-iot/iotd/admin.json drain
ngz-iot test-config --config /etc/nginz-iot/iotd.toml
ngz-iot --source=emqx migration audit emqx.conf

--json selects versioned machine-readable output where the command supports it. Human text is the default.

Readiness

Compose and systemd health checks look for:

route_to_node=true

health and routes render the same backend decision the operator console shows on Overview and HA. Use the CLI from the node that owns the snapshot; do not copy snapshot files between nodes and treat them as live.

Support bundles

support renders the redacted support-bundle fields in a stable text form for automation. Confirm redacted, safe_to_share, includes_payloads=false, and includes_credentials=false before sending output off-box.

Creating a bundle on Enterprise is a governed command with backend admission and reconciliation.

Migration audit

migration audit classifies Mosquitto or EMQX configuration. It is not an importer. See Migrate from Mosquitto or EMQX.

Implementation authority

This page is a customer-oriented guide. The source contract remains authoritative for exact behavior and release evidence.

src/processes/iotd/README.md