• ベストアンサー

Windows2003のイベントログの保持

ファイルアクセスログをとっているのですが、 ログを残す項目を減らしても一週間くらいで 最大量に達してしまいます。 標準のイベントログは ・MSのバグのようで、GUI上では4Tまで保存できるように設定できるが実際には約 300MB程度しか保持できない (下記資料参照) ・ログの世代管理が自動で出来ない (上書きか手動保存&消去しかできない) なので ・ログの世代管理が自動化する もしくは ・ログの最大値300Mをより大きくする 方法を探しています。Windowsプログラムであったり 専用プログラムでもかまいません。 製品版は高額のため、フリーソフトや設定での対応 を希望しております。 よろしくお願いします。 ---------------以下、参考 http://hehao1.seesaa.net/article/19052975.html ・ [最大ログサイズ]: ログサイズの設定 ※ 64 ~ 4,194,240KB の範囲内で 64 の倍数で設定可能。ただし、実際に有効なのは全ログファイルサイズの合計で約 300MB まで(→【参照】マイクロソフト 技術情報 183097)。

質問者が選んだベストアンサー

  • ベストアンサー
  • JP002086
  • ベストアンサー率35% (1459/4144)
回答No.1

フリーソフトでは、「イベントバックアップツール」とか「DumpEventLog」とかあります。 フリーソフトなので、あくまでも自己責任で対応してください。 両方とも、ベクターにありますが両方のURLを載せておきます。 イベントバックアップツール http://www.vector.co.jp/soft/winnt/util/se103501.html DumpEventLog http://www.vector.co.jp/soft/winnt/util/se242962.html 以上参考にしてください。

htc1014331
質問者

お礼

ありがとうございます。 コマンドラインツールですね。 バッチを書いてテストしてみたいと思います。 たすかりました

その他の回答 (1)

  • Toshi0230
  • ベストアンサー率51% (836/1635)
回答No.2

マイクロソフトのKBの中に、以下のような文書があるんですが、これでは対応できないですか? ---- ログをバックアップするには、NTBackup コマンドまたは Windows NT リソース キットの DUMPEL を使用できます。 ---- dumpel だとイベントログ形式じゃなくてテキストファイルとして落ちるみたいですが、これとスクリプトファイルを組み合わせる方法があるのでは。

参考URL:
http://support.microsoft.com/kb/183097/ja
htc1014331
質問者

お礼

ありがとうございます。 指定するパラメーターが必要らしいので 調べてみます。 助かりました。

