Configurar o log de diagnóstico

Uma parte importante de qualquer solução do Analysis Services é monitorar o desempenho dos servidores. Para obter informações gerais sobre como monitorar o Azure Analysis Services, consulte Monitorar o Azure Analysis Services.

Este artigo descreve como configurar, exibir e gerenciar logs de recursos do Azure Monitor para seus servidores do Analysis Services. Você pode enviar logs de recursos para o Armazenamento do Azure, transmiti-los para os Hubs de Eventos do Azure e exportá-los para os logs do Azure Monitor.

Resource logging to Storage, Event Hubs, or Azure Monitor logs

Nota

Recomendamos que utilize o módulo do Azure Az PowerShell para interagir com o Azure. Veja Instalar o Azure PowerShell para começar. Para saber como migrar para o módulo do Az PowerShell, veja Migrar o Azure PowerShell do AzureRM para o Az.

O que é registado?

Você pode selecionar as categorias de log Mecanismo, Serviço e Métricas. Para obter uma lista do que é registrado para cada categoria, consulte Logs de recursos suportados para Microsoft.AnalysisServices/servers.

Configurar o registo de diagnósticos

Portal do Azure

  1. No servidor do portal> do Azure, clique em Configurações de diagnóstico na navegação à esquerda e clique em Ativar diagnóstico.

    Screenshot showing Turn on diagnostics in the Azure portal.

  2. Em Configurações de diagnóstico, especifique as seguintes opções:

    • Nome. Insira um nome para os logs a serem criados.

    • Arquivar numa conta de armazenamento. Para usar essa opção, você precisa de uma conta de armazenamento existente para se conectar. Consulte Criar uma conta de armazenamento. Siga as instruções para criar uma conta de uso geral do Resource Manager e, em seguida, selecione sua conta de armazenamento retornando a esta página no portal. Pode levar alguns minutos para que as contas de armazenamento recém-criadas apareçam no menu suspenso.

    • Transmitir em fluxo para um hub de eventos. Para usar essa opção, você precisa de um namespace e um hub de eventos existentes para se conectar. Para saber mais, consulte Criar um namespace de Hubs de Eventos e um hub de eventos usando o portal do Azure. Em seguida, retorne a esta página no portal para selecionar o namespace do Hub de Eventos e o nome da política.

    • Enviar para o Azure Monitor (espaço de trabalho do Log Analytics). Para usar essa opção, use um espaço de trabalho existente ou crie um novo recurso de espaço de trabalho no portal. Para obter mais informações sobre como exibir seus logs, consulte Exibir logs no espaço de trabalho do Log Analytics neste artigo.

    • Motor. Selecione esta opção para registrar xEvents. Se você estiver arquivando em uma conta de armazenamento, poderá selecionar o período de retenção para os logs de recursos. Os logs são excluídos automaticamente após o período de retenção expirar.

    • Serviço. Selecione esta opção para registrar eventos de nível de serviço. Se você estiver arquivando em uma conta de armazenamento, poderá selecionar o período de retenção para os logs de recursos. Os logs são excluídos automaticamente após o período de retenção expirar.

    • Métricas. Selecione esta opção para armazenar dados detalhados em Métricas. Se você estiver arquivando em uma conta de armazenamento, poderá selecionar o período de retenção para os logs de recursos. Os logs são excluídos automaticamente após o período de retenção expirar.

  3. Clique em Guardar.

    Se você receber um erro que diz "Falha ao atualizar o diagnóstico para <o nome> do espaço de trabalho. A ID> da subscrição da subscrição <não está registada para utilizar microsoft.insights." siga as instruções de Resolução de Problemas do Diagnóstico do Azure para registar a conta e, em seguida, repita este procedimento.

    Se quiser alterar a forma como os logs de recursos são salvos a qualquer momento no futuro, você pode retornar a esta página para modificar as configurações.

PowerShell

Aqui estão os comandos básicos para você começar. Se você quiser ajuda passo a passo sobre como configurar o registro em log em uma conta de armazenamento usando o PowerShell, consulte o tutorial mais adiante neste artigo.

Para habilitar métricas e log de recursos usando o PowerShell, use os seguintes comandos:

  • Para habilitar o armazenamento de logs de recursos em uma conta de armazenamento, use este comando:

    Set-AzDiagnosticSetting -ResourceId [your resource id] -StorageAccountId [your storage account id] -Enabled $true
    

    O ID da conta de armazenamento é o ID do recurso da conta de armazenamento para a qual você deseja enviar os logs.

  • Para habilitar o streaming de logs de recursos para um hub de eventos, use este comando:

    Set-AzDiagnosticSetting -ResourceId [your resource id] -ServiceBusRuleId [your service bus rule id] -Enabled $true
    

    A ID da regra do Barramento de Serviço do Azure é uma cadeia de caracteres com este formato:

    {service bus resource ID}/authorizationrules/{key name}
    
  • Para habilitar o envio de logs de recursos para um espaço de trabalho do Log Analytics, use este comando:

    Set-AzDiagnosticSetting -ResourceId [your resource id] -WorkspaceId [resource id of the log analytics workspace] -Enabled $true
    
  • Você pode obter a ID do recurso do seu espaço de trabalho do Log Analytics usando o seguinte comando:

    (Get-AzOperationalInsightsWorkspace).ResourceId
    

Você pode combinar esses parâmetros para habilitar várias opções de saída.

API REST

Saiba como alterar as configurações de diagnóstico usando a API REST do Azure Monitor.

Modelo do Resource Manager

Saiba como habilitar as configurações de diagnóstico na criação de recursos usando um modelo do Gerenciador de Recursos.

Gerencie seus logs

