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

越城区建设和交通运输局网站免费建站微信

越城区建设和交通运输局网站,免费建站微信,wordpress评论时间,建设部网站公示使用 Log4j 前面介绍了Commons Logging#xff0c;可以作为“日志接口”来使用。而真正的“日志实现”可以使用Log4j。 Log4j是一种非常流行的日志框架#xff0c;最新版本是2.x。 Log4j是一个组件化设计的日志系统#xff0c;它的架构大致如下#xff1a; log.info(可以作为“日志接口”来使用。而真正的“日志实现”可以使用Log4j。 Log4j是一种非常流行的日志框架最新版本是2.x。 Log4j是一个组件化设计的日志系统它的架构大致如下 log.info(User signed in.);││ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐├──│ Appender │───│ Filter │───│ Layout │───│ Console ││ └──────────┘ └──────────┘ └──────────┘ └──────────┘││ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐├──│ Appender │───│ Filter │───│ Layout │───│ File ││ └──────────┘ └──────────┘ └──────────┘ └──────────┘││ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐└──│ Appender │───│ Filter │───│ Layout │───│ Socket │└──────────┘ └──────────┘ └──────────┘ └──────────┘当我们使用Log4j输出一条日志时Log4j自动通过不同的Appender把同一条日志输出到不同的目的地。例如 console输出到屏幕file输出到文件socket通过网络输出到远程计算机jdbc输出到数据库 在输出日志的过程中通过Filter来过滤哪些log需要被输出哪些log不需要被输出。例如仅输出ERROR级别的日志。 最后通过Layout来格式化日志信息例如自动添加日期、时间、方法名称等信息。 上述结构虽然复杂但我们在实际使用的时候并不需要关心Log4j的API而是通过配置文件来配置它。 以XML配置为例使用Log4j的时候我们把一个log4j2.xml的文件放到classpath下就可以让Log4j读取配置文件并按照我们的配置来输出日志。下面是一个配置文件的例子 ?xml version1.0 encodingUTF-8? ConfigurationProperties!-- 定义日志格式 --Property namelog.pattern%d{MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36}%n%msg%n%n/Property!-- 定义文件名变量 --Property namefile.err.filenamelog/err.log/PropertyProperty namefile.err.patternlog/err.%i.log.gz/Property/Properties!-- 定义Appender即目的地 --Appenders!-- 定义输出到屏幕 --Console nameconsole targetSYSTEM_OUT!-- 日志格式引用上面定义的log.pattern --PatternLayout pattern${log.pattern} //Console!-- 定义输出到文件,文件名引用上面定义的file.err.filename --RollingFile nameerr bufferedIOtrue fileName${file.err.filename} filePattern${file.err.pattern}PatternLayout pattern${log.pattern} /Policies!-- 根据文件大小自动切割日志 --SizeBasedTriggeringPolicy size1 MB //Policies!-- 保留最近10份 --DefaultRolloverStrategy max10 //RollingFile/AppendersLoggersRoot levelinfo!-- 对info级别的日志输出到console --AppenderRef refconsole levelinfo /!-- 对error级别的日志输出到err即上面定义的RollingFile --AppenderRef referr levelerror //Root/Loggers /Configuration虽然配置Log4j比较繁琐但一旦配置完成使用起来就非常方便。对上面的配置文件凡是INFO级别的日志会自动输出到屏幕而ERROR级别的日志不但会输出到屏幕还会同时输出到文件。并且一旦日志文件达到指定大小1MBLog4j就会自动切割新的日志文件并最多保留10份。 有了配置文件还不够因为Log4j也是一个第三方库我们需要从这里下载Log4j解压后把以下3个jar包放到classpath中 log4j-api-2.x.jar log4j-core-2.x.jar log4j-jcl-2.x.jar因为Commons Logging会自动发现并使用Log4j所以把上一节下载的commons-logging-1.2.jar也放到classpath中。 要打印日志只需要按Commons Logging的写法写不需要改动任何代码就可以得到Log4j的日志输出类似 03-03 12:09:45.880 [main] INFO com.itranswarp.learnjava.Main Start process...最佳实践 在开发阶段始终使用Commons Logging接口来写入日志并且开发阶段无需引入Log4j。如果需要把日志写入文件 只需要把正确的配置文件和Log4j相关的jar包放入classpath就可以自动把日志切换成使用Log4j写入无需修改任何代码。 小结 通过Commons Logging实现日志不需要修改代码即可使用Log4j 使用Log4j只需要把log4j2.xml和相关jar放入classpath 如果要更换Log4j只需要移除log4j2.xml和相关jar 只有扩展Log4j时才需要引用Log4j的接口例如将日志加密写入数据库的功能需要自己开发。
http://www.yutouwan.com/news/235571/

相关文章:

  • 安徽质量工程建设网站推广平台有哪些游戏
  • 福建省建设注册管理中心网站wordpress 短视频
  • 网站建设欧美风格三亚做网站多少钱一平方
  • 做app的网站有哪些功能吗莱芜上汽大众4s店
  • 那个网站做的好广州wap网站制作
  • 响应式网站移动端排名阳性不一定是新冠
  • 团购产品 网站建设优秀的网页设计案例
  • 手机百度 网站提交如何做好一个百度竞价网站
  • 上饶市建设局网站百代宜昌网站建设哪家好
  • 中国佛山营销网站建设网站 代理 备案 费用吗
  • 网站开发 协作平台wordpress 拒绝访问
  • 没网站怎么做淘宝客商标交易网
  • 电子元器件网站怎么做微信订阅号怎么做网站
  • 建站行业wordpress设置备份
  • 怎样给网站做 站内搜索如何免费建设网站com
  • 中国风古典网站模板做视频网站一般多少钱
  • 网站建设哪个最好现在的网络营销方式
  • 孝感网站建设做网站以前出名的公司
  • 通辽做网站制作互联网公司排名1000
  • 免费推广网站2023mmmc2c电子商务网站建设
  • 烟台网站建设方案报价可以自己做网站的网址
  • 做推文封面图网站好发信息网-网站建设
  • 网站优化改动怎么做品牌设计和vi设计有什么区别
  • 做微网站用什么框架兰州新区装修公司有哪些
  • 免费作图网站都有哪些小蚁人网站建设
  • 网站维护知识ps 矢量素材网站
  • 网站建设容易出现的问题广州建设公司网站
  • 做国外衣服的网站有哪些辽宁手机版建站系统信息
  • 自己做的网站 网站备案流程python做网站框架
  • 常德做网站专业公司赣州网站建设设计