#!/bin/bash
cpu_mem_usage=$(ps aux | grep -E '/DBAudit/app/bin/dd|./dd' | grep -v grep | awk '{print $3, $4}')
dd_cpu=$(echo $cpu_mem_usage | awk '{print $1}')
dd_mem=$(echo $cpu_mem_usage | awk '{print $2}')
dd_alert=""
if [[ "$dd_cpu" == "0.0" && "$dd_mem" == "0.0" ]]; then
dd_alert="⚠️ dd 程序的 CPU 和内存占用都为 0,可能存在异常!"
fi
@
dd_status="存活"
dd_process_alert=""
if ! pgrep -f "dd" > /dev/null; then
dd_status="死亡"
dd_process_alert="⚠️ dd 进程已死亡!"
fi
dir_nums=$(ls /DBAudit/cache/parselog | wc -l)
need_kill_progress=$(ps aux | awk '/npp/ && $3 > 70 && $4 == 0' | awk '{print "pid:",$2,"cpu:",$3,"mem:",$4}')
ps aux | awk '/npp/ && $3 > 70 && $4 == 0 {print $2}' | xargs --no-run-if-empty kill -9
npc_status="存活"
npc_alert=""
if ! pgrep -f "npc" > /dev/null; then
npc_status="死亡"
npc_alert="⚠️ npc 进程已死亡!"
fi
npp_status="存活"
npp_alert=""
if ! pgrep -f "npp" > /dev/null; then
npp_status="死亡"
npp_alert="⚠️ npp 进程已死亡!"
fi
msg="dd程序cpu占用${dd_cpu}%,mem占用${dd_mem}%\n\n目录下日志堆积数:${dir_nums}\n\n需要杀死的npp_ora进程信息:${need_kill_progress}\n\nnpc进程状态:${npc_status}\n\nnpp进程状态:${npp_status}\n\ndd进程状态:${dd_status}"
if [ -n "$dd_alert" ]; then
msg="${dd_alert}\n\n${msg}"
fi
if [ -n "$dd_process_alert" ]; then
msg="${dd_process_alert}\n\n${msg}"
fi
if [ -n "$npc_alert" ]; then
msg="${npc_alert}\n\n${msg}"
fi
if [ -n "$npp_alert" ]; then
msg="${npp_alert}\n\n${msg}"
fi
send="xxx通知群"
curl -X POST "http://192.168.1.205:3002/webhook/msg/v2?token=xxx" \
-H "Content-Type: application/json" \
-d "{\"to\": \"$send\",\"isRoom\":true, \"data\": {\"content\": \"$msg\"}}"
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南