1. ホーム
  2. java

[解決済み] ハイバネートログのコンソール出力をオフにする

2023-03-30 12:10:09

質問

私はhibernate 3を使用しており、コンソールにすべての起動メッセージをダンプするのを止めたいと思っています。私はlog4j.propertiesでstdout行をコメントアウトしてみましたが、うまくいきませんでした。私のログファイルを以下に貼り付けました。また、私は標準的なプロジェクト構造でeclipseを使用しており、プロジェクトフォルダーのルートとbinフォルダーの両方にlog4j.propertiesのコピーを持っています。

### ログメッセージを標準出力に直接出力します。
#log4j.appender.stdout=org.apache.log4j.ConsoleAppenderを指定します。
#log4j.appender.stdout.Target=System.out(ログ出力先)
#ログアウトする。
#ログアウトする。5p %c{1}:%L - %m%n

### hibernate.logファイルへのメッセージの直接出力 ###.
log4j.appender.file=org.apache.log4j.FileAppenderを指定します。
log4j.appender.file=hibernate.logを指定します。
log4j.appender.file.layout=org.apache.log4j.PatternLayoutを指定する。
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE}. 5p %c{1}:%L - %m%n

### ログレベルを設定する - より詳細なロギングを行うには、'info'を'debug'に変更します ###。

log4j.rootLogger=warn, stdout

#ログアウトする。
log4j.logger.org.hibernate=debugに変更。

### HQLクエリパーサの活動を記録
#ログを記録する。

### SQLだけをログに記録する
ログを記録する #log4j.logger.org.hibernate.SQL=debug

### JDBC のバインドパラメータをログに記録する
log4j.logger.org.hibernate.type=infoを記録する。
ログを記録する #log4j.logger.org.hibernate.type=debug

### ログスキーマのエクスポートと更新 ###.
log4j.logger.org.hibernate.tool.hbm2ddl=debugを設定します。

### ログ HQL パースツリー
#log4j.logger.org.hibernate.hql=debug

### キャッシュのログを取る
#log4j.logger.org.hibernate.cache=debug

### トランザクションをログに記録する
ログを記録する #log4j.logger.org.hibernate.transaction=debug

### JDBCリソースの取得をログに記録
#log4j.logger.org.hibernate.jdbc=debug

### DriverManager を使用しているときに接続の漏れを追跡したい場合は、次の行を有効にします。
### DriverManagerConnectionProvider を使用した際の接続漏れを追跡したい場合は、以下の行を有効にします ###。
#log4j.logger.org.hibernate.connection.DriverManagerConnectionProvider=trac5

どのように解決するのですか?

より適切なロギングレベルを設定してみてください。ロギングレベルを info に設定すると info またはそれ以上のレベル ( warn , errorfatal ) はログに記録されます、つまり debug のロギングイベントは無視されます。

log4j.logger.org.hibernate=info

または XMLバージョン というログ4jの設定ファイルの

<logger name="org.hibernate">
  <level value="info"/> 
</logger>

参照 log4jマニュアル .