Настройка сценариев для централизованной службы ведения журналов в Lync Server 2013Configuring scenarios for the Centralized Logging Service in Lync Server 2013

 

Последнее изменение темы: 2014-02-05Topic Last Modified: 2014-02-05

В сценариях определяется область (Глобальная, на уровне сайта, в пуле или на компьютере) и какие поставщики используются в централизованной службе ведения журналов.Scenarios define the scope (that is, global, site, pool, or computer) and what providers to use in the Centralized Logging Service. С помощью сценариев вы включаете и отключаете трассировку поставщиков (например, S4, SIPStack, мгновенных сообщений и сведений о присутствии).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.If you find that a scenario needs to be modified to meet your troubleshooting and logging needs, the Lync Server 2013 Debug Tools provides you a Windows PowerShell module named ClsController.psm1 that contains a function named 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=285257The Lync Server 2013 Debug Tools are downloaded from the following link: https://go.microsoft.com/fwlink/?LinkId=285257

Важно!

Для любой области действия (глобальной, области узла, пула и компьютера) одновременно можно использовать не больше двух сценариев.For any given scope—site, global, pool or computer—you can run a maximum of two scenarios at any given time. Чтобы определить, какие сценарии выполняются в данный момент, используйте Windows PowerShell и Get – CsClsScenario.To determine which scenarios are currently running, use Windows PowerShell and Get-CsClsScenario. С помощью Windows PowerShell и командлета Set — CsClsScenarioможно динамически изменить выполняемые сценарии.By using Windows PowerShell and Set-CsClsScenario, you can dynamically change which scenarios are running. Это можно сделать во время сеанса ведения журнала, чтобы скорректировать собираемые данные и поставщиков, от которых они собираются.You can modify which scenarios are running during a logging session to adjust or refine the data you are collecting and from which providers.

Для запуска функций централизованной службы ведения журналов с помощью командной консоли Lync Server необходимо быть членом группы безопасности CsAdministrator или CsServerAdministrator с управлением доступом на основе ролей (RBAC) или настраиваемой роли RBAC, которая содержит любую из этих двух групп.To run the Centralized Logging Service functions by using the Lync Server Management Shell, you must be a member of either the CsAdministrator or the CsServerAdministrator role-based access control (RBAC) security groups, or a custom RBAC role that contains either of these two groups. Чтобы получить список всех ролей RBAC, которым назначен этот командлет, включая любые созданные пользователем роли RBAC, выполните следующую команду в командной консоли Lync Server или в командной строке Windows PowerShell:To return a list of all the RBAC roles this cmdlet has been assigned to, including any custom RBAC roles you have created yourself, run the following command from the Lync Server Management Shell or the Windows PowerShell prompt:

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

Например:For example:

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. Существует два способа выдача команд службы централизованного ведения журналов.There are two ways to issue Centralized Logging Service commands. Вы можете использовать CLSController.exe, расположенный по умолчанию, в папке C: \ Program Files \ Common Files \ Microsoft Lync Server 2013 \ CLSAgent.You can use the CLSController.exe that is located, by default, in the directory C:\Program Files\Common Files\Microsoft Lync Server 2013\CLSAgent. Вы также можете использовать командную консоль Lync Server для выполнения команд Windows PowerShell.Or, you can use the Lync Server Management Shell to issue Windows PowerShell commands. Важное отличие состоит в том, что при использовании CLSController.exe в командой строке выбор доступных сценариев ограничен.The important distinction is that when you use CLSController.exe at the command line there is a finite selection of scenarios available. При использовании Windows PowerShell можно определять новые сценарии для использования в сеансах ведения журнала.When you use Windows PowerShell, you can define new scenarios for use in your logging sessions.

