問題タブ [log-rotation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
292 参照

python - Python tornado でのロギング方法の改善

関数でアクションをログに記録しようとしています。次の関数を作成して、応答のタイプ、つまり情報、エラー、デバッグ、警告に基づいてさまざまなファイルへの応答をログに記録しました。

私が直面している問題は、関数を呼び出すたびに応答が 2 回出力されることです。

例: info.log

hello world hello world

なぜそれが起こっているのか誰にも教えてもらえますか。これは、すべてのログ ファイルに当てはまります。

ありがとう

0 投票する
1 に答える
884 参照

java - ヘッダーが一定の Java ローテーション ログ

私はいくつかのシステムを作成しましたが、実行中にそのシステムに関する統計を追跡したいと考えています。これらの統計を書き留めるために、TSV フォームを使用することにしました。既存の最適な lib を探しているときに (可能であれば、自分で実装することは避けたいと思います)、FileHandler lib がまさに私が求めているものであることがわかりました。

統計は毎秒収集されるため、ファイル ハンドラーが提供するサイズ制限で何らかのログ ファイルのローテーションが必要だと思いますが、まだ見逃しており、私にとって重要なのは、すべてのログ ファイルに一定のヘッダーを含める機能です。 .

したがって、すべてのログ ファイルのカスタムの最初の行 (TSV 形式の列の意味を含む) をローテーションし、残りの行は実際の統計値になるようにしたいと考えています。

誰もこれを達成する方法を知っていますか? 私や他の同様の質問に合ったライブラリを見つけることができませんでした。

また、これを達成できる他のライブラリを知っている場合は、FileHandler を捨てて、そのライブラリを優先します。

前もって感謝します!

編集:@jmehrensから提供された回答に基づいて、次のコードを作成しましたが、魅力的に機能します! カスタムフォーマッタクラスは次のとおりです。

ワーカーコードは次のとおりです。

出力例は次のとおりです。

0 投票する
1 に答える
3875 参照

linux - ファイルサイズのみに基づいてログローテーションする方法は?

cron.daily の一部であるため、1 日 1 回実行される logrotate ポリシーがあります。特定のサイズに達したときに、ファイルの logrotate をトリガーしたいと考えています。だから私は、毎時、毎日、または一定の時間間隔で発生するのではなく、ファイルサイズをトリガーにする方法を探しています。そのようなことは可能ですか?

1 つのファイルの例 (サイズの値が異なるこのようなファイルが多数あります)

0 投票する
1 に答える
563 参照

c++ - boost: text_file_backend file_name およびコレクタ ターゲット

text_file_backendが使用され、設定されている場合、ログ ファイルはディレクトリcollectorに作成されますか、それとも古いログ ファイルはそこに移動されますか?keywords::targetcollector

collectorそれらを移動する場合collector、古いログファイルが閉じられて新しいログファイルが作成された直後、または他の瞬間に移動するのはいつですか?

繰り返しcollectorますが、ある時点でそれらを移動すると、新しいログ ファイル (または複数のファイル) が 1 つの場所にあり、古いログ ファイルが別の場所にあります。非常に古いファイルを削除したいcollector場合、ログ ファイルを作成された場所と同じ場所に残し、非常に古いファイルを削除する方法はありますか?

0 投票する
1 に答える
487 参照

tomcat - logrotate を使用して Apache ログをローテーションする

アプリケーションを apache tomcat で実行しています。Apache が作成するログの logrotate を構成したかったのです。

私のlogrotate構成は次のとおりです。

apache はタイムスタンプが追加された新しいログ ファイルを毎日作成するように見えるため、apache ログの copytruncate オプションは必要ないことに気付きました。

例: localhost.2016-02-26.log

logrotate が入ってきて、以前のログを圧縮して削除し (圧縮されたファイルのみを保持)、現在のログをそのまま残します。

補遺:

logrotate は、タイムスタンプが含まれるログのローテーションには適していないことがわかりました。そのようなログまたはそのようなログのローテーションにより適した他のローテーション ユーティリティで logrotate を機能させる方法を探しています。

0 投票する
0 に答える
447 参照

logrotate - ファイルサイズごとに logrotate し、maxage までできるだけ多くの古いファイルを保持します

ファイル サイズごとにログをローテーションし、古いログを経過時間ごとに保持したいと考えています。maxage パラメータは、ローテーションされたファイルがどれくらい古いかをチェックします。しかし、ファイルが特定のサイズ (たとえば 100k) に達したときにファイルをローテーションし、特定の日数 (たとえば 7 日間) だけ多くの古いファイルを保持するケースを探しています。

ログ ファイルへの書き込み回数が少なくなり、ローテーションが 7 日間で 1 回だけになるか、1 日に複数回ローテーションされる可能性があります。いずれにせよ、古いファイルを作成日から 7 日間 (この場合) 保持したい

0 投票する
2 に答える
1692 参照

java - log4j2でサーバーがシャットダウンするたびにログをローテーションする方法

現在、log4j2 を使用して、ログが 2000MB に達し、時間ベース、つまり次のロジックで 1 時間ごとにログをローテーションしています:-

また、サーバーのシャットダウン時にログをローテーションしたいと考えています。以下にどのような設定を追加する必要がありますか?

OnStartupTriggeringPolicy を使用して、シャットダウン時にログをローテーションしました。ただし、サーバーの再起動で単一のリクエストを行った後、ログはローテーションされます。

しかし、サーバーのシャットダウン時にログをローテーションしたいです。それを行う方法はありますか?

0 投票する
0 に答える
202 参照

java - Hive2Hive: サーバー間でコンテンツを送信し、送信先と送信元のファイルを変更および削除します

プロジェクト Hive2Hive を見ましたが、とても良いプロジェクトだと思いますし、非常に興味があります。私は、このようなファイル システムにさまざまなアプリケーションのファイルを保存する必要があるプロジェクトに携わっています。 画像はこちら

このプロジェクトの構造を説明しましょう: 2 つの異なるサーバーに 2 つのアプリケーションがあります。

  1. フォルダのコンテンツをコレクタに送信する責任があります このコンテンツはファイルのスニペットです

  2. コレクターが要求した場合にのみ情報を送信します

  3. コレクターをリッスンし、同じドアからコンテンツを送信します
  4. 送信後、ファイルを削除または切り詰める可能性があります。

  5. キー(.ssh/id_rsa)が必要で、必要に応じてユーザーがキーを使用して、コンテキストの切り替えまたはユーザーの切り替えを実行できるため、ファイルを削除または切り詰めることができます

  6. コレクターのみと通信します
  7. フォルダー、検索する場所、包含リスト、除外リスト、およびアクション リストが必要です。これらのリストはパターンです。アクション リストは、ファイルを削除するか切り捨てるかを決定します。

    コレクター:

  8. コンテンツをファイル システムに保存します

  9. どのコンテンツがファイル システムに保存されたかがわかります
  10. 多くのエージェントに接続できます

このアプリケーションは「私たち自身」によって開発されましたが、非常に信頼できません。

hive2hive を見たとき、多くの興味深い機能が見られます。

バックグラウンドで実行されるプログラムであるアプリケーションをヘッドレスで実行したいと考えています。

いくつか質問があります:

  1. 同期するファイルを決定するにはどうすればよいですか? *.log などのパターンで選択されたファイルのリストを取得できます。
  2. 送信元サーバーから送信先サーバーに送信し、バージョン管理を維持するにはどうすればよいですか?

  3. キーファイルを使用することはできますか? 例のほとんどは、ユーザー資格情報を使用していました。キーファイルの方が好き

  4. どのように設定すればよいですか?4.1. 2 申請すればいいの?1 つはソースに、もう 1 つは宛先に 4.2. アプリケーションは 1 つだけにする必要がありますか? どこにあるべきですか?ソースまたは宛先

  5. 多くの Agent と少数の Collector の同じ形式を維持できますか?

私は助けを求めているため、このアプリケーションを実装できる唯一の人です。

ご意見、アドバイスをお聞きしたいです。よろしくお願いします。

ルイス