第 12 章
管理日志文件
本章说明如何通过配置日志记录策略和分析服务器维护的状态信息来监视 Directory Server。
Sun ONE Directory Server 提供三种类型的日志:
访问日志 - 列出连接到服务器的客户机。
错误日志 - 提供有关服务器错误的信息。
审核日志 - 给出对后缀及配置的访问的详细信息。
服务器中的状态信息包括有关连接和缓存活动的统计信息。可以通过 Directory Server 控制台获得该信息,对于监视条目中的信息,可以通过 LDAP 命令行工具查看。有关使用 SNMP 以监视服务器的信息,请参阅第 13 章“使用 SNMP 监视 Directory Server”。
本章包含以下小节:
定义日志文件策略
以下各节说明如何定义日志文件创建策略和删除策略。
定义日志文件轮换策略
如果希望目录定期对当前日志进行存档并启动新的日志,则可以在 Directory Server 控制台中定义日志文件轮换策略。可以配置下列参数:
希望目录保留的日志总量。当目录达到此日志数量时,它将在创建新的日志之前删除文件夹中最旧的日志文件。默认值为 10 个日志。请不要将此值设置为 1。否则,目录将不轮换日志,并且日志将无限增大。
每个日志文件的最大值(以 MB 计)。如果不想设置最大值,请在此字段中键入 -1。默认值为 100 MB。日志文件达到此最大值(或在下一步中定义的最大存留期)后,目录将对日志文件进行存档并启动一个新的日志文件。如果将最大的日志数量设置为 1,目录将忽略此属性。
目录对当前日志文件进行存档并创建一个新日志文件的周期,可以通过输入分钟数、小时数、天数、周数或月数来进行设置。默认值为每天。如果将最大的日志数量设置为 1,目录将忽略此属性。
定义日志文件删除策略
如果希望目录自动删除旧的存档日志,则可以从 Directory Server 控制台定义日志文件删除策略。
Note
只有在以前定义过日志文件轮换策略的情况下,日志删除策略才有意义。如果只有一个日志文件,日志文件删除将不起作用。
服务器在日志轮换时评估并应用日志文件删除策略。
可以配置下列参数:
组合的存档日志的最大值。达到此最大值时,最旧的存档日志将被自动删除。如果不想设置最大值,请在此字段中键入 -1。默认值为 500 MB。如果将日志文件的数量设置为 1,此参数将被忽略。
可用磁盘空间的最小值。当可用磁盘空间达到此最小值时,最旧的存档日志将被自动删除。默认值为 5 MB。如果将日志文件的数量设置为 1,此参数将被忽略。
日志文件的最大存留期。当日志文件达到此最大存留期时,该日志文件将被自动删除。默认值为 1 个月。如果将日志文件的数量设置为 1,此参数将被忽略。
手动轮换日志文件
如果尚未设置自动的日志文件创建或删除策略,则可以手动轮换日志文件。默认情况下,可在下列目录中找到访问日志文件、错误日志文件和审核日志文件:
ServerRoot/slapd-serverID/logs
要手动轮换日志文件,请执行以下操作:
移动或重命名要轮换的日志文件,以防将来参考时需要旧的日志文件。
服务器将按照每个日志配置自动创建新的文件。
访问日志
访问日志包含有关目录与客户机之间连接的详细信息。
查看访问日志
在 Directory Server 控制台的顶级“状态”标签上,选择“日志”图标,然后在右侧面板中选择“访问日志”标签。
该标签显示一个表格,其中包含所选的访问日志中最新的条目,如下图所示。有关访问消息的说明,请参阅 Sun ONE Directory Server 参考手册 中的第 8 章“访问日志和连接代码”。
图 12-1   查看日志内容
要刷新当前显示内容,请单击“刷新”。如果希望显示内容每 10 秒自动刷新一次,请选中“连续刷新”复选框。
要查看其他的访问日志文件,请从“选择日志”下拉菜单中进行选择。
要显示其他数量的消息,请在“要显示的行”文本框中输入想要查看的数目,然后单击“刷新”。
要过滤日志消息,可以在“仅显示包含下列内容的行”文本框中输入字符串,然后单击“刷新”。此外,还可以选择“不显示控制台日志”复选框,这样将过滤掉从控制台到服务器的连接所产生的所有消息。
要修改日志条目表的列,请单击“视图”选项。使用“视图选项”对话框的控件更改列的顺序、添加或删除列,并选择一列以对表进行排序。
配置访问日志
可以通过对许多设置进行配置来定制访问日志,包括目录存储访问日志的位置以及存储创建和删除策略的位置。
还可以禁用目录的访问日志记录。之所以这样做是因为访问日志的增长速度很快(对目录每访问 2,000 次将导致访问日志大约增加 1 MB)。但是,关闭访问日志记录之前,请仔细查看该访问日志是否提供了有益的疑难解答信息。
要配置目录的访问日志,请执行以下操作:
在 Directory Server 控制台的顶级“配置”标签上,选择“日志”图标,然后在右侧面板中选择“访问日志”标签。
此标签包含访问日志的配置设置,如下图所示:
图 12-2   日志文件轮换和删除的配置面板
要启用访问日志记录,请选中“启用日志记录”复选框。
如果不希望目录维护访问日志,请清除该复选框。
默认情况下,访问日志记录处于启用状态。
在“日志文件”字段中,输入希望该目录用于存储访问日志的完整路径和文件名。默认文件为:
ServerRoot/slapd-serverID/logs/access
设置日志的最大数量、日志大小和存档周期。
有关这些参数的信息,请参阅“定义日志文件轮换策略”。
设置组合的存档日志的最大值、可用磁盘空间的最小值以及日志文件的最大存留期。
有关这些参数的信息,请参阅“定义日志文件删除策略”。
完成更改之后,请单击“保存”。
错误日志
错误日志包含有关日常操作过程中目录遇到的错误和事件的详细信息。
查看错误日志
在 Directory Server 控制台的顶级“状态”标签上,选择“日志”图标,然后在右侧面板中选择“错误日志”标签。
该标签显示一个表格,其中包含所选的错误日志中最新的条目,如图 12-1 中所示的条目。有关错误消息的说明,请参阅 Sun ONE Directory Server 参考手册 中的附录 A“错误代码”。
要刷新当前显示内容,请单击“刷新”。如果希望显示内容每 10 秒自动刷新一次,请选中“连续刷新”复选框。
要查看已存档的错误日志,请从“选择日志”下拉菜单中进行选择。
要指定其他数量的消息,请在“要显示的行”文本框中输入想要查看的数目,然后单击“刷新”。
要过滤日志消息,可以在“仅显示包含下列内容的行”文本框中输入字符串,然后单击“刷新”。此外,还可以选择“不显示控制台日志”复选框,这样将过滤掉从控制台到服务器的连接所产生的所有错误消息。
要修改日志条目表的列,请单击“视图”选项。使用“视图选项”对话框的控件更改列的顺序、添加或删除列,并选择一列以对表进行排序。
配置错误日志
可以更改错误日志的若干设置,包括目录存储日志的位置以及希望目录在日志中包含的内容。
要配置错误日志,请执行以下操作:
在 Directory Server 控制台的顶级“配置”标签上,选择“日志”图标,然后在右侧面板中选择“错误日志”标签。
此标签包含错误日志的配置设置,如图 12-2 中所示。
要启用错误日志记录,请选中“启用日志记录”复选框。
如果不希望目录维护错误日志,请清除该复选框。
默认情况下,错误日志记录处于启用状态。
如果要在错误日志中设置详细信息的等级,请单击“日志等级”按钮以显示“错误日志等级”对话框。选择要查看其更多错误消息和调试信息的一个或多个内部产品组件。或者,选中“详细”复选框以返回最大数量的运行时输出,包括无价值的消息。
更改这些值的默认值可能使错误日志迅速增长,因此必须计划出充足的磁盘空间。为此建议不要更改日志等级,除非 Sun ONE“客户支持”要求您这样做。
在“日志文件”字段中,输入希望用于存储错误日志的目录的完整路径和文件名。默认文件为:
ServerRoot/slapd-serverID/logs/error
设置日志的最大数量、日志大小和存档周期。
有关这些参数的信息,请参阅“定义日志文件轮换策略”。
设置组合的存档日志的最大值、可用磁盘空间的最小值以及日志文件的最大存留期。
有关这些参数的信息,请参阅“定义日志文件删除策略”。
完成更改之后,请单击“保存”。
审核日志
审核日志包含有关对每个后缀和服务器配置所做更改的详细信息。不同于访问日志和错误日志,审核日志不是默认启用的。在查看日志前,必须启用审核日志。
配置审核日志
可以使用 Directory Server 控制台启用和禁用审核日志记录,并指定存储审核日志文件的位置。
要配置审核日志,请执行以下操作:
在 Directory Server 控制台的顶级“配置”标签上,选择“日志”图标,然后在右侧面板中选择“审核日志”标签。
此标签包含审核日志的配置设置,如图 12-2 中所示。
要启用审核日志记录,请选中“启用日志记录”复选框。
要禁用审核日志记录,请清除该复选框。默认情况下,审核日志记录处于禁用状态。
在“日志文件”字段中,输入希望用于存储审核日志的目录的完整路径和文件名。默认文件为:
ServerRoot/slapd-serverID/logs/audit
设置日志的最大数量、日志大小和存档周期。
有关这些参数的信息,请参阅“定义日志文件轮换策略”。
设置组合的存档日志的最大值、可用磁盘空间的最小值以及日志文件的最大存留期。
有关这些参数的信息,请参阅“定义日志文件删除策略”。
完成更改之后,请单击“保存”。
查看审核日志
在 Directory Server 控制台的顶级“状态”标签上,选择“日志”图标,然后在右侧面板中选择“审核日志”标签。
该标签显示一个表格,其中包含所选的审核日志中最新的条目,如图 12-1 中所示的条目。
要刷新当前显示内容,请单击“刷新”。如果希望显示内容每 10 秒自动刷新一次,请选中“连续刷新”复选框。
要查看已存档的审核日志,请从“选择日志”下拉菜单中进行选择。
要显示其他数量的消息,请在“要显示的行”文本框中输入想要查看的数目,然后单击“刷新”。
要过滤日志消息,可以在“仅显示包含下列内容的行”文本框中输入字符串,然后单击“刷新”。
监视服务器的活动
服务器总是维护计数器及其活动的统计信息,例如所有后缀的连接数、操作数和缓存活动。该信息能帮助您对所有错误进行故障排除并观察服务器的性能。可以从 Directory Server Console 或命令行来监视目录服务器的当前活动。
可供监视的许多参数既反映 Directory Server 的性能,又受配置和调整的影响。有关可配置的属性及其调整方式的信息,请参阅 Sun ONE Directory Server 安装和调整指南。
使用控制台监视服务器
在 Directory Server 控制台的顶级“状态”标签上,选择位于状态树根的服务器图标。
右侧面板显示有关服务器活动的当前信息。如果服务器当前并未运行,此标签将不提供任何性能监视信息。
单击“刷新”以刷新当前显示内容。如果希望服务器持续更新所显示的信息,请选中“连续刷新”复选框。
该服务器状态面板显示:
服务器启动时的日期和时间。
服务器上的当前日期和时间。启用复制时,应定期检查各个服务器上的日期是否开始出现差异。
资源概述表。对于以下每个资源,资源概述表列出了自启动后的总数目和每分钟的平均数。
表 12-1   资源概述表
资源
自启动后的总数目和每分钟平均数目
连接数
建立的客户机连接数。
初始化的操作数
由客户机请求的操作数。
完成的操作数
客户机未放弃的操作数。
发送到客户机的条目数
搜索结果返回的条目数。
发送到客户机的字节数
对所有客户机请求响应的字节数。
当前资源使用表。此表格显示面板最后刷新时正在使用的以下资源。
表 12-2   当前资源使用
资源
最新实时使用率
活动线程数
用于处理请求的线程数。其他线程可能是由内部服务器机制创建的,如复制和链接。
打开的连接数
每个连接可以启动多项操作,因此也可以启动多个线程。
其他可用的连接数
服务器可以同时打开的其他连接的总数。这一总数基于当前打开的连接数和允许服务器打开的并发连接总数。在大多数情况下,后者的值由操作系统确定,并用任务可用的文件描述符数来表示。
在 Windows 和 AIX 上,允许的并发连接数是由操作系统生成的,但它并不基于文件描述符。详细信息,请参阅操作系统文档。
等待从客户机读取的线程数
如果服务器开始从客户机接收请求,接着由于某些原因该请求的传输被中止,那么该线程可能正在等待读取。通常,如果有等待读取的线程,则说明网络速度慢或客户机速度慢。
使用的数据库数
该服务器宿主的后缀数。该数目不包括已链接的后缀。
连接状态表。此表显示有关当前每个打开的连接的以下信息。
表 12-3   连接状态表
列标头
说明
打开时间
建立连接时服务器上的时间。
初始化的
连接期间请求的操作数。
完成的操作数
连接期间,客户机未中止而由服务器完成的操作数。
绑定为
给出客户机绑定到服务器时使用的标识名称。如果客户机尚未通过服务器的验证,那么该列将显示 not bound。
状态
未阻塞- 表示服务器空闲,或正通过连接发送数据或接收数据。
阻塞 - 表示服务器正在等待通过连接读取或写入数据。这可能是由于网络速度慢或客户机速度慢。
类型
表明它是 LDAP 连接还是 DSML-over-HTTP 连接。
在左侧状态树中单击“后缀”节点。该面板显示有关每个后缀的数据库缓存中条目缓存和索引使用率的监视信息,如下图所示。
图 12-3   后缀监视面板
设置刷新模式(如果需要)。单击面板底部的“显示后缀”,选择要在表中列出的后缀。
第一个表格显示有关每个条目缓存的以下信息。
表 12-4   条目缓存使用率
列标头
说明
后缀
后缀的基准 DN。
命中次数
从缓存(而非磁盘)读取的条目数。
尝试次数
从缓存请求的条目数。
命中率 (%)
命中次数与尝试次数的比率(以百分比表示)。
大小 (MB)
来自给定后缀的条目缓存内容的当前大小。
最大大小 (MB)
当前配置中缓存的最大大小。
大小(条目)
来自给定后缀的缓存中条目的当前数目。
最大大小(条目)
当前配置中缓存条目的最大数目。
以下表格显示对每个后缀的数据库缓存的访问。
第一个表格显示通过配置的索引对数据库缓存的访问。从属性名称列表中,选择要查看其索引统计信息的某一属性。该表将仅显示所选属性已在其中索引的后缀的数据。
“条目访问”表格显示对检索条目的数据库缓存的访问。
最后一个表格中的“总量”显示对所有数据库缓存的所有组合访问。
所有三个表格都具有以下列:
表 12-5   对数据库缓存的访问
列标头
说明
后缀
后缀的基准 DN。
命中次数
通过索引读取的条目数。
尝试次数
通过索引请求的条目数。
命中率 (%)
命中次数与尝试次数的比率(以百分比表示)。
读入页
从磁盘读入后缀缓存的页数。
写出页
从缓存写回磁盘的页数。每当一个读写页经过修改后而从缓存中被删除以便为新页面留出空间时,就有一个后缀页被写入磁盘。
在表格的下面,以下页退出是所有数据库缓存的累积数。从缓存退出的页必须写入磁盘,这样可能会影响服务器性能。退出的页数越少,则性能越好:
读写页面退出 - 表示为给新页腾出空间而从缓存退出的读写页数。此值不同于写出的页数,因为这些页是未经修改而退出的读写页。
只读页面退出 - 表示为给新页腾出空间而从缓存退出的只读页数。
如果适用,请在左侧状态树中单击“已链接的后缀”节点。该面板显示有关访问在目录中配置的链接后缀的信息。设置刷新模式(如果需要)。
在列表中选择已链接后缀的 DN 以查看其统计信息。右侧的列表列出了所有在已链接后缀上执行的不同操作的计数。
从命令行监视服务器
通过在以下条目上执行搜索操作,可以从任意 LDAP 客户机监视目录服务器的当前活动:
cn=monitor
cn=monitor, cn=ldbm database, cn=plugins, cn=config
cn=monitor,cn=dbName,cn=ldbm database,cn=plugins,cn=config
cn=monitor,cn=dbName,cn=chaining database,cn=plugins,cn=config
其中 dbName 是要监视的后缀的数据库名称。注意,除了有关每个连接的信息以外,默认情况下,cn=monitor 条目是任何人都可读的(包括匿名绑定的客户机)。
以下示例显示如何查看常规服务器统计信息:
ldapsearch -h 主机 -p 端口 -D "cn=Directory Manager" -w 口令 \
-s base -b "cn=monitor" "(objectclass=*)"
有关这些条目中可用的所有监视属性的说明,请参阅 Sun ONE Directory Server 参考手册 中相应的小节: