From c15e3a9d152b0b19267ba8fd5eb1670753479e07 Mon Sep 17 00:00:00 2001 From: jurgenhaas <juergen@paragon-es.de> Date: Wed, 14 Mar 2018 18:48:19 +0100 Subject: [PATCH] ansible-roles/fluentd-client#4 Moior FluentD buffer --- tasks/install.yml | 18 ++++++++++++++++ templates/fluentd_buffer.chart.sh | 34 +++++++++++++++++++++++++++++++ templates/fluentd_buffer.conf | 10 +++++++++ 3 files changed, 62 insertions(+) create mode 100644 templates/fluentd_buffer.chart.sh create mode 100644 templates/fluentd_buffer.conf diff --git a/tasks/install.yml b/tasks/install.yml index ae83c36..69d366d 100644 --- a/tasks/install.yml +++ b/tasks/install.yml @@ -28,3 +28,21 @@ args: chdir: /opt/{{ netdata_local_archive|default('netdata') }} when: netdata_clone.changed or netdata_extract.changed + +- name: "Install Custom Charts" + template: + src: '{{ item }}.chart.sh' + dest: '/usr/libexec/netdata/charts.d/{{ item }}.chart.sh' + with_items: + - 'fluentd_buffer' + notify: + - "Restart NetData" + +- name: "Install Custom Alerts" + template: + src: '{{ item }}.conf' + dest: '/etc/netdata/health.d/{{ item }}.conf' + with_items: + - 'fluentd_buffer' + notify: + - "Restart NetData" diff --git a/templates/fluentd_buffer.chart.sh b/templates/fluentd_buffer.chart.sh new file mode 100644 index 0000000..17ff950 --- /dev/null +++ b/templates/fluentd_buffer.chart.sh @@ -0,0 +1,34 @@ +fluentd_buffer_update_every=5 +fluentd_buffer_priority=12000 +fluentd_buffer_value1=0 +fluentd_buffer_last=0 +fluentd_buffer_count=0 + +fluentd_buffer_get() { + fluentd_buffer_value1=$(find /var/log/td-agent/buffer -type f | wc -l) + return 0 +} + +fluentd_buffer_check() { + return 0 +} + +fluentd_buffer_create() { + cat <<EOF +CHART fluentd_buffer.files '' "Files in buffer" "files" fluentd fluentd.countfiles line $((fluentd_buffer_priority + 1)) $fluentd_buffer_update_every +DIMENSION countfiles '' absolute 1 1 +EOF + return 0 +} + +fluentd_buffer_update() { + fluentd_buffer_get || return 1 + + cat <<VALUESEOF +BEGIN fluentd_buffer.files $1 +SET countfiles = $fluentd_buffer_value1 +END +VALUESEOF + + return 0 +} diff --git a/templates/fluentd_buffer.conf b/templates/fluentd_buffer.conf new file mode 100644 index 0000000..2bf2442 --- /dev/null +++ b/templates/fluentd_buffer.conf @@ -0,0 +1,10 @@ +template: fluentd_buffer_files + on: fluentd_buffer.files + calc: $this + green: 15 + red: 20 + every: 10s + warn: $this > $green + crit: $this > $red + info: files in buffer + to: sysadmin -- GitLab