- 浏览: 167463 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
mengyue0477:
最后还不忘吐槽一下 哈哈 太逗了
spring容器的懒加载lazy-init设置 -
comet0515:
不是maven工程能不能用checkstyle插件?job是一 ...
jenkins 配置checkstyle -
xfxlch:
http://docs.spring.io/spring-bo ...
NoteBook -
With_Me_Forever:
太浅了。我最近也在看着方面的资料,一起进步把。
互联网金融定义 -
xfxlch:
在http://r.m.baidu.com/6pmxgig
NoteBook
背景:
想通过配置log-access来实现直接使用浏览器来访问我们自己指定的log文件。
方案:
原来以为是可以通过直接配置log-access的方式来是实现用http来访问我们的日志文件的。我的意思是说:如果我们把日志文件重定向到服务器上的:/server/logs/taobao.log文件,一般情况下,我们都是通过登录到服务器上,然后tail -f /server/logs/taobao.log来查看,但是这样子很麻烦,我想直接在浏览器里查看这个日志文件,就像查看ftp服务器上的某个文件一下方便。但是后来发现log-access不是这个用途,log-access主要是用来配置一个文件日志文件,来记录 外部访问的http请求信息的。
那不管怎么样,既然看了一下log-access就记录一下好了,用http方式访问日志,下次重写一个文章好了。
实施:
首先是给出几个链接,对理解logback有一些帮助。
http://blog.csdn.net/longaohun/article/details/6782046
http://wuyilun2.blog.163.com/blog/static/9853110201111595858365/
以及log-access官网
http://logback.qos.ch/access.html#tomcat
按照官网的解释在tomcat上的配置可以如下:
1. 修改$TOMCAT_HOME/conf/server.xml文件
2. 添加 logback-access.xml文件,默认是放在$TOMCAT_HOME/conf/目录下就好。
这里相关的Appender的信息可以参考前文的link文章。
3. 另外如果想要通过web来查看logback-access.xml配置的相关信息,logback-access提供了一个serverlet来获取这些配置信息。只要在我们的web项目里的web.xml里添加如下mapping信息。
4. 最后要做的就是添加logback-access.jar的依赖了,我们需要两个jar包,一个logback-access-1.x.jar,另一个是logback-core-1.x.jar,因为logback-access跟slf4j是类似的,它只是提供了一层皮,内核还是调用的logback-core。
pom.xml
添加这个就好了,logback-access依赖了logback-core。
好了这样就可以启动web应用了。
启动完成之后,就可以访问http://localhost:8080/userlogin/lbAccessStatus
结果如下:
access.log 日志来一个截图:
通过上面的日志,我们大概知道请求来源,以及请求了哪个requestion,对方的pc以brower的相关信息,这个对网站流量分析还是很有用的
遇到的坑:
1. HTTP Status 500 - ch.qos.logback.core.BasicStatusManager cannot be cast to ch.qos.logback.core.status.StatusManager。
>>原因是jar包冲突了。因为logback-access-1.1.3.jar和logback-core-1.1.3.jar既在tomcat/lib目录下,也在web项目的WEB-INF\lib目录下,这样就造成了冲突。保留一个地方的就可以解决这个问题了。通常我们是保留tomcat/lib下的,不然tomcat启动的时候,会去找配置文件server.xml文件里的ch.qos.logback.access.tomcat.LogbackValve 类,如果找不到就报错了。
----EOF----
想通过配置log-access来实现直接使用浏览器来访问我们自己指定的log文件。
方案:
原来以为是可以通过直接配置log-access的方式来是实现用http来访问我们的日志文件的。我的意思是说:如果我们把日志文件重定向到服务器上的:/server/logs/taobao.log文件,一般情况下,我们都是通过登录到服务器上,然后tail -f /server/logs/taobao.log来查看,但是这样子很麻烦,我想直接在浏览器里查看这个日志文件,就像查看ftp服务器上的某个文件一下方便。但是后来发现log-access不是这个用途,log-access主要是用来配置一个文件日志文件,来记录 外部访问的http请求信息的。
那不管怎么样,既然看了一下log-access就记录一下好了,用http方式访问日志,下次重写一个文章好了。
实施:
首先是给出几个链接,对理解logback有一些帮助。
http://blog.csdn.net/longaohun/article/details/6782046
http://wuyilun2.blog.163.com/blog/static/9853110201111595858365/
以及log-access官网
http://logback.qos.ch/access.html#tomcat
按照官网的解释在tomcat上的配置可以如下:
1. 修改$TOMCAT_HOME/conf/server.xml文件
<Valve className="ch.qos.logback.access.tomcat.LogbackValve" filename="c:/logback-access.xml"/>后面的finlename参数用来指定logback-access.xml文件的位置。
2. 添加 logback-access.xml文件,默认是放在$TOMCAT_HOME/conf/目录下就好。
<configuration> <!-- always a good activate OnConsoleStatusListener --> <statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" /> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>${catalina.base}/logs/access.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${catalina.base}/logs/access.%d{yyyy-MM-dd}.log.zip</fileNamePattern> </rollingPolicy> <encoder> <pattern>combined</pattern> </encoder> </appender> <!-- always a good activate OnConsoleStatusListener --> <statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" /> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>%h %l %u %user %date "%r" %s %b</pattern> </encoder> </appender> <appender-ref ref="STDOUT" /> <appender-ref ref="FILE" /> </configuration>
这里相关的Appender的信息可以参考前文的link文章。
3. 另外如果想要通过web来查看logback-access.xml配置的相关信息,logback-access提供了一个serverlet来获取这些配置信息。只要在我们的web项目里的web.xml里添加如下mapping信息。
<servlet> <servlet-name>AccessViewStatusMessages</servlet-name> <servlet-class>ch.qos.logback.access.ViewStatusMessagesServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>AccessViewStatusMessages</servlet-name> <url-pattern>/lbAccessStatus</url-pattern> </servlet-mapping>
4. 最后要做的就是添加logback-access.jar的依赖了,我们需要两个jar包,一个logback-access-1.x.jar,另一个是logback-core-1.x.jar,因为logback-access跟slf4j是类似的,它只是提供了一层皮,内核还是调用的logback-core。
pom.xml
<dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-access</artifactId> <version>1.1.3</version> </dependency>
添加这个就好了,logback-access依赖了logback-core。
好了这样就可以启动web应用了。
启动完成之后,就可以访问http://localhost:8080/userlogin/lbAccessStatus
结果如下:
access.log 日志来一个截图:
127.0.0.1 - - [18/Oct/2015:15:40:11 +0800] "GET /userlogin/lbAccessStatus HTTP/1.1" 200 - "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0" 127.0.0.1 - - [18/Oct/2015:15:47:22 +0800] "GET /userlogin/lbAccessStatus HTTP/1.1" 500 - "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0" 127.0.0.1 - - [18/Oct/2015:16:05:10 +0800] "GET /userlogin/lbAccessStatus HTTP/1.1" 200 - "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0" 127.0.0.1 - - [18/Oct/2015:16:05:21 +0800] "GET /userlogin/lbAccessStatus HTTP/1.1" 200 - "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0" 127.0.0.1 - - [18/Oct/2015:16:05:40 +0800] "GET /userlogin/lbAccessStatus HTTP/1.1" 200 - "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0" 127.0.0.1 - - [18/Oct/2015:16:06:08 +0800] "GET /userlogin/lbAccessStatus HTTP/1.1" 200 - "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0"
通过上面的日志,我们大概知道请求来源,以及请求了哪个requestion,对方的pc以brower的相关信息,这个对网站流量分析还是很有用的
遇到的坑:
1. HTTP Status 500 - ch.qos.logback.core.BasicStatusManager cannot be cast to ch.qos.logback.core.status.StatusManager。
>>原因是jar包冲突了。因为logback-access-1.1.3.jar和logback-core-1.1.3.jar既在tomcat/lib目录下,也在web项目的WEB-INF\lib目录下,这样就造成了冲突。保留一个地方的就可以解决这个问题了。通常我们是保留tomcat/lib下的,不然tomcat启动的时候,会去找配置文件server.xml文件里的ch.qos.logback.access.tomcat.LogbackValve 类,如果找不到就报错了。
----EOF----
发表评论
-
eclipse project .setting
2016-08-24 11:30 606有一个文件在.setting的目录下面: 文件名:org.ec ... -
jar命令工具
2016-01-23 20:29 690背景: 今天介绍两个jar的命令工具,对我个人来说,还是比较好 ... -
Java的按值传递
2016-01-23 19:30 565问题: 最近在看Mar ... -
Mac OS 安装java 开发环境
2016-01-03 13:00 1775我的机器是: 1. jdk1.7下载安装 jdk7:h ... -
记一次Java Rest Service Hang住的经历
2015-12-28 20:08 2701背景: 在前后端分开开发的过程中,前段的页面要调用后台Java ... -
一个String字符串的问题2
2015-12-14 14:22 612背景: 今天遇到个问题: String str = & ... -
我读重构这本书
2015-12-01 22:30 0第一点:关注变量命名。好的变量名能让读者更快更好的理解程序到底 ... -
系统log的编写
2015-11-16 09:41 0log很关键,一定要记录好对追踪问题有帮助的日志。 -
CAS 授权问题
2015-11-16 09:40 0CAS 授权问题 -
Caused by: java.lang.UnsupportedOperationException 解决方案
2015-10-21 22:09 4084背景: 今天在跑一个UnitTest,跑的过程中想在list ... -
how to fix "org.hamcrest.CoreMatchers.containsString cannot be resolved"
2015-09-23 23:12 3030背景: 山姆大叔比较喜欢用一些新的技术和新的特性,最近在jun ... -
java 打印金字塔
2015-08-24 00:53 786背景: 一个同事,面试应聘者喜欢用学校里学过的一个书本或者课后 ... -
纯jsp servlet 实现 upload file功能
2015-08-17 20:35 747本篇主要是简单的实现jsp servlet 的上传文件的功能, ... -
dos 命令窗口執行java 命令,帶包路徑
2015-07-26 12:16 535記錄一下,是為了自己下次再run java命令的時候,可以很快 ... -
tomcat 远程调试
2015-07-23 18:41 491背景: 我们在项目开发过程中,很多时候会遇到这样的情况:项目在 ... -
使用android studio 来开发hello world app的时候,遇到的一些坑。
2015-07-13 01:38 2164使用android studio 来开发h ... -
ThreadLocal
2015-05-11 07:22 427Java线程:深入ThreadLocal ThreadLo ... -
Hibernate Interceptor(拦截器)
2015-04-28 20:30 2428需求: 对所有操作数据库的事件,添加audit log, 此l ... -
eclipse 加入tomcat 包
2015-03-24 01:09 432... -
Transforming XML with XSLT
2014-10-11 19:14 527public static void catalog() ...
相关推荐
标题中的“10 reasons to use logback”是一个讨论日志框架选择的主题,它提出了使用logback而非其他日志工具(如log4j)的十个理由。logback是log4j的作者Ceki Gülcü创建的一个更现代、性能更优的日志框架。在...
标题"Logback 1.2.3.zip"指的是Logback框架的一个特定版本,即1.2.3,它被压缩成一个ZIP文件供下载和使用。描述中提到的"logback-access-1.2.3.jar"是Logback访问模块的1.2.3版本的JAR文件,这通常是用来处理HTTP...
Logback 是一个用于日志记录的开源框架,由 Ceki Gülcü(也是 Log4j 的创始人)设计并开发。它作为 Log4j 的升级版,提供了更高的性能和更丰富的功能。Logback 分为三个主要组件:logback-core、logback-classic ...
Logback 是一个在Java应用程序中广泛使用的日志记录框架,它是对早期的log4j框架的一个升级和扩展。Logback 提供了高效、灵活的日志记录解决方案,支持多种日志级别,如DEBUG、INFO、WARN、ERROR等,帮助开发者调试...
在日常工程开发中,日志是非常重要的一部分,通过日志可以迅速定位线上问题,日志框架也有很多选择,日志框架Logback和Log4j是同一个作者,Logback相比于Log4j,性能提高了10倍以上的性能,占用的内存也变小了,并且...
Logback 是一个 Java 平台上的日志框架,由 Ceki Gülcü(Log4j 的创始人)设计并维护。它旨在成为 Log4j 的继任者,提供更高效、更灵活的日志记录解决方案。Logback 分为三个主要组件:logback-classic、logback-...
"Logback-0.9.27" 是一个早期版本的 Logback 框架,由 Ceki Gülcü 创建,作为知名日志框架 Log4j 的后继者。这个版本号表明它是 0.9.x 系列中的第 27 个迭代。 **描述解析:** "官方logback-0.9.27.jar" 表示这...
logback-classic 模块可以看作是 log4j 的一个优化版本,它天然的支持 SLF4J,所以你可以随意的从其它日志框架(例如:log4j 或者 java.util.logging)切回到 logack。logback-access 可以与 Servlet 容器进行整合,...
Logback 中文手册,清晰版. 简单地说,Logback 是一个 Java 领域的日志框架。它被认为是 Log4J 的继承人。 Logback 主要由三个模块组成: logback-core logback-classic logback-access
XML配置文件是logback框架的核心部分,通过配置,我们可以指定日志级别(TRACE、DEBUG、INFO、WARN、ERROR、OFF),定义日志输出目的地(控制台、文件、网络、数据库等),设置过滤器以控制哪些日志被记录,以及如何...
Logback 是一个用于日志记录的开源框架,由 Ceki Gülcü 创建,他是早期广泛使用的日志框架 Log4j 的主要开发者。Logback 是作为 Log4j 的继承者而设计的,它在性能、灵活性和可配置性方面进行了优化。Logback ...
Logback 是一个专门为Java应用程序设计的日志框架,由log4j的创始人Ceki Gülcü设计,旨在提高日志处理的效率和灵活性。它在性能和资源消耗方面优于log4j和其他日志系统,提供了许多独特的特性,如Marker、参数化...
在Java领域,Logback是广泛应用的日志框架,尤其在与Simple Logging Facade for Java (SLF4J)结合使用时,能够提供高效、灵活的日志记录功能。本文将深入探讨"Logback核心包"的相关知识点。 **1. Logback基础** ...
Logback 是一个用于日志记录的开源框架,由 Ceki Gülcü(也创建了广泛使用的 log4j)开发。它是对 log4j 的升级,旨在提供更高的性能、更灵活的配置以及更好的可扩展性。Logback 分为三个主要组件:logback-core、...
LogBack 是一个日志框架,它是 Log4j 的后继者,由 Log4j 的创始人 Ceki Gülcü 与 Sébastien Pennec 共同创建。本文将探讨十个理由,解释为什么你应该从 log4j 迁移到 LogBack。 1. **性能提升**:LogBack 在...
Logback分为三个组件:ch.qos.logback.core(核心库),ch.qos.logback.classic(提供Log4j兼容API),以及ch.qos.logback-access(处理Servlet容器的日志访问)。Logback还包括了强大的自定义布局和过滤器功能,...
Logback是由log4j创始人设计的另一个开源日志组件,基于slf4j的日志规范实现的框架,性能比log4j要好。 Logback主要分为三个技术模块: logback-core:该模块为其他两个模块奠定了基础。 logback-classic:是log4j...
Logback 是一个 Java 平台上的日志框架,由 Ceki Gülcü 创建,作为 Log4j 的继任者。它致力于提供高效、灵活且无侵入的日志记录解决方案。Logback 由三个主要组件构成:logback-core、logback-classic 和 logback-...
Logback 是一个用于日志记录的开源框架,由 Ceki Gülcü 创建,它是 Log4j 的继任者,并且在很多方面进行了优化和改进。Logback 目标是提高应用程序的日志性能,同时保持高度的灵活性和可配置性。在Java开发中,...
6. **log4j兼容**:即使你习惯于使用log4j,也可以通过slf4j-log4j12.jar桥接库继续使用log4j的API,同时利用logback的性能优势。 7. **动态配置**:Logback 的配置引擎Joran(Java Oriented Rule Architecture)...