16 lines
485 B
Bash
16 lines
485 B
Bash
echo '===MONITOR:temp==='
|
|
if [ -f "$TEMP_LOG" ] && [ -s "$TEMP_LOG" ]; then
|
|
MAX_T=$(sort -n "$TEMP_LOG" | tail -1)
|
|
AVG_T=$(awk '{s+=$1; n++} END{printf "%.1f", (n?s/n:0)}' "$TEMP_LOG")
|
|
CNT=$(wc -l < "$TEMP_LOG")
|
|
echo 'status:pass'
|
|
echo "metric:max_temp=${MAX_T}"
|
|
echo "metric:avg_temp=${AVG_T}"
|
|
echo "output:采样 ${CNT} 次, 最高 ${MAX_T}°C, 平均 ${AVG_T}°C"
|
|
else
|
|
echo 'status:skip'
|
|
echo 'output:未采集到温度数据'
|
|
fi
|
|
echo ''
|
|
kill $TEMP_PID 2>/dev/null || true
|