検索

5.2.3. JBoss Logging を使用したアプリケーションへのロギングの追加

download PDF
アプリケーションからのメッセージをログに記録するには、Logger オブジェクトを作成します (org.jboss.logging.Logger) そしてそのオブジェクトの適切なメソッドを呼び出します。このタスクでは、これに対するサポートをアプリケーションに追加するために必要な手順について説明します。

前提条件

  • ビルドシステムとして Maven を使用している場合は、JBossMaven リポジトリーを含めるようにプロジェクトを設定する必要があります。「Maven 設定を使用した JBoss EAP 6 Maven リポジトリーの設定」 を参照してください。
  • JBoss Logging JAR ファイルがアプリケーションのビルドパスに指定されている必要があります。これを行う方法は、Red Hat JBossDeveloperStudio を使用してアプリケーションをビルドするか Maven を使用してアプリケーションをビルドするかによって異なります。
    • Red Hat JBoss Developer Studio を使用してビルドする場合は、プロジェクト メニューから プロパティー を選択し、ターゲット ランタイムを選択して、JBoss EAP 6 のランタイムがチェックされていることを確認します。
    • Maven を使用してビルドする場合は、次の依存関係設定をプロジェクトの pom.xml ファイルに追加します。
      <dependency>
         <groupId>org.jboss.logging</groupId>
         <artifactId>jboss-logging</artifactId>
         <version>3.1.2.GA-redhat-1</version>
         <scope>provided</scope>
      </dependency>
    JAR は、JBoss EAP 6 がデプロイされたアプリケーションに提供するため、ビルドされたアプリケーションに含める必要はありません。

手順5.1 アプリケーションにロギングを追加する

ロギングを追加するクラスごとに、次の手順を実行します。
  1. インポートを追加

    使用する JBoss Logging クラスネームスペースに対して import ステートメントを追加します。少なくとも、インポートする必要がありますimport org.jboss.logging.Logger
    import org.jboss.logging.Logger;
  2. Logger オブジェクトを作成します

    のインスタンスを作成しますorg.jboss.logging.Logger静的メソッドを呼び出して初期化しますLogger.getLogger(Class)。Red Hat は、これをクラスごとに単一のインスタンス変数として作成することをお勧めします。
    private static final Logger LOGGER = Logger.getLogger(HelloWorld.class);
  3. ロギングメッセージを追加する

    のメソッドへの呼び出しを追加しますLoggerログメッセージを送信するコードに反対します。Logger オブジェクトには、異なるタイプのメッセージに対して異なるパラメーターを持つさまざまなメソッドがあります。最も使いやすいのは次のとおりです。
    debug(Object message)
    info(Object message)
    error(Object message)
    trace(Object message)
    fatal(Object message)
    これらのメソッドは、対応するログレベルとmessage文字列としてのパラメーター。
    LOGGER.error("Configuration file not found.");
    JBoss Logging メソッドの完全なリストについては、以下を参照してください。org.jboss.loggingJBoss EAP 6 ドキュメントのパッケージ。

例5.1 プロパティーファイルを開くときに JBossLogging を使用する

この例は、プロパティーファイルからアプリケーションのカスタマイズされた設定をロードするクラスからのコードの抽出を示しています。指定されたファイルが見つからない場合は、ERROR レベルログメッセージが記録されます。
import org.jboss.logging.Logger;
public class LocalSystemConfig
{
   private static final Logger LOGGER = Logger.getLogger(LocalSystemConfig.class);

   public Properties openCustomProperties(String configname) throws CustomConfigFileNotFoundException
   {
      Properties props = new Properties();
      try 
      {
         LOGGER.info("Loading custom configuration from "+configname);
         props.load(new FileInputStream(configname));
      }
      catch(IOException e) //catch exception in case properties file does not exist
      {
         LOGGER.error("Custom configuration file ("+configname+") not found. Using defaults.");
         throw new CustomConfigFileNotFoundException(configname);
      }
      
      return props;
   }
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.