※ ChatGPTを利用し、要約された質問です(原文:シェルの実行履歴)
シェルの実行履歴を確認する方法
このQ&Aのポイント
BTSの管理をする際にシェルが正常に動作しているか確認する方法がわからない。
checkシェルの実行履歴を見ることで、シェルの動作状況を把握できる。
怪しい箇所があるため、シェルの作成者に条件設定の根拠を確認する必要がある。
はじめまして。
会社にてBTSの管理をすることになったのですが、
システムが落ちた際に自動で起動するシェルが動いていない様で困っています。
仕組みとしては
checkシェルが1分ごとに動き監視→落ちていると判断すると、restartシェルが動く
という感じです。
ですが朝来ると落ちていることがたまにあり、
たぶんどこかのシェルが正しく動いてないんじゃないか?と思っています。
そこでまず、
checkシェルが正しく動いているのか?
を調べようと思いシェルの実行履歴とか見れないのかな?
と思い探していたのですが、うまく見つからず困っています。
一応checkシェルも記載いたします。
個人的に怪しいなと思っている箇所は、[怪しい] と記載されている辺りです。
これを作成した人が何も情報を残さずにやめてしまって、どういう根拠で条件を設定しているのか不明なんです。
----------------------------------------------
#!/bin/sh
tomcat_home=/usr/local/scarab-1.0-b20/tomcat
chk_log=$tomcat_home/logs/catalina.out
while true
do
btspid=`ps ax | grep "\[java\]" | awk '{print $1}'`
[怪しい] isAlive=`tail -n 261 $chk_log | grep OutOfMemoryError | wc -l`
if [ $isAlive -lt 3 ]; then
echo "scarab is still alive, error count = $isAlive : pid = $btspid"
else
echo "scarab is dead... errot count = $isAlive ; pid = $btspid"
~/restart.sh
# break
fi
sleep 60
done
------------------------------------
補足
catalina.outを見ると、ありました。 tail -n 261 $chk_log | grep OutOfMemoryError | wc -l と実行してみると場合によっては2つ見えたり、0だったり。 なんで3つ以上、上がってきたら落ちていると判断しているか はわかりません。 1,2個では問題ないという事は、OutOfMemoryError自体はたまに 出てくるものなのかな?と勝手に思ってました。