Configurando provedores para o Serviço de Log Centralizado no Lync Server 2013
Tópico última modificação: 19/03/2014
Os conceitos e a configuração de provedores no Serviço de Log Centralizado são um dos mais importantes a serem compreendidos. Os provedores mapeiam diretamente para componentes de função de servidor do Lync Server no modelo de rastreamento do Lync Server. O provedor define os componentes de um Lync Server 2013 que será rastreado, o tipo de mensagens (por exemplo, fatal, erro ou aviso) a serem coletados e os sinalizadores (por exemplo, TF_Connection ou TF_Diag). Os provedores são os componentes rastreáveis em cada função de servidor do Lync Server. Usando provedores, você define o nível e o tipo de rastreamento nos componentes (por exemplo, S4, SIPStack, mensagens instantâneas e presença). O provedor definido é usado em um cenário para agrupar todos os provedores de um determinado conjunto lógico que tratam de um problema específico.
Para executar as funções do Serviço de Log Centralizado usando o Shell de Gerenciamento do Lync Server, você deve ser membro dos grupos de segurança CsAdministrator ou RBAC (controle de acesso baseado em função) CsServerAdministrator ou uma função RBAC personalizada que contenha um desses dois grupos. Para retornar uma lista de todas as funções de RBAC (controle de acesso baseado em função) às qual esse cmdlet foi atribuído (incluindo quaisquer funções RBAC personalizadas que você mesmo criou), execute o seguinte comando no Shell de Gerenciamento do Lync Server ou no prompt Windows PowerShell:
Get-CsAdminRole | Where-Object {$_.Cmdlets -match "Lync Server 2013 cmdlet"}
Por exemplo:
Get-CsAdminRole | Where-Object {$_.Cmdlets -match "Set-CsClsConfiguration"}
O restante deste tópico concentra-se em como definir provedores, modificar um provedor e no que contém uma definição de provedor para otimizar a solução de problemas. Há duas maneiras de emitir comandos do Serviço de Log Centralizado. Você pode usar o CLSController.exe que está localizado, por padrão, no diretório C:\Arquivos de Programas\Arquivos Comuns\Microsoft Lync Server 2013\CLSAgent. Ou você pode usar o Shell de Gerenciamento do Lync Server para emitir Windows PowerShell comandos. A distinção importante é que, quando você usa o CLSController.exe na linha de comando, há uma seleção finita de cenários disponíveis nos quais os provedores já estão definidos e não são alteráveis, mas você pode definir o nível de log. Usando o Windows PowerShell, você pode definir novos provedores para uso em suas sessões de registro em log e ter controle total sobre sua criação, o que eles coletam e em que nível eles coletam dados.
Importante
Como mencionado, os provedores são muito sofisticados. No entanto, os cenários são ainda mais sofisticados, pois incorporam todas as informações necessárias para definir e executar o rastreamento nos componentes que os provedores representam. Como os cenários são um conjunto de provedores, é possível fazer uma comparação livre com a execução de um arquivo de lote que contém centenas de comandos para coletar muitas informações e a emissão de centenas de comandos, um de cada vez, na linha de comando.
Em vez de exigir que você se aprofundar nos detalhes dos provedores, o Serviço de Log Centralizado fornece vários cenários que já estão definidos para você. Os cenários fornecidos cobrem a maioria dos possíveis problemas que você poderá encontrar. Raramente, você talvez precise criar e definir provedores e atribuí-los a cenários. Recomendamos que você se familiarize com cada um dos cenários fornecidos antes de investigar a necessidade de criar novos provedores e cenários. Embora este artigo traga informações sobre a criação de provedores para você se familiarizar com a maneira como os cenários usam os elementos de provedor para coletar informações de rastreamento, por enquanto, não serão fornecidos detalhes sobre os provedores em si.
Introduzido na Visão Geral do Serviço de Log Centralizado no Lync Server 2013, os principais elementos da definição de um provedor para uso em um cenário são:
Provedores Se você estiver familiarizado com o OCSLogger, os provedores são os componentes que você opta por informar ao OCSLogger do que o mecanismo de rastreamento deve coletar logs. Os provedores são os mesmos componentes e, em muitos casos, têm o mesmo nome que os componentes do OCSLogger. Se você não estiver familiarizado com o OCSLogger, os provedores serão componentes específicos da função de servidor dos qual o Serviço de Log Centralizado pode coletar logs. No caso do Serviço de Log Centralizado, o CLSAgent é a parte arquitetônica do Serviço de Log Centralizado que está fazendo o rastreamento dos componentes que você define na configuração de provedores.
Níveis de registro em log O OCSLogger forneceu a opção de escolher vários níveis de detalhes para os dados coletados. Esse recurso é uma parte integrante do Serviço de Log Centralizado e dos cenários e é definido pelo parâmetro Type . As seguintes opções estão disponíveis:
Todos Coleta mensagens de rastreamento do tipo fatal, erro, aviso e informações para o log do provedor definido.
Fatal Coleta apenas as mensagens de rastreamento que indicam uma falha para o provedor definido.
Erro Coleta apenas as mensagens de rastreamento que indicam um erro para o provedor definido, além de mensagens fatais.
Aviso Coleta apenas as mensagens de rastreamento que indicam um aviso para o provedor definido, além de mensagens fatais e de erro.
Informação Coleta apenas as mensagens de rastreamento que indicam uma mensagem informativa para o provedor definido, além de mensagens fatais, de erro e de aviso.
Verbose Coleta todas as mensagens de rastreamento do tipo fatal, erro, aviso e informações para o provedor definido.
Sinalizadores O OCSLogger forneceu a opção de escolher sinalizadores para cada provedor que definiu quais tipos de informações você pode recuperar dos arquivos de rastreamento. Você pode escolher os seguintes sinalizadores, com base no provedor:
TF_Connection Fornece entradas de log relacionadas à conexão. Esses logs incluem informações sobre as conexões estabelecidas com e a partir de um componente específico. Isso também pode incluir informações significativas no nível da rede (ou seja, para componentes sem o conceito de uma conexão).
TF_Security Fornece todos os eventos/entradas de log relacionadas à segurança. Por exemplo, para SipStack, são eventos de segurança como falha na validação do domínio e falhas de autenticação/autorização do cliente.
TF_Diag Fornece eventos de diagnóstico que você pode usar para diagnosticar ou solucionar problemas do componente. Por exemplo, para SipStack, são falhas de certificado e avisos/erros de DNS.
TF_Protocol Fornece mensagens de protocolo, como mensagens SIP e Combined Community Codec Pack.
TF_Component Habilita o registro em log nos componentes especificados como parte dos provedores.
Todos Define todos os sinalizadores disponíveis para o provedor.
Para examinar informações sobre provedores de cenários existentes do Serviço de Log Centralizado
Inicie o Shell de Gerenciamento do Lync Server: clique em Iniciar, clique em Todos os Programas, clique em Microsoft Lync Server 2013 e, em seguida, clique no Shell de Gerenciamento do Lync Server.
Para exibir a configuração dos provedores existentes, digite o seguinte:
Get-CsClsScenario -Identity <scope and scenario name>
Por exemplo, para exibir informações sobre o participante de conferência global, digite:
Get-CsClsScenario -Identity "global/CAA"
O comando exibe uma lista dos provedores com os sinalizadores, as configurações e os componentes associados. Se as informações exibidas não forem suficientes ou se a lista for muito longa para o formato de lista de Windows PowerShell padrão, você poderá exibir informações adicionais definindo um método de saída diferente. Para isso, digite:
Get-CsClsScenario -Identity "global/CAA" | Select-Object -ExpandProperty Provider
A saída deste comando exibe cada provedor em um formato de cinco linhas com o nome do provedor, o tipo de log, o nível de log, os sinalizadores, o GUID e a função, cada um em uma linha separada.
Para definir um novo provedor de cenário do Serviço de Log Centralizado
Inicie o Shell de Gerenciamento do Lync Server: clique em Iniciar, clique em Todos os Programas, clique em Microsoft Lync Server 2013 e, em seguida, clique no Shell de Gerenciamento do Lync Server.
Um provedor de cenário consiste em um componente a ser rastreado, sinalizadores a serem usados e um nível de detalhamento a ser coletado. Para isso, digite:
$<variableName> = New-CsClsProvider -Name <provider component> -Type <log type> -Level <log level detail type> -Flags <provider trace log flags>
Por exemplo, uma definição de provedor de rastreamento que define o que será coletado e em qual nível de detalhamento do provedor Lyss seria semelhante ao seguinte:
$LyssProvider = New-CsClsProvider -Name "Lyss" -Type "WPP" -Level "Info" -Flags "All"
–Level coleta mensagens fatais, de erro, aviso e informações. Os sinalizadores usados são todos aqueles definidos para o provedor Lyss e incluem TF_Connection, TF_Diag e TF_Protocol.
Depois que a variável $LyssProvider for definida, você poderá usá-la com o cmdlet New-CsClsScenario para coletar rastreamentos do provedor Lyss. Para concluir a criação e a atribuição do provedor a um novo cenário, digite:
New-CsClsScenario -Identity "site:Redmond/RedmondLyssInfo" -Provider $LyssProvider
Em que $LyssProvider é a variável que contém o cenário definido criado com New-CsClsProvider.
Para alterar um provedor de cenário do Serviço de Log Centralizado existente
Inicie o Shell de Gerenciamento do Lync Server: clique em Iniciar, clique em Todos os Programas, clique em Microsoft Lync Server 2013 e, em seguida, clique no Shell de Gerenciamento do Lync Server.
Para atualizar ou alterar a configuração de um provedor existente, digite:
$LyssProvider = New-CsClsProvider -Name "Lyss" -Type "WPP" -Level "Debug" -Flags "TF_Connection, TF_Diag"
Em seguida, você atualiza o cenário para atribuir o provedor digitando o seguinte:
Set-CsClsScenario -Identity "site:Redmond/RedmondLyssInfo" -Provider $LyssProvider
O resultado final do comando é que cenário site:Redmond/RedmondLyssInfo terá atualizado os sinalizadores e o nível do provedor atribuído a ele. Você pode exibir o novo cenário usando Get-CsClsScenario. Para obter detalhes, consulte Get-CsClsScenario.
Aviso
New-ClsCsProvider não faz uma verificação para determinar se os sinalizadores são válidos. Certifique-se de que os sinalizadores (por exemplo, TF_DIAG ou TF_CONNECTION) estejam grafados corretamente. Se os sinalizadores não estiverem grafados corretamente, o provedor não poderá retornar as informações de log esperadas.
Se você quiser adicionar mais provedores a esse cenário, digite:
Set-CsClsScenario -Identity "site:Redmond/RedmondLyssInfo" -Provider @{Add=$ABSProvider, $CASProvider, S4Provider}
Onde cada provedor definido com a diretiva Add já foi definido com o uso do processo New-CsClsProvider.
Para remover um provedor de cenário
Inicie o Shell de Gerenciamento do Lync Server: clique em Iniciar, clique em Todos os Programas, clique em Microsoft Lync Server 2013 e, em seguida, clique no Shell de Gerenciamento do Lync Server.
Os cmdlets fornecidos permitem que você atualize os provedores existentes e crie novos provedores. Para remover um provedor, você precisa usar a diretiva Replace do parâmetro Provider para Set-CsClsScenario. A única maneira de remover completamente um provedor é substituí-lo por um provedor redefinido com o mesmo nome e usar a diretiva Update. Por exemplo, nosso provedor LyssProvider está definido com o tipo de log WPP, o nível definido para Debug e os sinalizadores definidos como TF_CONNECTION e TF_DIAG. Você precisa alterar os sinalizadores para "All". Para alterar o provedor, digite o seguinte:
$LyssProvider = New-CsClsProvider -Name "Lyss" -Type "WPP" -Level "Debug" -Flags "All"
Set-CsClsScenario -Identity "site:Redmond/RedmondLyssInfo" -Provider @{Replace=$LyssProvider}
Se você desejar remover completamente um cenário e os provedores associados a ele, digite o seguinte:
Remove-CsClsScenario -Identity <scope and name of scenario>
Por exemplo:
Remove-CsClsScenario -Identity "site:Redmond/RedmondLyssInfo"
Aviso
O cmdlet Remove-CsClsScenario não solicita sua confirmação. O cenário será excluído junto com os provedores atribuídos a ele. Você pode recriar o cenário executando novamente os comandos usados para criá-lo inicialmente. Não há um procedimento para recuperar cenários ou provedores removidos.
Quando você remove um cenário usando o cmdlet Remove-CsClsScenario, ele é completamente removido do escopo. Para usar os cenários que você criou e os provedores que faziam parte dele, crie novos provedores e atribua-os a um novo cenário.