Как показано в статье Обзор централизованной службы ведения журналов в Lync Server 2013, элементы сценария:As introduced in Overview of the Centralized Logging Service in Lync Server 2013, the elements of a scenario are:

  • Поставщики услуг     Если вы знакомы с OCSLogger, поставщики — это компоненты, которые вы назначите, чтобы сообщить OCSLogger о том, какие журналы должны собираться ядром трассировки.Providers   If you are familiar with OCSLogger, providers are the components that you choose to tell OCSLogger what the tracing engine should collect logs from. Поставщики — это те же компоненты, а во многих случаях их имя совпадает с компонентами в OCSLogger.The providers are the same components, and in many cases have the same name as the components in OCSLogger. Если вы не знакомы с OCSLogger, поставщики — это компоненты, зависящие от роли сервера, из которых Служба централизованного ведения журналов может собирать журналы.If you are not familiar with OCSLogger, providers are server role specific components that the Centralized Logging Service can collect logs from. Подробные сведения о конфигурации поставщиков приведены в статье Настройка поставщиков для централизованной службы ведения журналов в Lync Server 2013.For details about the configuration of providers, see Configuring providers for Centralized Logging Service in Lync Server 2013.

  • Identity (удостоверение     ) Параметр – Identity задает область и имя сценария.Identity   The parameter –Identity sets the scope and name of the scenario. Например, вы можете задать глобальную область ("global") и задать для сценария идентификатор "LyssServiceScenario".For example, you could set a scope of “global” and identify the scenario with “LyssServiceScenario”. Если объединить эти два параметра, вы полните параметр Identity (например, "global/LyssServiceScenario").When you combine the two, you define the Identity (for example, “global/LyssServiceScenario”).

    При необходимости можно использовать параметры –Name и –Parent. Параметр Name задается для уникальной идентификации сценария. Если используется параметр Name, необходимо также использовать параметр Parent, чтобы добавить сценарий в глобальную область или область узла.Optionally, you can use the –Name and –Parent parameters. You define the Name parameter to uniquely identify the scenario. If you use Name, you must also use Parent to add the scenario to either global or site.

    Важно!

    Если используются параметры Name и Parent, вы не можете применять параметр –Identity.If you use the Name and Parent parameters, you cannot use the –Identity parameter.

Создание сценария с помощью командлета New-CsClsScenarioTo create a new scenario with the New-CsClsScenario cmdlet

  1. Запустите командную консоль Lync Server: нажмите кнопку Пуск, последовательно выберите пункты Все программы и Microsoft Lync Server 2013 и щелкните элемент Командная консоль Lync Server.Start the Lync Server Management Shell: Click Start, click All Programs, click Microsoft Lync Server 2013, and then click Lync Server Management Shell.

  2. Чтобы создать новый сценарий для сеанса ведения журнала, используйте New-CsClsProvider и определите имя сценария (то есть, как он будет однозначно идентифицирован).To create a new scenario for a logging session, use New-CsClsProvider and define the name of the scenario (that is, how it will be uniquely identified). Выберите тип формата ведения журнала из WPP (то есть препроцессор трассировки программного обеспечения Windows и значение по умолчанию), EventLog (то есть формат журнала событий Windows) или Иислог (то есть файл в формате ASCII, основанный на формате файла журнала IIS).Choose a type of logging format from WPP (that is, Windows software tracing preprocessor and is the default), EventLog (that is, Windows event log format), or IISLog (that is, ASCII format file based on the IIS log file format). Затем определите уровень (как определено в разделе уровни ведения журнала в данном разделе) и флаги (как указано в разделе flags в этом разделе).Next, define Level (as the defined under Logging Levels in this topic), and Flags (as defined under Flags in this topic).

    Для этого примера сценария мы используем LyssProvider как пример переменной поставщика.For this example scenario, we use LyssProvider as the example provider variable.

    Чтобы создать сценарий с помощью заданных параметров, введите следующую команду:To create a scenario using the options defined, type:

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

    Например:For example:

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

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

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

Создание сценария с несколькими поставщиками с помощью командлета New-CsClsScenarioTo create a new scenario with multiple providers with the New-CsClsScenario cmdlet

  1. Запустите командную консоль Lync Server: нажмите кнопку Пуск, последовательно выберите пункты Все программы и Microsoft Lync Server 2013 и щелкните элемент Командная консоль Lync Server.Start the Lync Server Management Shell: Click Start, click All Programs, click Microsoft Lync Server 2013, and then click Lync Server Management Shell.

  2. Можно использовать не больше двух сценариев для области действия.You are limited to two scenarios per scope. Однако число поставщиков не ограничено.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. Имена переменных поставщиков: LyssProvider, ABServerProvider и SIPStackProvider.The provider variable names are LyssProvider, ABServerProvider, and SIPStackProvider. Чтобы определить и назначить несколько поставщиков сценарию, введите следующую команду в командной консоли Lync Server или в командной строке Windows PowerShell:To define and assign multiple providers to a scenario, type the following at a Lync Server Management Shell or Windows PowerShell command prompt:

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

    Примечание

    Так как она известна в Windows PowerShell, соглашение о создании хэш-таблицы значений с помощью @{<variable>=<value1>, <value2>, <value>...} называется сплаттингом.As it is known in Windows PowerShell, the convention for creating a hash table of values using @{<variable>=<value1>, <value2>, <value>...} is known as splatting. Подробнее о сплаттингом в Windows PowerShell можно узнать в статье https://go.microsoft.com/fwlink/p/?LinkId=267760 .For details about splatting in Windows PowerShell, see https://go.microsoft.com/fwlink/p/?LinkId=267760.

