web-dev-qa-db-ja.com

application.ymlでルートログレベルを設定する

Spring Boot(1.3 M1)でapplication.propertiesを使用し、ますます複雑になったため、yamlファイルへの変換を開始しました。

しかし、私はこれをyamlに翻訳するのに問題があります:

logging.level.*=WARN
logging.level.com.filenet.wcm=ERROR
logging.level.de.mycompany=DEBUG

最後の2行は、これに簡単に変換できます。

logging:
    level:
        com.filenet.wcm: ERROR
        de.mycompany: DEBUG

しかし、ルートログレベルの値を追加する方法は?次の2つのアプローチは失敗しました。

失敗したアプローチ1:

logging:
    level: WARN
        com.filenet.wcm: ERROR
        de.mycompany: DEBUG    

失敗したアプローチ2:

logging:
    level: 
        star: WARN
        com.filenet.wcm: ERROR
        de.mycompany: DEBUG    

docs を読み、stackoverflowとgoogledを検​​索しましたが、有効な構文の例を見つけられませんでした。

55
Marged

ROOTを使用して、ルートロギングレベルを設定できます。

logging:
  level:
    ROOT: DEBUG
104
Andy Wilkinson

パッケージごとにレベルが必要な場合は、次の構文を使用できます。

logging:
  level:
     org.springframework.web: DEBUG
     guru.springframework.controllers: DEBUG
     org.hibernate: DEBUG
13
Michael COLL

古い質問ですが、この問題がありました。

設定中

org.springframework.web: debug

または

org.hibernate: debug

プロジェクトファイル(パッケージごとの設定レベル)に対して同じことをしたい場合は、ワイルドカードを使用する必要があります。したがって、質問の例では、次のようになります。

logging:
    level:
        root: WARN
        com.filenet.wcm.*: ERROR
        de.mycompany.*: DEBUG

または、torinaの回答に示されているように、ワイルドカードを使用せずにクラスごとにログレベルを設定できます。

1
Joakim

classnameを使用してロギングレベルを設定することもできます。

logging:
  level:
    com.yourorganization.Yourclass: DEBUG
1
torina