私のapplication.ymlで私は得ました:
logging:
config: classpath:log4j2.debug.yml
そして、異なるプロファイルの他のいくつか。アプリケーションを起動すると、次のようになります。
ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console.
プロファイルされたものの隣にlog4j2.xmlを置くだけで、機能します。だから、これは私が依存関係を見逃しているものだと思いますか、log4j2では不可能ですか?
参照:ブートログレベルは、私が試したように可能であるはずだと言っていますか?
私の側では、yamlファイルの代わりにプロパティファイルを使用しています。2つのログファイルが必要でした。1つはすべてをコンソールに記録し、もう1つはファイルに記録します。そこで、log4j2-dev.xmlとlog4j2-file.xmlの2つのlog4j2構成ファイルを作成しました。
私は2つのSpringプロファイルを使用しています。デフォルトのプロファイルと「dev」という名前のプロファイルです。log4j2構成ファイルを切り替えるために、以下を含むファイルapplication.propertiesを作成しました。
spring.profiles.active=
logging.config=classpath:log4j2-file.xml
また、Springが「dev」プロファイルを検出すると自動的にアクティブ化される別のプロパティファイルapplication-dev.propertiesがあります。を含む:
logging.config=classpath:log4j2-dev.xml
log4j2-dev.xml構成を使用する場合は、application.propertiesの「spring.profiles.active =」の値として「dev」を追加するだけです。
このページでFeiyuZhouの答えを見ることができます。彼はYaml構成ファイルを使用して解決策を提示します:application.propertiesによってlog4j2パスを定義する方法は?
もちろん、いつでもapplication.propertiesの属性logging.configを削除し、log4j2.xmlのlog4j2-file.xmlの名前を変更することができます。Springプロファイルによってトリガーされる必要なしに、Log4j2によってデフォルトでロードされます
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加