26 Commits

Author SHA1 Message Date
8670792f6f Updated CHANGELOG.md on "2025-02-07 17:54:47" 2025-02-07 17:54:47 +00:00
4803b33f89 Better sub inputs handling (#193)
* Support for sub_inputs in extra plugins

* fix: properly handle lists as TOML arrays

- Updated the Jinja template to detect and serialize lists using |to_json,
  ensuring Telegraf interprets them correctly (e.g. names = ["item1","item2"]).
- Removed fallback logic for single items, so we consistently treat all sub_input
  values as lists of dictionaries.

---------

Co-authored-by: Michał Lisowski <mlisowski@sentient.ie>
2025-02-07 18:54:09 +01:00
0c7f32937f Updated CHANGELOG.md on "2024-12-04 07:28:29" 2024-12-04 07:28:29 +00:00
2f2619580b Bump ansible-core from 2.18.0 to 2.18.1 (#192)
Bumps [ansible-core](https://github.com/ansible/ansible) from 2.18.0 to 2.18.1.
- [Release notes](https://github.com/ansible/ansible/releases)
- [Commits](https://github.com/ansible/ansible/compare/v2.18.0...v2.18.1)

---
updated-dependencies:
- dependency-name: ansible-core
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-04 08:27:47 +01:00
9363cfd04b Updated CHANGELOG.md on "2024-11-26 14:21:50" 2024-11-26 14:21:50 +00:00
ff77201873 Bump ansible-core from 2.16.8 to 2.18.0 (#191)
Bumps [ansible-core](https://github.com/ansible/ansible) from 2.16.8 to 2.18.0.
- [Release notes](https://github.com/ansible/ansible/releases)
- [Commits](https://github.com/ansible/ansible/compare/v2.16.8...v2.18.0)

---
updated-dependencies:
- dependency-name: ansible-core
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-26 15:21:13 +01:00
9febe3fa4c Updated CHANGELOG.md on "2024-11-26 13:22:27" 2024-11-26 13:22:27 +00:00
45ad4915eb Updating CHANGELOG.md file for release 0.14.2 2024-11-26 14:21:56 +01:00
b798c93a6a Updating CONTRIBUTORS file for release 0.14.2 2024-11-26 14:21:23 +01:00
68af70ea86 Updated CHANGELOG.md on "2024-11-26 13:09:19" 2024-11-26 13:09:19 +00:00
7c9c047c67 fix: add missing tasks for RedHat distro (rpm install) (#189) 2024-11-26 14:08:46 +01:00
732dffa435 Updated CHANGELOG.md on "2024-11-25 13:51:52" 2024-11-25 13:51:52 +00:00
570f81a779 Updating the Python packages to make Molecule work (#190)
* Updating the Python packages to make Molecule work
* Triggering jobs with updating Telegraf version
* Changing Ansible version
* Changing github ci version
* Changing Python version version
* Removal of Debian9
2024-11-25 14:51:20 +01:00
29fb3ea5e0 Updated CHANGELOG.md on "2024-11-06 16:17:14" 2024-11-06 16:17:14 +00:00
c318de1e2e Bump ansible-core from 2.15.9 to 2.17.6 (#188)
Bumps [ansible-core](https://github.com/ansible/ansible) from 2.15.9 to 2.17.6.
- [Release notes](https://github.com/ansible/ansible/releases)
- [Commits](https://github.com/ansible/ansible/compare/v2.15.9...v2.17.6)

---
updated-dependencies:
- dependency-name: ansible-core
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-06 17:16:39 +01:00
8a5a7187fa Updated CHANGELOG.md on "2024-10-08 07:02:11" 2024-10-08 07:02:11 +00:00
6f30799a7f fix: add almalinux analog to rockylinux in defaults/main.yml (#187)
Co-authored-by: Simon Couball <simon.couball@akquinet.de>
2024-10-08 09:01:37 +02:00
2b8cb8a9d8 Updated CHANGELOG.md on "2024-06-25 06:44:26" 2024-06-25 06:44:26 +00:00
108284cda1 Add Archlinux OS (#186)
Signed-off-by: Frank Villaro-Dixon <frank@villaro-dixon.eu>
2024-06-25 08:43:52 +02:00
51c2bb66f5 Updated CHANGELOG.md on "2024-02-28 19:01:19" 2024-02-28 19:01:19 +00:00
bfe52cd752 Support for sub_inputs in extra plugins (#184)
Co-authored-by: Michał Lisowski <mlisowski@sentient.ie>
2024-02-28 20:00:49 +01:00
b5179f4dfe Updated CHANGELOG.md on "2024-02-19 08:33:43" 2024-02-19 08:33:43 +00:00
c8a2209fe5 use redhat baseurl (#183) 2024-02-19 09:33:14 +01:00
bd5dfd18c1 Updated CHANGELOG.md on "2024-02-17 11:37:35" 2024-02-17 11:37:35 +00:00
870e56c5a7 Updating CHANGELOG.md file for release 0.14.1 2024-02-17 12:37:08 +01:00
5fb03da151 Updating CONTRIBUTORS file for release 0.14.1 2024-02-17 12:36:46 +01:00
10 changed files with 217 additions and 20 deletions

View File

@ -22,7 +22,7 @@ on:
- '.github/workflows/telegraf.yml' - '.github/workflows/telegraf.yml'
jobs: jobs:
molecule: molecule:
runs-on: ubuntu-22.04 runs-on: ubuntu-latest
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -37,8 +37,6 @@ jobs:
image: geerlingguy/docker-ubuntu2004-ansible:latest image: geerlingguy/docker-ubuntu2004-ansible:latest
- container: ubuntu1804 - container: ubuntu1804
image: geerlingguy/docker-ubuntu1804-ansible:latest image: geerlingguy/docker-ubuntu1804-ansible:latest
- container: debian9
image: geerlingguy/docker-debian9-ansible:latest
- container: debian10 - container: debian10
image: geerlingguy/docker-debian10-ansible:latest image: geerlingguy/docker-debian10-ansible:latest
- container: debian11 - container: debian11
@ -47,10 +45,10 @@ jobs:
- name: Check out code - name: Check out code
uses: actions/checkout@v1 uses: actions/checkout@v1
- name: Set up Python 3.9 - name: Set up Python 3.11
uses: actions/setup-python@v1 uses: actions/setup-python@v1
with: with:
python-version: 3.9 python-version: 3.11.10
- name: Install dependencies - name: Install dependencies
run: | run: |

View File

@ -2,7 +2,47 @@
## [Unreleased](https://github.com/dj-wasabi/ansible-telegraf/tree/HEAD) ## [Unreleased](https://github.com/dj-wasabi/ansible-telegraf/tree/HEAD)
[Full Changelog](https://github.com/dj-wasabi/ansible-telegraf/compare/0.14.0...HEAD) [Full Changelog](https://github.com/dj-wasabi/ansible-telegraf/compare/0.14.2...HEAD)
**Merged pull requests:**
- Better sub inputs handling [\#193](https://github.com/dj-wasabi/ansible-telegraf/pull/193) ([lisuml](https://github.com/lisuml))
- Bump ansible-core from 2.18.0 to 2.18.1 [\#192](https://github.com/dj-wasabi/ansible-telegraf/pull/192) ([dependabot[bot]](https://github.com/apps/dependabot))
- Bump ansible-core from 2.16.8 to 2.18.0 [\#191](https://github.com/dj-wasabi/ansible-telegraf/pull/191) ([dependabot[bot]](https://github.com/apps/dependabot))
## [0.14.2](https://github.com/dj-wasabi/ansible-telegraf/tree/0.14.2) (2024-11-26)
[Full Changelog](https://github.com/dj-wasabi/ansible-telegraf/compare/0.14.1...0.14.2)
**Implemented enhancements:**
- Repo installation fails for Almalinux [\#172](https://github.com/dj-wasabi/ansible-telegraf/issues/172)
- Support for sub\_inputs in extra plugins [\#184](https://github.com/dj-wasabi/ansible-telegraf/pull/184) ([lisuml](https://github.com/lisuml))
**Fixed bugs:**
- Add default repository handling for SUSE releases [\#154](https://github.com/dj-wasabi/ansible-telegraf/issues/154)
- Fix Python package dependencies on SUSE releases [\#153](https://github.com/dj-wasabi/ansible-telegraf/issues/153)
**Closed issues:**
- amazon.aws.ec2\_tag\_info [\#177](https://github.com/dj-wasabi/ansible-telegraf/issues/177)
- Failing on Debian Bookwork, telegraf recomends stable main rather than specific release [\#175](https://github.com/dj-wasabi/ansible-telegraf/issues/175)
- Unable to run against linux machines \(redhat\) [\#159](https://github.com/dj-wasabi/ansible-telegraf/issues/159)
- How to add the sub inputs into the same config file using telegraf\_plugin\_extra [\#149](https://github.com/dj-wasabi/ansible-telegraf/issues/149)
**Merged pull requests:**
- Updating the Python packages to make Molecule work [\#190](https://github.com/dj-wasabi/ansible-telegraf/pull/190) ([dj-wasabi](https://github.com/dj-wasabi))
- fix: add missing tasks for RedHat distro \(rpm install\) [\#189](https://github.com/dj-wasabi/ansible-telegraf/pull/189) ([vfreitassentient](https://github.com/vfreitassentient))
- Bump ansible-core from 2.15.9 to 2.17.6 [\#188](https://github.com/dj-wasabi/ansible-telegraf/pull/188) ([dependabot[bot]](https://github.com/apps/dependabot))
- Use `rhel` within yum url for almalinux [\#187](https://github.com/dj-wasabi/ansible-telegraf/pull/187) ([kuhball](https://github.com/kuhball))
- Add Archlinux OS [\#186](https://github.com/dj-wasabi/ansible-telegraf/pull/186) ([Frankkkkk](https://github.com/Frankkkkk))
- Fixes Role for Almalinux 8.8, Closes \#172 [\#183](https://github.com/dj-wasabi/ansible-telegraf/pull/183) ([mira-miracoli](https://github.com/mira-miracoli))
## [0.14.1](https://github.com/dj-wasabi/ansible-telegraf/tree/0.14.1) (2024-02-17)
[Full Changelog](https://github.com/dj-wasabi/ansible-telegraf/compare/0.14.0...0.14.1)
**Implemented enhancements:** **Implemented enhancements:**
@ -22,7 +62,7 @@
- Bump ansible-core from 2.15.2 to 2.15.9 [\#182](https://github.com/dj-wasabi/ansible-telegraf/pull/182) ([dependabot[bot]](https://github.com/apps/dependabot)) - Bump ansible-core from 2.15.2 to 2.15.9 [\#182](https://github.com/dj-wasabi/ansible-telegraf/pull/182) ([dependabot[bot]](https://github.com/apps/dependabot))
- Bump ansible from 8.2.0 to 8.5.0 [\#181](https://github.com/dj-wasabi/ansible-telegraf/pull/181) ([dependabot[bot]](https://github.com/apps/dependabot)) - Bump ansible from 8.2.0 to 8.5.0 [\#181](https://github.com/dj-wasabi/ansible-telegraf/pull/181) ([dependabot[bot]](https://github.com/apps/dependabot))
- Change Debian repo location [\#179](https://github.com/dj-wasabi/ansible-telegraf/pull/179) ([danclough](https://github.com/danclough)) - Change Debian repo location [\#179](https://github.com/dj-wasabi/ansible-telegraf/pull/179) ([danclough](https://github.com/danclough))
- replace depracted aws module [\#178](https://github.com/dj-wasabi/ansible-telegraf/pull/178) ([ThorstenHeck](https://github.com/ThorstenHeck)) - replace depracted aws module [\#178](https://github.com/dj-wasabi/ansible-telegraf/pull/178) ([daparm](https://github.com/daparm))
- added yaml 1.2.2 compatibility [\#176](https://github.com/dj-wasabi/ansible-telegraf/pull/176) ([DEvil0000](https://github.com/DEvil0000)) - added yaml 1.2.2 compatibility [\#176](https://github.com/dj-wasabi/ansible-telegraf/pull/176) ([DEvil0000](https://github.com/DEvil0000))
- Migrate from io to diskio to fix deprecation warning [\#173](https://github.com/dj-wasabi/ansible-telegraf/pull/173) ([mprasil](https://github.com/mprasil)) - Migrate from io to diskio to fix deprecation warning [\#173](https://github.com/dj-wasabi/ansible-telegraf/pull/173) ([mprasil](https://github.com/mprasil))
@ -142,7 +182,6 @@
- Some changes for fixing FreeBSD [\#101](https://github.com/dj-wasabi/ansible-telegraf/pull/101) ([dj-wasabi](https://github.com/dj-wasabi)) - Some changes for fixing FreeBSD [\#101](https://github.com/dj-wasabi/ansible-telegraf/pull/101) ([dj-wasabi](https://github.com/dj-wasabi))
- basic FreeBSD support [\#100](https://github.com/dj-wasabi/ansible-telegraf/pull/100) ([langerma](https://github.com/langerma)) - basic FreeBSD support [\#100](https://github.com/dj-wasabi/ansible-telegraf/pull/100) ([langerma](https://github.com/langerma))
- Added the use\_proxy argument to use a proxy \(or not\) [\#98](https://github.com/dj-wasabi/ansible-telegraf/pull/98) ([dj-wasabi](https://github.com/dj-wasabi)) - Added the use\_proxy argument to use a proxy \(or not\) [\#98](https://github.com/dj-wasabi/ansible-telegraf/pull/98) ([dj-wasabi](https://github.com/dj-wasabi))
- Various small changes for molecule [\#97](https://github.com/dj-wasabi/ansible-telegraf/pull/97) ([dj-wasabi](https://github.com/dj-wasabi))
## [0.12.0](https://github.com/dj-wasabi/ansible-telegraf/tree/0.12.0) (2019-03-12) ## [0.12.0](https://github.com/dj-wasabi/ansible-telegraf/tree/0.12.0) (2019-03-12)
@ -158,6 +197,7 @@
**Merged pull requests:** **Merged pull requests:**
- Various small changes for molecule [\#97](https://github.com/dj-wasabi/ansible-telegraf/pull/97) ([dj-wasabi](https://github.com/dj-wasabi))
- Add processors section in Telegraf config [\#94](https://github.com/dj-wasabi/ansible-telegraf/pull/94) ([ph4r5h4d](https://github.com/ph4r5h4d)) - Add processors section in Telegraf config [\#94](https://github.com/dj-wasabi/ansible-telegraf/pull/94) ([ph4r5h4d](https://github.com/ph4r5h4d))
- Updated to Telegraf 1.10.0;Different installation methods [\#93](https://github.com/dj-wasabi/ansible-telegraf/pull/93) ([dj-wasabi](https://github.com/dj-wasabi)) - Updated to Telegraf 1.10.0;Different installation methods [\#93](https://github.com/dj-wasabi/ansible-telegraf/pull/93) ([dj-wasabi](https://github.com/dj-wasabi))
- Updating Telegraf default to 1.9.5 [\#92](https://github.com/dj-wasabi/ansible-telegraf/pull/92) ([sdurrheimer](https://github.com/sdurrheimer)) - Updating Telegraf default to 1.9.5 [\#92](https://github.com/dj-wasabi/ansible-telegraf/pull/92) ([sdurrheimer](https://github.com/sdurrheimer))

View File

@ -1,13 +1,16 @@
A. Binzxxxxxx
Alejandro Alejandro
Angristan Angristan
Anthony ARNAUD Anthony ARNAUD
Carl Bäckström Carl Bäckström
DEvil0000 DEvil0000
DJΞRFY DJΞRFY
Dan Clough
Daniel Werdermann Daniel Werdermann
Diego Nava Diego Nava
Emerson Knapp Emerson Knapp
Farshad Nematdoust Farshad Nematdoust
Frank Villaro-Dixon
Greg Greg
Harald Kraemer Harald Kraemer
Heckel, Robert J Heckel, Robert J
@ -24,6 +27,9 @@
Markus Langer Markus Langer
Matt Matt
Max Nasonov Max Nasonov
Michał Lisowski
Mira
Miro Prasil
Miroslav Prasil Miroslav Prasil
NotDead NotDead
Olivier Boukili Olivier Boukili
@ -37,15 +43,19 @@
Romain BUREAU Romain BUREAU
Ryan Conway Ryan Conway
Simo Tuomisto Simo Tuomisto
Simon
Slawomir Skowron Slawomir Skowron
Steve Durrheimer Steve Durrheimer
Steven Wirges Steven Wirges
TheCodeAssassin TheCodeAssassin
Thomas Szymanski Thomas Szymanski
ThorstenHeck
Troy Jendra Troy Jendra
Vinicius Freitas
Werner Dijkerman Werner Dijkerman
Werner Dijkerman [GH bot] Werner Dijkerman [GH bot]
aroglian aroglian
dependabot[bot]
gaelL gaelL
kingphil kingphil
maxwondercorn maxwondercorn

View File

@ -55,6 +55,7 @@ This role supports the following systems:
* (Open)Suse * (Open)Suse
* Windows (Best effort) * Windows (Best effort)
* FreeBSD (Best effort) * FreeBSD (Best effort)
* Archlinux (only "online" mode)
So, you'll need one of those systems.. :-) So, you'll need one of those systems.. :-)
Please sent Pull Requests or suggestions when you want to use this role for other systems. Please sent Pull Requests or suggestions when you want to use this role for other systems.
@ -289,6 +290,7 @@ Telegraf plugin options:
* `interval`: How often to gather this metric. Normal plugins use a single global interval, but if one particular plugin should be run less or more often, you can configure that here. * `interval`: How often to gather this metric. Normal plugins use a single global interval, but if one particular plugin should be run less or more often, you can configure that here.
* `filter.name`: Like when there is an extra filter that needs to be configured, like `grok` for a `logparser` plugin. * `filter.name`: Like when there is an extra filter that needs to be configured, like `grok` for a `logparser` plugin.
* `filter.config`: The extra configuration for the - in the `filter.name` example - `grok` filter. (See example below) * `filter.config`: The extra configuration for the - in the `filter.name` example - `grok` filter. (See example below)
* `sub_inputs`: If the input requires other sub inputs, you can add them here (see example below).
An example might look like this: An example might look like this:
@ -325,6 +327,30 @@ When you want to make use of the `grok` filter for the logparser:
config: config:
- patterns = ["invoked oom-killer"] - patterns = ["invoked oom-killer"]
When you want to include a sub inputs with their own configuration:
```yaml
sqs:
plugin: cloudwatch
config:
- region = "eu-west-1"
- access_key = "foo"
- secret_key = "bar"
- period = "1m"
- delay = "2m"
- interval = "1m"
- namespace = "AWS/SQS"
- statistic_include = ["average"]
sub_inputs:
metrics:
- names: [
"ApproximateAgeOfOldestMessage",
"ApproximateNumberOfMessagesVisible",
]
metrics.dimensions:
- name: "QueueName"
value: "*"
```
## Dependencies ## Dependencies
No dependencies No dependencies

View File

@ -2,7 +2,7 @@
telegraf_enabled: True telegraf_enabled: True
# defaults file for ansible-telegraf # defaults file for ansible-telegraf
telegraf_agent_version: 1.18.2 telegraf_agent_version: 1.32.3
telegraf_agent_version_patch: 1 telegraf_agent_version_patch: 1
telegraf_agent_package: telegraf telegraf_agent_package: telegraf
telegraf_agent_package_file_deb: telegraf_{{ telegraf_agent_version }}-{{ telegraf_agent_version_patch }}_{{ telegraf_agent_package_arch }}.deb telegraf_agent_package_file_deb: telegraf_{{ telegraf_agent_version }}-{{ telegraf_agent_version_patch }}_{{ telegraf_agent_package_arch }}.deb
@ -77,6 +77,7 @@ telegraf_yum_baseurl:
default: "https://repos.influxdata.com/{{ ansible_distribution|lower }}/{{ telegraf_redhat_releasever }}/$basearch/stable" default: "https://repos.influxdata.com/{{ ansible_distribution|lower }}/{{ telegraf_redhat_releasever }}/$basearch/stable"
redhat: "https://repos.influxdata.com/rhel/{{ telegraf_redhat_releasever }}/$basearch/stable" redhat: "https://repos.influxdata.com/rhel/{{ telegraf_redhat_releasever }}/$basearch/stable"
rocky: "https://repos.influxdata.com/rhel/{{ telegraf_redhat_releasever }}/$basearch/stable" rocky: "https://repos.influxdata.com/rhel/{{ telegraf_redhat_releasever }}/$basearch/stable"
almalinux: "https://repos.influxdata.com/rhel/{{ telegraf_redhat_releasever }}/$basearch/stable"
telegraf_yum_gpgkey: "https://repos.influxdata.com/influxdata-archive_compat.key" telegraf_yum_gpgkey: "https://repos.influxdata.com/influxdata-archive_compat.key"
telegraf_zypper_repos: telegraf_zypper_repos:

View File

@ -1,10 +1,11 @@
ansible==8.5.0 ansible==9.7.0
ansible-compat==4.1.7 ansible-compat==24.10.0
ansible-core==2.15.9 ansible-core==2.18.1
docker==6.1.3 docker==7.1.0
molecule==6.0.1 molecule==6.0.3
molecule-docker==2.1.0 molecule-docker==2.1.0
netaddr==0.8.0 molecule-plugins==23.5.3
pytest==7.4.2 netaddr==1.3.0
pytest-testinfra==9.0.0 pytest==8.3.3
pytest-testinfra==10.1.1
testinfra==6.0.0 testinfra==6.0.0

86
tasks/Archlinux.yml Normal file
View File

@ -0,0 +1,86 @@
---
- name: "Archlinux | Set name if state != latest"
set_fact:
telegraf_agent_binary: telegraf={{ telegraf_agent_version }}-{{ telegraf_agent_version_patch }}
when:
- telegraf_agent_package_state != "latest"
- name: "Archlinux | Set telegraf_agent_package_arch"
set_fact:
telegraf_agent_package_arch: "{{ ansible_architecture }}"
- name: "Archlinux | Set telegraf_agent_package_arch specific for x86_64"
set_fact:
telegraf_agent_package_arch: "amd64"
when:
- ansible_architecture == "x86_64"
- name: "Archlinux | Set telegraf_agent_package_arch specific for arm64/armv7l"
set_fact:
telegraf_agent_package_arch: "armhf"
when:
- ansible_architecture == "arm64" or ansible_architecture == "armv7l"
- name: "Archlinux | Create telegraf user"
user:
name: telegraf
system: yes
shell: /bin/false
home: /etc/telegraf
when:
- telegraf_agent_package_method == "online"
- name: "Archlinux | Create telegraf directory"
file:
path: /etc/telegraf
state: directory
when:
- telegraf_agent_package_method == "online"
- name: "Archlinux | Extract telegraf binary"
ansible.builtin.unarchive:
src: "https://dl.influxdata.com/telegraf/releases/telegraf-{{ telegraf_agent_version }}_linux_{{ telegraf_agent_package_arch }}.tar.gz"
dest: /tmp/
remote_src: yes
when:
- telegraf_agent_package_method == "online"
- name: "Archlinux | Copy telegraf binary"
ansible.builtin.copy:
src: "/tmp/telegraf-{{ telegraf_agent_version }}/usr/bin/telegraf"
remote_src: yes
dest: /usr/bin/
owner: root
group: root
mode: 0755
when:
- telegraf_agent_package_method == "online"
- name: "Archlinux | Copy telegraf unit file"
ansible.builtin.copy:
src: "/tmp/telegraf-{{ telegraf_agent_version }}/usr/lib/telegraf/scripts/telegraf.service"
remote_src: yes
dest: /etc/systemd/system/telegraf.service
owner: root
group: root
mode: 0755
when:
- telegraf_agent_package_method == "online"
- name: "Archlinux | Copy telegraf unit file"
ansible.builtin.copy:
src: "/tmp/telegraf-{{ telegraf_agent_version }}/usr/lib/telegraf/scripts/telegraf.service"
remote_src: yes
dest: /etc/systemd/system/telegraf.service
owner: root
group: root
mode: 0755
when:
- telegraf_agent_package_method == "online"
register: telegraf_service
- name: Reload systemd
ansible.builtin.systemd:
daemon_reload: yes
when: telegraf_service.changed

View File

@ -17,7 +17,7 @@
yum_repository: yum_repository:
name: influxdb name: influxdb
description: InfluxDB Repository - RHEL $releasever description: InfluxDB Repository - RHEL $releasever
baseurl: "{{ telegraf_yum_baseurl[ansible_distribution|lower] | default(telegraf_yum_baseurl['default']) }}" baseurl: "{{ telegraf_yum_baseurl['redhat'] | default(telegraf_yum_baseurl['default']) }}"
gpgcheck: "{{ telegraf_yum_gpgcheck | default('true') }}" gpgcheck: "{{ telegraf_yum_gpgcheck | default('true') }}"
gpgkey: "{{ telegraf_yum_gpgkey }}" gpgkey: "{{ telegraf_yum_gpgkey }}"
become: true become: true
@ -27,7 +27,7 @@
- name: "RedHat | Download Telegraf package (online)" - name: "RedHat | Download Telegraf package (online)"
get_url: get_url:
url: https://dl.influxdata.com/telegraf/releases/{{ telegraf_agent_package_file_rpm }} url: https://dl.influxdata.com/telegraf/releases/{{ telegraf_agent_package_file_rpm }}
dest: "{{ telegraf_agent_package }}" dest: "{{ telegraf_agent_package_path }}"
use_proxy: "{{ true if http_proxy is defined and http_proxy else false }}" use_proxy: "{{ true if http_proxy is defined and http_proxy else false }}"
environment: environment:
http_proxy: "{{ http_proxy | default(None) | default(omit) }}" http_proxy: "{{ http_proxy | default(None) | default(omit) }}"
@ -35,7 +35,7 @@
when: when:
- telegraf_agent_package_method == "online" - telegraf_agent_package_method == "online"
- name: "RedHat | Install Telegraf package" - name: "RedHat | Install Telegraf package (repo)"
package: package:
name: "{{ telegraf_agent_package }}" name: "{{ telegraf_agent_package }}"
state: "{{ telegraf_agent_package_state }}" state: "{{ telegraf_agent_package_state }}"
@ -44,3 +44,19 @@
become: true become: true
notify: "Restart Telegraf" notify: "Restart Telegraf"
ignore_errors: "{{ ansible_check_mode }}" ignore_errors: "{{ ansible_check_mode }}"
when:
- telegraf_agent_package_method == "repo"
- name: "RedHat | Install Telegraf package (online)"
dnf:
name: "{{ telegraf_agent_package_path }}/{{ telegraf_agent_package_file_rpm }}"
disable_gpg_check: true
state: "{{ telegraf_agent_package_state }}"
register: is_telegraf_package_installed
until: is_telegraf_package_installed is succeeded
become: true
notify: "Restart Telegraf"
ignore_errors: "{{ ansible_check_mode }}"
when:
- telegraf_agent_package_method == "online"

View File

@ -14,6 +14,11 @@
- telegraf - telegraf
- packages - packages
- name: "Install on Archlinux"
include_tasks: "Archlinux.yml"
when:
- ansible_os_family == "Archlinux" and not telegraf_agent_docker
- name: "Install on Suse" - name: "Install on Suse"
include_tasks: "Suse.yml" include_tasks: "Suse.yml"
when: ansible_os_family == "Suse" and not telegraf_agent_docker when: ansible_os_family == "Suse" and not telegraf_agent_docker

View File

@ -55,3 +55,17 @@
{% endfor %} {% endfor %}
{% endfor %} {% endfor %}
{% endif %} {% endif %}
{% if item.value.sub_inputs is defined and item.value.sub_inputs is iterable %}
{% for sub_input_key, sub_input_list in item.value.sub_inputs.items() %}
{% for block in sub_input_list %}
[[inputs.{{ item.value.plugin | default(item.key) }}.{{ sub_input_key }}]]
{% for param_key, param_value in block.items() %}
{% if param_value is sequence and param_value is not string %}
{{ param_key }} = {{ param_value | to_json }}
{% else %}
{{ param_key }} = "{{ param_value }}"
{% endif %}
{% endfor %}
{% endfor %}
{% endfor %}
{% endif %}