問題タブ [log4j]
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.
log4j - log4jサーバーはどこにありますか?
さまざまなlog4jログをサーバーに一元化したいと思います。どこで見つけることができますか?
java - さまざまな Ant タスクにカスタム log4j.xml を提供するにはどうすればよいですか?
ビルド プロセスの一部として複数のタスク定義に依存するビルド ファイルがあります。これらのタスク定義項目 (webdoclet や jasper2 など) は、log4j をロガーとして使用します。理想的には、それぞれに異なる log4j 構成ファイルを提供できるようにしたいのですが、最低限、どの log4j 構成ファイルを使用するかを指定できるようにしたいと考えています。
以前は機能していたのは、タスク定義で使用する log4j.xml を含むディレクトリをクラスパスの先頭に配置することでした。例えば:
実際、「Build」ディレクトリがクラスパスの先頭にあり、log4j.xml がそのディレクトリに存在することを確認しました。ただし、デバッグで log4j を使用して詳細モードで ant を実行すると、log4j が現在の作業ディレクトリにある log4j.xml を選択していることがわかります。これは、必要なものではありません。Log4j は、デフォルトの log4j.xml を解決するためにクラスパスを使用していないようです。
私は log4j 1.2.8 (より大きなフレームワークに組み込まれているため、アップグレードできません) を使用していますが、これらのタスク定義の一部は commons-logging 1.0.3 に依存しているようです。ビルド プロセスでは、Sun Java 5 を使用します。
antをset ANT_OPTS=-Dlog4j.configuration=Build/log4j.xml
実行する前に、タスク定義が目的の log4j.xml を正しくロードします。
以前は機能していた taskdef のクラスパスの先頭に「Build」ディレクトリを置きます。何が変わったのかわからない。build.xml 内で、特定のタスクにどの log4j 構成ファイルを使用するかを制御できる動作を復元するにはどうすればよいですか? ANT_OPTS を設定する以外に、ファイルを再配置してアプリケーションの log4j.xml を現在の作業ディレクトリから移動し、log4j が正しい log4j.xml ファイルを見つけられるようにする方法はありますか?
java - log4j構成のサブカテゴリーのレベルをオーバーライドします
私のアプリケーションにはいくつかの監査があります。すべての監査イベントには、同じ文字列がプレフィックスとして付けられた名前を持つ独自のlog4jカテゴリがあります。
EG:一般監査カテゴリ名:com.company.audit
Webログインカテゴリ名:com.company.audit.web.login
何かを作成します:com.company.audit.api.createなど。
一部のカテゴリはデフォルトでログに記録される必要がありますが、一部はログに記録されません=>
デフォルトはINFOであるため、2番目のカテゴリはログに記録されません。少なくとも私はそれを考えましたが、それは機能しません。'サブカテゴリ'のログレベルを上書きする方法についてのヘルプ。
注:命名スキーム全体を変更する可能性はあまりありません
追加した:
アペンダーの構成は次のとおりです。
java - log4jAPIのFileAppenderに疑問がある
特定のフォルダに入ってくるさまざまなファイルを処理するJavaプログラムを作成しました。私のプログラムでは、そのファイルの例外をログに記録するために、着信ファイルごとにログファイルを作成する必要があります。そのために以下のコードを使用しました。私が直面している問題は、最初のファイルの場合、ログファイルとログの例外が作成されることです。2番目のファイルファイルが来ると、別のログファイルを作成して2番目のファイルの例外をログに記録し、その間に2番目のファイルの例外と1番目のファイルの例外を最初のファイルのログファイルに記録します。2番目のファイルの例外を1番目のファイルのログファイルに追加したくありません。どうやってするか?
java - ログファイルを作成するサードパーティの jar
そこで、今日、興味深い問題に遭遇しました。サードパーティの jar を多数使用する Java EE Web アプリがあります。これには休止状態が含まれます。
ロギングの目的で、SDK に付属する Java ロギング API を使用します。通常、私たちはログ記録にかなり注意を払っていますが、log4j を使用して独自のログ ファイルを作成するサード パーティの jar の 1 つでこの問題に遭遇しました。独自のコードからステートメントをログに記録しただけでなく、休止状態のコードのデバッグを書き始めた結果、3 GB 相当のログをすぐにログに記録するバッチ ジョブが発生しました。
これには2つの問題があります:
- このログの問題を修正する必要があります (可能であれば、サードパーティの jar の log4j 構成をヤンクアウトしたり、変更したりしたくありません)。サードパーティのjarファイルのlog4j構成を変更またはヤンクする以外に、サードパーティのjarファイルの構成を上書きする独自のlog4j構成を作成する以外に、これを行う良い方法はありますか? 2つのオプションのどちらも好きではありませんが、最善を尽くしたいと思っています。
- サードパーティのライブラリが楽しそうにログオフすることを期待するのは正しいことですか? これはデザインが悪いと思います。これについて、コミュニティの意見を聞きたいです。
サードパーティのライブラリでエラーをログに記録したい。そうは言っても、このサードパーティのjarが、担当するパッケージ以外のパッケージからDEBUGをログに記録するのは少し厄介だと思います。たとえば、私の場合、このサードパーティの jar は、休止状態のメソッドを呼び出していなくても、休止状態のデバッグをログに記録しています。実行したバッチ ジョブは、この jar で API を呼び出しませんでした。そこにあるものを自分のlog4j構成でオーバーライドするのが最善の方法のようです。
grails - Grails での外部 log4j.properties ファイルの使用
Grails 内で外部 log4j.properties ファイルを使用する最良の方法は何ですか? log4j.groovy スタイルの構成ではなく、従来の log4j.properties 形式を使用したいと考えています。
grails war
外部構成が、作成されて war ファイルに入れられる log4j.properties ファイルでうまく機能するかどうかも興味があります。Config.groovy から log4j 構成を削除しても、log4j.properties は引き続き war ファイルに入れられますか?
java - log4j エラー ログと例外処理の問題に直面しています。
FileAppenderを使用してエラーログを取得するためにlog4jを使用しました。問題は、以下の状況でログ ファイルに同じエラーが 2 回記録されることです。
ケース1:
ただし、以下のケースではエラーが 1 回ログに記録されます。
ケース 2 :
どこにいてもログファイルにエラーを1回だけ記録するにはどうすればよいですか。
hibernate - jboss-log4j.xml ファイルを使用して、さまざまなアプリケーションのさまざまなログ ファイルに Hibernate ロガー ステートメントを送信する方法
JBOSS 4.2.2 サーバーを使用して複数の Web アプリケーションをデプロイしています。各アプリケーションは Hibernate を使用し、アプリケーションごとに個別のログ ファイルと個別のアペンダがあります。現在、1 つのアプリケーションの Hibernate ログ ステートメントは、その特定のアプリケーションのログ ファイルに記録する必要があります。これを達成するためにlog4j.xmlファイルを構成する方法を知っている人はいますか?
java - Java 5 以降用に設計された log4j または commons ロギング拡張機能、またはその他のロギング フレームワークはありますか?
Java 5 では、可変数の引数や printf など、ロギング ステートメントの煩雑さを軽減できる多くの機能が導入されています。これにより、何かがログに記録されたときに発生するすべてのメッセージ構築コードとその周囲のif
.
たとえば、次のように書く代わりに:
私は書きたい:
またはそのようなもの。
ロギング フレームワーク、またはそれを支援するロギング フレームワークの拡張機能を知っていますか?