grafana_datasource - Manage Grafana datasources
New in version 2.5.
Synopsis
- Create/update/delete Grafana datasources via API.
Parameters
| Parameter | Choices/Defaults | Comments |
|---|---|---|
| access |
| The access mode for this datasource. |
| basic_auth_password | The datasource basic auth password, when basic auth is yes. | |
| basic_auth_user | The datasource basic auth user. Setting this option with basic_auth_password will enable basic auth. | |
| database | Name of the database for the datasource. This options is required when the ds_type is influxdb, elasticsearch (index name), mysql or postgres. | |
| ds_type required |
| The type of the datasource. |
| es_version |
| Elasticsearch version (for ds_type = elasticsearch only)Version 56 is for elasticsearch 5.6+ where tou can specify the max_concurrent_shard_requests option. |
| grafana_api_key | The Grafana API key. If set, grafana_user and grafana_password will be ignored. | |
| grafana_password | Default: admin | The Grafana API password. |
| grafana_url required | The Grafana URL. | |
| grafana_user | Default: admin | The Grafana API user. |
| interval |
| For elasticsearch ds_type, this is the index pattern used. |
| is_default |
| Make this datasource the default one. |
| max_concurrent_shard_requests | Default: 256 | Starting with elasticsearch 5.6, you can specify the max concurrent shard per requests. |
| name required | The name of the datasource. | |
| org_id | Default: 1 | Grafana Organisation ID in which the datasource should be created. Not used when grafana_api_key is set, because the grafana_api_key only belong to one organisation. |
| password | The datasource password | |
| sslmode |
| SSL mode for postgres datasoure type. |
| state |
| Status of the datasource |
| time_field | Default: timestamp | Name of the time field in elasticsearch ds. For example @timestamp
|
| time_interval | Minimum group by interval for influxdb or elasticsearch datasources.for example >10s
| |
| tls_ca_cert | The TLS CA certificate for self signed certificates. Only used when tls_client_cert and tls_client_key are set. | |
| tls_client_cert | The client TLS certificate. If tls_client_cert and tls_client_key are set, this will enable TLS authentication.Starts with ----- BEGIN CERTIFICATE ----- | |
| tls_client_key | The client TLS private key Starts with ----- BEGIN RSA PRIVATE KEY ----- | |
| tsdb_resolution |
| The opentsdb time resolution. |
| tsdb_version |
| The opentsdb version. Use 1 for <=2.1, 2 for ==2.2, 3 for ==2.3. |
| url required | The URL of the datasource. | |
| user | The datasource login user for influxdb datasources. | |
| validate_certs |
| Whether to validate the Grafana certificate. |
| with_credentials |
| Whether credentials such as cookies or auth headers should be sent with cross-site requests. |
Examples
---
- name: Create elasticsearch datasource
grafana_datasource:
name: my_elastic
grafana_url: http://grafana.company.com
type: elasticsearch
url: https://elasticsearch.company.com:9200
database: my-index_*
basic_auth: yes
basic_auth_user: grafana
basic_auth_password: xxxxxxxx
json_data: '{"esVersion":5, "timeField": "@timestamp"}'
state: present
Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description |
|---|---|---|
| after dict | changed | datasource updated by module Sample: {'name': 'grafana_datasource_test', 'database': 'test_*', 'url': 'http://elastic.company.com:9200', 'basicAuth': False, 'jsonData': {'timeField': '@timestamp', 'esVersion': 5, 'timeInterval': '10s'}, 'access': 'proxy', 'orgId': 1, 'user': '', 'password': '', 'type': 'elasticsearch', 'id': 1035, 'isDefault': False, 'withCredentials': False} |
| before dict | changed | datasource returned by grafana api Sample: {'name': 'grafana_datasource_test', 'database': 'test_*', 'url': 'http://elastic.company.com:9200', 'basicAuth': False, 'jsonData': {'timeField': '@timestamp', 'esVersion': 5, 'timeInterval': '1m'}, 'access': 'proxy', 'orgId': 1, 'user': '', 'password': '', 'type': 'elasticsearch', 'id': 1035, 'isDefault': False, 'withCredentials': False} |
| id int | success | Id of the datasource Sample: 42 |
| name string | success | name of the datasource created. Sample: test-ds |
Status
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
Author
- Thierry Sallé (@tsalle)
Hint
If you notice any issues in this documentation you can edit this document to improve it.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/grafana_datasource_module.html