• log4j(四)——如何控制不同风格的日志信息的输出?


    一、测试环境

      与log4j(一)——为什么要使用log4j?一样,这里不再重述

    二、老规矩,先来个例子,然后再聊聊感受

    package com.sc.log4j;
    
    import org.apache.log4j.Appender;
    import org.apache.log4j.BasicConfigurator;
    import org.apache.log4j.ConsoleAppender;
    import org.apache.log4j.Layout;
    import org.apache.log4j.LogManager;
    import org.apache.log4j.Logger;
    import org.apache.log4j.PatternLayout;
    
    
    /**
     * Created by Miss黄
     */
    public class UseLog4j {
        //日志记录器
        private static Logger LOGGER = LogManager.getLogger(UseLog4j.class);
        //程序入口——主函数
        public static void main(String[]args){
            /**
             * 设置日志信息输出的风格样式,日志输出的风格主要有以下几种,可以各自设置一下,看看对应的效果
             */
    
            /**
             * 1)org.apache.log4j.HTMLLayout ,以HTML表格形式布局,输出的信息为:
             * 1:从layout(布局)的构建到日志事件创建所经过的毫秒数
             * 2:生成该日志事件的线程的名称
             * 3:日志事件的优先级,即DEBUG,INFO,WARN,ERROR
             * 4:日志事件的category(类别),通常就是所在类的全名
             * 5:代码中指定的消息
             */
    //        Layout layout = new HTMLLayout();
    
            /**
             * 2)org.apache.log4j.SimpleLayout,输出的信息为:
             * 1:日志事件的优先级,即DEBUG,INFO,WARN,ERROR
             * 2:代码中指定的消息
             */
    //        Layout layout = new SimpleLayout();
    
            /**
             * 3)org.apache.log4j.TTCCLayout,输出的信息为:
             * 1:从layout(布局)的构建到日志事件创建所经过的毫秒数
             * 2:生成该日志事件的线程的名称
             * 3:日志事件的优先级,即DEBUG,INFO,WARN,ERROR
             * 4:日志事件的category(类别),通常就是所在类的全名
             * 5:代码中指定的消息
             */
    //        Layout layout = new TTCCLayout();
    
            /**
             * 4)org.apache.log4j.PatternLayout(可以灵活地指定布局模式),这是实际工作中我们最常用的一种,输出的信息是自定义的,比如:下面的设置
             */
            //设置日志信息的格式化方式
            String pattern = "%l - %p - %m%n";
            Layout layout = new PatternLayout(pattern);
    
            //设置日志信息的输出目的地
            Appender appender= new ConsoleAppender(layout);
            //设置日志信息的输出配置
            BasicConfigurator.configure(appender);
            //输出日志信息
            LOGGER.info(" my level is INFO");
        }
    }

    三:感受

         1)上面的代码将几种常用的日志输出风格都列出来了,感兴趣的话,可以将注释解注,试验一下效果

         2)通过试验,我也将每种风格的日志信息都是输出什么也简单的列举了一下,总的感觉自定义的风格是最好玩的一个,我们可以随便的定义自己想要的输出内容

         3)log4j定义的日志输出风格不止这几个,还有别的只是这几个比较简单,介绍起来也方便,也能比较一下各种风格的异同,其中自定义的方式是最为常用的,非常的灵活方便

    文章转自:http://www.cnblogs.com/godtrue/p/6442562.html

  • 相关阅读:
    js中serialize() 序列化表单时自动url编码
    Oracle账户被锁解决:ora-28000:the account is locked
    jvm(二)------各个运行时数据库常见内存溢出分析与模拟
    解决 maven构建的web项目无法在外部Tomcat中运行的问题
    java源码分析之LinkedList(转)
    ArrayList源码剖析
    详解Swing中JTree组件的功能
    java 制作QQ登录界面
    java 类与类之间的关系 及uml图
    java 限定控制台输入值的类型
  • 原文地址:https://www.cnblogs.com/javahr/p/8328260.html
Copyright © 2020-2023  润新知