問題タブ [java.util.logging]
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.
java - 多数のマシンに分散された多数のログ ファイルの管理
分散コンピューティングを支援するサードパーティ プラットフォーム (GigaSpaces) の使用を開始しました。現在解決しようとしている主要な問題の 1 つは、この分散環境でログ ファイルを管理する方法です。現在、以下の設定を行っています。
私たちのプラットフォームは 8 台のマシンに分散されています。各マシンには、java.util.logging を使用して個別のログ ファイルに記録する 12 ~ 15 のプロセスがあります。このプラットフォームの上に、log4j とログを使用してファイルを分離する独自のアプリケーションがあります。また、stdout を別のファイルにリダイレクトして、スレッド ダンプなどをキャッチします。
これにより、約 200 の異なるログ ファイルが作成されます。
現在のところ、これらのファイルの管理を支援するツールはありません。次の場合、これは私たちに深刻な頭痛の種を引き起こします。
どの工程で問題が発生したか事前にわからない場合のトラブルシューティング。この場合、現在、ssh を使用して各マシンにログインし、使用を開始して
grep
います。通常とは異なるログを定期的にチェックして、積極的に対処しようとします。この場合、現在すべてのマシンにログインし、 と を使用してさまざまなログを調べてい
less
ますtail
。アラートの設定。しきい値を超えるイベントに関するアラートの設定を検討しています。これは、200 個のログ ファイルをチェックするのに苦労するようです。
現在、1 秒あたり約 5 つのログ イベントしかありませんが、より多くのコードを新しいプラットフォームに移行するにつれて、それは増加します。
コミュニティに次の質問をしたいと思います。
- さまざまなフレームワークを介して記録された複数のマシンに分散された多くのログ ファイルで、同様のケースをどのように処理しましたか?
- なぜその特定のソリューションを選択したのですか?
- ソリューションはどのように機能しましたか? 何が良いと思い、何が悪いと思いましたか?
どうもありがとう。
アップデート
Splunk の試用版を評価することになりました。私たちはそれがどのように機能するかに非常に満足しており、購入することに決めました. セットアップが簡単で、検索が高速で、技術者向けの豊富な機能があります。同様の状況にある人には、チェックすることをお勧めします。
java - jdk を使用した slf4j ロギング – デバッグを有効にする方法は?
デフォルトでは、slf4j は、jdk ( slf4j-jdk14-1.6.1.jar ) を使用する場合、デバッグ メッセージをログに記録しません。それらを有効にするにはどうすればよいですか?
公式ドキュメント、Web、またはここで有効にする方法に関する情報が見つかりません。
%JDK_HOME%/lib にファイルを作成し、設定ファイルでレベルを定義することに関する情報をいくつか見つけました (ただし失敗しました)。ただし、コンパイル/実行時にレベルを定義して、さまざまなログ レベルで IDE からアプリを実行およびデバッグできるようにしたいと考えています。
設定できる環境変数、または VM arg はありませんか?
java - java.util.logging をファイルにリダイレクトする方法は?
外部ライブラリを使用する Java プログラムがあります。メイン プログラムは を使用log4j
してメッセージをログに記録し、ライブラリは を使用しますjava.util.logging
。
私の問題は、外部ライブラリとメイン プログラムからのログ メッセージがコンソールに混在していることです。
すべてのログ メッセージを外部ライブラリからファイルにリダイレクトしたいと考えています。logging.properties
私はファイルでそれをやろうとしました:
このファイルは次のように初期化されます。
残念ながら、外部ライブラリからのログ メッセージがコンソールに表示され続けます。slf4j
からのログ メッセージを傍受するようなものを使用する必要がありますjava.util.logging
か?
お時間をいただきありがとうございます。
java - プログラムでJerseyロギングをオフにする
私の出力には、このようなジャージーからのJULロギングメッセージがあります
プログラムでそれらを切り落としたかったので、試しました
また
しかし、これは機能しません。
おかしなことに、このグローバル構成は機能します。
また
なぜ?
java - 現在のクラス/BeanのLogLevelを取得します
クラスからログを記録するときに、次のアプローチを使用しています。
どのログレベルが適用されても、すべてのログステートメントが常に実行されることに気づきました。必要のないときにデバッグ関連のステートメントを実行したくありません(ここではパフォーマンスが問題になります)。
だから私はこのようなものを探しています:
そのクラスで使用されている現在のLogLevelを取得するにはどうすればよいですか?
intellij-idea - java.util.logging ConsoleHandler の使用 & IntelliJ IDEA 9 または Mac ターミナル ウィンドウで system.err 出力が表示されない
GroovyTestCase に基づいて統合テストを実行しようとしています。API docsによると、ログ プロパティが組み込まれています。このサイトを参照として使用して、テストの実行中に最初に情報メッセージをログに記録しようとしていました。ログ メッセージが IntelliJ9 のコンソールに表示されないことに驚いたので、ターミナル ウィンドウから Mac で統合テストを実行してみました。コードでログ レベルを ALL に設定し、ConsoleHandler を使用していたにもかかわらず、出力は表示されませんでした。
私はこれをほとんどあきらめていましたが、失敗したテストが target/test-report フォルダーにあるというメッセージがターミナル ウィンドウに表示されることに気付きました。
奇妙なことに、オプションとしてのビューに関係なく、IntelliJ9 のプロジェクト エクスプローラー ウィンドウにターゲット フォルダーが表示されません。だから、それは私が解決したい1つの質問だと思います.
とにかく、エラー レポートを追跡しました。失敗した HTML レポートのテストを掘り下げると、system.err と voila へのリンクがあります。私がずっと期待していた私の出力があります!これの 2 番目の部分は、IDE でこの出力を表示するために行う必要がある UNIX の system.err から system.out へのリダイレクトのようなものはありますか?
何か案は?
ターゲットフォルダーを表示する方法を見つけました...プロジェクト構造->モジュール->除外フォルダー除外セクションの下のターゲットに対してxをクリックします(フォルダーの左側)プロジェクト構造->モジュール-> 'をクリックして再度削除できますtarget' フォルダー、フォルダー リストの上にある [除外] ボタン
java - Java でのログイン
次のコードを実行して、Java でロガーを作成しています。
このロガーを使用すると、System.err だけでなくファイルにも書き込みます。最終的には、次の場所に書き込みできるようにロガーを構成したいと考えています。
- System.err と File の両方
- System.err と File のどちらでもない
- ただSystem.err
- ジャストファイル
呼び出すlogger.setLevel(Level.OFF)
とすべてのログがオフになることはわかっていますが、上記のリストに対してそれを行う方法がわかりません。それはLevelクラスを通して行われますか? アイデアや提案は大歓迎です。
編集:回答ありがとうございます。私はこのコードでそれを解決しました:
助けてくれてありがとう
java - Hibernate: デフォルトのログレベル (SJF4J および JDK 1.4 ロガー) をどのように調整しますか?
JavaSE/Hibernate テスト アプリ (シェルベース) があります。次の JAR をプロジェクトの lib ディレクトリに配置しました。
ご覧のとおり、JDK 1.4 ロガーで SLF4J を使用しています。シェルからテスト アプリを実行すると、デフォルトで INFO レベルに設定されているため、Hibernate は非常に冗長になります。
Hibernate のログ レベルを調整するにはどうすればよいですか?
たとえばEclipseLinkでは、プロパティ(persistence.xml)を介してレベルを指定できます:
Hibernateに同等のものはありますか?
java - log4j と java.util.logging の違いは何ですか
自分のアカウントにログインしているユーザーのログ ファイルを取得するのに最適なのはどれですか? 小さな例で説明してください...お時間をいただきありがとうございます...
java - ロギング情報をOracleデータベースに保存
私は現在、Javaスイングアプリケーションを実装しています。そのアプリケーションでは、java.util.logging を使用してテキスト ファイルにログを記録しました。しかし、ファイルが非常に大きいため、テキスト ファイルを調べるのは困難です。
だから私はロギング情報をOracleデータベース(アプリケーションに使用している)に保存し、そのテーブルにアクセスするためのswingインターフェースを提供することを考えています。そのため、そのテーブルで INFO や SEVERE などの特定のログ レベルを検索できます。Java util パッケージまたは Log4j を使用してそれを行う方法はありますか。助けてください