当前位置: 首页 > news >正文

福安网站定制深圳做网站哪家公司最好

福安网站定制,深圳做网站哪家公司最好,上海网站建设内容更新,长沙创建网络平台费用转自#xff1a;总结_C日志系统log4cxx使用_OneByOne-CSDN博客_log4cxx C日志系统log4cxx使用总结 参考连接: log4CXX第二篇---配置文件#xff08;properties文件#xff09;详解_crazyhacking的专栏-CSDN博客 C日志系统log4cxx使用总结_邵明_新浪博客 一、log4cxx组件…转自总结_C日志系统log4cxx使用_OneByOne-CSDN博客_log4cxx C日志系统log4cxx使用总结 参考连接: log4CXX第二篇---配置文件properties文件详解_crazyhacking的专栏-CSDN博客 C日志系统log4cxx使用总结_邵明_新浪博客 一、log4cxx组件介绍 log4cxx有三个主要组件:loggers记录器appenders(输出源)和layout(布局)。可以简单理解为日志类别要输出的地方输出形式。 1) Loggers 2) Appenders 3) Layouts 综合使用三大组件可以轻松记录信息的类别和级别并可以在运行时控制日志输出的样式和位置。 1、 Logger a. Logger的命名特点 1. Logger是由一个String类型的名字识别的且大小写敏感2. 名字之间具有继承关系,其中子名有父名做前缀用.分隔。如 x.y是x.y.z的父名。3. root logger是所有logger的祖先是一直存在的通过Logger.getRootLogger获得并且不能通过名字获得。4. public static Logger Logger.getLogger(String name)获得或者创建一个Logger。b. Logger的日志级别 1. 每个logger都被分配了一个日志级别(log level),用来控制日志信息的输出。2. 未被分配level的logger可以继承它最近的父logger的level。若父logger也没有设置level则将继承root logger的level。3. 每条输出到logger的日志请求(logging request)也都有一个level如LOG4CXX_DEBUG4. 如果logging request的level大于等于该logger的level则该request将被处理否则将被忽略eg. logger的level是ERROR,request的level是DEBUG,则request的内容不会在日志中输出。但若request的level是ERROR,则会在日志中输出。5. 所有的logger level及大小关系Level.ALL Level.DEBUG Level.INFO Level.WARN Level.ERROR Level.FATAL Level.OFF2、 Appenders 除了禁用和使用日志的log4cxx基本功能log4cxx还提供更强大的功能比如允许把日志输出到不同地方如控制台、文件等根据天数或文件大小产生新的文件再或者可以以流的形式发送到其他地方等。 a. appender常见类 org.apache.log4j.ConsoleAppender 控制台 org.apache.log4j.FileAppender (文件) org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件 org.apache.log4j.RollingFileAppender (文件大小达到指定尺寸时产生一个新的文件) org.apache.log4j.WriterAppender (将日志信息以流格式发送到任意指定的地方)b. appender的使用 配置模式: log4j.appender.appenderName className log4j.appender.appenderName.Option1 value1 ... log4j.appender.appenderName.optionN valueN使用举例 log4j.rootLoggerINFO,stdout log4j.appender.stdoutorg.apache.log4j.ConsoleAppender log4j.appender.stdout.TargetSystem.out log4j.appender.stdout.layoutorg.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern%d{ABSOLUTE} %5p %c{1}:%L - %m%nc. appender类使用时的option解析 1) ConsoleAppender选项 Threshold WARN 指定日志信息的最低输出级别默认为DEBUG ImmediateFlush true : 表示所有消息都被立即输出设为false则不输出 默认值为true Target System.err : 默认值是System.out2) FileAppender选项 Threshold WARN ImmediateFlush true Append false : true表示消息增加到指定文件中false则将消息覆盖指定的文件内容默认值是true File D:/logs/logging.log4j : 指定消息输出的文件目录名3) DailyRollingFileAppender选项 Threshold WARN ImmediateFlush true Append false File D:/logs/logging.log4j DatePattern .yyyy-MM : 每个月生成一个新的日志文件.yyyy-ww : 每周.yyyy-MM-dd:每天.yyyy-MM-dd-a:每天2次.yyyy-MM-dd-HH每小时.yyyy-MM-dd-HH-mm : 每分钟4RollingFileAppender选项 Threshold WARN ImmediateFlush true Append false File D:/logs/logging.log4j MaxFileSize 100KB 文件达到该大小时会自动滚动即将原来的内容移到logging.log4j.1文件中 MaxBackupIndex 2 : 指定可以产生滚动文件的最大数例如设为2则可以产生logging.log4j.1, logging.log4j.2两个滚动文件和一个log3、 Layouts 有时用户希望自定义日志输出格式log4j.appender.appenderName后附加layouts来完成。 a. Layouts提供四种日志输出格式 1. HTML样式 org.apache.log4j.HTMLLayout 2. 自由指定样式org.apache.log4j.PatternLayout 3. 包含日志级别和信息字符串的样式 org.apache.log4j.SimpleLayout 4. 包含日志产生的时间、线程、类别等信息org.apache.log4j.TTCCLayout使用举例: log4j.appender.appenderName.layout className log4j.appender.appenderName.layout.Option1 value1 ... log4j.appender.appenderName.layout.OptionN valueNb. layout使用option解析 1) HTMLLayout选项 LocaltionInfo true : 输出java文件名和行号默认值是false Title My Logging : 默认值是Log4j Log Messages2PatternLayout选项 ConversionPattern %m%n 设定以怎样的格式显示消息格式化符号说明: %p 输出日志信息的优先级即DEBUG,INFO,WARN,ERROR,FATAL %d 输出日志时间点的日期或时间默认格式为ISO8601也可以指定格式eg.%d{yyyy/MM/dd HH:mm:ss,SSS}。 %r 输出自应用程序启动到输出到该log信息耗费额毫秒数 %t 输出产生该日志事件的线程名 %l: 输出日志事件的发生位置相当于%c.%M(%F:%L)的组合包括类全名、方法、文件名及在代码行中的行数。eg.test.TestLog4j.main(TestLog4j.java:10)。 %c: logger所属类的全名最小长度是20若名称长度小于20默认右对齐。 %M: 输出产生日志信息的方法名 %F: 输出日志消息产生时所在的文件名称 %L: 输出代码中的行号 %m输出logger的日志消息eg.LOG4CXX_DEBUG(m_logger,日志消息) %n输出一个回车换行符windows平台为\r\n,Unix平台为\n %x: 输出和当前线程相关联的NDC(嵌套诊断环境)尤其用到像java servlets这样的多客户多线程的应用中 %%输出一个%字符tips. 另外还可以在%与格式字符之间加上修饰符来控制器最小长度、最大长度、文本对齐方式。如 1 %-20c : -号表示左对齐 2 %.30c : 指定%c最大长度为30若大于30会将左边多出来的字符截掉但小于30也不会补空格二、 简单的配置文件例子 Log4j支持两种配置文件格式一种是XML格式的文件一种是properties属性文件。下面以properties属性文件为例 #设置rootlogger为DEBUG级别,两个Appender log4j.rootLoggerDEBUG,ca, fa#对Appender fa进行设置这是一个文件类型的Appender #其输出文件File为./output.log #输出方式Append为覆盖方式 #输出格式layout为PatternLayout log4j.appender.faorg.apache.log4j.FileAppender log4j.appender.fa.File./output.log log4j.appender.fa.Appendfalse log4j.appender.fa.layoutorg.apache.log4j.PatternLayout log4j.appender.fa.layout.ConversionPattern%d[%t] %-5p %.16c - %m%n#对Appender ca进行设置这是一个控制台类型的Appender #输出格式layout为PatternLayout log4j.appender.caorg.apache.log4j.ConsoleAppender log4j.appender.ca.layoutorg.apache.log4j.PatternLayout log4j.appender.ca.layout.ConversionPattern%d[%t] %-5p %.16c - %m%n三、配置文件详解 1. 配置root logger log4j.rootLogger [level],appenderName1,appenderName2,...**level** 设定日志记录的最低级别可设的值有OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者自定义的级别。**appenderName**就是指日志信息要输出到哪里可以同时指定多个输出目的,用逗号隔开,appenderName可以自定义。eg. log4j.rootLoggerINFO,A1,B2,C3tips. log4j.logger.cn.com.Test DEBUG,test log4j.appender.testorg.apache.log4j.FileAppender log4j.appender.test.File${myweb.root}/WEB-INF/log/test.log log4j.appender.test.layoutorg.apache.log4j.PatternLayout log4j.appender.test.layout.ConversionPattern%d %p [%c] - %m%n 这是对名字为cn.com.Test的logger进行配置从原有日志中分离形成单独的日志文件。2. 使用多个logger,并配置在一个配置文件 tips. 1. log4cxx库对日志流设置只需要更改配置文件中的appender属性 2. log4cxx支持Logger继承机制但由于要将日志流输出到多个文件需要在配置文件中将子Logger的继承属性设置为false配置文件中配置子Logger // 假设子logger的name为childLogger// 在配置文件中定义一个子logger的代码apname为childlogger使用的appender log4j.logger.childLogger DEBUG,apname // 设置子logger的继承属性设置为false log4j.additivity.childLogger false// 设置子logger所使用的日志文件 log4j.appender.apname.File ./0.log3. 特别的appender应用 a. 应用于socket log4j.appender.socketorg.apache.log4j.RollingFileAppender log4j.appender.socket.RemoteHostlocalhost log4j.appender.socket.Port5001 log4j.appender.socket.LocationInfotrueb. 发送日志到指定邮件 log4j.appender.mailorg.apache.log4j.net.SMTPAppender log4j.appender.mail.ThresholdFATAL log4j.appender.mail.BufferSize10 log4j.appender.mail.From xxxmail.com log4j.appender.mail.SMTPHostmail.com log4j.appender.mail.SubjectLog4J Message log4j.appender.mail.To xxxmail.com log4j.appender.mail.layoutorg.apache.log4j.PatternLayout log4j.appender.mail.layout.ConversionPattern[%-5p] %d(%r) -- [%t] %l: %m %x %nc. 应用于数据库 log4j.appender.databaseorg.apache.log4j.jdbc.JDBCAppender log4j.appender.database.URLjdbc:mysql://localhost:3306/test log4j.appender.database.drivercom.mysql.jdbc.Driver log4j.appender.database.userroot log4j.appender.database.password log4j.appender.database.sqlINSERT INTO LOG4J (Message) VALUES([%-5p] %d(%r) -- [%t] %l: %m %x %n) log4j.appender.database.layoutorg.apache.log4j.PatternLayout log4j.appender.database.layout.ConversionPattern[%-5p] %d(%r) -- [%t] %l: %m %x %nd. 自定义Appender log4j.appender.im net.cybercorlin.util.logger.appender.IMAppender log4j.appender.im.host mail.cybercorlin.net log4j.appender.im.username username log4j.appender.im.password password log4j.appender.im.recipient corlincybercorlin.net log4j.appender.im.layoutorg.apache.log4j.PatternLayout log4j.appender.im.layout.ConversionPattern[%-5p] %d(%r) -- [%t] %l: %m %x %n三、NDC 未完待续
http://wiki.neutronadmin.com/news/384208/

