add qbittorrent to node_exporter

This commit is contained in:
lucas committed 2026-10-24 15:09:37 +02:00
1 parent 63c34f5387
commit 6e369c3656
1 file changed
+17 -3
@@ -20,10 +20,24 @@ fi
done done
echo docker_container_number $DOCKER_CONTAINER_NUM echo docker_container_number $DOCKER_CONTAINER_NUM
docker ps -a --format '{{.Names}}' | grep -E '^qbittorrent' | while read -r qbit_host; do
IP_JSON=$(docker exec "$qbit_host" curl -fsSL http://ip-api.com/json) || continue
IP=$(jq -r '.query' <<<"$IP_JSON")
COUNTRY=$(jq -r '.country' <<<"$IP_JSON")
CITY=$(jq -r '.city' <<<"$IP_JSON")
ISP=$(jq -r '.isp' <<<"$IP_JSON" | sed 's/"/\\"/g')
COUNTRYCODE=$(jq -r '.countryCode' <<<"$IP_JSON")
LAT=$(jq -r '.lat' <<<"$IP_JSON")
LON=$(jq -r '.lon' <<<"$IP_JSON")
echo "public_ip_info{ip=\"$IP\",country=\"$COUNTRY\",city=\"$CITY\",isp=\"$ISP\",countrycode=\"$COUNTRYCODE\",lat=\"$LAT\",lon=\"$LON\",exported_host=\"$qbit_host\"} 1"
done
# Public IP information # Public IP information
IP_JSON=$(curl -fsSL http://ip-api.com/json) IP_JSON=$(curl -fsSL http://ip-api.com/json)
IP=$(jq -r '.query' <<< "$IP_JSON") IP=$(jq -r '.query' <<< "$IP_JSON")
COUNTRY=$(jq -r '.country' <<< "$IP_JSON") COUNTRY=$(jq -r '.country' <<< "$IP_JSON")
CITY=$(jq -r '.city' <<< "$IP_JSON") CITY=$(jq -r '.city' <<< "$IP_JSON")
@@ -31,8 +45,8 @@ fi
COUNTRYCODE=$(jq -r '.countryCode' <<< "$IP_JSON") COUNTRYCODE=$(jq -r '.countryCode' <<< "$IP_JSON")
LAT=$(jq -r '.lat' <<< "$IP_JSON") LAT=$(jq -r '.lat' <<< "$IP_JSON")
LON=$(jq -r '.lon' <<< "$IP_JSON") LON=$(jq -r '.lon' <<< "$IP_JSON")
echo "public_ip_info{ip=\"$IP\",country=\"$COUNTRY\",city=\"$CITY\",isp=\"$ISP\",countrycode=\"$COUNTRYCODE\",lat=\"$LAT\",lon=\"$LON\"} 1" echo "public_ip_info{ip=\"$IP\",country=\"$COUNTRY\",city=\"$CITY\",isp=\"$ISP\",countrycode=\"$COUNTRYCODE\",lat=\"$LAT\",lon=\"$LON\",exported_host=\"$(hostname)\"} 1"
echo "custom_metrics_last_update_timestamp_seconds $(date +%s)" echo "custom_metrics_last_update_timestamp_seconds $(date +%s)"
} > "$OUT.$$" } > "$OUT.$$"