添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
骑白马的葡萄  ·  JMeter ...·  1 年前    · 
学习一个软件,需要了解此软件工作原理,在liferay代码中都使用了log4j的log输出,我们需要设置一下,把这些日志输出出来,方便我们进行调试。
Liferay使用了Apache Log4j处理素有的日志操作,允许我们配置从FATAL到DEBUG不同的信息的输出级别。同时还可以配置显示不同的包或者类的日志信息的输出级别。
缺省情况下,日志是使用CONSOLE标准输出的,在屏幕上可以看到,当然一些应用服务器是将这些信息输出到应用服务器的日志中的。例如:
Tomcat: $TOMCAT/bin/catalina.out
Geronimo: $GERONIMO/var/log/geronimo.log
JBoss: $JBOSS/server/default/log/
使用Admin Portlet进行动态配置,使用test用户登录后,选择Admin的Portlet,在Server页签下面的Log Levels,将列出所有的管理的类的日志级别,从每一行的Level级别中选择一个输出级别,然后点下面的保存按钮就完成了设置,但这个设置是临时性的,设置在内存中,当服务器重新启动后,此次设置就失效了,因此系统重新读取了META-INF/portal-log4j.xml的配置,这个配置文件在portal-impl.jar包中。
为了使配置长久有效,因此需要自己定义一个扩展的配置文件portal-log4-ext.xml,在这个文件中的配置将override全部或者部分portal-log4j.xml的配置。首先拷贝portal-log4j.xml到portal-log4-ext.xml。建议保留你所要修改的入口,删除其他你不需要修改的入口。
例如我们需要将hibernate的级别修改成为INFO
<category name="org.hibernate">
<priority value="ERROR" />
</category>
新的portal-log4-ext.xml文件如下:
<?xml version="1.0"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<category name="org.hibernate">
<priority value="INFO" />
</category>
</log4j:configuration>
一旦定义好了portal-log4-ext.xml,你必须将此文件部署到classpath中的META-INF下面,同时将log4j.dtd文件拷贝过去。
对于JBOSS用户注意,JBOSS的$JBOSS/server/default/conf/log4j.xml将会override liferay的日志配置,认真阅读JOBSS的日志文件。
log4j的初始化是在MainServlet被加载的时候进行的,在InitAction.run()方法中:
if (GetterUtil.getBoolean(SystemProperties.get("log4j.configure.on.startup"), true) && !ServerDetector.isSun()) {
ClassLoader classLoader = getClass().getClassLoader();
Log4JUtil.configureLog4J(classLoader.getResource("META-INF/portal-log4j.xml"));
Log4JUtil.configureLog4J(classLoader.getResource("META-INF/portal-log4j-ext.xml"));
如果portal-log4-ext.xml不工作,一般两个原因,一个是没有找到文件,另外一个是文件内语法错误。
1. 在你想log信息的java类中加入如下代码,使用log对象log不同级别的信息。 private Log log = LogFactoryUtil.getLog(XXXX.class) ; log.info("Hello World") ; log.error("Error!") ;   2. 进入到 Liferay Control Panel中,找到 Se
Liferay 日志 查看器 Portlet liferay - 日志 查看器-portlet 该项目提供了一个 portlet,该 portlet 附加到 Liferay Portal 的 log4j 机制以在浏览器中提供 日志 视图。 支持的产品 Liferay 门户 6.1 CE GA2、GA3 (6.1.1+) Liferay 门户 6.1 EE GA2、GA3 (6.1.20+) Liferay 门户 6.2 CE GA1 (6.2.0+) Liferay 门户 6.2 EE GA1 (6.2.10+) 最新版本可从。 您还可以从下载或安装 portlet 管理员将在 6.1 中控制面板的服务器区域中看到“ 日志 查看器”portlet。 在 6.2 中,它出现在控制面板的应用程序部分。其他用户也可以被分配查看 日志 查看器 Portlet 的权限。 Portlet 每 2
这个portlet 填补了 liferay log4j 控制台 日志 中的空白。 liferay 中的所有自定义 日志 级别将在重新启动后消失。 如果测试人员在控制台的帮助下工作,自定义 日志 级别的消失可能是一个问题,因为他们应该再次定义他们的 日志 级别。 重新启动后,同样的故事。 定义您自己的 日志 级别并将它们标记为在下一次服务器启动时启用 安排在未来一段时间内启用 日志 级别(在生产系统中很有用) 显示启用或禁用的 日志 级别。 在禁用 日志 级别的情况下,您可以查看其当前优先级(如果有) 创建现有 日志 级别的副本 定义每个动作的权限 日志 级别的分组(项目) 日志 级别或级别的 cron 调度 使用 lar 导入/导出 日志 级别的多项操作 搜索/过滤 启用列的轮询
一、 客户化字段 客户化字段是在门户中添加属性到许多类型集合中的一种方法。例如,如果你使用 Liferay 创建了一个书籍评级站点,你可以在门户中增加客户化字段到许多集合中,例如可以在User对象中增加Favorite Books(最爱书籍)字段。如果你使用wiki实现书籍评价,你可以增加Book Title(书名)和Book Author(作者)等客户化字段。 增加客户化字段非常简单,在控制...
在实际开发当中经常需要修改 日志 的一些设置,比如增加 日志 类型,扩展 日志 每页显示数量等等,这些都可以在portal.properties文件中找到初始化的地方,可以直接修改,但一般不建议这么做,可以在portal- ext .properties这个扩展的文件中增加你需要的, liferay 会优先调用.
Tomcat使用JDK的log包: catalina.sh中设置logging 配置 文件-Djava.util.logging.config.file=%CATALINA_BASE%\conf\logging.properties,在该 配置 文件中设置了file和console的handler 相关实现类有org.apache.juli.logging包下的LogFactory和Direc...