配置 Liberty 中功能部件的跟踪和日志记录

可以将 Liberty 的跟踪和日志记录机制用于 Liberty 功能部件。记录服务是 Liberty 内核的一部分,因此您不必在 server.xml 文件中指定功能部件,也可以使用该功能部件。

关于此任务

Liberty 提供了下列 SPI 来将跟踪和日志记录机制集成到您的定制功能部件代码:
com.ibm.websphere.ras
com.ibm.websphere.ras 包提供了用来记录消息和跟踪记录的类,以及一些扩展点。通常,功能部件代码可以使用 java.util.logging 包来记录跟踪和消息,以及通过 Liberty 日志记录配置来控制输出,但 WebSphere® 包的扩展功能有时很有用,而在禁用跟踪的情况下,跟踪保护就稍微有效一些。
com.ibm.websphere.ras.annotations
com.ibm.websphere.ras.annotations 包提供用来与其他包中的类一起使用的注释。例如,可以使用 @Sensitive 注释来防止带注释变量的内容出现在跟踪或消息输出中。
com.ibm.ws.ffdc
com.ibm.ws.ffdc 包提供的工具可以写入首次故障数据捕获 (FFDC) 记录以帮助调试非预期的异常。
com.ibm.wsspi.logging
com.ibm.wsspi.logging 包提供日志和 FFDC 记录的拦截点。

每个 Liberty SPI 的 Java™ API 文档均可以在 ${wlp.install.dir}/dev 目录的某个 javadoc 子目录下的单独 .zip 文件中找到。

过程

下列步骤说明如何配置示例 Liberty 功能部件(称为 myfeature),以使用 Liberty 的跟踪和日志记录机制。

  1. 对功能部件 myfeature 指定消息文件的位置,以及 com.ibm.websphere.ras.TraceComponent 类所需的组名。
    import java.util.ResourceBundle;
    
    public class myFeatureConstants {
    
        public static final String TR_RESOURCE_BUNDLE = 
            "com.mycompany.myFeature.internal.resources.FeatureMessages";
    
        public static final String TR_GROUP = "myFeature";
    
        public static final ResourceBundle messages = ResourceBundle.getBundle(TR_RESOURCE_BUNDLE);
    
    }
  2. 在功能部件服务代码的实现类中,调用 com.ibm.websphere.ras.TraceComponent 类的 register() 方法,以向 Liberty 随附的跟踪管理器注册实现类。然后,可以配置跟踪管理器以跟踪功能部件的 DS 方法。
    ...
    import com.ibm.websphere.ras.Tr;
    import com.ibm.websphere.ras.TraceComponent;
    
    
    public class myFeatureServiceImpl {
    
        private static final TraceComponent tc = Tr.register(myFeatureServiceImpl.class);
    
    
        protected void activate(ComponentContext cc, Map<String, Object> newProps) {
            if (tc.isDebugEnabled()) {
                Tr.debug(tc, "myFeatureComponentImpl activated"); }
    ...
  3. 使用 TraceOptions 注释来指定跟踪组名和消息束名。
    @TraceOptions(traceGroup = myFeatureConstants.TR_GROUP, messageBundle = 
        myFeatureConstants.TR_RESOURCE_BUNDLE)
    package com.mycompany.myFeature;
    
    import com.ibm.websphere.ras.annotation.TraceOptions;
    import com.mycompany.myfeature.internal.myFeatureConstants;
    ...

用于指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: Tuesday, 6 December 2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twlp_feat_logging
文件名:twlp_feat_logging.html