1. Zabbix CLI
1.1 Example
1.1.1 Valid Command
zabbix_controller -u username -p password hosts list
zabbix_controller -u username -p password hosts -m name:^server$ list
1.1.2 Invalid Command
zabbix_controller hosts -u username -p password list
zabbix_controller -u username -p password hosts list -m name:^server$
1.2 zabbixctl [options] command ...
1.2.1 Options
These options are only set at zabbixctl [options] command ...
.
zabbixctl command [options] ...
is not accepted.
1.2.1.1 --help
zabbixctl --help
1.2.1.2 --apiserver-address, -aa
zabbixctl -aa http://localhost:8081
1.2.1.3 --username, -u, --password, -p
Used for zabbix login
zabbixctl --username Admin --password zabbix_password
1.2.1.4 --basicauth_username, -bu, --basicauth_password, -bp
Used for basic authentication
zabbixctl -bu alis -bp alis_password
1.2.1.5 --dry-run
If you set --dry-run
, only get API is executed, then ZabbixCTL state is printed.
Create, update, delete like API is not executed.
zabbixctl --dry-run
Options
Command
...
1.3 zabbixctl host 1.3.1 Options
-m, --match
1.3.1.1 Search host using json like object.
Search key, then apply value.
In the example below,
hosts which name key is including some_name
are listed.
zabbixctl hosts -m '{"name": "some_name"}' list
zabbixctl hosts -m '[{"name": "some_name"}]' list
Each key, value pairs are chained by and operator
.
Each dicts are chained by or operator
.
This command mean ("name": "some_name" and "hostid": "^1") or "name": "other_name"
.
zabbixctl hosts -m '[{"name": "some_name", "hostid": "^1"}, {"name": "other_name"}]' list
-tr, --time-range
1.3.1.2 This option is able to specify time range. If you use --match at the same time, used by "and operator".
key:[from]-[to]
from
and to
must be unixtime and can be omitted.
These commands are same and print host which disable property is included from 0 to now.
zabbixctl hosts -tr disable:0- list
zabbixctl hosts -tr disable:- list
This command mean (("name": "some_name" and "hostid": "^1") or "name": "other_name") and (0 <= disable_until <= now)
.
zabbixctl hosts -m '[{"name": "some_name", "hostid": "^1"}, {"name": "other_name"}]' -tr 'disable_until:-' list
1.3.2 Commands
list
1.3.2.1 list up host
delete
1.3.2.2 delete host
- options
-y, --yes
zabbixctl hosts -m '{"name": "some_name"}' delete -y
disable
1.3.2.3 disable host
- options
-y, --yes
zabbixctl hosts -m '{"name": "some_name"}' disable -y
update
1.3.2.4 update host
- options
-d, --data
-y, --yes
These are same command.
zabbixctl hosts -m '{"name": "some_name"}' update -d '{"state": 1}' -y
zabbixctl hosts -m '{"name": "some_name"}' update -d '{"state": "1"}' -y
zabbixctl hosts -m '{"name": "some_name"}' disable -y
Options
Command
1.4 zabbixctl host graphs 1.4.1 Command
list
1.4.2
delete
1.4.3 - options
-y, --yes
1.4.2 Options
-m, --match
1.4.2.1 This command delete graphs which is in hosts which is matched regex.
zabbixctl hosts -m '{"name": "some_name"}' graphs delete -y
Options
Command
1.5 zabbixctl host interfaces 1.5.1 Command
list
1.5.1.1
usedns
1.5.1.2 Use dns, not ipaddress
- options
-y, --yes
update
1.5.1.3 These are same command.
- options
-y, --yes
zabbixctl hosts interfaces update -d '{"useip": 0}' -y
zabbixctl hosts interfaces update -d '{"useip": "0"}' -y
zabbixctl hosts interfaces usedns -y