community.grafana.grafana_dashboard 模块 – 管理 Grafana 仪表盘

注意

此模块是 community.grafana 集合 (版本 2.1.0) 的一部分。

如果您使用的是 ansible 包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用: ansible-galaxy collection install community.grafana

要在 playbook 中使用它,请指定: community.grafana.grafana_dashboard

community.grafana 1.0.0 中的新增功能

概要

  • 通过 API 创建、更新、删除和导出 Grafana 仪表盘。

参数

参数

注释

client_cert

path

用于 SSL 客户端身份验证的 PEM 格式证书链文件。

此文件还可以包含密钥,如果包含密钥,则不需要 _client_key_

client_key

path

包含用于 SSL 客户端身份验证的私钥的 PEM 格式文件。

如果 _client_cert_ 包含证书和密钥,则不需要此选项。

commit_message

字符串

为版本历史记录设置提交消息。

仅当 statepresent 时使用。

dashboard_id

字符串

community.grafana 1.0.0 中添加

要导入的公共 Grafana.com 仪表盘 ID

dashboard_revision

字符串

community.grafana 1.0.0 中添加

要导入的公共 Grafana 仪表盘的版本

默认值: "1"

folder

字符串

community.grafana 1.0.0 中添加

将此仪表盘导入到的 Grafana 文件夹。

默认值: "General"

grafana_api_key

字符串

Grafana API 密钥。

如果设置,则会忽略 url_usernameurl_password

org_id

整数

将导入/导出/删除仪表盘的 Grafana 组织 ID。

当设置 _grafana_api_key_ 时不使用,因为 grafana_api_key 只属于一个组织。

org_name 互斥。

默认值: 1

org_name

字符串

将导入/导出/删除仪表盘的 Grafana 组织名称。

当设置 _grafana_api_key_ 时不使用,因为 grafana_api_key 只属于一个组织。

org_id 互斥。

overwrite

布尔值

当 state 为 present 时覆盖现有仪表盘。

选项

  • false ← (默认)

  • true

path

别名:dashboard_url

字符串

包含要导入或导出的 Grafana 仪表盘的 json 文件的路径。

也可以接受 http URL(自 2.10 起)。

如果 stateexportpresent,则需要此参数。

slug

字符串

自 Grafana 5 起已弃用。请改用 Grafana 仪表盘 uid。

仪表盘的 slug。它是仪表盘的友好 URL 名称。

statepresent 时,此参数可以覆盖 json 文件 meta 部分中的 slug。

如果您想导入直接从界面(而不是从 API)导出的 json 仪表盘,则必须指定 slug 参数,因为导出的 json 中没有 meta 部分。

state

字符串

仪表盘的状态。

选项

  • "absent"

  • "export"

  • "present" ← (默认)

uid

字符串

community.grafana 1.0.0 中添加

stateexportabsent 时要导出的仪表盘的 uid。

url

别名:grafana_url

字符串 / 必需

Grafana URL。

url_password

别名:grafana_password

字符串

用于 API 身份验证的 Grafana 密码。

默认值: "admin"

url_username

别名:grafana_user

字符串

用于 API 身份验证的 Grafana 用户。

默认值: "admin"

use_proxy

布尔值

如果为 false,即使目标主机上的环境变量中定义了代理,也不会使用代理。

选项

  • false

  • true ← (默认)

validate_certs

布尔值

如果为 false,则不会验证 SSL 证书。

只有在使用自签名证书的个人控制站点上才应将其设置为 false

选项

  • false

  • true ← (默认)

示例

- name: Import Grafana dashboard foo
  community.grafana.grafana_dashboard:
    grafana_url: https://grafana.org.cnpany.com
    grafana_api_key: "{{ grafana_api_key }}"
    state: present
    commit_message: Updated by ansible
    overwrite: true
    path: /path/to/dashboards/foo.json

- name: Import Grafana dashboard Zabbix
  community.grafana.grafana_dashboard:
    grafana_url: https://grafana.org.cnpany.com
    grafana_api_key: "{{ grafana_api_key }}"
    folder: zabbix
    dashboard_id: 6098
    dashboard_revision: 1

- name: Import Grafana dashboard zabbix
  community.grafana.grafana_dashboard:
    grafana_url: https://grafana.org.cnpany.com
    grafana_api_key: "{{ grafana_api_key }}"
    folder: public
    dashboard_url: https://grafana.org.cn/api/dashboards/6098/revisions/1/download

- name: Export dashboard
  community.grafana.grafana_dashboard:
    grafana_url: https://grafana.org.cnpany.com
    grafana_user: "admin"
    grafana_password: "{{ grafana_password }}"
    org_id: 1
    state: export
    uid: "000000653"
    path: "/path/to/dashboards/000000653.json"

返回值

常见的返回值已在 此处 记录,以下是此模块特有的字段

描述

uid

字符串

已创建/删除/导出的仪表板的 uid 或 slug。

返回:成功

示例: "51"

作者

  • Thierry Sallé (@seuf)