make collectd write to timescaledb and other fixes

This commit is contained in:
2025-01-31 09:12:59 +01:00
parent 45bc33ac23
commit 60fd60061d
4 changed files with 18 additions and 6 deletions

View File

@@ -40,4 +40,8 @@ RUN echo 'collectd ALL=(ALL) NOPASSWD:ALL' | sudo tee /etc/sudoers.d/collectd
RUN apt install -y --no-install-recommends python3-pip
RUN pip install --break-system-packages requests
RUN wget https://github.com/nickbabcock/pg-collectd/releases/download/v0.2.0/pg-collectd-collectd57_0.2.0_amd64.deb
RUN dpkg -i pg-collectd-collectd57_0.2.0_amd64.deb
RUN rm pg-collectd-collectd57_0.2.0_amd64.deb
CMD ["/usr/sbin/collectd", "-f"]

View File

@@ -16,7 +16,7 @@ Hostname "shuttle"
FQDNLookup true
#BaseDir "/var/lib/collectd"
#PluginDir "/usr/lib/collectd"
#TypesDB "/usr/share/collectd/types.db" "/etc/collectd/my_types.db"
#TypesDB "/usr/share/collectd/types.db" "/etc/collectd/my_types.db"
#----------------------------------------------------------------------------#
# When enabled, plugins are loaded automatically with the default options #
# when an appropriate <Plugin ...> block is encountered. #
@@ -83,6 +83,7 @@ LoadPlugin swap
LoadPlugin uptime
LoadPlugin users
LoadPlugin smart
LoadPlugin pg_collectd
##############################################################################
# Plugin configuration #
@@ -111,7 +112,7 @@ LoadPlugin smart
<Plugin disk>
Disk "sda"
Disk "sdb"
Disk "nvme0"
Disk "nvme0n1"
IgnoreSelected false
</Plugin>
@@ -123,10 +124,17 @@ LoadPlugin smart
<Plugin "smart">
Disk "sda"
Disk "sdb"
Disk "nvme0"
Disk "nvme0n1"
IgnoreSelected false
</Plugin>
<Plugin pg_collectd>
BatchSize 1000
Connection "postgresql://collectd:collectd@host:6543/collectd"
StoreRates true
LogTimings INFO
</Plugin>
<Include "/etc/collectd/collectd.conf.d">
Filter "*.conf"
</Include>

View File

@@ -1,6 +1,6 @@
#!/bin/bash
SPEEDTEST=/usr/bin/speedtest-cli
SPEEDTEST="/usr/bin/speedtest-cli --secure"
COLLECTION=shuttle
INTERVAL=900
@@ -8,8 +8,6 @@ while :; do
SECONDS=0
RESULT=($($SPEEDTEST | grep Mbit | cut -d' ' -f 2))
TIMESTAMP=$(date +%s)
#echo "PUTVAL $COLLECTION/exec-speedtest/gauge-download interval=$INTERVAL N:${RESULT[0]}"
#echo "PUTVAL $COLLECTION/exec-speedtest/gauge-upload interval=$INTERVAL N:${RESULT[1]}"
echo "PUTVAL $COLLECTION/exec-speedtest/gauge-download ${TIMESTAMP}:${RESULT[0]}"
echo "PUTVAL $COLLECTION/exec-speedtest/gauge-upload ${TIMESTAMP}:${RESULT[1]}"
sleep $((INTERVAL-$SECONDS))

View File

@@ -6,6 +6,7 @@ include:
- docker-compose.authentik.yaml
# Other
- docker-compose.autoheal.yaml
- docker-compose.collectd.yaml
- docker-compose.homarr.yaml
- docker-compose.homeassistant.yaml
@@ -27,6 +28,7 @@ include:
# Networking
- docker-compose.surfshark.yaml
- docker-compose.dns-ad-blocker.yaml
#- docker-compose.socks.yaml
# - docker-compose.openvpn-server.yaml
# Backup