Настройка сценариев для централизованной службы ведения журнала в Lync Server 2013

 

Последнее изменение раздела: 2014-02-05

Сценарии определяют область (глобальную, сайт, пул или компьютер) и поставщики для использования в централизованной службе ведения журнала. By using scenarios, you enable or disable tracing on providers (for example, S4, SIPStack, IM, and Presence). By configuring a scenario, you can group all of the providers for a given logical collection that address a specific problem condition. Если вы обнаружите, что сценарий необходимо изменить в соответствии с требованиями к устранению неполадок и ведении журнала, средства отладки Lync Server 2013 предоставляют модуль Windows PowerShell с именем ClsController.psm1, содержащий функцию Edit-CsClsScenario. The purpose of the module is to edit the properties of the named scenario. Examples of how this module works are provided in this topic. Средства отладки Lync Server 2013 скачиваются по следующей ссылке: https://go.microsoft.com/fwlink/?LinkId=285257

Важно

Для любой области действия (глобальной, области узла, пула и компьютера) одновременно можно использовать не больше двух сценариев. Чтобы определить, какие сценарии выполняются в данный момент, используйте Windows PowerShell и Get-CsClsScenario. С помощью Windows PowerShell Set-CsClsScenario можно динамически изменять выполняемые сценарии. Это можно сделать во время сеанса ведения журнала, чтобы скорректировать собираемые данные и поставщиков, от которых они собираются.

Чтобы запустить функции централизованной службы ведения журнала с помощью командной консоли Lync Server, необходимо быть членом групп безопасности CsAdministrator или CsServerAdministrator на основе ролей (RBAC) или настраиваемой роли RBAC, которая содержит эти две группы. Чтобы получить список всех ролей RBAC, которым был назначен этот командлет, включая пользовательские роли RBAC, созданные вами самостоятельно, выполните следующую команду из командной консоли Lync Server или Windows PowerShell запроса:

Get-CsAdminRole | Where-Object {$_.Cmdlets -match "Lync Server 2013 cmdlet"}

Например:

Get-CsAdminRole | Where-Object {$_.Cmdlets -match "Set-CsClsConfiguration"}

The remainder of this topic focuses on how to define a scenario, modify a scenario, retrieve what scenarios are running, remove a scenario, and specify what a scenario contains to optimize your troubleshooting. Существует два способа выдачи команд централизованной службы ведения журнала. По умолчанию CLSController.exe папку C:\Program Files\Common Files\Microsoft Lync Server 2013\CLSAgent можно использовать в каталоге C:\Program Files\Common Files\Microsoft Lync Server 2013\CLSAgent. Можно также использовать командную консоль Lync Server для Windows PowerShell команд. Важное отличие заключается в том, что при использовании CLSController.exe в командной строке существует ограниченный выбор сценариев. При использовании Windows PowerShell можно определить новые сценарии для использования в сеансах ведения журнала.

Как описано в обзоре централизованной службы ведения журнала в Lync Server 2013, ниже перечислены элементы сценария.

  • Поставщиков Если вы знакомы с OCSLogger, поставщики — это компоненты, которые вы решили сообщить OCSLogger, из чего подсистема трассировки должна собирать журналы. Поставщики — это те же компоненты, а во многих случаях их имя совпадает с компонентами в OCSLogger. Если вы не знакомы с OCSLogger, поставщики — это компоненты роли сервера, из которых централизованная служба ведения журнала может собирать журналы. Дополнительные сведения о конфигурации поставщиков см. в разделе "Настройка поставщиков для централизованной службы ведения журнала " в Lync Server 2013.

  • Идентичности Параметр –Identity задает область и имя сценария. Например, вы можете задать глобальную область ("global") и задать для сценария идентификатор "LyssServiceScenario". Если объединить эти два параметра, выполните параметр Identity (например, "global/LyssServiceScenario").

    При необходимости можно использовать параметры –Name и –Parent. Параметр Name задается для уникальной идентификации сценария. Если используется параметр Name, необходимо также использовать параметр Parent, чтобы добавить сценарий в глобальную область или область узла.

    Важно

    Если используются параметры Name и Parent, вы не можете применять параметр –Identity.

