查看队列作业条目的 ULS 日志
上一次修改主题: 2015-03-09
您可以使用您的服务器的统一日志记录服务 (ULS) 日志来解决 Microsoft Office Project Server 2007 中的队列问题。ULS 日志中的队列条目信息在与 Project Web Access 中的“管理队列”页中的信息或与 Windows Server 事件查看器一同使用时,将特别有用。
本文介绍以下内容:
如何配置 ULS 日志文件设置
如何配置 Microsoft Office Excel 2007 以查看 ULS 日志文件
如何搜索 ULS 日志中的特定队列作业
ULS 日志中的队列作业条目类型
队列条目参数
解决队列问题的最佳方案
配置 ULS 日志文件设置
您可以使用 SharePoint 管理中心网站来配置 ULS 日志文件设置。在此页面上,您可以执行以下操作:
指定存储日志文件的默认位置。
指定要存储在服务器上的日志文件的最大数目。
指定使用每个日志文件的持续时间(以分钟为单位)。
提示
日志文件设置将应用于服务器场中的所有服务器。
配置 ULS 日志文件设置
在管理中心,单击“操作”。在“日志记录和报告”部分,单击诊断日志记录。
在“诊断日志记录”页的“跟踪日志”部分,验证“路径”字段中指定的位置。默认位置为 C:\Program Files\Common Files\Microsoft Shared\Web server extensions\12\LOGS。若要更改该位置,请在“路径”字段中键入一个新位置。
在“日志文件数”字段中,指定保存到服务器场中的每个服务器的最大日志文件数。默认值为 96。
在“使用日志文件的时间(分钟)”字段中,输入您需要使用每个日志文件的持续时间(分钟)。默认值为 30。
单击“确定”。
新的日志文件将使用以下格式命名:servername-year/month/day-time.log
例如,2008 年 6 月 8 日下午 1:20 在名为“Contoso”的服务器上创建的日志文件将命名为 contoso-20080608-1320.log。如果将“使用日志文件的时间(分钟)”字段设置为 30,随后将会看到创建的以下文件:contoso-20080608-1320.log、contoso-20080608-1350.log、contoso-20080608-1420.log 和 contoso-20080608-1450.log 等。
配置 Office Excel 2007 以查看 ULS 日志文件
可以在大部分文本编辑器或 Microsoft Office Excel 中轻松查看日志文件。Excel 允许日志文件按列进行排序,同时还提供更好的可读性(对于包含长字符串数据的行尤其如此)。
配置 Office Excel 2007 以查看跟踪日志文件
在 Office Excel 2007 中,单击“Office”按钮,然后单击“打开”。
在“打开”对话框中,浏览至日志文件的位置。
在“文件类型”列表(位于“文件名称”字段的右侧),选择“所有文件(*.*)”以便您能够看到日志文件。
提示
若要按日期排列文件列表,请右键单击文件列表中的空闲区域,单击“排序方式”,然后单击“修改日期”。
从文件列表中,选择要查看的日志文件。
出现日志文件后,在“主页”选项卡上,单击“排序和筛选”,然后单击“筛选”,这将允许您按特定的条件筛选所有行。例如,如果您只需要查看 Project Server 条目,则可以单击“区域”列中的“筛选”菜单,然后,清除除 Project Server 之外的所有其他选项。
选择“消息”列。在“主页”选项卡上,单击“格式”,然后单击“单元格格式”。在“单元格格式”页上,单击“对齐”,然后在“文本控制”部分,选择“自动换行”。单击“确定”。消息数据可能会非常长,因此将列配置为自动换行便于查看数据。
搜索特定的队列作业
若要查看日志文件中的特定条目,必须结合 ULS 日志使用 Project Web Access 中的“管理队列作业”页。
每个队列作业都具有一个作业组标识号。您可以使用此数据来搜索日志文件。若要开始搜索,必须将“作业组标识号”列添加到作业网格中。完成该操作后,就可以检查 ULS 日志文件中的特定值。
将“作业组标识号”列添加到作业网格中
在 Project Web Access 中的“服务器设置”页的“队列”部分,单击“管理队列”。
在“管理队列作业”页上,单击“列”。
在“可用列”列表中,选择“作业组标识号”。单击“添加”将作业组标识号移到“选定的列”列表中。
在“作业网格”工具栏中,单击“刷新状态”并验证是否已添加了该列。
添加“作业组标识号”列后,可以根据您在“管理队列作业”页上看到的作业所对应的作业组标识号值,来检查 ULS 日志中的作业队列条目。例如,在“管理队列作业”页上的“作业网格”中,您已注意到在 2008 年 6 月 8 日的下午 1:22,项目发布作业失败。根据失败的时间,您确定可以找到包含失败信息的相应日志文件。例如,如果日志文件持续时间(使用日志文件参数的分钟数)被设置为 30 分钟,则 contoso-20080608-1320.log 将包含失败信息,这是因为该时间范围为下午 1:20 到下午 1:50。
打开日志文件后,您可以使用列筛选器搜索与特定队列作业相关的所有条目。例如,“关联”列将允许您根据作业组标识号进行筛选。您还可以通过筛选“时间戳”列(依据失败时间)、“区域”列(筛选“Project Server”)或“类别”列(筛选“Project Server 队列”)来缩小您的搜索范围。
查看队列条目组件
在查看 ULS 日志中的队列条目时,请注意,这些条目可以划分为两种作用类型:
**发送到队列中的作业:**该作业将从 Project Server 发送到队列中等待处理。
**选取以待处理的作业:**将作业成功发送到队列后,队列工作线程尝试处理该作业。
发送到队列中的作业
当作业成功发送到队列时,通常会在 ULS 日志中看到队列作业的三种条目类型:
begin-message-group 条目
将与作业相关的数据发送到队列的条目
end-message-group 条目
**Begin-message-group 条目:**ULS 日志中的队列作业的初始条目,表示作业开始的标记。该条目会通知队列:其他与作业相关的数据将随后发送给它。下面是 begin-message-group 队列作业条目示例:
05/13/2008 11:24:09.05 w3wp.exe(0x0E38) 0x0160 ProjectServer ProjectServerQueue 8the Medium PWA:hppt://contoso/PWA, SSP:SharedService1, User:Contoso\EvaCorets, PSI: Project.QueueCreateProjectAndCheckOut [QUEUE][SENDER] ProjectQ: BeginMessageGroup(95e48e6e-71ad-4a6b-b997-86693cac4f66,41398775-d4a6-4c10-a523-4d0251d192c1,ProjectCreate,StandardPriority): JobUID: 6c2c97af-06b4-4038-8ee8-d83de92e59a9 ca5ca0b6-1dce-4d76-aefb-fec966aa8fe1
**将与作业相关的数据发送到队列的条目:**队列作业发送 begin-message-group 条目后,您会看到发送给队列的多个与作业相关的条目。您可以通过标识号参数值来跟踪些条目的顺序。这些条目可能会按顺序依次出现在日志中,也可能分散在各个时间段中,与其他日志条目混杂在一起。您可以使用作业的组 UID 号来跟踪日志文件中的作业条目。此时,作业处于“正在排入队列”状态。下面是与作业相关的条目示例:
05/13/2008 11:24:09.07 w3wp.exe (0x0E38) 0x0160 ProjectServer ProjectServerQueue 8thf Medium PWA:http://contoso/PWA, SSP:SharedServices1, User:Contoso\EvaCorets, PSI: Project.QueueCreateProjectAndCheckOut [QUEUE][SENDER] ProjectQ: Send( Microsoft.Office.Project.Server.BusinessLayer.QueueMsg.ProjectAddToMessage ): ID: 1 GroupUID: 95e48e6e-71ad-4a6b-b997-86693cac4f66 ca5ca0b6-1dce-4d76-aefb-fec966aa8fe1
**End-message-group 条目:**当队列收到队列作业的所有数据后,end-message-group 条目将会发送到队列中。但在收到该条目之前,队列作业将处于“正在排入队列”状态。如果成功收到了 end-message-group 条目,则作业将转换成“正在等待处理”状态。下面是 end-message-group 条目示例:
05/13/2008 11:24:09.09 w3wp.exe(0x0E38) 0x0160 ProjectServer ProjectServerQueue 8the Medium PWA:hppt://contoso/PWA, SSP:SharedService1, User:Contoso\EvaCorets, PSI: Project.QueueCreateProjectAndCheckOut [QUEUE][SENDER] ProjectQ: EndMessageGroup(): GroupUID: 6c2c97af-06b4-4038-8ee8-d83de92e59a9 ca5ca0b6-1dce-4d76-aefb-fec966aa8fe1
选取以待处理的作业
当作业成功提交给队列后,最终会被作业工作线程选取以待处理。有两种与此相关的作业类型:
Starting-group 条目
Group-completed-successfully 条目
**Starting-group 条目:**ULS 日志中的 starting-group 条目表示已选取作业以便进行处理,此时,该作业的状态为“正在处理”。下面是 starting-group 条目示例:
05/13/2008 11:24:09.55 Microsoft.Office.Project.Server (0x0E9C) 0x1378 ProjectServer ProjectServerQueue 7h52 Medium PWA:http://Contoso/PWA, SSP:SharedServices1, User:Contoso\EvaCorets, PSI:[QUEUE] ProjectQ: Starting group 95e48e6e-71ad-4a6b-b997-86693cac4f66 type = ProjectCreate priority = StandardPriority 59d07fb9-158f-42b6-ac09-824d592c06c7
**Group-completed-successfully 条目:**当作业成功处理完后,ULS 日志中的 group-completed-successfully 条目将会发出通知。该作业的状态将为“成功”。下面是 group-completed-successfully 条目示例:
05/13/2008 11:24:11.52 Microsoft.Office.Project.Server (0x0E9C) 0x1378 ProjectServer ProjectServerQueue 7h5o Medium PWA:http://Contoso/PWA, SSP:SharedServices1, User:Contoso\EvaCorets, PSI:[QUEUE] ProjectQ: Group completed successfully: 95e48e6e-71ad-4a6b-b997-86693cac4f66 type = ProjectCreate 59d07fb9-158f-42b6-ac09-824d592c06c7
队列条目参数
您可以在 ULS 日志中的所有各种队列作业条目中找到以下参数:
参数 | 说明 |
---|---|
PWA:http://contoso/PWA |
说明队列作业正在处理时所在的 Project Server 实例。在本例中为“http://contoso/PWA”。 |
SSP:ShareService1 |
说明作业发生时所在的 Project Server 实例的共享服务提供程序。在本例中为“SharedService1”。 |
User:Contoso\EvaCorets |
说明队列作业的所有者。在本例中为以 EvaCorets 别名命名的 Windows 用户。 |
PSI: WinProj.PreSaveProject |
说明通过作业正在执行的 Project Server 接口 (PSI) 调用。在本例中,WinProj.PreSaveProject 表示 PSI 调用是通过 Project Professional 执行的项目保存操作。 |
[SENDER] |
表示消息正在发送至队列。 |
[QUEUE] |
定义队列主线程和队列工作线程。 |
[SERVICE] |
定义队列监视进程。 |
[QSERVICE] |
定义队列工作进程。 |
ProjectQ: |
定义项目队列(与时间表队列相对)。 |
ProjectSave |
指定作业类型是从项目客户端执行的保存操作。作业类型将被附加 |
StandardPriority |
表示作业优先级。在选取高优先级的作业后,会选取低优先级的作业(如写入到通过项目发布作业产生的报告数据库)进行处理。优先级将会附加 |
JobUID: de2f… |
定义队列作业的 UID。作业 UID 值将对应于 Project Web Access 服务器设置中“管理队列作业”页中的队列作业的作业标识号值。 提示 ULS 日志中的队列作业条目最后一列中的 UID 值通常会与 Project Web Access 服务器设置中的“管理队列作业”页中的作业组 UID 值相关联。 |
有关队列线程和进程的详细信息,请参阅 Microsoft Office Project Server 2007 队列系统。
另请参阅
概念
Microsoft Office Project Server 2007 队列系统
解决 Project Server 队列问题的最佳方案
为 Project Server 队列服务配置最大作业处理器线程数
解决队列作业处于排队状态的问题