監査のため、各人のコマンド履歴を収集する必要がでたのでsyslog収集用に記録
まあ上記参考サイトのまんまなんだけど
以下を"/etc/profile"などに書く
function log2syslog
{
declare COMMAND
COMMAND=$(fc -ln -0)
logger -p local1.notice -t bash -i -- "${HOSTNAME}:${USER}:${COMMAND}"
}
trap log2syslog DEBUG
これで"/var/log/messages.log"に記録されるようになる
他のlogと混ざるのが嫌なら"facility"などを分ける
補足
fc -ln -0
"fc"コマンドはコマンド履歴をリスト表示するコマンド
lastを指定しない場合、lastには現在のコマンドが指定される
trap log2syslog DEBUG
実行中のプロセスに対するシグナルを検知し、指定された処理を返すコマンド
"DEBUG"を指定した場合、コマンドの実行毎にDEBUGシグナルを補足