2017-02-03 31 views
1

アプリケーションの戦争でhikari(2.4.6)jarがバンドルされているときにログがうまく動作する間に、Tomcat .32)/libディレクトリ、hikariログを停止します。私はhikaricp github (809)で同様の問題に従ってきましたが、これを達成するためのガイダンスがありましたが、動作させることができません。我々のアプリケーションにとっては、プールを監視することは非常に重要です:Tomcat(8.0.32)libディレクトリのHikariCP(2.4.6)がログに記録されない

2017-02-01 12:27:17.274 DEBUG 26240 --- [l-1 housekeeper] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Pool stats (total=10, active=0, idle=10, waiting=0)

ので、我々はcatalina.out

でこの情報を取得する方法を必要とする私のTomcatの設定は以下の通りである:

/libディレクトリを:

image

と私logging.properties

# Licensed to the Apache Software Foundation (ASF) under one or more 
# contributor license agreements. See the NOTICE file distributed with 
# this work for additional information regarding copyright ownership. 
# The ASF licenses this file to You under the Apache License, Version 2.0 
# (the "License"); you may not use this file except in compliance with 
# the License. You may obtain a copy of the License at 
# 
#  http://www.apache.org/licenses/LICENSE-2.0 
# 
# Unless required by applicable law or agreed to in writing, software 
# distributed under the License is distributed on an "AS IS" BASIS, 
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
# See the License for the specific language governing permissions and 
# limitations under the License. 

handlers = 1catalina.org.apache.juli.AsyncFileHandler, 2localhost.org.apache.juli.AsyncFileHandler, 3manager.org.apache.juli.AsyncFileHandler, 4host-manager.org.apache.juli.AsyncFileHandler, java.util.logging.ConsoleHandler 

.handlers = 1catalina.org.apache.juli.AsyncFileHandler, java.util.logging.ConsoleHandler 

############################################################ 
# Handler specific properties. 
# Describes specific configuration info for Handlers. 
############################################################ 

1catalina.org.apache.juli.AsyncFileHandler.level = FINEST 
1catalina.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs 
1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina. 

2localhost.org.apache.juli.AsyncFileHandler.level = FINE 
2localhost.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs 
2localhost.org.apache.juli.AsyncFileHandler.prefix = localhost. 

3manager.org.apache.juli.AsyncFileHandler.level = FINE 
3manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs 
3manager.org.apache.juli.AsyncFileHandler.prefix = manager. 

4host-manager.org.apache.juli.AsyncFileHandler.level = FINE 
4host-manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs 
4host-manager.org.apache.juli.AsyncFileHandler.prefix = host-manager. 

java.util.logging.ConsoleHandler.level = FINE 
java.util.logging.ConsoleHandler.formatter = org.apache.juli.OneLineFormatter 




############################################################ 
# Facility specific properties. 
# Provides extra control for each logger. 
############################################################ 

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO 
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.AsyncFileHandler 

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO 
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.AsyncFileHandler 

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO 
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.AsyncFileHandler 

# For example, set the org.apache.catalina.util.LifecycleBase logger to log 
# each component that extends LifecycleBase changing state: 
#org.apache.catalina.util.LifecycleBase.level = FINE 

# To see debug messages in TldLocationsCache, uncomment the following line: 
#org.apache.jasper.compiler.TldLocationsCache.level = FINE 

com.zaxxer.hikari.level = FINEST 
com.zaxxer.hikari.handlers = 1catalina.org.apache.juli.AsyncFileHandler 

この機能を取得する方法についての情報を入力してください。 は非常に

答えて

1

ソリューションありがとう:すべての

