さまざまな Tomcat ログと catalina.out ファイルのセグメンテーションの関係についての簡単な分析

さまざまな Tomcat ログと catalina.out ファイルのセグメンテーションの関係についての簡単な分析

Tomcatログの関係

一枚の写真は千の言葉に値する!

localhost.{yyyy-MM-dd}.loglocalhost-access.{yyyy-MM-dd}.logなどの他のログでは、 localhostコンテキストの名前であり、多くの場合、アプリケーションが名前になります。

catalina.out を分割する

上の図に示すように、実行時間が長くなるにつれて catalina.out は大きくなる一方ですが、コンソールによって出力されるログも役立ちます。たとえば、開発者の中にはe.printStackTrace()System.out.println()System.err.println()すべて catalina.out に出力されます。これらのログも役立ちます。したがって、バックアップにはログのセグメント化が必要です。

最も簡単な方法は、Linux に付属する logrotate 関数を使用して catalina.out を分割することです。

例として、catalina.out パスを/opt/tomcat/logs/catalina.outとします。

#/etc/logrotate.d を入力します。このディレクトリは、logrotate.d サブシステムの設定ディレクトリです。メインの設定ファイルを変更することはお勧めしません。
/etc/logrotate.d をコピーします
猫 > トムキャット<<EOF
ログファイル
        コピー切り捨て
	毎日
        15回転
        圧縮する
        行方不明
        空でない
        サイズ 200M
        日付テキスト
}
終了

上記の構成の説明:

  • /opt/tomcat/logs/catalina.out #catalina.out ストレージアドレス
  • copytruncate #元のログファイルをコピーしてクリアする
  • 毎日 #毎日のカット
  • rotate 15 #最大15個のファイルを保持
  • 圧縮 #分割されたファイルを圧縮する
  • missingok #catalina.out ファイルが存在しないことを許可し、ファイルが表示されたらカットを開始します
  • notifempty #ログファイルが空の場合、ローテーションは実行されません
  • サイズ 200M #catalina.outファイルが200Mより大きい場合は切り捨て
  • dateext # 日付拡張子、切り取った後にログファイル名に日付を追加する

その他の構成パラメータ:

圧縮 #ダンプされたログを gzip で圧縮します。 nocompress #gzip 圧縮を実行しません。 copytruncate #まだ開いているログ ファイルに使用され、現在のログをバックアップして切り捨てます。これは、最初にコピーしてからクリアする方法です。コピーとクリアの間には時間差があり、一部のログ データが失われる可能性があります。
nocopytruncate #ログファイルをバックアップしますが、切り捨てません。create mode owner group #ローテーション中に新しいファイルを作成するプロパティを指定します。例: create 0777 nobody nobody
nocreate #新しいログ ファイルを作成しません delaycompress #compress と一緒に使用すると、ダンプされたログ ファイルは次回のダンプまで圧縮されません nodelaycompress #delaycompress オプションをオーバーライドし、ダンプ中に圧縮します。
missingok #ログが欠落している場合は、エラーは報告されず、次のログがローテーションされます。 errors address #保存中のエラーメッセージは、指定された電子メールアドレスに送信されます。 ifempty #ログファイルが空の場合でも、ファイルはローテーションされます。これは、logrotate のデフォルトオプションです。
notifempty #ログ ファイルが空の場合は、ローテーションしません。 mail address #ダンプされたログ ファイルを指定された電子メール アドレスに送信します。 nomail #ダンプ時にログ ファイルを送信しません。 olddir directory #ダンプされたログ ファイルを指定されたディレクトリに配置します。このディレクトリは、現在のログ ファイルと同じファイル システム内にある必要があります。 noolddir #ダンプされたログ ファイルと現在のログ ファイルを同じディレクトリに配置します。 sharedscripts #すべてのログがローテーションされた後にスクリプトを 1 回実行するために使用される postrotate スクリプトを実行します。これが設定されていない場合、スクリプトは各ログ ローテーションの後に 1 回実行されます。prerotate #logrotate ダンプの前に実行される命令 (ファイル属性の変更やその他のアクションなど)。独立した行である必要があります。postrotate #logrotate ダンプの後に実行される命令 (サービスの再起動 (kill -HUP) など)。別々の行にする必要があります daily #ダンプ サイクルを daily として指定しますweekly #ダンプ サイクルを weekly として指定しますmonthly #ダンプ サイクルを monthly として指定しますrotate count #ログ ファイルを削除するまでのダンプの数を指定します。0 はバックアップなし、5 は 5 つのバックアップを保持することを意味しますdateext #現在の日付を命名形式として使用しますdateformat .%s #dateext とともに使用します。次の行にすぐに表示され、ファイルが切り取られた後のファイル名を定義します。dateext とともに使用する必要があります。%Y %m %d %s のみをサポートします。これら 4 つのパラメーターサイズ値と単位 #ログ ファイルは、指定されたサイズに達するとダンプされます。不足している単位はバイトです。これは KB または MB で指定できます。

