Files
ts3-monolith-go/packaging/ts3monolith-init-rrd
T
2026-11-04 14:57:48 +01:00

41 lines
1.2 KiB
Bash
Executable File

#!/bin/sh
set -eu
# Tworzy nowa baze RRD dla ts3monolith, jesli jeszcze nie istnieje. Uzyj tego
# przy swiezej instalacji (brak starego pliku z archiwum). Uruchom jako
# uzytkownik ts3monolith, np.:
# sudo -u ts3monolith /usr/lib/ts3monolith/init-rrd
#
# Zmienne RRD_PATH / RRDTOOL mozna nadpisac w srodowisku, domyslnie czyta
# te same wartosci co /etc/default/ts3monolith.
RRD_PATH="${RRD_PATH:-/var/lib/ts3monolith/online.rrd}"
RRDTOOL="${RRDTOOL:-rrdtool}"
if [ -e "$RRD_PATH" ]; then
echo "RRD juz istnieje: $RRD_PATH (pomijam)"
exit 0
fi
command -v "$RRDTOOL" >/dev/null 2>&1 || { echo "error: $RRDTOOL nie znaleziony w PATH" >&2; exit 1; }
install -d -m 0750 "$(dirname "$RRD_PATH")"
# step=60s. RRA pokrywaja wszystkie zakresy wykresow aplikacji:
# LAST 1x60s x4500 ~ 75h -> 12h / 24h / 72h
# AVG 5x60s x2016 ~ 7d -> tydzien
# AVG 30x60s x1488 ~ 31d -> miesiac
# AVG 360x60s x1460 ~ 365d -> rok
"$RRDTOOL" create "$RRD_PATH" \
--start now-1h --step 60 \
DS:online:GAUGE:120:0:U \
RRA:LAST:0.5:1:4500 \
RRA:AVERAGE:0.5:5:2016 \
RRA:MAX:0.5:5:2016 \
RRA:AVERAGE:0.5:30:1488 \
RRA:MAX:0.5:30:1488 \
RRA:AVERAGE:0.5:360:1460 \
RRA:MAX:0.5:360:1460
echo "Utworzono nowa baze RRD: $RRD_PATH"