Изменение существующего сценария с помощью командлета Set-CsClsScenarioTo modify an existing scenario with the Set-CsClsScenario cmdlet

  1. Запустите командную консоль Lync Server: нажмите кнопку Пуск, последовательно выберите пункты Все программы и Microsoft Lync Server 2013 и щелкните элемент Командная консоль Lync Server.Start the Lync Server Management Shell: Click Start, click All Programs, click Microsoft Lync Server 2013, and then click Lync Server Management Shell.

  2. Можно использовать не больше двух сценариев для области действия. Вы можете изменить выполняемые сценарии в любое время даже во время сеанса ведения журналов. Если переопределить выполняемые сценарии, текущий сеанс перестанет использовать удаленный сценарий и начнет применять новый сценарий. Однако данные ведения журналов, полученные с помощью удаленного сценария, останутся в полученных журналах. Чтобы определить новый сценарий, выполните следующие действия (если уже определенный поставщик "S4Provider" уже добавлен):You are limited to two scenarios per scope. You can change which scenarios are running at any time, even when a logging capture session is in process. If you redefine the running scenarios, the current logging session will stop using the scenario that was removed and then begin using the new scenario. However, the logging information that was captured with the removed scenario remains in the captured logs. To define a new scenario, do the following (that is, assuming the addition of an already defined provider named “S4Provider”):

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

    Например:For example:

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

    Если вы хотите заменить поставщики, определить один поставщика или разделенный запятыми список поставщиков, чтобы заменить текущий набор. Если вы хотите только заменить один из нескольких поставщиков, добавьте текущие поставщики с новыми поставщиками, чтобы создать новый набор поставщиков, который содержит новые и существующие поставщики. Чтобы заменить все поставщики новым набором, введите следующую команду:If you want to replace providers, define a single provider or a comma separated list of providers to replace the current set. If you only want to replace one of many providers, add the current providers with the new providers to create a new set of providers that contains both new providers and existing providers. To replace all providers with a new set, type the following:

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

    Например, чтобы заменить текущий набор из $LyssProvider, $ABServerProvider и $SIPStackProvider на $LyssServiceProvider, выполните следующую команду:For example, to replace the current set of $LyssProvider, $ABServerProvider, and $SIPStackProvider with $LyssServiceProvider:

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

    Чтобы заменить только поставщик $LyssProvider из текущего набора $LyssProvider, $ABServerProvider и $SIPStackProvider на $LyssServiceProvider, введите следующую команду:To replace just the $LyssProvider provider from the current set of $LyssProvider, $ABServerProvider, and $SIPStackProvider with $LyssServiceProvider, type the following:

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

Удаление существующего сценария с помощью командлета Remove-CsClsScenarioTo remove an existing scenario with the Remove-CsClsScenario cmdlet

  1. Запустите командную консоль Lync Server: нажмите кнопку Пуск, последовательно выберите пункты Все программы и Microsoft Lync Server 2013 и щелкните элемент Командная консоль Lync Server.Start the Lync Server Management Shell: Click Start, click All Programs, click Microsoft Lync Server 2013, and then click Lync Server Management Shell.

  2. Если вы хотите удалить сценарий, определенный ранее, введите следующую команду:If you want to remove a scenario that has been previously defined, type the following:

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

    Например, чтобы удалить заданный сценарий site:Redmond/LyssServiceScenario:For example, to remove the defined scenario site:Redmond/LyssServiceScenario:

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

Командлет Remove-CsClsScenario удаляет указанный сценарий, но полученные трассировки все еще доступны в журналах.The Remove-CsClsScenario cmdlet removes the specified scenario, but the traces that have been captured are still available in the logs for you to search on.