Создание сценария с помощью командлета New-CsClsScenario

  1. Запустите консоль управления Lync Server: нажмите кнопку "Пуск ", выберите пункт "Все программы ",щелкните Microsoft Lync Server 2013, а затем щелкните Lync Server Management Shell.

  2. Чтобы создать новый сценарий для сеанса ведения журнала, используйте New-CsClsProvider и определите имя сценария (то есть способ его уникальной идентификации). Выберите тип формата ведения журнала из WPP (то есть препроцессора трассировки программного обеспечения Windows и используется по умолчанию), EventLog (то есть формат журнала событий Windows) или IISLog (то есть файла формата ASCII на основе формата файла журнала IIS). Затем определите уровень (как определено в разделе "Уровни ведения журнала" в этом разделе) и флаги (как определено в разделе "Флаги" в этом разделе).

    Для этого примера сценария мы используем LyssProvider как пример переменной поставщика.

    Чтобы создать сценарий с помощью заданных параметров, введите следующую команду:

    New-CsClsScenario -Identity <scope>/<unique scenario name> -Provider <provider variable>
    

    Например:

    New-CsClsScenario -Identity "site:Redmond/LyssServiceScenario" -Provider $LyssProvider
    

    Альтернативный формат с использованием –Name и –Parent:

    New-CsClsScenario -Name "LyssServiceScenario" -Parent "site:Redmond" -Provider $LyssProvider
    

Создание сценария с несколькими поставщиками с помощью командлета New-CsClsScenario

  1. Запустите консоль управления Lync Server: нажмите кнопку "Пуск ", выберите пункт "Все программы ",щелкните Microsoft Lync Server 2013, а затем щелкните Lync Server Management Shell.

  2. Можно использовать не больше двух сценариев для области действия. However, you are not limited to a set number of providers. In this example, assume that we have created three providers, and you want to assign all three to the scenario you are defining. The provider variable names are LyssProvider, ABServerProvider, and SIPStackProvider. Чтобы определить и назначить несколько поставщиков для сценария, введите следующую команду в командной консоли Lync Server или Windows PowerShell командной строке:

    New-CsClsScenario -Identity "site:Redmond/CollectDataScenario" -Provider @{Add=$LyssProvider, $ABServerProvider,  $SIPStackProvider}
    

    Примечание.

    Как известно в Windows PowerShell, @{<variable>=<value1>, <value2>, <value>...} соглашение о создании хэш-таблицы значений с использованием называется сплаттингом. Дополнительные сведения о сплаттинге в Windows PowerShell см. в разделе https://go.microsoft.com/fwlink/p/?LinkId=267760.

Изменение существующего сценария с помощью командлета Set-CsClsScenario

  1. Запустите консоль управления Lync Server: нажмите кнопку "Пуск ", выберите пункт "Все программы ",щелкните Microsoft Lync Server 2013, а затем щелкните Lync Server Management Shell.

  2. Можно использовать не больше двух сценариев для области действия. Вы можете изменить выполняемые сценарии в любое время даже во время сеанса ведения журналов. Если переопределить выполняемые сценарии, текущий сеанс перестанет использовать удаленный сценарий и начнет применять новый сценарий. Однако данные ведения журналов, полученные с помощью удаленного сценария, останутся в полученных журналах. Чтобы определить новый сценарий, выполните следующие действия (если уже определенный поставщик "S4Provider" уже добавлен):

    Set-CsClsScenario -Identity <name of scope and scenario defined by New-CsClsScenario> -Provider @{Add=<new provider to add>}
    

    Например:

    Set-CsClsScenario -Identity "site:Redmond/LyssServiceScenario" -Provider @{Add=$S4Provider}
    

    Если вы хотите заменить поставщики, определить один поставщика или разделенный запятыми список поставщиков, чтобы заменить текущий набор. Если вы хотите только заменить один из нескольких поставщиков, добавьте текущие поставщики с новыми поставщиками, чтобы создать новый набор поставщиков, который содержит новые и существующие поставщики. Чтобы заменить все поставщики новым набором, введите следующую команду:

    Set-CsClsScenario -Identity <name of scope and scenario defined by New-CsClsScenario> -Provider @{Replace=<providers to replace existing provider set>}
    

    Например, чтобы заменить текущий набор из $LyssProvider, $ABServerProvider и $SIPStackProvider на $LyssServiceProvider, выполните следующую команду:

    Set-CsClsScenario -Identity "site:Redmond/LyssServiceScenario" -Provider @{Replace=$LyssServiceProvider}
    

    Чтобы заменить только поставщик $LyssProvider из текущего набора $LyssProvider, $ABServerProvider и $SIPStackProvider на $LyssServiceProvider, введите следующую команду:

    Set-CsClsScenario -Identity "site:Redmond/LyssServiceScenario" -Provider @{Replace=$LyssServiceProvider, $ABServerProvider, $SIPStackProvider}
    

