Confluence 6 配置日志
我们推荐你根据你的需求来配置你自己的 Confluence 日志。你可以有下面 2 种方法来修改你的日志:
- 通过 Confluence 管理员控制台进行配置 – 你的修改仅在本次修改有效,下次重启后将会把所有修改重置。
- 编辑属性文件 – 你的修改将会在下次重启后生效同时针对所有的会话。
这 2 种方式的修改的方法将在下面的章节中描述。在一些很不常见的情况下,你可能同时还需要修改 logging.properties 文件。
术语:在 log4j 中,一个 'logger' 就是一个命名的实体。日志名是大小写敏感的,这些命名还遵循分段命名的结构。例如一个 logger 被命名为 com.foo
,那这个名是 com.foo.Bar
的上级名称。
在 Confluence 管理员控制台中配置日志
你可以通过 Confluence 管理员控制台(Administration Console)来修改 Confluence 的一些日志的表现。任何按照这个方法修改的的内容只会在当前 Confluence 的运行实例阶段有效(重启 Confluence 后,你修改的配置将失效)。这里修改的配置内容将不会写入到 log4j.properties
文件中,同时当你在下一次停止 Confluence 的时候修改的内容将会被丢弃。
Confluence 的管理员控制台不能修改所有的日志表现。如果你不能在下面的描述的内容中找到修改的对象,那么你需要停止 Confluence 后编辑日志属性文件。
Confluence 管理员控制台中的 日志和属性(Logging and Profiling)界面显示了当前定义的所有日志列表。在这个界面中你可以:
- 打开或者关闭 page profiling。
- 打开或者关闭 SQL 语句日志。
- 为一个类或者包添加一个新的日志。
- 为一个类或者包删除一个新的日志。
- 为一个类或者包设置日志的级别(INFO, WARN, FATAL, ERROR 或者 DEBUG)。
- 重置所有的日志级别到 predefined 属性。
修改日志配置
- 在屏幕的右上角单击 控制台按钮 ,然后选择 General Configuration 链接。
- 在左侧面板中管理(Administration)的界面下面选择 日志和配置(Logging and Profiling)。
你需要具有 System Administrator 权限才可以进行这个操作。 - 日志和配置(Logging and Profiling)界面将会显示,如下图显示,使用下面的的指南来记录 Confluence 的日志表现:
- 性能属性(Performance Profiling) — 请参考页面Troubleshooting Slow Performance Using Page Request Profiling 中的内容
- SQL 日志(SQL Logging)' — 单击 启用 SQL 日志(Enable SQL Logging)按钮来启用记录系统运行的 SQL 脚本。
如果你需要启用日志 SQL 参数变量,你需要修改 properties file 文件中的设置。这个配置的修改在管理员控制台界面中不可用。 - Log4j 日志(Log4j Logging) — 单击下面的的属性按钮来重置你的日志定义为默认的初始化定义:
- 'Production' 属性定义了标准的属性,推荐你在生产环境中使用。
- 'Diagnostic' 属性定义了更多的属性配置,能够为你提供更多的日志信息。这个配置将会降低你系统的性能并且让你日志文件更快的填充满。
- 'Add New Entry' — 输入类或者包的名字到边上的文本输入框中,然后单击 添加实体(Add Entry)按钮。这个新的日志将会显示 已存在的级别(Existing Levels) 在下面的界面中。
- 'Existing Levels' - 这个是当前你 Confluence 实例中的操作。
- 你可以通过选择 New Level 的下拉列表来修改日志级别。请阅读 Apache documentation 页面中的内容来定义每一个级别。
- 单击 'Remove' 链接来停止日志记录你选择的类和包的名称。
- 单击 保存(Save)按钮来保存你在 'Existing Levels' 部分所做的任何修改。
屏幕截图:修改日志级别和参数
编辑属性文件
希望配置日志级别和其他基础参数的设置,你需要停止 Confluence 然后修改 log4j.properties
文件的设置,如果上面的描述。
这个属性文件包括了一系列的不同日志并且可以被你取消备注,如果你希望记录一些特定的组件。请参考 Apache log4j documentation 页面中的内容。
请参考 Working with Confluence Logs 页面中的的内容来获得一些配置的指南,你可能会发现这些指南对你对问题的诊断会比较有用。
针对 logging.properties 中的 java.util.logging 配置级别
一些库在 Confluence 中被用来使用 java.util.logging 而不是 log4j 或者 slf4j。这些库包括:
- com.sun.jersey
- org.apache.shindig
- net.sf.ehcache
Confluence 的 logging.properties
文件设置将 java.util.logging 重定向为 log4j 的特定级别,这个重定向是通过 slf4j 操作的。
为了增加这些库的日志级别,你必须首先配置 logging.properties
文件中的 <CONFLUENCE-INSTALL>/confluence/WEB-INF/classes/
。这些日志级别与 Logj 的级别不同,如这里列出来的。
例如,为了让 shindig 增加在日志中输出的内容信息,需要修改 in the logging.properties
文件:
org.apache.shindig.level = INFO
为
org.apache.shindig.level = FINE
然后需要使用上面提供的 2 中方式中的一种来配置 log4j 级别。