2つの日付の間にランダムなログファイルセットからエントリをダンプするツール

2つの日付の間にランダムなログファイルセットからエントリをダンプするツール

数日前に中断が発生し、サポートチームがその期間の利用可能なログを要求しました。これを行う方法を考えると、通常、2つの日付エントリ間で一度に多数のログファイルを解析できるのが便利だと思いました。 。

特に、構成に関する先見の明がある場合は、これを可能にする多くのツールがあります
splunksyslog-ngrsyslog

(この要件を満たすために中央ロギングホストをインストールする予定です)

しかし、短期的には/var/log/*フォルダを繰り返してstdoutにダンプできるツールに興味があります。好ましくは、単純なオプション構文(オプションの検索はnice + mtimeなどになります)を使用し、これをすばやく実行できるように書かれています。おそらくPerlやRubyの代わりにCでしょう)

たとえば、目的に適しているかもしれないし、そうでないかもしれないいくつかのツールを見ましたが、mergelogここで間違いなく適切なツールはあまり目立っていません。奇妙なことに、UNIXツールではこれが可能になると予想しました。続くこと。logppsec

答え1

  1. 使用:

    find ... -mtime [fromdate] -a -not -ctime [todate]
    

    [fromdate]その後修正され、以前に作成されたすべてのファイルを検索[todate]

  2. 見つかったファイルに関心のある行を抽出する創造的なパターンを考案します。egrep/awkはPerl / Pythonよりはるかに高速ですので、使用してください。例:

    awk '/^2012-01-(01|02|03)/'
    

    2012年1月の最初、2、3日のすべての行が印刷されます。

上記の内容を作成して実行するのに2分かかりました。パフォーマンスが実際に問題である場合は、より複雑なものを見つけようとし続けます。

関連情報