その他のパラメータについては、次の記事を参照してください: https://cloud.tencent.com/developer/article/1681716

各種Tomcatログとcatalina.outファイルのセグメンテーションの関係についての記事はこれで終わりです。Tomcat catalina.outファイルのセグメンテーションの詳細については、123WORDPRESS.COMの過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも123WORDPRESS.COMをよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Linux tomcat での Catalina.out ログ ファイルのセグメンテーション
  • TomcatはLog4jを使用してcatalina.outログを出力します。
  • tomcatでcatalina.outログをカットする3つの方法の詳細な説明

<<:  Vue のライフサイクルとフック関数

>>:  CSS フロート(float, clear)の人気の解説と体験談

推薦する

ウェブページを作る前に、これらのいわゆる仕様を見てみましょう

この記事では、Web ページを作成する前に確認すべき、いわゆる仕様をいくつかまとめました。皆様のお役...

Redission-tomcatは、単一マシンから複数マシンへの展開を迅速に実装します。

序文一部のプロジェクトの初期段階では、シンプルさとスピードのために、開発と展開は単一のマシンで行われ...

Dockerの一般的なコマンドとヒントのまとめ

インストールスクリプトUbuntu / CentOS Debian のインストールに問題があるようで...

Web デザイン リファレンス Firefox デフォルト スタイル

W3C は HTML の標準をいくつか確立していますが、ブラウザは独自の定義済みスタイルに従って W...

MySQL全文インデックスの原理と欠点

MySQL フルテキスト インデックスは、特定のテーブルの特定の列に表示されるすべての単語のリストを...

MySQLは既存のコンテンツを保持し、後でコンテンツを追加します

このコマンドは、データ テーブル ff_vod を変更し、vod_url フィールドの内容の後に 9...

Vueでパスワードの表示と非表示機能を実装するアイデアを詳しく解説

効果: アイデア:入力タイプ属性を使用して、タイプ値がテキストの場合はパスワードを表示し、タイプ値が...

MySQL クラスター化インデックスのページ分割原理の分析例

この記事では、MySQL クラスター化インデックスのページ分割を例を使って説明します。ご参考までに、...

Vue は Tencent Map を統合して API を実装します (デモ付き)

目次執筆の背景プロジェクトの説明事前準備注記執筆の背景以前のプロジェクトではTencent Maps...

HTML フォーム コントロールの無効な属性の読み取り専用と無効の概要

HTML でフォームの送信を無効にする方法は 2 つあります。 1. コントロールタグにreadon...

MySQLの主キーと外部キーの使用と説明を簡単に説明します

目次1. 外部キー制約外部キーとは何ですか?外部キーを使用する条件:外部キーの定義構文は次のとおりで...

Nginx を使用して rtmp ライブ サーバーを実行する方法

今回は、コンピューターや携帯電話用の rtmp ライブ ブロードキャスト サーバーを設定し、ライブ ...

Js における new 演算子の役割の詳細な説明

序文Js は現在最も一般的に使用されているコード操作言語であり、その中でも new 演算子は特によく...

MySQL SHOW STATUSステートメントの使用

MySQL のパフォーマンス調整とサービス ステータスの監視を行うには、MySQL の現在の実行状態...

Windows 10 での MySQL 5.7.17 のインストールと設定方法のグラフィック チュートリアル

この記事では、最新バージョンの MySQL データベース、つまり MySQL 5.7.17 圧縮バー...