Tutorial: Adicionar uma transformação em uma regra de coleta de dados do espaço de trabalho usando o portal do Azure
Este tutorial orienta você pela configuração de uma transformação de exemplo em uma regra de coleta de dados (DCR) do espaço de trabalho usando o portal do Azure. As transformações no Azure Monitor permitem filtrar ou modificar dados de entrada antes que eles sejam enviados para seu destino. As transformações do espaço de trabalho fornecem suporte para transformações de 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 espaço de trabalho são armazenadas juntas em um único DCR para o espaço de trabalho, que é chamado de DCR do espaço de trabalho. Cada transformação está associada a uma tabela específica. A transformação será aplicada a todos os dados enviados para esta tabela a partir de qualquer fluxo de trabalho que não use um DCR.
Nota
Este tutorial usa o portal do Azure para configurar uma transformação de espaço de trabalho. Para obter o mesmo tutorial usando modelos do Azure Resource Manager e API REST, consulte Tutorial: Adicionar transformação na regra de coleta de dados do espaço de trabalho ao Azure Monitor usando modelos do gerenciador de recursos.
Neste tutorial, irá aprender a:
- Configure uma transformação de espaço de trabalho para uma tabela em um espaço de trabalho do Log Analytics.
- Escreva uma consulta de log para uma transformação de espaço de trabalho.
Pré-requisitos
Para concluir este tutorial, precisa de:
- Um espaço de trabalho do Log Analytics onde você tem pelo menos direitos de colaborador.
- Permissões para criar objetos DCR no espaço de trabalho.
- Uma tabela que já tem alguns dados.
- A tabela não pode estar associada à DCR da transformação da área de trabalho.
Visão geral do tutorial
Neste tutorial, você reduzirá o requisito de armazenamento para a LAQueryLogs
tabela filtrando determinados registros. Você também removerá o conteúdo de uma coluna enquanto analisa 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 espaço de trabalho. Você pode usar esse mesmo processo básico para criar uma transformação para qualquer tabela suportada em um espaço de trabalho do Log Analytics.
Este tutorial usa o portal do Azure, que fornece um assistente para orientá-lo pelo processo de criação de uma transformação de tempo de ingestão. Depois de concluir as etapas, você verá que o assistente:
- Atualiza o esquema da tabela com quaisquer outras colunas da consulta.
- Cria um
WorkspaceTransforms
DCR e o vincula ao espaço de trabalho se um DCR padrão ainda não estiver vinculado ao espaço de trabalho. - Cria uma transformação de tempo de ingestão e a adiciona ao DCR.
Habilitar logs de auditoria de consulta
Você precisa habilitar a auditoria de consulta para seu espaço de trabalho para criar a tabela com a LAQueryLogs
qual você trabalhará. Esta etapa não é necessária para todas as transformações de tempo de ingestão. É apenas para gerar os dados de exemplo com os quais trabalharemos.
No menu Espaços de trabalho do Log Analytics no portal do Azure, selecione Configurações de diagnóstico>Adicionar configuração de diagnóstico.
Introduza um nome para a definição de diagnóstico. Selecione o espaço de trabalho para que os dados de auditoria sejam armazenados no mesmo espaço de trabalho. Selecione a categoria Auditoria e, em seguida, selecione Salvar para salvar a configuração de diagnóstico e fechar a página Configuração de diagnóstico.
Selecione Logs e execute algumas consultas para preencher
LAQueryLogs
com alguns dados. Essas consultas não precisam retornar dados para serem adicionados ao log de auditoria.
Adicionar uma transformação à tabela
Agora que a tabela foi criada, você pode criar a transformação para ela.
No menu Espaços de trabalho do Log Analytics no portal do Azure, selecione Tabelas. Localize a
LAQueryLogs
tabela e selecione Criar transformação.Como essa transformação é a primeira no espaço de trabalho, você deve criar uma DCR de transformação de espaço de trabalho. Se você criar transformações para outras tabelas no mesmo espaço de trabalho, elas serão armazenadas nesse mesmo DCR. Selecione Criar uma nova regra de coleta de dados. O grupo Assinatura e Recursos já estará preenchido para o espaço de trabalho. Insira um nome para o DCR e selecione Concluído.
Selecione Avançar para exibir dados de exemplo da tabela. Ao 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. Selecione Editor de transformação para definir a transformação.
No editor de transformação, você pode ver a transformação que será aplicada aos dados antes de sua ingestão na tabela. Os dados de entrada são representados por uma tabela virtual chamada
source
, que tem o mesmo conjunto de colunas que a própria tabela de destino. A transformação inicialmente contém uma consulta simples que retorna asource
tabela sem alterações.Modifique a consulta para 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
LAQueryLogs
própria tabela foram descartadas para economizar espaço porque essas entradas de log não são úteis. - Uma coluna para o nome do espaço de trabalho que foi consultado foi adicionada.
- Os dados da
RequestContext
coluna foram removidos para economizar espaço.
Nota
Usando o portal do Azure, a saída da transformação iniciará alterações no esquema de tabela, se necessário. As colunas serão adicionadas para corresponder à saída da transformação, caso ainda não existam. Certifique-se de que a saída não contém colunas que você não deseja adicionar à tabela. Se a saída não incluir colunas que já estão 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 ter esse sufixo. Uma tabela personalizada tem um nome que termina em_CL
.- As linhas relacionadas à consulta da
Copie a consulta para o editor de transformação e selecione Executar para exibir os resultados dos dados de exemplo. Você pode verificar se a nova
Workspace_CF
coluna está na consulta.Selecione Aplicar para salvar a transformação e, em seguida, selecione Avançar para revisar a configuração. Selecione Criar para atualizar o DCR com a nova 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 transformação ter sido aplicada serão afetados.
Para este tutorial, execute algumas consultas de exemplo para enviar dados para a LAQueryLogs
tabela. Inclua algumas consultas para LAQueryLogs
que você possa verificar se a transformação filtra esses registros. Agora a saída tem a nova Workspace_CF
coluna e não há registros para LAQueryLogs
.
Resolução de Problemas
Esta seção descreve as diferentes condições de erro que você pode receber e como corrigi-las.
IntelliSense no Log Analytics não reconhece novas colunas na tabela
O cache que conduz o IntelliSense pode levar até 24 horas para ser atualizado.
A transformação em uma coluna dinâmica não está funcionando
Atualmente, um problema conhecido afeta as colunas dinâmicas. Uma solução temporária é analisar explicitamente os dados dinâmicos da coluna usando parse_json()
antes de executar quaisquer operações contra eles.