関連するQ&A

  • イベントログの容量について

    <環境>  ・Windows NT 4.0 SP6a  ・NTドメインのPDCです <質問>  弊社では、Windows NT 4.0 SP6aをファイルサーバとして、使用しています。ディレクトリ及びファイルへのアクセスログを取得するため、セキュリティログの設定を行っています。アクセスが頻繁にあるため、ログの保存容量を300MBにし、「必要に応じてイベントログを上書きする」に設定しているのですが、実際は190MB以上ファイルが大きくならず上書きされてしまいます。ちなみにハードディスクの空き容量は1GB程度あります。なんとか300MBまでより溢れるログだけ削除されるようにならないでしょうか。 お手数をおかけしますが、宜しくお願い致します。

  • イベントログの保存・管理について

    Windows2003Serverをファイルサーバーと使用しており、セキュリティ強化のためオブジェクトアクセスのログを取得することになりました。 オブジェクトアクセスのログを取得するとログの量が膨大になり1日分でも数十MBになってしまいます。 できれば1週間単位で保存しておきたいのですが、自動でログファイルのバックアップを行い、圧縮等してくれるツールはありますでしょうか? フリーでも、数万円のソフトでも構いません。 よろしくお願いします。

  • イベントログの保存先の変更方法

    イベントログの最大サイズや最大サイズの達した時の動作は設定できるのですが、保存先を変更することはできないのでしょうか?もしできるのであれば、方法を教えていただけませんでしょうか。

  • イベントログの内容が何もなくなってしまいました

    さっきのことなんですが、スクリーンセーバーが勝手に終了してて、デスクトップの画面がでてました。っで、しかも固まってるんです。 やむなくCTRL ALT DEL っでなんかよくわからなかったのですが、タスクの終了ってしたら、とりあえず、復帰はできたのです。こういう時って、イベントログに何が原因でこの問題が起こったのかって出てるはずだと思い、管理ツールのイベントビューワのアプリケーションを見てみたんです。 そしたら、イベントログファイルが壊れていますとかって出てるんです。 中身は何も見えません。 これって、このままつかってても大丈夫なんでしょうか? ちなみに再起動しても、変わりません。

  • WSHでイベントログの自動保存

    以下の運用をWSHで実行できないかと考えています。 (1)Windows2003Serverの指定場所に実行日の日付の名前を付けたフォルダを自動作成する。 (フォルダ名例 D:\Eventlog\20071211) (2)Windows2003Serverのイベントログを全種類、名前を付けてエクスポートする。ファイル名は、 "今日の日付"_"イベントログ名".evt (ファイル名例 2007_12_11_Application.evt etc...) エクスポート先は、(1)で作成したフォルダとする。 (3)エクスポートしたログファイルを1ファイルずつZIP形式で圧縮する。 最終的に D:\Eventlog\20071211フォルダ内に 2007_12_11_Application.ZIP 2007_12_11_Security.ZIP .... という形で全てのイベントログが圧縮されて保存させたいです。 すいませんが、上記一連の処理をWSHで実現する方法をご教授ください。宜しくお願いします。

  • イベントログの自動保存

    「イベントビューアでログファイルをCSVで保存する」をコマンドラインから実行できませんか? バッチファイルを作成してWindowsのタスク機能で自動実行させたいと思っています。

  • Windows上のファイル操作の履歴を取得する方法

    ファイル操作の履歴(参照、更新、移動、削除、コピーなど)について、 どのファイルを、誰が、どのマシンで、いつ、何をしたか、の情報をプログラムで取得したいのです。 Windowsの機能に、オブジェクト監査があり、イベントログの形である程度の情報を取得できるのですが、 以下のような情報が的確に収集できません。 ・監査を設定したフォルダから、監査を設定していないフォルダやドライブにコピー/移動 ・ファイルのリネーム等 また、イベントログの数が1回のファイル操作で数十も出力されてしまうため、 何百人分ものファイル操作の情報を、Windows監査のイベントログから収集するとしたら、 これをプログラムするのは非現実的のように思います。 しかも、ファイルタイプ(wordやtxtなど)で異なったイベントログの出力のされ方が異なっています。 どなたか、プログラムでファイル操作の履歴を収集する方法をご存知の方、 解決策を教えてください。 宜しくお願い致します。

  • バッチでイベントログ出力したい

    バッチでイベントログ出力したい Windows2003でバッチファイルにてコマンドを実行し、エラーの場合は イベントログに出力したいと考えています。 ERRORLEVELを判定してエラーなら eventcreate /ID 100 /L system /SO Cmd /T ERROR /D "エラーメッセージ" のようにeventcreateコマンドを実行するようにしています。 この"エラーメッセージ"の部分を実際のコマンド実行時のエラーメッセージを 入れ込みたいのですが複数行入れる方法がないか教えてください。 コマンド 2> file.log のようにエラーを出力してそれをfor文で読み込んでいこうとしたのですが 変数に複数行入れることができず、上手くいきません。 何か良い方法があれば教えてください。

  • バッチ化は可能でしょうか?

    スタート→管理ツール→イベントビュアのアプリケーションログ→ログファイルの名前を付けて保存{保存する場所(C:)、ファイル名(log)、ファイルの種類(イベントログ*evt)を選択する} 上記のバッチ化を検討中です。 可能かどうか教えてください。

  • イベントログの読み込み 

    すみません。 教えてくださいませ。 早速ですが、Vc++でイベントログを取得するプログラムを作成しているのですが、うまくいきません。 [ソース] DWORD BufSize; DWORD ReadBytes; DWORD NextSize; DWORD EventNum; BOOL bResult; HANDLE hEventLog = NULL; HGLOBAL hDIB; try{ /* イベントログのオープン */ hEventLog = ::OpenEventLog(NULL, "Application"); if(hEventLog == NULL){ eMsg = "ファイルオープンエラー"; return -1; } /* イベントログの最大数 */ bResult = GetNumberOfEventLogRecords(hEventLog, &EventNum); for(;;){ //最大サイズを取得 BufSize = 1; hDIB = GlobalAlloc(GMEM_FIXED, BufSize); bResult = ::ReadEventLog(hEventLog,EVENTLOG_FORWARDS_READ | EVENTLOG_SEQUENTIAL_READ,0,hDIB,BufSize,&ReadBytes,&NextSize); if(!bResult && GetLastError() != ERROR_INSUFFICIENT_BUFFER) { eMsg = "ファイルリードエラー"; CloseEventLog(hEventLog); GlobalFree(hDIB); return -1; } GlobalFree(hDIB); hDIB = NULL; BufSize = NextSize; hDIB = ::GlobalAlloc(GMEM_FIXED, BufSize); bResult = ::ReadEventLog(hEventLog,EVENTLOG_FORWARDS_READ | EVENTLOG_SEQUENTIAL_READ,0,hDIB,BufSize,&ReadBytes,&NextSize); if(!bResult){ eMsg = "ファイルリードエラー"; CloseEventLog(hEventLog); GlobalFree(hDIB); return -1; } } }catch(CException* e){ if(hEventLog != NULL){ eMsg = (LPCTSTR)e; CloseEventLog(hEventLog); } } GlobalFree(hDIB); return 1; [内容] 正常にコンパイルはするのですが、実行後エラーが出力されます。"ファイルリードエラー"(エラー文) メモリの確保がうまくいっていないのでしょうか?