モジュール 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レコードは何の通知もなく無視され、発行されない