まず、Tomcatサーバーの内部ロギングはlog4jApache Commons Loggingから変更する必要があります。これを行う手順はhereと記載されています。 ファイルがtomcat/libディレクトリに配置する必要があり

  • log4j.properties上記のリンクを読み取り、extras束(tomcat-juli-adapters.jartomcat-juli.jar)から前述のjarファイルをダウンロードしたと仮定します。
  • logging.propertiesファイルをtomcat/confディレクトリから削除または名前を変更すると、起動中にtomcatが取得されません。 tomcat/libディレクトリへ
  • コピーし、次のjarファイル:log4j-1.2.17.jartomcat-juli-adapters.jar
  • コピーしてtomcat/binディレクトリに以下のjarファイルを置き換える:上記の手順の後tomcat-juli.jar

tomcatを今log4jを使用してログインする必要があります。

HikariCPログを有効にするには、次の操作を行います。

  • 編集log4j.propertiesファイルと最後に次の行を追加します。
    • log4j.logger.com.zaxxer.hikari = DEBUG
    • は、以下のjarがtomcat/libディレクトリに存在していることを確認しますがHikariCP-2.4.6.jar
    • jcl-over-slf4j-1.7.21.jar
    • slf4j-api-1.7.21.jar
    • slf4j-log4j12-1.7.21。jarファイル
    • 7月ツーSLF4J-1.7.21.jar

マイlog4j.propertiesファイル:

log4j.rootLogger = INFO, CATALINA 

# Define all the appenders 
log4j.appender.CATALINA = org.apache.log4j.DailyRollingFileAppender 
log4j.appender.CATALINA.File = ${catalina.base}/logs/catalina 
log4j.appender.CATALINA.Append = true 
log4j.appender.CATALINA.Encoding = UTF-8 
# Roll-over the log once per day 
log4j.appender.CATALINA.DatePattern = '.'yyyy-MM-dd'.log' 
log4j.appender.CATALINA.layout = org.apache.log4j.PatternLayout 
log4j.appender.CATALINA.layout.ConversionPattern = %d [%t] %-5p %c- %m%n 

log4j.appender.LOCALHOST = org.apache.log4j.DailyRollingFileAppender 
log4j.appender.LOCALHOST.File = ${catalina.base}/logs/localhost 
log4j.appender.LOCALHOST.Append = true 
log4j.appender.LOCALHOST.Encoding = UTF-8 
log4j.appender.LOCALHOST.DatePattern = '.'yyyy-MM-dd'.log' 
log4j.appender.LOCALHOST.layout = org.apache.log4j.PatternLayout 
log4j.appender.LOCALHOST.layout.ConversionPattern = %d [%t] %-5p %c- %m%n 

log4j.appender.MANAGER = org.apache.log4j.DailyRollingFileAppender 
log4j.appender.MANAGER.File = ${catalina.base}/logs/manager 
log4j.appender.MANAGER.Append = true 
log4j.appender.MANAGER.Encoding = UTF-8 
log4j.appender.MANAGER.DatePattern = '.'yyyy-MM-dd'.log' 
log4j.appender.MANAGER.layout = org.apache.log4j.PatternLayout 
log4j.appender.MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n 

log4j.appender.HOST-MANAGER = org.apache.log4j.DailyRollingFileAppender 
log4j.appender.HOST-MANAGER.File = ${catalina.base}/logs/host-manager 
log4j.appender.HOST-MANAGER.Append = true 
log4j.appender.HOST-MANAGER.Encoding = UTF-8 
log4j.appender.HOST-MANAGER.DatePattern = '.'yyyy-MM-dd'.log' 
log4j.appender.HOST-MANAGER.layout = org.apache.log4j.PatternLayout 
log4j.appender.HOST-MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n 

log4j.appender.CONSOLE = org.apache.log4j.ConsoleAppender 
log4j.appender.CONSOLE.Encoding = UTF-8 
log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout 
log4j.appender.CONSOLE.layout.ConversionPattern = %d [%t] %-5p %c- %m%n 

# Configure which loggers log to which appenders 
log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost] = INFO, LOCALHOST 
log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager] =\ 
    INFO, MANAGER 
log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager] =\ 
    INFO, HOST-MANAGER 

log4j.logger.com.zaxxer.hikari = DEBUG 
関連する問題