weixin_47025609 2022-12-12 15:16 采纳率: 0%
浏览 18

was上部分日志不打印

项目放到was测试环境,项目是有报错打印日志的,但是放到生产是was上面,有的报错有打印日志,有的报错没有打印日志(感觉是像更改日志详情级别那里的用户组,但是没找到怎么添加的)。找了半天没找到,是否有熟悉的解答一下。

  • 写回答

1条回答 默认 最新

  • bluetata 云计算领域优质创作者 2022-12-13 18:57
    关注

    程序里面

    将 WsLevel.DETAIL 级别和更高级别用于消息,将更低级别用于跟踪。 WebSphere Application Server Extension API (com.ibm.websphere.logging 包) 包含 WsLevel 类。

    WsLevel.FATAL 
    Level.SEVERE 
    Level.WARNING 
    WsLevel.AUDIT 
    Level.INFO 
    Level.CONFIG 
    WsLevel.DETAIL
    

    本地打印log类似于

    // note - generally avoid use of FINE, FINER, FINEST levels for messages to be consistent with
    // WebSphere Application Server
    
    String componentName = "com.ibm.websphere.componentX";
    String resourceBundleName = "com.ibm.websphere.componentX.Messages";
    Logger logger = Logger.getLogger(componentName, resourceBundleName);
    
    // "Convenience" methods - not generally recommended due to lack of class 
    / method names
    //   - cannot specify message substitution parameters
    //   - cannot  specify class and method names
    if (logger.isLoggable(Level.SEVERE))
        logger.severe("MSG_KEY_01");
    
    if (logger.isLoggable(Level.WARNING))
        logger.warning("MSG_KEY_01");
    
    if (logger.isLoggable(Level.INFO))
        logger.info("MSG_KEY_01");
    
    if (logger.isLoggable(Level.CONFIG))
        logger.config("MSG_KEY_01");
    
    
    // log methods are not generally used due to lack of class and method 
    names
    //   - enable use of WebSphere Application Server-specific levels
    //   - enable use of message substitution parameters
    //   - cannot specify class and method names
    if (logger.isLoggable(WsLevel.FATAL))
        logger.log(WsLevel.FATAL, "MSG_KEY_01", "parameter 1");
    
    if (logger.isLoggable(Level.SEVERE))
        logger.log(Level.SEVERE, "MSG_KEY_01", "parameter 1");
    
    if (logger.isLoggable(Level.WARNING))
        logger.log(Level.WARNING, "MSG_KEY_01", "parameter 1");
    
    if (logger.isLoggable(WsLevel.AUDIT))
        logger.log(WsLevel.AUDIT, "MSG_KEY_01", "parameter 1");
    
    if (logger.isLoggable(Level.INFO))
        logger.log(Level.INFO, "MSG_KEY_01", "parameter 1");
    
    if (logger.isLoggable(Level.CONFIG))
        logger.log(Level.CONFIG, "MSG_KEY_01", "parameter 1");
    
    if (logger.isLoggable(WsLevel.DETAIL))
        logger.log(WsLevel.DETAIL, "MSG_KEY_01", "parameter 1");
    
    
    // logp methods are the way to log
    //   - enable use of WebSphere Application Server-specific levels
    //   - enable use of message substitution parameters
    //   - enable use of class and method names
    if (logger.isLoggable(WsLevel.FATAL))
        logger.logp(WsLevel.FATAL, className, methodName, "MSG_KEY_01", 
    "parameter 1");
    
    if (logger.isLoggable(Level.SEVERE))
        logger.logp(Level.SEVERE, className, methodName, "MSG_KEY_01", 
    "parameter 1");
    
    if (logger.isLoggable(Level.WARNING))
        logger.logp(Level.WARNING, className, methodName, "MSG_KEY_01", 
    "parameter 1");
    
    if (logger.isLoggable(WsLevel.AUDIT))
        logger.logp(WsLevel.AUDIT, className, methodName, "MSG_KEY_01", 
    "parameter 1");
    
    if (logger.isLoggable(Level.INFO))
        logger.logp(Level.INFO, className, methodName, "MSG_KEY_01", 
    "parameter 1");
    
    if (logger.isLoggable(Level.CONFIG))
        logger.logp(Level.CONFIG, className, methodName, "MSG_KEY_01", 
    "parameter 1");
    
    if (logger.isLoggable(WsLevel.DETAIL))
        logger.logp(WsLevel.DETAIL, className, methodName, "MSG_KEY_01", 
    "parameter 1");
    
    
    // logrb methods are not generally used due to diminished performance 
    of switching resource bundles dynamically
    //   - enable use of WebSphere Application Server-specific levels
    //   - enable use of message substitution parameters
    //   - enable use of class and method names
    String resourceBundleNameSpecial = 
    "com.ibm.websphere.componentX.MessagesSpecial";
    
    if (logger.isLoggable(WsLevel.FATAL))
        logger.logrb(WsLevel.FATAL, className, methodName, resourceBundleNameSpecial, 
    "MSG_KEY_01", "parameter 1");
    
    if (logger.isLoggable(Level.SEVERE))
        logger.logrb(Level.SEVERE, className, methodName, resourceBundleNameSpecial, 
    "MSG_KEY_01", "parameter 1");
    
    if (logger.isLoggable(Level.WARNING))
        logger.logrb(Level.WARNING, className, methodName, resourceBundleNameSpecial, 
    "MSG_KEY_01", "parameter 1");
    
    if (logger.isLoggable(WsLevel.AUDIT))
        logger.logrb(WsLevel.AUDIT, className, methodName, resourceBundleNameSpecial, 
    "MSG_KEY_01", "parameter 1");
    
    if (logger.isLoggable(Level.INFO))
        logger.logrb(Level.INFO, className, methodName, resourceBundleNameSpecial, 
    "MSG_KEY_01", "parameter 1");
    
    if (logger.isLoggable(Level.CONFIG))
        logger.logrb(Level.CONFIG, className, methodName, resourceBundleNameSpecial, 
    "MSG_KEY_01", "parameter 1");
    
    if (logger.isLoggable(WsLevel.DETAIL))
        logger.logrb(WsLevel.DETAIL, className, methodName, resourceBundleNameSpecial, 
    "MSG_KEY_01", "parameter 1");
    
    评论

报告相同问题?

问题事件

  • 创建了问题 12月12日

悬赏问题

  • ¥15 网站设计与开发职业技能大赛试题
  • ¥20 在使用CESM2.2.0模型进行case.submit过程中出现如下错误(关键词-Map)
  • ¥15 有办法改变通过wifi进入的网站的设置吗
  • ¥15 所以到底怎么算!算到凌晨五点都算不出来!
  • ¥15 label_studio
  • ¥15 请教如何phython发邮件
  • ¥15 linux系统安装问题
  • ¥15 路径规划如何采用矢量法让他们尽量在一个方向
  • ¥15 crypto 一道rsa解密题
  • ¥15 survIDINRI已将生存时间转为数值变量,仍错误 Time variable is not numeric。