#! /bin/sh

# For 13.5-RELEASE 14.3-RELEASE and newer
# Setup Remote Syslog and Metrics
set -o pipefail

#Setup remote syslog
if [ -z "${SKIP_SYSLOG}" ] && REMOTE_SYSLOG=$(host -t SRV _syslog._udp | head -1); then
echo "Enabling remote logging"
mkdir -p /usr/local/etc/syslog.d
cat << EOF >/usr/local/etc/syslog.d/log.conf
*.*     @$(echo $REMOTE_SYSLOG | awk '{print $8}' | sed "s/\.$//" ):$(echo $REMOTE_SYSLOG | awk '{print $7}')
EOF
else
echo "Not setting up remote logging"
fi

# Setup metrics
if [ -z "${SKIP_METRICS}" ] && METRICS_AUTOCONFIG=$(host -t TXT alloy._autoconfig | head -1); then
echo "Setting up Metrics"
METRICS_AUTOCONFIG_URL=$(echo $METRICS_AUTOCONFIG | awk '{ gsub(/"/, "", $4); match($4, "url="); print substr($4, RLENGTH + 1)}')
pkg install -y alloy
cat << EOF >/usr/local/etc/alloy.flow
import.http "auto" {
    url = "${METRICS_AUTOCONFIG_URL}"
    poll_frequency = "15m"
}
auto.config "default" { }
logging {
    level  = "error"
    format = "logfmt"
}
EOF
service alloy enable
else
echo "Not setting up metrics"
fi

set +o pipefail
