問題タブ [logback-classic]

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 に答える
519 参照

javafx - slf4j ロガーを使用した Javafx アプリケーションのプロガード

以前に Javafx アプリケーションを作成し、java.util.Logger を使用して proguard でラップすることに成功しました。ただし、java.util.Logger から slf4j が提供する Logger に切り替えて、qos-logback を使用する必要があります。その上でプロガードを使用すると、一連の警告に遭遇します。これらはすべて、slf4j または qos-logback ライブラリのいずれかから生成されます。(MANYYY) 警告の一部は次のとおりです。

  • 警告: ch.qos.logback.core.status.ViewStatusMessagesServletBase: 参照されているクラス javax.servlet.http.HttpServletResponse が見つかりません
  • 警告: ch.qos.logback.core.status.ViewStatusMessagesServletBase: 参照されているクラス javax.servlet.http.HttpServletRequest が見つかりません
  • 警告: ch.qos.logback.core.status.ViewStatusMessagesServletBase: 参照されているクラス javax.servlet.http.HttpServletResponse が見つかりません
  • 警告: ch.qos.logback.core.status.ViewStatusMessagesServletBase: 参照されているクラス javax.servlet.http.HttpServletRequest が見つかりません
  • 警告: ch.qos.logback.core.status.ViewStatusMessagesServletBase: 参照されているクラス javax.servlet.http.HttpServletResponse が見つかりません
  • 警告: ch.qos.logback.core.status.ViewStatusMessagesServletBase: 参照されているクラス javax.servlet.http.HttpServletRequest が見つかりません
  • 警告: ch.qos.logback.core.status.ViewStatusMessagesServletBase: 参照されているクラス javax.servlet.http.HttpServletResponse が見つかりません
  • 警告: org.slf4j.MDC: プログラム クラス org.slf4j.impl.StaticMDCBinder で参照されているメソッド 'org.slf4j.impl.StaticMDCBinder getSingleton()' が見つかりません
  • 警告: org.slf4j.MarkerFactory: プログラム クラス org.slf4j.impl.StaticMarkerBinder で参照されているメソッド 'org.slf4j.impl.StaticMarkerBinder getSingleton()' が見つかりません
  • 注: ch.qos.logback.classic.gaffer.GafferUtil は、コンストラクター「(ch.qos.logback.classic.LoggerContext)」に動的にアクセスします。

気がつけば、いくつかの警告は繰り返されています。しばらく立ち往生していたので、正しい方向に向けただけでも、これに関して誰かが私を助けてくれれば本当に感謝しています. よろしくお願いします。

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

java - logback で Appender を動的に追加する

slf4j からのロガー インスタンスがあります。このロガーはすでにコンソールにログを記録しています。スレッドごとに個別にファイルにログを記録する追加のアペンダーを追加したいと考えています。だから私は使いたいSiftingAppender

次の utils クラスを作成して、ロガー インスタンスにアペンダーを追加しました。

ここでログをテストしようとしています:

コンソールの出力は次のとおりです。

ただし、ロガー情報は実際にはコンソールまたはファイルに出力されません。を追加しないと、コンソールに正しく出力されますsiftingAppenderSiftingAppenderプログラムで追加するにはどうすればよいですか?

を変更することはできませんlogback.xml

logback でのログインを有効にすると、次のようになります。

編集

この行を削除すると、コンソールにログが出力されlogger.setAdditive(false);ます。ただし、ファイルが作成されているのを確認できません。