[log4j] 可用案例

可用的 log4j 配置, log4j.properties

log = /Users/grs/Documents/log4j
log4j.rootLogger = DEBUG, FILEROLING, FILE, CONSOLE

log4j.appender.FILE=org.apache.log4j.FileAppender
log4j.appender.FILE.file=${log}/log.out
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%d{ISO8601} - %-5p - %m%n

log4j.appender.FILEROLING=org.apache.log4j.RollingFileAppender
log4j.appender.FILEROLING.file=${log}/logRR.out
log4j.appender.FILEROLING.MaxFileSize=1KB
log4j.appender.FILEROLING.MaxBackupIndex=30
log4j.appender.FILEROLING.layout=org.apache.log4j.PatternLayout
log4j.appender.FILEROLING.layout.conversionPattern=%d{ISO8601} - %-5p - %m%n

log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d{ISO8601} - %-5p - %m%n

日志生成的代码

public class App {

    static String path = "src/resources/log4j.properties";
    static Logger log = Logger.getLogger(App.class.getName());

    public static void main(String[] args) throws Exception {

        PropertyConfigurator.configure(path);

        App app = new App();

        int cnt = 0;

        while (true) {
            for (int i = 0; i < 100; i++) {
                app.printLog();
            }

            Random rd = new Random();
            int rdint = rd.nextInt(3000);

            out.println(rdint + " - " + cnt);

            Thread.sleep(rdint);

            cnt++;
            if (cnt == 10) {
                break;
            }
        }
    }

    public void printLog() {
        log.debug("ddddd");

        log.info("iiiiiii");
    }
}

日志效果如下

grs:log4j grs$
grs:log4j grs$ ll -trTh
total 1128
drwx------+ 24 grs  staff   816B Apr 29 00:35:30 2016 ..
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:11 2016 logRR.out.30
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:11 2016 logRR.out.29
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:11 2016 logRR.out.28
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:11 2016 logRR.out.27
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:11 2016 logRR.out.26
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:11 2016 logRR.out.25
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:12 2016 logRR.out.24
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:12 2016 logRR.out.23
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:12 2016 logRR.out.22
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:12 2016 logRR.out.21
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:12 2016 logRR.out.20
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:12 2016 logRR.out.19
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:12 2016 logRR.out.18
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:12 2016 logRR.out.17
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:13 2016 logRR.out.9
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:13 2016 logRR.out.16
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:13 2016 logRR.out.15
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:13 2016 logRR.out.14
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:13 2016 logRR.out.13
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:13 2016 logRR.out.12
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:13 2016 logRR.out.11
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:13 2016 logRR.out.10
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:15 2016 logRR.out.8
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:15 2016 logRR.out.7
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:15 2016 logRR.out.6
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:15 2016 logRR.out.5
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:15 2016 logRR.out.4
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:15 2016 logRR.out.3
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:15 2016 logRR.out.2
-rw-r--r--   1 grs  staff   1.0K Apr 29 01:37:15 2016 logRR.out.1
-rw-r--r--   1 grs  staff     0B Apr 29 01:37:15 2016 logRR.out
-rw-r--r--   1 grs  staff   440K Apr 29 01:37:15 2016 log.out
drwxr-xr-x  34 grs  staff   1.1K Apr 29 01:37:15 2016 .
grs:log4j grs$ 
时间: 2024-10-30 14:12:59

[log4j] 可用案例的相关文章

(转)Heartbeat+DRBD+NFS高可用案例

原文:http://9861015.blog.51cto.com/9851015/1939521--------------------------------Heartbeat+DRBD+NFS高可用案例 9.4 部署DRBD 的需求描述 9.4.1业务需求描述 假设两台服务器Rserver-1/Lserver-1, 其实际IP分别为192.168.236.143(Rserver)和192.168.236.192(Lserver) 配置目标:两台服务器分别配置好DRBD服务后.实现在Rserv

Heartbeat+DRBD+NFS高可用案例

