● LogDel 〜 古くなったログファイルを自動削除しましょう ● Ver.1.02 2002/02/28 岡田重徳 ● 概要 SysLog Server が生成するログファイルは重要ですが、どんどん溜まって いくと Disk を圧迫してしまいます。そこで、古いログを削除するツール を作ってみました。 このプログラムは Microsoft の VisualBasic V6.0(SP5) で作りました。 3種類までのログファイルを消すことができます。 それぞれについて、格納ディレクトリ・サブディレクトリ名の規則・ログ ファイル名の規則・ログ保存期間が設定できます。 設定プログラムとファイル削除プログラムは独立しています。設定プログ ラムには1日1回(午前0時)削除プログラムを呼び出す機能があります が、信頼性の高いスケジューラから削除プログラムを呼び出す方法を取る こともできます。 ※ この説明文の中で LogDel と LogDelConfig という名前が出てきます が、それぞれ削除プログラム本体と設定プログラムを示しています。 別の役割を持っている独立したプログラムですので、混同しないよう にご注意ください。 このプログラムの著作権は岡田が保有しますが、このプログラムによって 発生した損害などについて、岡田は一切の責任を負わないものとします。 いわゆる「フリーソフト」と同じ扱いとさせていただきます。 ● 履歴 Ver.1.00 2002/01/17 初版 Ver.1.01 2002/01/21 Century が標準フォントではないことに気づいた ので Times New Roman に変更した(^^; Ver.1.02 2002/02/28 固有情報を削除して一般公開 ● インストール LogDel.msi をWクリックします。 LogDel.exe(削除プログラム)・LogDelConfig.exe(設定プログラム)・ LogDel.ini(設定ファイル)の3つがインストールされます。 スタートメニューとデスクトップにショートカットが作られます。 また、VisualBasic のプログラムを動作させるために必要なランタイムラ イブラリも一緒にインストールされます。 ● 初回起動 LogDelConfig を起動します。 設定画面が表示されます。仮の設定が入っていますので、適宜変更してく ださい。変更が完了しましたら[設定反映]ボタンをクリックします。 ※ 3種類の設定ができますが、設定反映はそれぞれ独立していますので ご注意ください。また、プログラム終了時に未保存確認メッセージは 表示されません。 ● 通常の起動 LogDelConfig を起動します。 前回終了時に常駐する指定があった場合、プログラムは最小化された状態 で起動し、常駐タイマが稼動します。スタートアップメニューに登録して 自動運転をさせる場合などを想定しています。 タスクバーにある[LogDelConfig]をクリックすれば、通常の設定画面が 表示されます。 常駐する指定が無かった場合、設定画面が表示されます。 ● ログファイル削除 LogDel を単独で起動させるか、LogDelConfig の[1回だけ実行]をクリ ックします。設定内容に従い、古いログファイルが消去されます。 ※ LogDel は画面に何も表示されません。 ● LogDelConfig による自動運転 LogDelConfig で常駐タイマを稼動させると、1日1回(午前0時に) LogDel を起動させます。 ※ このタイマは LogDelConfig のプログラム内で動作していますので、 LogDelConfig を終了すると自動運転も止まります。 ● 他のスケジューラによる定期起動 信頼性の高いスケジューラがある場合は、LogDelConfig のタイマを使わ ずに、そのスケジューラでファイル削除を実行することができます。 その設定は、定期的に LogDel を実行させるだけです。 LogDel は LogDelConfig で設定した内容に従いファイル削除をします。 ● 設定内容 ● ● 「□この設定でログ削除する」 LogDel は Log01 Log02 Log03 の3種類の独立した設定が可能ですが、各 設定を有効にするか無効にするかを設定します。チェックの入ったページ の内容でファイルを削除します。チェックの無いページの設定は無視され ます。 ● 「○○日前のログを消す」 今日から数えて何日前のファイルまでを削除するのかを指定します。この 指定よりも古いファイルが削除の対象となります。実際にどの日付の分ま で削除されるのかは「削除処理済み日付」に太字で表示されます。 ● 「○○ヶ月前のログを消す」 今月から数えて何ヶ月前のファイルまでを削除するのかを指定します。こ の指定よりも古いファイルが削除の対象となります。実際にどの月の分ま で削除されるのかは「削除処理済み日付」に月頭と月末が太字で表示され ます。 ● 「ファイル名サンプル」 表示されるだけで編集はできません。 「ログファイル名の規則」「サブディレクトリの規則」「ログファイルの 場所」に「削除処理済み日付」を当てはめた場合の、実際のファイル名を 表示します。 ● 「ログファイル名の規則」 日付ごとのファイル名について、規則を記述してください。 年月日について、下記の法則で文字列を置き換えます。 変換前 変換内容 変換後 西暦4桁 2000 〜 2079 西暦下2桁 00 〜 79 英語の月 JANUARY 〜 DECEMBER フルスペルで大文字 英語の月 January 〜 December フルスペルで先頭のみ大文字 英語の月 january 〜 december フルスペルで小文字 英語の月 JAN 〜 DEC 3文字で大文字 英語の月 Jan 〜 Dec 3文字で先頭のみ大文字 英語の月 jan 〜 dec 3文字で小文字 月2桁固定 01 〜 12 0が付く 月可変長 1 〜 12 0を付けない
日2桁固定 01 〜 31 0が付く 日可変長 1 〜 31 0を付けない 例1 2002/01/16 で FW
.log → FW20020116.log 例2 2002/01/16 で FW
.log → FW16Jan02.log 例3 2002/01/16 で --記録.log → 02-1-16記録.log 例4 2002/01/16 で \\
.log → 02\january\16.log ● 「サブディレクトリの規則」 年ごとや月ごとにサブディレクトリが作られている場合、ここに規則を記 述してください。年月日について、上記の法則で文字列を置き換えます。 サブディレクトリが無い場合は、何も記述しないでください。 ● 「ログファイルの場所」 表示されるだけで編集はできません。 ログファイルが保存されているディレクトリ名が表示されるように、その 下のドライブ選択欄とディレクトリ選択欄で選択操作をしてください。 ※ もし以前設定したディレクトリが存在しなかった場合(初回起動時も 含む)、赤字で LogDel がインストールされているディレクトリが表 示されます。 ● 「削除処理済み日付」 どの日付のファイルまで削除したかの履歴が表示されます。LogDel が実 際に削除対象とする日付は、この日付から、太字の日付までの間となりま す。通常毎日 LogDel で削除をしていれば、この日付と太字の日付は一致 しています。 初回の削除処理や、特定の期間のみを削除したりする場合は、カレンダー の日付部分をクリックして、処理済み日付を変更します。このクリックと 「○○日前のログを消す」「○○ヶ月前のログを消す」で指定した太字の 日付の期間を、削除対象とします。 ● 「設定反映」 前述の項目で変更した内容を設定ファイルに保存します。次回の LogDel 実行時から有効となります。 ※ 3種類の設定ができますが、設定反映はそれぞれ独立しています。 ● 「元に戻す」 前述の項目で変更した内容をキャンセルし、変更前の状態に戻します。 ※ 3種類の設定がありますが、戻す内容はそれぞれ独立しています。 ● 「常駐タイマの状態」 常駐タイマ(1日1回午前0時に LogDel を起動させるタイマ)の稼動状 態を表示します。 ※ 隠しコマンド的ですが、この欄をWクリックすると、常駐タイマの稼 動状態を変更(稼動中/停止)することができます。 ● 「□次回は常駐する」 次回起動時に、常駐タイマを稼動させるかどうかを設定します。 スタートアップメニューに登録して自動運転させる場合などを想定してい ます。この設定がONの場合、起動時に画面表示はせず、最小化された状 態で常駐タイマが稼動します。 ● 「1回だけ実行」 設定されている内容(画面表示の内容ではなくファイルに反映されている 内容)に従い、LogDel を1回実行します。 ※ 自動的に「設定反映」はされません。 ● 「常駐して自動実行」 常駐タイマを稼動させ、画面を最小化します。 ※ 自動的に「設定反映」はされません。 ● 「終了」 LogDelConfig を終了します。常駐タイマも停止します。 ※ 自動的に「設定反映」はされません。 ● 連絡先 shigenori.okada@nifty.ne.jp http://homepage3.nifty.com/CSS/ [eof]