📄 innwatch.ctl
字号:
## $Revision: 1.3 $## innwatch.ctl -- control file for innwatch.## Indicates what to run to test the state of the news system, and what## to do about it. Format:## !state!when!command!test!limit!command!reason/comment## where## <!> Delimiter; pick from [,:@;?!]## <state> State to enter if true.## <when> States we must be in to match.## <command> Command to run to test condition.## <test> Operator to use in test(1) command.## <limit> Value to test against.## <command> Command for innwatch to perform; use exit,## flush, go, pause, shutdown, skip, or throttle.## <reason> Used in ctlinnd command (if needed).## First, just exit innwatch if innd has gone away.## =()<!!! test -f @<_PATH_SERVERPID>@ && echo 0 || echo 1 ! eq ! 1 ! exit ! innd dead>()=!!! test -f /var/spool/news/data/innd/innd.pid && echo 0 || echo 1 ! eq ! 1 ! exit ! innd dead## Next test the load average. Above first threshold pause, above higher## threshold throttle, below restart limit undo whatever was done.## =()<!load!load hiload! uptime | tr -d ,. | awk '{ print $(NF - 2) }' ! lt ! @<INNWATCH_LOLOAD>@ ! go ! loadav>()=!load!load hiload! uptime | tr -d ,. | awk '{ print $(NF - 2) }' ! lt ! 1000 ! go ! loadav## =()<!hiload!+ load! uptime | tr -d ,. | awk '{ print $(NF - 2) }' ! gt ! @<INNWATCH_HILOAD>@ ! throttle ! loadav>()=!hiload!+ load! uptime | tr -d ,. | awk '{ print $(NF - 2) }' ! gt ! 2000 ! throttle ! loadav## =()<!load!+! uptime | tr -d ,. | awk '{ print $(NF - 2) }' ! gt ! @<INNWATCH_PAUSELOAD>@ ! pause ! loadav>()=!load!+! uptime | tr -d ,. | awk '{ print $(NF - 2) }' ! gt ! 1500 ! pause ! loadav## If load is OK, check space (and inodes) on various filesystems## =()<!!! df . | awk 'NR == 2 { print $4 }' ! lt ! @<INNWATCH_SPOOLSPACE>@ ! throttle ! No space (spool)>()=!!! df . | awk 'NR == 2 { print $4 }' ! lt ! 8000 ! throttle ! No space (spool)## =()<!!! df @<_PATH_BATCHDIR>@ | awk 'NR == 2 { print $4 }' ! lt ! @<INNWATCH_BATCHSPACE>@ ! throttle ! No space (newsq)>()=!!! df /var/spool/news/out.going | awk 'NR == 2 { print $4 }' ! lt ! 800 ! throttle ! No space (newsq)## =()<!!! df @<_PATH_NEWSLIB>@ | awk 'NR == 2 { print $4 }' ! lt ! @<INNWATCH_LIBSPACE>@ ! throttle ! No space (newslib)>()=!!! df /var/spool/news/data | awk 'NR == 2 { print $4 }' ! lt ! 25000 ! throttle ! No space (newslib)## =()<!!! df -i . | awk 'NR == 2 { print $3 }' ! lt ! @<INNWATCH_SPOOLNODES>@ ! throttle ! No space (spool inodes)>()=!!! df -i . | awk 'NR == 2 { print $3 }' ! lt ! 200 ! throttle ! No space (spool inodes)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -