r/statsd-exporter: Deploy statsd exporter

The *statsd exporter* is a Prometheus exporter that converts statistics
from StatsD format into Prometheus metrics.  It is generally useful as a
bridge between processes that emit event-based statistics, turning them
into Prometheus counters and gauges.
frigate-exporter
Dustin 2024-10-13 19:59:52 -05:00
parent a22c8aa0d2
commit 87b9014721
5 changed files with 95 additions and 0 deletions

View File

@ -0,0 +1,8 @@
- name: reload systemd
systemd:
daemon_reload: true
- name: restart statsd exporter
service:
name: statsd-exporter
state: restarted

View File

@ -0,0 +1,2 @@
dependencies:
- systemd-base

View File

@ -0,0 +1,66 @@
- name: ensure required packages are installed
package:
name:
- podman
state: present
tags:
- install
- name: ensure statsd-exporter os group exists
group:
name: statsd-exporter
gid: 228
system: true
state: present
tags:
- user
- group
- name: ensure statsd-exporter os user exists
user:
name: statsd-exporter
uid: 228
system: true
state: present
tags:
- user
- name: ensure statsd-exporter container is defined
template:
src: statsd-exporter.container.j2
dest: /etc/containers/systemd/statsd-exporter.container
owner: root
group: root
mode: u=rw,go=r
notify:
- 'statsd-exporter : reload systemd'
- restart statsd exporter
tags:
- systemd
- container
- name: flush handlers
meta: flush_handlers
- name: ensure statsd exporter starts at boot
service:
name: statsd-exporter
enabled: true
tags:
- service
- name: ensure statsd exporter is running
service:
name: statsd-exporter
state: started
tags:
- service
- name: ensure firewall is configured for statsd exporter
firewalld:
port: 9125/tcp
immediate: true
permanent: true
state: enabled
when: host_uses_firewalld|d(true)
tags:
- firewalld

View File

@ -0,0 +1,16 @@
[Unit]
Description=StatsD Exporter for Prometheus
Wants=network-online.target
After=network-online.target
[Container]
Image=docker.io/prom/statsd-exporter:v0.27.1
User=228
Group=228
DropCapability=all
PublishPort=9102:9102
PublishPort=9125:9125/tcp
PublishPort=9125:9125/udp
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,3 @@
- name: reload systemd
systemd:
daemon_reload: true