zabbix_screen – Create/update/delete Zabbix screens¶
New in version 2.0.
Synopsis¶
This module allows you to create, modify and delete Zabbix screens and associated graph data.
Requirements¶
The below requirements are needed on the host that executes this module.
python >= 2.6
zabbix-api
Parameters¶
Parameter | Choices/Defaults | Comments |
---|---|---|
http_login_password
string
added in 2.1 |
Basic Auth password
|
|
http_login_user
string
/ required
added in 2.1 |
Basic Auth login
|
|
login_password
string
/ required
|
Zabbix user password.
|
|
login_user
string
/ required
|
Zabbix user name.
|
|
screens
-
/ required
|
List of screens to be created/updated/deleted (see example).
If a screen has already been added, the screen name won't be updated.
When creating or updating a screen,
screen_name and host_group are required.When deleting a screen, the
screen_name is required.Option
graphs_in_row will limit columns of a screen and make multiple rows (default 3).The available states are:
present (default) and absent . If the screen already exists, and the state is not absent , the screen will be updated as needed. |
|
server_url
string
/ required
|
URL of Zabbix server, with protocol (http or https).
url is an alias for server_url .aliases: url |
|
timeout
integer
|
Default: 10
|
The timeout of API request (seconds).
|
validate_certs
boolean
added in 2.5 |
|
If set to False, SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates.
|
Notes¶
Note
Too many concurrent updates to the same screen may cause Zabbix to return errors, see examples for a workaround if needed.
Examples¶
# Create/update a screen.
- name: Create a new screen or update an existing screen's items 5 in a row
local_action:
module: zabbix_screen
server_url: http://monitor.example.com
login_user: username
login_password: password
screens:
- screen_name: ExampleScreen1
host_group: Example group1
state: present
graph_names:
- Example graph1
- Example graph2
graph_width: 200
graph_height: 100
graphs_in_row: 5
# Create/update multi-screen
- name: Create two of new screens or update the existing screens' items
local_action:
module: zabbix_screen
server_url: http://monitor.example.com
login_user: username
login_password: password
screens:
- screen_name: ExampleScreen1
host_group: Example group1
state: present
graph_names:
- Example graph1
- Example graph2
graph_width: 200
graph_height: 100
- screen_name: ExampleScreen2
host_group: Example group2
state: present
graph_names:
- Example graph1
- Example graph2
graph_width: 200
graph_height: 100
# Limit the Zabbix screen creations to one host since Zabbix can return an error when doing concurrent updates
- name: Create a new screen or update an existing screen's items
local_action:
module: zabbix_screen
server_url: http://monitor.example.com
login_user: username
login_password: password
state: present
screens:
- screen_name: ExampleScreen
host_group: Example group
state: present
graph_names:
- Example graph1
- Example graph2
graph_width: 200
graph_height: 100
when: inventory_hostname==groups['group_name'][0]
Status¶
This module is not guaranteed to have a backwards compatible interface. [preview]
This module is maintained by the Ansible Community. [community]