以下の記事にて、閾値監視の自動化をシェルスクリプトで自動化する方法について記載しました。
その処理の中では、ログファイルを作成するという形をとっていますので、今回は補足としてその作成したログファイルを整理する処理を記載します。
処理内容
#!/bin/bash ############################################ # 関数定義 ############################################ #日付取得用 YMD=`date +%y%m%d' #ログファイル定義 CPU_LOG="/home/script/log/cpu_limit.txt" DISK_LOG="/home/script/log/disk_limit.txt" MEM_LOG="/home/script/log/memory_limit.txt" LOG_BK="/home/script/log/LOG_BKUP" ############################################ # メイン処理 ############################################ #ログバックアップ先へ移動 cd $LOG_BK #CPU閾値監視ログ整理 tar czvf cpu_limit_$YMD.tar.gz $CPU_LOG echo -n > $CPU_LOG #メモリ閾値監視ログ整理 tar czvf memory_limit_$YMD.tar.gz $MEM_LOG echo -n > $MEM_LOG #DISK閾値監視ログ整理 tar czvf disk_limit_$YMD.tar.gz $DISK_LOG echo -n > $DISK_LOG #統計情報用としてバックアップを使用しない場合は #以下のコメントアウトを外して14日以前のデータを #削除する #find $LOG_BK -name '*_limit*.tar.gz' -mtime '+14' -exec rm -f {} \;
解説および使用方法
これまでの処理と同様にcronにて制御します。処理タイミングとしては、毎日1回のタイミングで実施すればいいと思います。なお、実際のディレクトリ構成等に注意し、修正時は関数定義部分の修正を行ってください。