Удаление существующего сценария с помощью командлета Remove-CsClsScenario

  1. Запустите консоль управления Lync Server: нажмите кнопку "Пуск ", выберите пункт "Все программы ",щелкните Microsoft Lync Server 2013, а затем щелкните Lync Server Management Shell.

  2. Если вы хотите удалить сценарий, определенный ранее, введите следующую команду:

    Remove-CsClsScenario -Identity <name of scope and scenario>
    

    Например, чтобы удалить заданный сценарий site:Redmond/LyssServiceScenario:

    Remove-CsClsScenario -Identity "site:Redmond/LyssServiceScenario"
    

Командлет Remove-CsClsScenario удаляет указанный сценарий, но полученные трассировки все еще доступны в журналах.

Загрузка и выгрузка Edit-CsClsScenario с помощью модуля ClsController.psm1

  1. Запустите консоль управления Lync Server: нажмите кнопку "Пуск ", выберите пункт "Все программы ",щелкните Microsoft Lync Server 2013, а затем щелкните Lync Server Management Shell.

    Важно

    Модуль ClsController.psm1 предоставляется в виде отдельного веб-скачивания. Модуль входит в состав средств отладки Lync Server 2013. По умолчанию средства отладки устанавливаются в каталог C:\Program Files\Lync Server 2013\Debugging Tools.

  2. В Windows PowerShell введите:

    Import-Module "C:\Program Files\Lync Server 2013\Debugging Tools\ClsController.psm1"
    

    Совет

    После успешной загрузки модуля вы йдите в Windows PowerShell командной строке. Чтобы убедиться, что модуль загружен и что Edit-CsClsScenario доступен, введите .Get-Help Edit-CsClsScenario Вы должны увидеть базовые сведения о синтаксисе использования EditCsClsScenario.

  3. Чтобы выгрузить модули, введите:

    Remove-Module ClsController
    

    Совет

    После успешной выгрузки модуля вы йдите в Windows PowerShell командной строке. Чтобы убедиться, что модуль выгружен, введите Get-Help Edit-CsClsScenario. Windows PowerShell попытается найти справку для командлета и завершится сбоем.

Удаление существующего поставщика из сценария с помощью командлета Edit-ClsController

  1. Запустите консоль управления Lync Server: нажмите кнопку "Пуск ", выберите пункт "Все программы ",щелкните Microsoft Lync Server 2013, а затем щелкните Lync Server Management Shell.

  2. Чтобы удалить поставщика из сценария AlwaysOn, введите:

    Edit-CsClsScenario -ScenarioName <string of the scenario to edit> -ProviderName <string of the provider to remove> -Remove
    

    Например:

    Edit-CsClsScenario -ScenarioName AlwaysOn -ProviderName ChatServer -Remove
    

    Параметры ScenarioName и ProviderName являются позиционными (т. е. их необходимо задать в ожидаемой позиции в командной строке). Имя параметра необязательно явно определять, если имя сценария находится во второй позиции, а поставщик — в третьей позиции относительно первой позиции имени командлета. Используя эту информацию, предыдущая команда вводится следующим образом:

    Edit-CsClsScenario AlwaysOn ChatServer -Remove
    

    Позиционное размещение значений параметров применяется только к параметрам –Scenario и –Provider. Все другие параметры нужно определить явно.

Добавление поставщика в сценарий с помощью командлета Edit-ClsController

  1. Запустите консоль управления Lync Server: нажмите кнопку "Пуск ", выберите пункт "Все программы ",щелкните Microsoft Lync Server 2013, а затем щелкните Lync Server Management Shell.

  2. Чтобы добавить поставщик в сценарий AlwaysOn, введите:

    Edit-CsClsScenario -ScenarioName <string of the scenario to edit> -ProviderName <string of the provider to add> -Level <string of type level> -Flags <string of type flags>
    

    Например:

    Edit-CsClsScenario -ScenarioName AlwaysOn -ProviderName ChatServer -Level Info -Flags TF_COMPONENT
    

    Значением -Loglevel может быть Fatal, Error, Warning, Info, Verbose, Debug или All. Значением –Flags может быть любой из флагов, поддерживаемых поставщиком, например TF_COMPONENT, TF_DIAG. Для параметра –Flags также можно указать значение ALL

    Предыдущий пример также можно ввести, используя позиционность командлета. Например, чтобы добавить поставщик ChatServer в сценарий AlwaysOn, введите:

    Edit-CsClsScenario AlwaysOn ChatServer -Level Info -Flags ALL