9.4 部署DRBD 的需求描述 9.4.1业务需求描述 假设两台服务器Rserver-1/Lserver-1, 其实际IP分别为192.168.236.143(Rserver)和192.168.236.192(Lserver) 配置目标:两台服务器分别配置好DRBD服务后.实现在Rserver-1机器上/dev/sdb 分区上写入数据.数据会时时的同步到Lserver-1机器上面.一旦服务器Rserver-1机器宕机或硬盘损坏导致数据不可用.Lserver-1机器上的数据此时是picdata-

slf4j 和 log4j使用案例

以Maven项目为例: 步骤: 1.在Maven的pom.xml文件中添加dependency: 之后就会添加3个jar包: 2.在项目下添加log4j.properties  3.log4j.properties文件内容 4.在web.xml中配置: “classpath:”  代表:/WEB-INF /classes/  5.在代码中添加: 6.接下来就可以使用了: classpath就是代表  /WEB-INF /classes/  这个路径 classpath 和 classpath* 

mysql运维管理-Heartbeat实现web服务的高可用案例及维护要点

1.DRBD介绍 Distributed Replicated Block Device (DRBD)是基于块设备在不同的高可用服务器对之间同步和镜像数据的软件,通过它可以实现在网络中的两台服务器之间基于块设备级别的实时或异步镜像或同步复制,类似于rsync+inotify这样的系统架构项目软件.只不过drbd是基于文件系统底层的,即block层级的同步,而rsync+inotify是在文件系统之上的实际物理文件同步.所以dbrd效率更高.块设备可以是磁盘分区,LVM逻辑卷,或整块磁盘. 2.D

2017最新企业Shell面试题及企业运维实战共30道案例

<跟老男孩学习Linux运维:Shell高级编程实战>一书第19章企业面试题分享. 答案: 1.答案在<跟老男孩学习Linux运维:Shell高级编程实战>第19章一书2016年年底前即将出版. 2.2016最新Shell视频http://edu.51cto.com/pack/view/id-546.html 第19章企业Shell面试题及企业运维实战案例 19.1 企业Shell面试题实战案例 19.1.1 企业Shell面试题1:批量生成随机字符文件名案例 使用for循环在/o

日志组件系列:(2)commons logging和log4j实战

(1).下载组件,引入jar包 (2).配置 (3).使用API 1.下载组件,引入jar包 jar包 下载地址 log4j-1.2.17.jar http://logging.apache.org/log4j/1.2/ commons-logging-1.2.jar http://commons.apache.org/proper/commons-logging/download_logging.cgi 2.配置 在项目的src目录下添加log4j.properties文件,配置如下: log

corosync+pacemaker高可用集群

简介 高可用集群,是指以减少服务中断(如因服务器宕机等引起的服务中断)时间为目的的服务器集群技术.简单的说,集群就是一组计算机,它们作为一个整体向用户提供一组网络资源.这些单个的计算机系统就是集群的节点. 高可用集群的出现是为了减少由计算机硬件和软件易错性所带来的损失.它通过保护用户的业务程序对外不间断提供的服务,把因软件/硬件/人为造成的故障对业务的影响降低到最小程度.如果某个节点失效,它的备援节点将在几秒钟的时间内接管它的职责.因此,对于用户而言,集群永远不会停机.高可用集群软件的主要作用就

《构建高可用Linux服务器》第3版与第2版的区别

<构建高可用Linux服务器第3版>即将面市发行,有很多朋友在微博和QQ群上咨询与其第二版的区别,我这里也稍为说明下,<构建高可用Linux服务器>这次发行的是第3版,相对于第1版和第2版而言改动比较大,服务器系统主要以CentOS5.8 x86_64为主,删减了不少章节,部分有争议的内容也全部摈弃了.当然了,在写作过程中吸收了读者对上一版本的许多意见和建议,继续修正第2版的排版错误和人为错误及其它问题. 具体改动如下: 删除了原第二版第2章Linux服务器虚拟化章节,部分内容并进

Heartbeat实现web服务高可用(三)

六:Heartbeat实现WEB服务高可用案例 6.1 部署准备 资源环境:继续使用我们之前已经部署好Heartbeat的两台服务器node01.cn和node02.cn,两台机器heartbeat是双主模式我们再捋一捋    node01.cn   eth0 172.10.25.26 外网管理IP                      eth1 10.25.25.16  心跳直连                      VIP  172.10.25.18        node02.cn