翻译不周,多多包括

---------------------------------------------------------------------------------------切割线--------------------------------------------------------------------

Logback是继承自流行的log4j项目。

作者经验丰富。作为积累了十年日志系统设计的经验的结晶。Logback既快又比现有的日志系统短小精悍。

更夸张的说,LogBack提供了其它系统所不具有的独特又有用的特点。

Logback的三个包

slf4j-api.jar

logback-core.jar

logback-classic.jar

先举个栗子:

import org.slf4j.Logger;
import org.slf4j.LoggerFactory; public class HelloWorld1 { public static void main(String[] args) { Logger logger = LoggerFactory.getLogger(HelloWorld1.class);
logger.debug("Hello world."); }
}

21:38:46.328 [main] DEBUG chapter1.HelloWorld1 - Hello world.

上一个样例里。名为HelloWorld的logger,主函数调用logger的debug方法,记录了“hello World ”的信息。我们说这个主函数包括了一条DEBUG等级的日志输出。

这里你须要知道的是,根据LogBack的的默认策略,假设没有手动配置,LogBack将会对根logger加入一个所谓的ConsoleAppender,因此我们的程序将日志打印在了控制台。



---------------

Logback能够通过内置的状态系统来报告她的内部状态信息。这个是通过调用StatusPrinter的print方法来输出,我们直接过栗子:

import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import ch.qos.logback.classic.LoggerContext;
import ch.qos.logback.core.util.StatusPrinter; public class HelloWorld2 { public static void main(String[] args) {
Logger logger = LoggerFactory.getLogger("chapters.introduction.HelloWorld2");
logger.debug("Hello world."); // print internal state
LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();
StatusPrinter.print(lc);
}
}

控制台输出结果:

22:34:56.229 [main] DEBUG chapters.introduction.HelloWorld2 - Hello world.

22:34:56,195 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]

22:34:56,195 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]

22:34:56,195 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.xml]

22:34:56,196 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Setting up default configuration.







因为缺失logback的配置文件logback-test.xml和lockback.xml(我会在接下来的章节中讨论),她採用了默认策略。也就是几个基础的ConsoleAppender。

Appender是一个决定日志输出目的类,它包含控制台、文件,系统日志。TCPSocket。JMS等等。

我们能够依据自己的情况来创建我们自己的Appender

提示一点:假设遇到错误(errors)Logbcak会自己主动的在控制台打印他的内部状态

总之,在程序使用日志分三步

1配置logback环境

2在每一个你想输出日志的类里。通过LoggerFactory的getLogger方法来生成一个Logger实例。用当前的类名,或者直接是这个类当做參数

3调用logger实例的方法来完毕日志输出。比方debug()。info(),warn()以及error(),她会依据Appender的配置来输出日志

Logback手冊 Chapter 1: Introduction的更多相关文章

  1. 【NS2】NS2 教學手冊(转载)

    之前做毕设的时候搜索NS2的相关资料,发现这个里面涵盖很广,特此收藏,感谢原作者的辛勤劳作. NS2 教學手冊 ( NS2 Learning Guide) [快速連結區] My works  中文影音 ...

  2. PRML Chapter 1. Introduction

    PRML Chapter 1. Introduction 为了防止忘记,要把每章的重要内容都记下来,从第一章开始 2012@3@28 今天又回去稍微翻了一下第一章内容,发现第一次看的时候没有看透,每次 ...

  3. 包管理器Bower使用手冊之中的一个

    包管理器Bower使用手冊之中的一个 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 一.Bower介绍 Bower是一个适合Web应用的包管理器,它擅长 ...

  4. Apache Shiro 使用手冊 链接文件夹整理

    1.Apache Shiro 使用手冊(一)Shiro架构介绍 2.Apache Shiro 使用手冊(二)Shiro 认证 3.Apache Shiro 使用手冊(三)Shiro 授权 4.Apac ...

  5. Apache Mina开发手冊之四

    Apache Mina开发手冊之四 作者:chszs,转载需注明. 博客主页:http://blog.csdn.net/chszs 一.Mina开发的主要步骤 1.创建一个实现了IoService接口 ...

  6. 平实给力的写作指导入门手冊——leo鉴书57

    写作是个体力活儿,须要不断的练习和砥砺.既然是体力劳动,那必定有套路,前人总结.后人学习并加以积累沉积,日久则形成不同的风格和流派有点儿像.相同,写作也有自己的套路和学习路径.初涉写作有必备之书吗?当 ...

  7. HapiJS开发手冊

    HapiJS开发手冊 作者:chszs.转载需注明.博客主页:http://blog.csdn.net/chszs 一.HapiJS介绍 HapiJS是一个开源的.基于Node.js的应用框架,它适用 ...

  8. ANTLR4权威參考手冊(一)

    写在前面的话: 此文档是对伟大的Terence Parr的著作<the definitive antlr4 reference>的翻译本.致敬!欢迎转载,请注明原地址,请尊重劳动成果.翻译 ...

  9. Node.js v0.10.31API手冊-控制台

    Node.js v0.10.31API手冊-文件夹 控制台 Object 用于向 stdout 和 stderr 打印字符.类似于大部分 Web 浏览器提供的 console 对象函数,在这里则是输出 ...

随机推荐

  1. CEF 各个版本适应的平台参考表

    This Wiki page provides information about CEF branches and instructions for downloading, building an ...

  2. 在Ubuntu16.04 64bit上安装sublime text 3

    安装sublime text 3 根据官网上提供的安装说明 https://www.sublimetext.com/docs/3/linux_repositories.html  进行安装, 首先是 ...

  3. ASP.NET#JavaScript中调用WebServer注意的问题

    1)要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,就要取消注销以下行:[System.Web.Script.Services.ScriptService](2)调用格式:命名空间 ...

  4. 在sys用户下执行的sql脚本创建了摁多个表和序列, 怎么回退?

    一个个删除, 暂时不会别的方法...

  5. NuGet学习笔记(1) 初识NuGet及快速安装使用[转]

    来自:http://www.cnblogs.com/lzrabbit/archive/2012/05/01/2477607.html 关于NuGet园子里已经有不少介绍及使用经验,本文仅作为自己研究学 ...

  6. Walkthrough: Writing a Visualizer in C#

    https://msdn.microsoft.com/en-us/library/ms164759.aspx

  7. php里面的注解(通过反射获取注解)

    /** * Created by PhpStorm. * User: Administrator * Date: 2018\10\12 0012 * Time: 14:30 */ /** * clas ...

  8. Mac升级bash到最新版本

    mac自带的bash为3.2版本,而最新的bash是4.9,需要升级了,才能支持关联数组等新特性. 1.brew install bash 2.安装到/usr/local/bin/bash里面.可以通 ...

  9. linux批量备份服务器配置文件和目录的脚本

    这篇文章主要介绍了linux下批量备份服务器配置文件和目录的方法,需要的朋友可以参考下 功能:1. 只在备份机执行,远程的服务器只需要允许备份机用root通过密钥登录:2. 在备份机上配置需要备份哪些 ...

  10. cocos2d-x开发记录:一,搭建环境

    首先我下载的cocos2D版本为2.1.2版本,我们安装好VS后,新建一个解决方案,这里很重要,假设我的cocos解压后的路径为E:\cocos2d-2.1rc0-x-2.1.2-hotfix\coc ...