Загрузка и выгрузка командлета Edit-CsClsScenario с помощью модуля ClsController.psm1To load and unload the Edit-CsClsScenario cmdlet using the ClsController.psm1 module

  1. Запустите командную консоль Lync Server: нажмите кнопку Пуск, последовательно выберите пункты Все программы и Microsoft Lync Server 2013 и щелкните элемент Командная консоль Lync Server.Start the Lync Server Management Shell: Click Start, click All Programs, click Microsoft Lync Server 2013, and then click Lync Server Management Shell.

    Важно!

    Модуль ClsController.psm1 предоставляется как отдельная веб-загрузка.The ClsController.psm1 module is provided as a separate Web download. Модуль входит в состав средств отладки Lync Server 2013.The module is part of the Lync Server 2013 Debugging tools. По умолчанию средства отладки устанавливаются в каталог C:\Program Files\Lync Server 2013\Debugging Tools.By default, the debugging tools are installed in the directory C:\Program Files\Lync Server 2013\Debugging Tools.

  2. В Windows PowerShell введите:From the Windows PowerShell, type:

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

    Совет

    При успешной загрузке модуля вы вернетесь в командную строку Windows PowerShell.Successful loading of the module returns you to the Windows PowerShell command prompt. Чтобы убедиться, что модуль загружен и Edit-CsClsScenario доступен, введите Get-Help Edit-CsClsScenario .To confirm that the module is loaded and that Edit-CsClsScenario is available, type Get-Help Edit-CsClsScenario. Вы должны увидеть базовые сведения о синтаксисе использования EditCsClsScenario.You should see the basic synopsis of the syntax for EditCsClsScenario.

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

    Remove-Module ClsController
    

    Совет

    При успешной выгрузке модуля вы вернетесь в командную строку Windows PowerShell.Successful unloading of the module returns you to the Windows PowerShell command prompt. Чтобы убедиться, что модуль выгружается, введите Get-Help Edit-CsClsScenario .To confirm that the module is unloaded, type Get-Help Edit-CsClsScenario. Windows PowerShell будет пытаться определить расположение справки для командлета и выполнить ошибку.Windows PowerShell will attempt to locate the help for the cmdlet and fail.

Удаление существующего поставщика из сценария с помощью командлета Edit-ClsControllerTo remove an existing provider from a scenario with the Edit-ClsController module

  1. Запустите командную консоль Lync Server: нажмите кнопку Пуск, последовательно выберите пункты Все программы и Microsoft Lync Server 2013 и щелкните элемент Командная консоль Lync Server.Start the Lync Server Management Shell: Click Start, click All Programs, click Microsoft Lync Server 2013, and then click Lync Server Management Shell.

  2. Чтобы удалить поставщика из сценария AlwaysOn, введите:To remove a provider from the AlwaysOn scenario, type:

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

    Например:For Example:

    Edit-CsClsScenario -ScenarioName AlwaysOn -ProviderName ChatServer -Remove
    

    Параметры ScenarioName и ProviderName являются позиционными (т. е. их необходимо задать в ожидаемой позиции в командной строке). Имя параметра необязательно явно определять, если имя сценария находится во второй позиции, а поставщик — в третьей позиции относительно первой позиции имени командлета. Используя эту информацию, предыдущая команда вводится следующим образом:The parameters ScenarioName and ProviderName are positional (that is, they must be defined in the expected position in the command line) parameters. The parameter name does not have to be explicitly defined if the scenario name is in position two and the provider is in position three, relative to the name of the cmdlet as position one. Using this information, the previous command would be typed as:

    Edit-CsClsScenario AlwaysOn ChatServer -Remove
    

    Позиционное размещение значений параметров применяется только к параметрам –Scenario и –Provider. Все другие параметры нужно определить явно.The positional placing of the parameter values applies only to –Scenario and –Provider. All other parameters must be explicitly defined.

Добавление поставщика в сценарий с помощью командлета Edit-ClsControllerTo add a provider to a scenario with the Edit-ClsController module

  1. Запустите командную консоль Lync Server: нажмите кнопку Пуск, последовательно выберите пункты Все программы и Microsoft Lync Server 2013 и щелкните элемент Командная консоль Lync Server.Start the Lync Server Management Shell: Click Start, click All Programs, click Microsoft Lync Server 2013, and then click Lync Server Management Shell.

  2. Чтобы добавить поставщик в сценарий AlwaysOn, введите:To add a provider to the AlwaysOn scenario, type:

    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>
    

    Например:For Example:

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

    -LogLevel может иметь тип Неустранимая ошибка, ошибка, предупреждение, info, Verbose, Debug или ALL.-Loglevel can be of the type Fatal, Error, Warning, Info, Verbose, Debug, or All. — Flags могут быть любыми флагами, которые поддерживает поставщик, например TF _ Component, TF _ DIAG.–Flags can be any of the flags that the provider supports, such as TF_COMPONENT, TF_DIAG. Для параметра –Flags также можно указать значение ALL–Flags can also be of value ALL

    Предыдущий пример также можно ввести, используя позиционность командлета. Например, чтобы добавить поставщик ChatServer в сценарий AlwaysOn, введите:The previous example can also be typed using the positional feature of the cmdlet. For example, to add the provider ChatServer to the AlwaysOn scenario, type:

    Edit-CsClsScenario AlwaysOn ChatServer -Level Info -Flags ALL