- java.lang.Object
-
- java.util.logging.Handler
-
- java.util.logging.StreamHandler
-
- java.util.logging.SocketHandler
-
public class SocketHandler extends StreamHandler
简单网络记录Handler
。LogRecords
被发布到网络流连接。 默认情况下,XMLFormatter
类用于格式化。配置:默认情况下,每个
SocketHandler
都使用以下LogManager
配置属性进行初始化,其中<handler-name>
引用处理程序的完全限定类名。 如果未定义属性(或具有无效值),则使用指定的默认值。- <处理程序名> .LEVEL指定了默认级别
Handler
(默认为Level.ALL
)。 - <处理程序名> .filter指定的名称
Filter
类中使用(默认为无Filter
)。 - <handler-name> .formatter指定要使用的
Formatter
类的名称(默认为java.util.logging.XMLFormatter
)。 - <handler-name>。编码要使用的字符集编码的名称(默认为默认平台编码)。
- <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
输出IO流是缓冲的,但在写入每个
LogRecord
之后被刷新。- 从以下版本开始:
- 1.4
- <处理程序名> .LEVEL指定了默认级别
-
-
构造方法摘要
构造方法 Constructor 描述 SocketHandler()
创建一个SocketHandler
,仅使用LogManager
属性(或其默认值)。SocketHandler(String host, int port)
构造一个SocketHandler
使用指定的主机和端口。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 void
close()
关闭此输出流。void
publish(LogRecord record)
格式化并发布LogRecord
。-
Methods inherited from class java.util.logging.Handler
getEncoding, getErrorManager, getFilter, getFormatter, getLevel, reportError, setErrorManager, setFilter, setFormatter, setLevel
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from class java.util.logging.StreamHandler
flush, isLoggable, setEncoding, setOutputStream
-
-
-
-
构造方法详细信息
-
SocketHandler
public SocketHandler() throws IOException
创建一个SocketHandler
,仅使用LogManager
属性(或其默认值)。- 异常
-
IllegalArgumentException
- 如果主机或端口无效或未指定为LogManager属性。 -
IOException
- 如果我们无法连接到目标主机和端口。
-
SocketHandler
public SocketHandler(String host, int port) throws IOException
使用指定的主机和端口构建一个SocketHandler
。SocketHandler
基于LogManager
属性(或其默认值)进行配置,但使用给定的目标主机和端口参数。 如果host参数为空,而不是空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
- 日志事件的描述。 空值记录被默认忽略并且未发布
-
-