Os logs geralmente estão disponíveis dentro de algumas horas após a configuração do registro. Cabe-lhe gerir os seus registos na sua conta de armazenamento:

  • Utilize métodos padrão de controlo de acesso do Azure para proteger os seus registos, restringindo o seu acesso.
  • Elimine os registos que já não pretende manter na sua conta de armazenamento.
  • Certifique-se de definir um período de retenção para que os logs antigos sejam excluídos da sua conta de armazenamento.

Exibir logs no espaço de trabalho do Log Analytics

Para exibir seus dados de diagnóstico, no espaço de trabalho do Log Analytics, abra Logs no menu à esquerda.

Screenshot showing log Search options in the Azure portal.

No construtor de consultas, expanda LogManagement>AzureDiagnostics. AzureDiagnostics inclui eventos de mecanismo e serviço. Observe que uma consulta é criada imediatamente. O campo EventClass_s contém nomes xEvent, que podem parecer familiares se você tiver usado xEvents para registro em log local. Clique em EventClass_s ou em um dos nomes de evento e o espaço de trabalho do Log Analytics continua construindo uma consulta. Certifique-se de salvar suas consultas para reutilizá-las mais tarde.

Para obter mais consultas que você pode usar com o Analysis Services, consulte Consultas Kusto de exemplo.

Ativar o registro em log usando o PowerShell

Neste tutorial rápido, você cria uma conta de armazenamento no mesmo grupo de assinaturas e recursos que o servidor do Analysis Service. Em seguida, use Set-AzDiagnosticSetting para ativar o log de diagnóstico, enviando a saída para a nova conta de armazenamento.

Pré-requisitos

Para concluir este tutorial, você deve ter os seguintes recursos:

Ligar às suas subscrições

Abra uma sessão no Azure PowerShell e inicie sessão na sua conta do Azure com o seguinte comando:

Connect-AzAccount

Na janela pop-up do browser, introduza o seu nome de utilizador da conta do Azure e a palavra-passe. O Azure PowerShell obtém todas as subscrições associadas a esta conta e, por defeito, utiliza a primeira.

Se tiver várias subscrições, poderá ter de especificar uma subscrição utilizada para criar o seu Cofre de Chaves do Azure. Escreva o seguinte para ver as subscrições da sua conta:

Get-AzSubscription

Em seguida, para especificar a assinatura associada à conta do Azure Analysis Services que você está registrando, digite:

Set-AzContext -SubscriptionId <subscription ID>

Nota

Se tiver várias subscrições associadas à sua conta, é importante especificar a subscrição.

Criar uma nova conta de armazenamento para os seus registos

Pode utilizar uma conta de armazenamento existente para os seus registos, desde que esteja na mesma subscrição que o servidor. Para este tutorial, você cria uma nova conta de armazenamento dedicada aos logs do Analysis Services. Para facilitar, você está armazenando os detalhes da conta de armazenamento em uma variável chamada sa.

Você também usa o mesmo grupo de recursos que contém o servidor do Analysis Services. Substitua valores por awsales_resgroup, awsaleslogse West Central US com os seus próprios valores:

$sa = New-AzStorageAccount -ResourceGroupName awsales_resgroup `
-Name awsaleslogs -Type Standard_LRS -Location 'West Central US'

Identificar a conta do servidor para seus logs

Defina o nome da conta como uma variável chamada account, onde ResourceName é o nome da conta.

$account = Get-AzResource -ResourceGroupName awsales_resgroup `
-ResourceName awsales -ResourceType "Microsoft.AnalysisServices/servers"

Ativar registo

Para habilitar o registro em log, use o cmdlet Set-AzDiagnosticSetting juntamente com as variáveis da nova conta de armazenamento, da conta do servidor e da categoria. Execute o seguinte comando, definindo o sinalizador -Enabled como $true:

Set-AzDiagnosticSetting  -ResourceId $account.ResourceId -StorageAccountId $sa.Id -Enabled $true -Categories Engine

A saída deverá ter um aspeto semelhante a este exemplo:

StorageAccountId            : 
/subscriptions/a23279b5-xxxx-xxxx-xxxx-47b7c6d423ea/resourceGroups/awsales_resgroup/providers/Microsoft.Storage/storageAccounts/awsaleslogs
ServiceBusRuleId            :
EventHubAuthorizationRuleId :
Metrics                    
    TimeGrain       : PT1M
    Enabled         : False
    RetentionPolicy
    Enabled : False
    Days    : 0


Logs                       
    Category        : Engine
    Enabled         : True
    RetentionPolicy
    Enabled : False
    Days    : 0


    Category        : Service
    Enabled         : False
    RetentionPolicy
    Enabled : False
    Days    : 0


WorkspaceId                 :
Id                          : /subscriptions/a23279b5-xxxx-xxxx-xxxx-47b7c6d423ea/resourcegroups/awsales_resgroup/providers/microsoft.analysisservic
es/servers/awsales/providers/microsoft.insights/diagnosticSettings/service
Name                        : service
Type                        :
Location                    :
Tags                        :

Essa saída confirma que o registro em log agora está habilitado para o servidor, salvando informações na conta de armazenamento.

Você também pode definir uma política de retenção para seus logs para que os logs mais antigos sejam excluídos automaticamente. Por exemplo, defina a política de retenção usando o sinalizador -RetentionEnabled como $true e defina o parâmetro -RetentionInDays como 90. Os registos com mais de 90 dias são automaticamente eliminados.

Set-AzDiagnosticSetting -ResourceId $account.ResourceId`
 -StorageAccountId $sa.Id -Enabled $true -Categories Engine`
  -RetentionEnabled $true -RetentionInDays 90

Próximos passos