我们推荐你根据你的需求来配置你自己的 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/WEB-INF/classes/。这些日志级别与 Logj 的级别不同,如这里列出来的。
例如,为了让 shindig 增加在日志中输出的内容信息,需要修改 in the logging.properties 文件:
org.apache.shindig.level = INFO
为
org.apache.shindig.level = FINE
然后需要使用上面提供的 2 中方式中的一种来配置 log4j 级别。