debian

Debian系统如何监控FetchDebian

小樊
44
2025-12-05 09:09:06
栏目: 智能运维

在 Debian 上监控 FetchDebian 的可执行方案

一 监控目标与总体思路

二 命令行实时监控

三 日志采集与告警

四 自动化巡检与阈值告警脚本

#!/usr/bin/env bash
set -Eeuo pipefail

LOGFILE="/var/log/fetchdebian-monitor.log"
WARN=80   # 磁盘使用率阈值 %
CRIT=90
MIRROR="https://deb.debian.org/debian/"

log() { echo "$(date -Iseconds) $*" | tee -a "$LOGFILE"; }

# 1) 进程存活
if ! pgrep -x fetchdebian >/dev/null; then
  log "CRIT: fetchdebian is NOT running"
  exit 2
fi

# 2) 镜像连通性
if ! curl -I --max-time 5 "$MIRROR" >/dev/null 2>&1; then
  log "CRIT: cannot reach Debian mirror $MIRROR"
  exit 2
fi

# 3) 磁盘空间(根分区)
usage=$(df / | awk 'NR==2 {gsub(/%/,""); print $5}')
if (( usage >= CRIT )); then
  log "CRIT: rootfs ${usage}% used (threshold ${CRIT}%)"
  exit 2
elif (( usage >= WARN )); then
  log "WARN: rootfs ${usage}% used (threshold ${WARN}%)"
  exit 1
fi

# 4) 最近日志是否有 error(按你的实际日志路径调整)
if journalctl -u fetchdebian.service --since "5 minutes ago" -q | grep -qi 'error'; then
  log "CRIT: 'error' found in fetchdebian logs within last 5 minutes"
  exit 2
fi

log "OK: fetchdebian running, mirror reachable, disk ${usage}%, no recent errors"
exit 0

五 可选的可视化与长期监控

0
看了该问题的人还看了