将守护程序消息日志设置为调试级别
- LOG_DEBUG
- LOG_DEBUG1
- LOG_DEBUG2
- LOG_DEBUG3
缺省情况下,不会显示 LSF_LOG_MASK = LOG_WARNING 和这些调试消息。
LSF 守护程序的调试日志类在 lsf.conf 中使用参数 LSB_DEBUG_CMD , LSB_DEBUG_MBD , LSB_DEBUG_SBD , LSB_DEBUG_SCH , LSF_DEBUG_LIM 和 LSF_DEBUG_RES 进行设置。
还有一些参数用于分别设置以下每个守护程序的逻辑掩码 :mbatchd , sbatchd , mbschd , lim 和 res。 更多详情,请参阅 Spectrum LSF 配置参考。
日志文件的位置是使用 lsf.conf中的参数 LSF_LOGDIR 指定的。
您可以使用 lsadmin 和 badmin 命令来临时更改特定守护程序 (例如 LIM , RES , mbatchd, sbatchd和 mbschd ) 的类,日志文件或消息日志级别,而不更改 lsf.conf。
消息日志级别如何生效
您设置的消息日志级别将仅从您设置它的时间开始生效,直到您将它关闭或守护程序停止运行 (以两者中的较早者为准)。 如果重新启动守护程序,那么其消息日志级别将重置回 LSF_LOG_MASK 的值,并且日志文件将存储在 LSF_LOGDIR 指定的目录中。
限制
当使用 lsadmin resdebug或 lsadmin restime为 RES 设置调试或计时级别时,调试级别仅影响根 RES。 root RES 是在 root 用户标识下运行的 RES。
应用程序 RESs 始终使用 lsf.conf 来设置调试环境。 应用程序 RESs 是由 sbatchd 创建的 RESs ,用于服务作业并以提交作业的用户的标识运行。
这意味着 LSF 系统自动启动的任何 RES 都不会受到临时调试或计时设置的影响。 应用程序 RES 将保留 lsf.conf中指定的设置。
针对守护程序的调试命令
lsadmin limdebug [-c class_name] [-l debug_level ] [-f logfile_name] [-o] [host_name]
lsadmin resdebug [-c class_name] [-l debug_level ] [-f logfile_name] [-o] [host_name]
badmin mbddebug [-c class_name] [-l debug_level ] [-f logfile_name] [-o] [-s log_queue_size]
badmin sbddebug [-c class_name] [-l debug_level ] [-f logfile_name] [-o] [host_name]
badmin schddebug [-c class_name] [-l debug_level ] [-f logfile_name] [-o] [-s log_queue_size]有关 lsadmin 和 badmin的详细描述,请参阅 IBM Spectrum LSF 命令参考。
示例
lsadmin limdebug -c "LC_MULTI LC_PIM" -f myfile hostA hostB
记录正在运行的 LIM 守护程序的其他消息hostA和hostB,与 MultiCluster 和 PIM 相关。 在名为 myfile.lim.log.hostA和 myfile.lim.log.hostB的 LSF_LOGDIR 目录中创建日志文件。 调试级别是参数 LSF_LOG_MASK 中的缺省值 LOG_DEBUG 级别。
lsadmin limdebug -o hostA hostB
关闭 LIM 的临时调试设置hostA和hostB并将它们重置为守护程序启动状态。 将消息日志级别重置回 LSF_LOG_MASK 的值,并将类重置为 LSF_DEBUG_RES , LSF_DEBUG_LIM , LSB_DEBUG_MBD , LSB_DEBUG_SBD 和 LSB_DEBUG_SCH 的值。 日志文件将重置为 LSF_LOGDIR 所指定的目录中的 LSF 系统日志文件,格式为 daemon_name.log.host_name。
badmin sbddebug -o
在本地主机 (从中提交命令的主机) 上关闭 sbatchd 的临时调试设置,并将其重置为守护程序启动状态。 将消息日志级别重置回 LSF_LOG_MASK 的值,并将类重置为 LSF_DEBUG_RES , LSF_DEBUG_LIM , LSB_DEBUG_MBD , LSB_DEBUG_SBD 和 LSB_DEBUG_SCH 的值。 日志文件将重置为 LSF_LOGDIR 所指定的目录中的 LSF 系统日志文件,格式为 daemon_name.log.host_name。
badmin mbddebug -l 1
在本地主机上运行的 mbatchd 的日志消息,并将日志消息级别设置为 LOG_DEBUG1。 必须从运行 mbatchd 的主机提交此命令,因为不能将 host_name 与 mbddebug一起指定。
badmin mbddebug -s 20000
将 mbatchd 日志记录线程使用的日志记录队列中的最大条目数更改为 20000 个条目。 当日志队列中的条目数为 20000 时,日志记录队列已满。 此值将临时覆盖 lsf.conf中 LSF_LOG_QUEUE_SIZE 的值,但如果在 lsf.conf中定义了 LSF_LOG_THREAD=N ,那么将忽略此值。
badmin sbddebug -f hostB/myfolder/myfile hostA
运行 sbatchd 的日志消息hostA,到服务器上的目录 myfilehostB,文件名为 myfile.sbatchd.log.hostA。 调试级别是参数 LSF_LOG_MASK 中的缺省值 LOG_DEBUG 级别。
badmin schddebug -l 2
在本地主机上运行的 mbatchd 的日志消息,并将日志消息级别设置为 LOG_DEBUG2。 必须从运行 mbatchd 的主机提交此命令,因为不能将 host_name 与 schddebug一起指定。
badmin schddebug -s 20000
将 mbschd 日志记录线程使用的日志记录队列中的最大条目数更改为 20000 个条目。 当日志队列中的条目数为 20000 时,日志记录队列已满。 此值将临时覆盖 lsf.conf中 LSF_LOG_QUEUE_SIZE 的值,但如果在 lsf.conf中定义了 LSF_LOG_THREAD=N ,那么将忽略此值。
badmin schddebug -l 1 -c “LC_PERFM”
badmin schdtime -l 2
激活 LSF 调度调试功能。
记录在本地主机上运行的 mbatchd 的性能消息,并将日志消息级别设置为 LOG_DEBUG。 设置 mbschd 的计时级别以包含两个级别的计时信息。
lsadmin resdebug -o hostA
关闭 RES 的临时调试设置hostA并将它们重置为守护程序启动状态。 将消息日志级别重置回 LSF_LOG_MASK 的值,并将类重置为 LSF_DEBUG_RES , LSF_DEBUG_LIM , LSB_DEBUG_MBD , LSB_DEBUG_SBD 和 LSB_DEBUG_SCH 的值。 日志文件将重置为 LSF_LOGDIR 所指定的目录中的 LSF 系统日志文件,格式为 daemon_name.log.host_name。