相关文章:

  • 动易网站开发网站百度知道
  • 网站建设咨询云尚网络wordpress 功能介绍
  • 人和马做的视频网站网站模板怎么导入
  • 自己做的个人网站无法备案宜昌市住房和城乡建设局网站
  • 动漫网站建设方案设计桂林做网站哪家公司好
  • 自己买一台服务器做自己的网站wordpress多语言设置
  • 招聘做微信公众号网站维护电脑版传奇排行榜
  • 网站建设确认报告网站源码建站
  • 10分钟免费建网站网络游戏的发展历程
  • 昆山建设工程交易网站qq空间 wordpress
  • 长春哪家网站做的好网站建设飠金手指下拉
  • 网站模板 招聘南阳网站建设域名公司
  • 网站模板怎样发布wordpress 添加备案号
  • 网站一直不被收录网站开发编码选择一般是
  • 做销售网站那家好wordpress设定主页
  • wordpress怎么修改图片大小seo 适合哪些行业
  • 动软代码生成器 做网站无锡手机网站制作费用
  • 网站如何设置默认首页友情链接交换网址大全
  • 广州市增城区建设局网站互联网行业五行属什么
  • 二级a做爰片免费网站响应式网站是什么意思
  • 东莞网站设计资讯学年论文网站建设
  • 成立网站是不是需要先成立公司网站升级需要什么
  • 长春网站建设团队seo为什么要进行外部优化
  • lamp 做网站四川今天刚刚发生的新闻
  • 网站项目方案外贸订单在哪里能接到
  • 临沂河东区建设局网站企业营销网络建设
  • 网站开发学校有哪些自建房平面图设计软件
  • 北京响应式网站建设报价网站页面布局设计思路
  • 电脑网页视频下载seo企业网站模板
  • 开县网站建设个人或主题网站建设 实验体会