诊断服务 MBean 提供的更简单接口
也可通过 Java™ 管理扩展 (JMX) 接口(称为诊断服务接口)获得诊断提供程序 (DP) 的所有服务。“诊断服务”接口使管理员可以使用诊断提供程序名称或诊断提供程序标识来对 DP 执行方法。
当请求“诊断服务”提供一定格式的输出时,会将它本地化为客户机的语言环境。这就使得对于使用某一接口(该接口使用复杂的 Java 对象,例如,从“诊断提供程序 MBean”返回的那些 Java 对象)的客户机本来非常理想的“诊断服务 MBean”变得不可行。wsadmin 工具就是这种接口的一个示例。
“诊断服务”接口为诊断提供程序(configDump、stateDump 和 selfDiagnostic)对象上提供的每种关键方法都提供了四个特征符。由于这些方法特征符看起来都非常相似,因此,本示例中通过 configDump 方法将它们都显示出来了。映射至诊断提供程序上的 configDump 的四个“诊断服务”方法是:
public DiagnosticEvent [] configDump(String aDPName, String aAttributeIdSpec, boolean aRegisteredOnly) public DiagnosticEvent [] configDumpById(String aDPid, String aAttributeIdSpec, boolean aRegisteredOnly) public String [] configDumpFormatted(String aDPName, String aAttributeIdSpec, boolean aRegisteredOnly, Locale aLocale) public String [] configDumpFormattedById(String aDPid, String aAttributeIdSpec, boolean aRegisteredOnly, Locale aLocale) {
前两个方法将准确返回诊断提供程序执行的操作。后面两个方法负责传递给实际的诊断提供程序,但是,它们会将诊断提供程序返回的诊断事件的数组转换为更易使用的 String 数组。另外,这些方法还会将输出本地化,让它使用适当的语言环境。一定要注意,可以使用诊断提供程序标识或诊断提供程序名称来执行同一方法。