モジュール java.logging
パッケージ java.util.logging

クラスSocketHandler


public class SocketHandler extends StreamHandler
簡潔なネットワーク・ログHandlerです。

LogRecordはネットワーク・ストリーム接続に通知されます。 デフォルトで、XMLFormatterクラスはフォーマット処理に使用されます。

構成: デフォルトで各SocketHandlerは次のLogManager構成プロパティを使用して初期化されます。ここで<handler-name>はハンドラの完全修飾クラス名を示します。 プロパティが未定義である場合(または無効な値を持つ場合)、指定されたデフォルト値が使用されます。

  • <handler-name>.levelはHandlerのデフォルト・レベルを指定します(デフォルトはLevel.ALL)。
  • <handler-name>.filterは使用するFilterクラスの名前を指定します(デフォルトはFilterなし)。
  • <handler-name>.formatterは使用するFormatterクラスの名前を指定します(デフォルトはjava.util.logging.XMLFormatter)。
  • <handler-name>.encodingは使用する文字セット・エンコーディングの名前を指定します(デフォルトは、デフォルト・プラットフォームのエンコーディング)。
  • <handler-name>.hostは、接続先のターゲット・ホスト名を指定します(デフォルトなし)。
  • <handler-name>.portは、使用するターゲットTCPポートを指定します(デフォルトなし)。

たとえば、SocketHandlerのプロパティは次のようになります。

  • java.util.logging.SocketHandler.level=INFO
  • java.util.logging.SocketHandler.formatter=java.util.logging.SimpleFormatter

カスタム・ハンドラ(例: com.foo.MyHandler)の場合、プロパティは次のようになります。

  • com.foo.MyHandler.level=INFO
  • com.foo.MyHandler.formatter=java.util.logging.SimpleFormatter

出力の入出力ストリームはバッファされますが、各LogRecordが書き込まれるとフラッシュされます。

導入されたバージョン:
1.4
  • コンストラクタの詳細

    • SocketHandler

      public SocketHandler() throws IOException
      LogManagerプロパティまたはそのデフォルトだけを使用して、SocketHandlerを作成します。
      例外:
      IllegalArgumentException - ホストまたはポートが無効であるか、LogManagerプロパティとして指定されていない場合。
      IOException - ターゲットのホストとポートに接続できない場合。
    • SocketHandler

      public SocketHandler(String host, int port) throws IOException
      指定されたホストとポートを使ってSocketHandlerを構築します。 SocketHandlerは、指定されたターゲットのhost引数とport引数が使用されないかぎり、LogManagerプロパティまたはそのデフォルト値に基づいて構成されます。 host引数が空であるがnull Stringでない場合、localhostが使用されます。
      パラメータ:
      host - ターゲット・ホスト。
      port - ターゲット・ポート。
      例外:
      IllegalArgumentException - ホストまたはポートが無効な場合。
      IOException - ターゲットのホストとポートに接続できない場合。
  • メソッドの詳細

    • close

      public void close() throws SecurityException
      この出力ストリームを閉じます。
      オーバーライド:
      close、クラスStreamHandler
      例外:
      SecurityException - セキュリティ・マネージャが存在する場合で、呼出し元がLoggingPermission("control")を持っていない場合。
    • publish

      public void publish(LogRecord record)
      LogRecordをフォーマットして発行します。
      オーバーライド:
      publish、クラスStreamHandler
      パラメータ:
      record - ログ・イベントの説明。 nullレコードは何の通知もなく無視され、発行されない