問題タブ [tomcat-juli]
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.
tomcat - Tomcat JULI では、「施設固有の」ロガーは webapp ごとのロガー ルートになりますか?
「こんにちは!」のログ エントリを期待できますか。に放出され${catalina.base}/logs/webapp.log
ますか?
Tomcat 構成
{$CATALINA_BASE}/conf/logger.properties
Webapp レベルのロギング構成
WEB-INF/classes/logger.properties
配備された WAR の/webapp
コードからの使用
デプロイされた WAR 内のコード/webapp
java - Linux の tomcat:java.lang.NoClassDefFoundError:org/apache/juli/logging/LogFactory
LinuxでTomcatを起動すると、問題が発生しました。
Using CLASSPATH:/data/apache-tomcat-7.0.47/bin/bootstrap.jar:/data/apache-tomcat-7.0.47/bin/tomcat-juli.jar
クラスが見つからないことはわかっていますが、jar はクラスパスにありました。なぜ?私の質問に答えていただければ幸いです。ありがとうございます。
tomcat - ClassCircularityError: JavaMelody および Tomcat プラグインを使用して Gradle webapp を実行している java/util/logging/LogRecord
Gradle Tomcat プラグインの埋め込みコンテナー を使用してアプリを起動しようとすると、以下のスタック トレースが表示されます。
外部のTomcatを使用すると発生しないため、GradleのクラスパスとGradleの組み込みの依存関係と関係があると思われます(それらが何であるかを見つける方法さえ知りません)。私は少し調べてみましたが、私のプロジェクトではどちらも使用していない SLF4J や Logback に何らかの形で関連する同様の問題を抱えているようです。私はSLF4Jのレガシーブリッジでそれを回避しようとしましたが、役に立ちませんでしたbuild.gradle
.
また、理論的には、JULI を無効にして、代わりに Tomcat を log4j にログ記録させることも可能であるように見えます。これにより、問題を解決できる可能性があるように見えますが、手順はすべて、 および の JAR を手動で置き換える必要が$CATALINA_HOME/bin
あり$CATALINA_HOME/lib
、私はしません。 Gradleコンテキストでそれを実現する方法を最初に考えています。
何か案は?
tomcat - Tomcat サーバー ログのファイル名に日付が含まれている - rotatable=false が機能しない
同じ Redhat 5 マシンで 2 つの tomcat 6 インストールを実行しています。1 つは「私の」もので、もう 1 つは私の組織の別のグループに属しています。私は現在6.0.35で、もう1つは6.0.32です。tomcat ログ用に生成されたファイル名に日付が含まれてしまうという問題があり、ログのローテーションが壊れてしまったので、ここを検索したところ、
1catalina.org.apache.juli.FileHandler.rotatable
ここのドキュメントに従って、プロパティを false にすると日付が削除されました。
https://tomcat.apache.org/tomcat-6.0-doc/api/org/apache/juli/FileHandler.html
万歳。問題が解決しました。そこで、他のインストールでも同じ問題が発生しているかどうかを確認しました。そうでした、そして彼らは私にそれを修正するのを手伝ってくれるように頼みました. 彼らの logging.properties セットアップは私たちのものとまったく同じだったので (すべて ${catalina.base} に基づいています)、私たちのインストールで機能する新しい修正された logging.properties ファイルをコピーして、パーミッションを修正しました。しかし、何らかの理由で、ここでは機能しません。
実行中のプロセスのコマンドライン引数から、両方が同じ logging.manager (org.apache.juli.ClassLoaderLogManager) を使用していること、および 2 番目のインストールが正しい logging.properties 構成ファイルを使用していることを確認できます。そのファイルの他のプロパティ (接頭辞、接尾辞など) を変更し、サーバーを再起動して、使用されているファイル名でそれらが有効になることを確認することもできます。しかし、何らかの理由で、2 番目のインストールは rotatable=false プロパティを無視しているようで、名前に日付のないログファイルの生成を拒否しています。私が使用している logging.properties ファイルは次のとおりです。
誰かに何か提案があれば、おそらく logging.properties ファイルを上書きできる他の場所でしょうか? - よろしくお願いします。
ありがとう、
tomcat - log4j2.xml を使用した tomcat 7 内部ロギング
でTomcat 7の内部ログを構成しようとしていますlog4j2
。Logging server classes in Tomcat 6 with log4j2 で提供されている回答に従いました。
Tomcat 7.0.54 を使用していlog4j-core-2.1.jar
ますlog4j-api-2.1.jar
。エクストラをダウンロードし、以下のすべての手順を実行しましたが、Tomcat を起動するとエラーが発生します。
これらは私が実行した手順です:
- 入れる
log4j2.xml
_$CATALINA_BASE/lib
- ダウンロード
tomcat-juli.jar
しtomcat-juli-adapters.jar
て「おまけ」から log4j-api-2.1.jar
、log4j-core-2.1.jar
、log4j-jul-2.1.jar
、およびtomcat-juli-adapters.jar
「おまけ」から に入れます$CATALINA_HOME/lib
。- from "extras"
$CATALINA_HOME/bin/tomcat-juli.jar
に置き換えます。tomcat-juli.jar
- 消去
$CATALINA_BASE/conf/logging.properties
log4j2-jul
ロギング マネージャがブリッジからマネージャを使用するように設定します(log4j-jul-2.1.jar
)。catalina.sh
クラスパスにbin/tomcat-juli.jar
、lib/log4j-jul-2.1.jar
、lib/log4j-api-2.1.jar
およびが含まれるように変更し、Tomcat の起動に使用されるコマンドに-Djava.util.logging.managerlib/log4j-core-2.1.jar
=org.apache.logging.log4j.jul.LogManager` が含まれるようにします。
LOGGING_CONFIG="-Djava.util.logging.config.file=$CATALINA_HOME/lib/log4j2.xml"
これ ( ) を追加しようとしましcatalina.sh
たが、うまくいきませんでした。
うまく設定できる人がいたら教えてください。
tomcat - 最新のロギング フレームワークで Jenkins を使用するには?
Jenkins はデフォルトで Java Utils Logging を使用します。これは、Log4J や Logback などの最新のロギング フレームワークの多くの機能が欠けている、やや時代遅れのロギング フレームワークです。
LogbackまたはLog4Jを使用してJenkinsをTomcatにデプロイ/構成するにはどうすればよいですか?
java - jetty-maven-plugin と tomcat-jdbc 8.0.9+ の間のクラスパスの問題により ServiceConfigurationError が発生する
私は以下を使用してアプリに取り組んでいます:
jetty-maven-plugin:9.3.2.v20150730
tomcat-jdbc:8.0.8 (依存関係として tomcat-juli を持つ)
tomcat-jdbc jar を 8.0.9 以降の任意のバージョンにアップグレードしようとすると、次のエラーが発生します。
java.util.ServiceConfigurationError: org.apache.juli.logging.Log: プロバイダー org.eclipse.jetty.apache.jsp.JuliLog はサブタイプではありません
これら 2 つのバージョン間の変更ログを見ると、疑わしいものを見つけました。
「単純な ServiceLoader ベースの検出メカニズムを JULI LogFactory に追加して、JULI および JULI に依存する Tomcat コンポーネント (Jasper など) を Tomcat から独立して簡単に使用できるようにします。Greg Wilkins が提供するパッチ (markt)」
また、Apache Tomcat JDBC 接続プールに新しいシステム プロパティが導入されたこともわかりました。
org.apache.tomcat.jdbc.pool.onlyAttemptCurrentClassLoader
「JDBC ドライバー、インターセプター、バリデーターなどの動的クラスのクラスロードを制御します。デフォルト値である false に設定すると、プールは最初に現在のローダー (つまり、プール クラスをロードしたクラス ローダー) を使用してロードを試みます。スレッド コンテキスト ローダーを使用した読み込みに失敗します。Apache Tomcat 8.0.8 以前との下位互換性を維持し、現在のローダーのみを試行する場合は、この値を true に設定します。設定されていない場合、デフォルト値は false です。"
残念ながら、このプロパティを使用して jetty:run でプラグインを開始しても問題は解決しませんでした。
どんな助けでも大歓迎です!ありがとう!
スタック トレースと依存関係ツリー: