Tutorial: adicionar uma transformação em uma regra de coleta de dados do workspace usando o portal do Azure

Este tutorial demonstra a configuração de um exemplo de transformação em uma DCR (regra de coleta de dados) do workspace usando o portal do Azure. As transformações no Azure Monitor permitem que você filtre ou modifique os dados de entrada antes de serem enviados para seu destino. As transformações de workspace oferecem suporte para transformações em tempo de ingestão para fluxos de trabalho que ainda não usam o pipeline de ingestão de dados do Azure Monitor.

As transformações do workspace são armazenadas juntas em uma só DCR (regra de coleta de dados) do workspace, chamada de DCR do workspace. Cada transformação está associada a uma tabela específica. A transformação será aplicada a todos os dados enviados a essa tabela de qualquer fluxo de trabalho que não esteja usando um DCR.

Observação

Este tutorial usa o portal do Azure para configurar uma transformação de workspace. Para obter o mesmo tutorial, mas usando modelos do Azure Resource Manager e a API REST, confira Tutorial: adicionar transformação na regra de coleta de dados do workspace ao Azure Monitor usando modelos do Resource Manager.

Neste tutorial, você aprenderá como:

  • Configure a transformação do workspace de uma tabela em um workspace do Log Analytics.
  • Escreva uma consulta de log para uma transformação de workspace.

Pré-requisitos

Para concluir este tutorial, você precisará:

Visão geral do tutorial

Neste tutorial, você reduzirá o requisito de armazenamento para a tabela LAQueryLogs filtrando determinados registros. Você também removerá o conteúdo de uma coluna ao analisar os dados da coluna para armazenar uma parte dos dados em uma coluna personalizada. A tabela LAQueryLogs é criada quando você habilita a auditoria de consulta de log em um workspace. Você pode usar esse mesmo processo básico para criar uma transformação para qualquer tabela com suporte em um workspace do Log Analytics.

Este tutorial usará o portal do Azure, que fornece um assistente para explicar o processo de criação de uma transformação em tempo de ingestão. Depois de concluir as etapas, você verá que o assistente:

  • Atualiza o esquema de tabela com as outras colunas da consulta.
  • Cria uma DCR de WorkspaceTransforms e a vincula ao workspace, caso uma DCR padrão ainda não tenha sido vinculada ao workspace.
  • Cria uma transformação de tempo de ingestão e a adiciona à DCR.

Habilitar logs de auditoria de consulta

Você precisa habilitar a auditoria de consulta para o workspace para criar a tabela LAQueryLogs com a qual trabalhará. Esta etapa não é necessária para todas as transformações em tempo de ingestão. É apenas para gerar os dados de exemplo com os quais vamos trabalhar.

  1. No menu Workspaces do Log Analytics no portal do Azure, selecione Configurações de diagnóstico>Adicionar configuração de diagnóstico.

    Captura de tela que mostra as configurações de diagnóstico.

  2. Insira um nome para a configuração de diagnóstico. Selecione o workspace para que os dados de auditoria sejam armazenados no mesmo workspace. Selecione a categoria Auditoria e clique em Salvar para salvar a configuração de diagnóstico e fechar a página Configuração de diagnóstico.

    Captura de tela que mostra a nova configuração de diagnóstico.

  3. Selecione Logs e, em seguida, execute algumas consultas para preencher LAQueryLogs com alguns dados. Essas consultas não precisam retornar dados a serem adicionados ao log de auditoria.

    Captura de tela que mostra consultas de log de exemplo.

Adicionar uma transformação à tabela

Agora que a tabela foi criada, você pode criar a transformação a ela.

  1. No menu Workspaces do Log Analytics no portal do Azure, selecione Tabelas. Localize a tabela LAQueryLogs e selecione Criar transformação.

    Captura de tela que mostra a criação de uma transformação.

  2. Como essa é a primeira transformação no workspace, você precisa criar uma DCR de transformação do workspace. Se você criar transformações para outras tabelas no mesmo workspace, elas serão armazenadas nessa mesma DCR. Clique em Criar uma regra de coleta de dados. A Assinatura e o Grupo de recursos já estarão preenchidos para o workspace. Insira um nome para a DCR e selecione Concluído.

    Captura de tela que mostra a criação de uma regra de coleta de dados.

  3. Clique em Avançar para ver os dados de exemplo da tabela. Conforme você definir a transformação, o resultado será aplicado aos dados de exemplo. Por esse motivo, você pode avaliar os resultados antes de aplicá-los aos dados reais. Clique em Editor de transformação para definir a transformação.

    Captura de tela que mostra os dados de exemplo da tabela de logs.

  4. No editor de transformação, você pode ver a transformação que será aplicada aos dados, antes da ingestão na tabela. Os dados de entrada são representados por uma tabela virtual denominada source, que tem o mesmo conjunto de colunas que a própria tabela de destino. Inicialmente, a transformação contém uma consulta simples que retorna a tabela source sem alterações.

  5. Modifique a consulta de acordo com o seguinte exemplo:

    source
    | where QueryText !contains 'LAQueryLogs'
    | extend Context = parse_json(RequestContext)
    | extend Workspace_CF = tostring(Context['workspaces'][0])
    | project-away RequestContext, Context
    

    A modificação faz as seguintes alterações:

    • As linhas relacionadas à consulta da tabela LAQueryLogs foram removidas para poupar espaço, pois essas entradas de log não são úteis.
    • Foi adicionada uma coluna com o nome do workspace consultado.
    • Os dados da coluna RequestContext foram removidos para poupar espaço.

    Observação

    Usando o portal do Azure, a saída da transformação iniciará as alterações no esquema da tabela, se necessário. As colunas serão adicionadas para corresponder à saída da transformação, caso ainda não existam. Verifique se a saída não contém outras colunas que você não deseja adicionar à tabela. Se a saída não incluir colunas que já estejam na tabela, essas colunas não serão removidas, mas os dados não serão adicionados.

    Todas as colunas personalizadas adicionadas a uma tabela interna devem terminar em _CF. As colunas adicionadas a uma tabela personalizada não precisam desse sufixo. Uma tabela personalizada tem um nome que termina em _CL.

  6. Copie a consulta no editor de transformação e clique em Executar para ver os resultados dos dados de exemplo. Você pode verificar se a nova coluna Workspace_CF está na consulta.

    Captura de tela que mostra o editor de transformação.

  7. Clique em Aplicar para salvar a transformação e depois em Avançar para examinar a configuração. Selecione Criar para atualizar a DCR com a nova transformação.

    Captura de tela que mostra o salvamento da transformação.

Testar a transformação

Aguarde cerca de 30 minutos para que a transformação entre em vigor e, em seguida, teste-a executando uma consulta na tabela. Somente os dados enviados para a tabela após a aplicação da transformação serão afetados.

Para este tutorial, execute algumas consultas de exemplo para enviar dados para a tabela LAQueryLogs. Inclua algumas consultas em LAQueryLogs para que você possa verificar se a transformação filtra esses registros. Agora, a saída tem a nova coluna Workspace_CF e não há registros para LAQueryLogs.

Solução de problemas

Esta seção descreve as diferentes condições de erro que você poderá receber e como corrigi-las.

O IntelliSense no Log Analytics não reconhece novas colunas na tabela

O cache que direciona o IntelliSense pode levar até 24 horas para ser atualizado.

A transformação em uma coluna dinâmica não está funcionando

Um problema conhecido afeta as colunas dinâmicas no momento. Uma solução alternativa temporária é analisar explicitamente os dados de colunas dinâmicas usando parse_json(), antes de executar qualquer operação neles.

Próximas etapas