Support for Zabbix
| optdepends: |
|
|---|---|
| configuration: | This module is not usable until the zabbix user and zabbix password are specified either in a pillar or in the minion’s config file. Zabbix url should be also specified. zabbix.user: Admin
zabbix.password: mypassword
zabbix.url: http://127.0.0.1/zabbix/api_jsonrpc.php
Connection arguments from the minion config file can be overridden on the CLI by using arguments with _connection_ prefix. zabbix.apiinfo_version _connection_user=Admin _connection_password=zabbix _connection_url=http://host/zabbix/
|
| codeauthor: | Jiri Kotlin <jiri.kotlin@ultimum.io> |
salt.modules.zabbix.apiinfo_version(**connection_args)¶Retrieve the version of the Zabbix API.
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | On success string with Zabbix API version, False on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.apiinfo_version
salt.modules.zabbix.host_create(host, groups, interfaces, **connection_args)¶New in version 2016.3.0.
Create new host
Note
This function accepts all standard host properties: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|
return: ID of the created host.
CLI Example:
salt '*' zabbix.host_create technicalname 4
interfaces='{type: 1, main: 1, useip: 1, ip: "192.168.3.1", dns: "", port: 10050}'
visible_name='Host Visible Name'
salt.modules.zabbix.host_delete(hostids, **connection_args)¶Delete hosts.
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | IDs of the deleted hosts. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.host_delete 10106
salt.modules.zabbix.host_exists(host=None, hostid=None, name=None, node=None, nodeids=None, **connection_args)¶Checks if at least one host that matches the given filter criteria exists.
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | IDs of the deleted hosts, False on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.host_exists ‘Zabbix server’
salt.modules.zabbix.host_get(host=None, name=None, hostids=None, **connection_args)¶New in version 2016.3.0.
Retrieve hosts according to the given parameters
Note
This function accepts all optional host.get parameters: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|---|
| Returns: | Array with convenient hosts details, False if no host found or on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.host_get ‘Zabbix server’
salt.modules.zabbix.host_list(**connection_args)¶Retrieve all hosts.
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | Array with details about hosts, False on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.host_list
salt.modules.zabbix.host_update(hostid, **connection_args)¶New in version 2016.3.0.
Update existing hosts
Note
This function accepts all standard host and host.update properties: keyword argument names differ depending on your zabbix version, see the documentation for host objects and the documentation for updating hosts.
| Parameters: |
|
|---|---|
| Returns: | ID of the updated host. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.host_update 10084 name=’Zabbix server2’
salt.modules.zabbix.hostgroup_create(name, **connection_args)¶New in version 2016.3.0.
Create a host group
Note
This function accepts all standard host group properties: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|---|
| Returns: | ID of the created host group. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.hostgroup_create MyNewGroup
salt.modules.zabbix.hostgroup_delete(hostgroupids, **connection_args)¶Delete the host group.
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | ID of the deleted host groups, False on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.hostgroup_delete 23
salt.modules.zabbix.hostgroup_exists(name=None, groupid=None, node=None, nodeids=None, **connection_args)¶Checks if at least one host group that matches the given filter criteria exists.
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | True if at least one host group exists, False if not or on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.hostgroup_exists MyNewGroup
salt.modules.zabbix.hostgroup_get(name=None, groupids=None, hostids=None, **connection_args)¶New in version 2016.3.0.
Retrieve host groups according to the given parameters
Note
This function accepts all standard hostgroup.get properities: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|---|
| Returns: | Array with host groups details, False if no convenient host group found or on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.hostgroup_get MyNewGroup
salt.modules.zabbix.hostgroup_list(**connection_args)¶Retrieve all host groups.
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | Array with details about host groups, False on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.hostgroup_list
salt.modules.zabbix.hostgroup_update(groupid, name=None, **connection_args)¶New in version 2016.3.0.
Update existing hosts group
Note
This function accepts all standard host group properties: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|---|
| Returns: | IDs of updated host groups. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.hostgroup_update 24 name=’Renamed Name’
salt.modules.zabbix.hostinterface_create(hostid, ip, dns='', main=1, type=1, useip=1, port=None, **connection_args)¶New in version 2016.3.0.
Create new host interface
Note
This function accepts all standard host group interface: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|---|
| Returns: | ID of the created host interface, False on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.hostinterface_create 10105 192.193.194.197
salt.modules.zabbix.hostinterface_delete(interfaceids, **connection_args)¶Delete host interface
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | ID of deleted host interfaces, False on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.hostinterface_delete 50
salt.modules.zabbix.hostinterface_get(hostids, **connection_args)¶New in version 2016.3.0.
Retrieve host groups according to the given parameters
Note
This function accepts all standard hostinterface.get properities: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|---|
| Returns: | Array with host interfaces details, False if no convenient host interfaces found or on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.hostinterface_get 101054
salt.modules.zabbix.hostinterface_update(interfaceid, **connection_args)¶New in version 2016.3.0.
Update host interface
Note
This function accepts all standard hostinterface: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|---|
| Returns: | ID of the updated host interface, False on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.hostinterface_update 6 ip=0.0.0.2
salt.modules.zabbix.mediatype_create(name, mediatype, **connection_args)¶Create new mediatype
Note
This function accepts all standard mediatype properties: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|
return: ID of the created mediatype.
CLI Example:
salt '*' zabbix.mediatype_create 'Email' 0 smtp_email='noreply@example.com'
smtp_server='mailserver.example.com' smtp_helo='zabbix.example.com'
salt.modules.zabbix.mediatype_delete(mediatypeids, **connection_args)¶Delete mediatype
| Parameters: |
|
|---|---|
| Returns: | ID of deleted mediatype, False on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.mediatype_delete 3
salt.modules.zabbix.mediatype_get(name=None, mediatypeids=None, **connection_args)¶Retrieve mediatypes according to the given parameters.
| Parameters: |
|
|---|---|
| Returns: | Array with mediatype details, False if no mediatype found or on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.mediatype_get name=’Email’ salt ‘*’ zabbix.mediatype_get mediatypeids=”[‘1’, ‘2’, ‘3’]”
salt.modules.zabbix.mediatype_update(mediatypeid, name=False, mediatype=False, **connection_args)¶Update existing mediatype
Note
This function accepts all standard mediatype properties: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|---|
| Returns: | IDs of the updated mediatypes, False on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.usergroup_update 8 name=”Email update”
salt.modules.zabbix.run_query(method, params, **connection_args)¶Send Zabbix API call
| Parameters: |
|
|---|---|
| Returns: | Response from Zabbix API |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.run_query proxy.create ‘{“host”: “zabbixproxy.domain.com”, “status”: “5”}’
salt.modules.zabbix.template_get(name=None, host=None, templateids=None, **connection_args)¶Retrieve templates according to the given parameters.
| Parameters: |
|
|---|---|
| Returns: | Array with convenient template details, False if no template found or on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.template_get name=’Template OS Linux’ salt ‘*’ zabbix.template_get templateids=”[‘10050’, ‘10001’]”
salt.modules.zabbix.user_addmedia(userids, active, mediatypeid, period, sendto, severity, **connection_args)¶Add new media to multiple users.
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | IDs of the created media. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.user_addmedia 4 active=0 mediatypeid=1 period=‘1-7,00:00-24:00’ sendto=’support2@example.com’ severity=63
salt.modules.zabbix.user_create(alias, passwd, usrgrps, **connection_args)¶New in version 2016.3.0.
Create new zabbix user
Note
This function accepts all standard user properties: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|---|
| Returns: | On success string with id of the created user. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.user_create james password007 ‘[7, 12]’ firstname=’James Bond’
salt.modules.zabbix.user_delete(users, **connection_args)¶Delete zabbix users.
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | On success array with userids of deleted users. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.user_delete 15
salt.modules.zabbix.user_deletemedia(mediaids, **connection_args)¶Delete media by id.
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | IDs of the deleted media, False on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.user_deletemedia 27
salt.modules.zabbix.user_exists(alias, **connection_args)¶Checks if user with given alias exists.
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | True if user exists, else False. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.user_exists james
salt.modules.zabbix.user_get(alias=None, userids=None, **connection_args)¶Retrieve users according to the given parameters.
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | Array with details of convenient users, False on failure of if no user found. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.user_get james
salt.modules.zabbix.user_getmedia(userids=None, **connection_args)¶New in version 2016.3.0.
Retrieve media according to the given parameters
Note
This function accepts all standard usermedia.get properties: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|---|
| Returns: | List of retrieved media, False on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.user_getmedia
salt.modules.zabbix.user_list(**connection_args)¶Retrieve all of the configured users.
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | Array with user details. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.user_list
salt.modules.zabbix.user_update(userid, **connection_args)¶New in version 2016.3.0.
Update existing users
Note
This function accepts all standard user properties: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|---|
| Returns: | Id of the updated user on success. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.user_update 16 visible_name=’James Brown’
salt.modules.zabbix.usergroup_create(name, **connection_args)¶New in version 2016.3.0.
Create new user group
Note
This function accepts all standard user group properties: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|---|
| Returns: | IDs of the created user groups. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.usergroup_create GroupName
salt.modules.zabbix.usergroup_delete(usergroupids, **connection_args)¶New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | IDs of the deleted user groups. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.usergroup_delete 28
salt.modules.zabbix.usergroup_exists(name=None, node=None, nodeids=None, **connection_args)¶Checks if at least one user group that matches the given filter criteria exists
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | True if at least one user group that matches the given filter criteria exists, else False. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.usergroup_exists Guests
salt.modules.zabbix.usergroup_get(name=None, usrgrpids=None, userids=None, **connection_args)¶New in version 2016.3.0.
Retrieve user groups according to the given parameters
Note
This function accepts all usergroup_get properties: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|---|
| Returns: | Array with convenient user groups details, False if no user group found or on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.usergroup_get Guests
salt.modules.zabbix.usergroup_list(**connection_args)¶Retrieve all enabled user groups.
New in version 2016.3.0.
| Parameters: |
|
|---|---|
| Returns: | Array with enabled user groups details, False on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.usergroup_list
salt.modules.zabbix.usergroup_update(usrgrpid, **connection_args)¶New in version 2016.3.0.
Update existing user group
Note
This function accepts all standard user group properties: keyword argument names differ depending on your zabbix version, see here.
| Parameters: |
|
|---|---|
| Returns: | IDs of the updated user group, False on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.usergroup_update 8 name=guestsRenamed
salt.modules.zabbix.usermacro_create(macro, value, hostid, **connection_args)¶Create new host usermacro.
| Parameters: |
|
|---|
return: ID of the created host usermacro.
CLI Example:
salt '*' zabbix.usermacro_create '{$SNMP_COMMUNITY}' 'public' 1
salt.modules.zabbix.usermacro_createglobal(macro, value, **connection_args)¶Create new global usermacro.
| Parameters: |
|
|---|
return: ID of the created global usermacro.
CLI Example:
salt '*' zabbix.usermacro_createglobal '{$SNMP_COMMUNITY}' 'public'
salt.modules.zabbix.usermacro_delete(macroids, **connection_args)¶Delete host usermacros.
| Parameters: |
|
|---|
return: IDs of the deleted host usermacro.
CLI Example:
salt '*' zabbix.usermacro_delete 21
salt.modules.zabbix.usermacro_deleteglobal(macroids, **connection_args)¶Delete global usermacros.
| Parameters: |
|
|---|
return: IDs of the deleted global usermacro.
CLI Example:
salt '*' zabbix.usermacro_deleteglobal 21
salt.modules.zabbix.usermacro_get(macro=None, hostids=None, templateids=None, hostmacroids=None, globalmacroids=None, globalmacro=False, **connection_args)¶Retrieve user macros according to the given parameters.
| Parameters: |
|
|---|---|
| Returns: | Array with usermacro details, False if no usermacro found or on failure. |
CLI Example: .. code-block:: bash
salt ‘*’ zabbix.usermacro_get macro=’{$SNMP_COMMUNITY}’
salt.modules.zabbix.usermacro_update(hostmacroid, value, **connection_args)¶Update existing host usermacro.
| Parameters: |
|
|---|
return: ID of the update host usermacro.
CLI Example:
salt '*' zabbix.usermacro_update 1 'public'
salt.modules.zabbix.usermacro_updateglobal(globalmacroid, value, **connection_args)¶Update existing global usermacro.
| Parameters: |
|
|---|
return: ID of the update global usermacro.
CLI Example:
salt '*' zabbix.usermacro_updateglobal 1 'public'
Docs for previous releases are available on readthedocs.org.
Latest Salt release: 2018.3.3