"Из-за большой нагрузки последняя операция рабочего процесса была поставлена ​​в очередь" -> Как просмотреть очередь?

Я знаю, что задание таймера Sharepoint (OWSTIMER) поставлено в очередь на выполнение рабочего процесса - я просто хочу увидеть эту очередь! Я хочу увидеть, какой рабочий процесс следующий в этой зловещей очереди.

Любой способ проверить очередь рабочего процесса через PowerShell / Консольное приложение / Центр администрирования?

1 ответ

Проект SPTimerJobAdmin http://sptimerjobadmin.codeplex.com/ кажется, обеспечивает то, о чем вы просите, хотя, похоже, он предназначен специально для продукта 2007 года, поэтому я не могу сказать, что он может сделать в 2010 году, но, возможно, он может Направьте вас в правильном направлении, и обновление для 2010 не должно быть слишком сложным, это довольно маленький проект.

Что касается использования C# или PowerShell для запроса заданий таймера, вы, вероятно, можете найти то, что вам нужно, в классе SPFarm (вам нужно будет добавить ссылку на пространство имен Microsoft.SharePoint.Administration или полностью указать имя класса). Вы можете перебирать задания довольно легко:

var farm = Microsoft.SharePoint.Administration.SPFarm.Local;
foreach (var job in farm.TimerService.JobDefinitions)
{
  // check what you want from each job
  // Typical Properties: Schedule, Title, LastRunTime, TypeName, Status
}

Было бы похоже в PowerShell:

# Load the SharePoint assembly if necessary
PS C:\> [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint")
PS C:\> $farm = [Microsoft.SharePoint.Administration.SPFarm]::Local
PS C:\> $farm.TimerService.JobDefinitions | select Title,LastRunTime,Status
Другие вопросы по тегам