Extraindo valores específicos como chaves JSON

No IBM® Cloud Logs, é possível usar a regra Extrair para extrair valores específicos necessários como chaves JSON sem precisar analisar o log inteiro.

Diferente de uma regra de análise, uma regra de extração deixa o log original intacto e inclui campos nela na raiz.

Antes de Iniciar

As regras de análise são organizadas dentro de Grupos de Regras Cada grupo tem um nome e um conjunto de regras com um relacionamento lógico entre eles.. Os logs são processados de acordo com a ordem do grupo de regras (do início ao fim) Eles são então processados pela ordem de regras dentro do grupo de regras e de acordo com os operadores lógicos entre eles (AND/OR). As regras ajudam a processar, analisar e reestruturar dados do log para preparar o monitoramento e a análise. Para obter mais informações, consulte Trabalhando com grupos da regra

Usando grupos capturados nomeados para definir novos campos

A regra de extração usa grupos de captura RegEx-named para definir novos campos.

  • Grupos capturados se tornam os campos de log analisados.
  • O valor que está associado a cada grupo se torna o valor do campo.
  • O RegEx não precisa corresponder ao log inteiro..
  • Apenas os grupos de captura nomeados RegEx (os valores dentro do < >) e o valor que eles capturam fazem parte do log reconstruído.

Configurando uma regra de Extração

Conclua as etapas a seguir:

  1. Clique no ícone Pipeline de dados ícone Pipeline de dados > Regras de análise e clique em Novo grupo de regras.

  2. Na seção Detalhes, insira Nome do Grupo de Regras e Descrição do Grupo de Regras.

  3. Na seção Correspondente de regra, configure os aplicativos, subsistemas e gravidades que definem os logs nos quais aplicar as regras que estão incluídas no grupo de regras

  4. Na seção Regras, selecione Extrair ícone Extrair regra de análise sintática.

    1. Insira um nome.

    2. Opcionalmente, insira uma descrição.

    3. Selecione um campo de origem. Este é o campo no qual o RegEx é aplicado

    4. Insira a Expressão regular (RegEx).

    5. Alterne o status para ACTIVE se desejar que a regra seja ativada..

  5. Inclua grupos de regras adicionais clicando em Incluir regra e selecionando o tipo de regra desejado.. Alterne AND/OR para selecionar como deseja que as regras adicionais sejam processadas.

  6. Clique em Criar grupo de regras.

Exemplo: Criando dois novos campos

O exemplo a seguir extrai informações da mensagem de campo e cria dois novos campos, 'bytes' e 'status ' que podem ser consultados e visualizados..

O log original é:.

{"level":"INFO", "message": "200 bytes sent status is OK"}

O RegEx é:.

message"\s*:\s*"(?P<bytes>\d+)\s*.*?status\sis\s(?P<status>[^"]+)

O log formatado é:

{
    "level": "INFO",
    "message": "200 bytes sent status is OK",
    "Bytes": "200",
    "status": "OK"
}

Se o log original for desestruturado, os campos serão adicionados com base nos grupos de capturas nomeados e o log original será armazenado dentro de um campo chamado text Usando o exemplo anterior, ele altera o log original para ser desestruturado

O log original:

"level":"INFO", "message": "200 bytes sent status is OK",

O log resultante:.

{
    "bytes": "200",
    "text": "\"level\":\"INFO\", \"message\": \"200 bytes sent status is OK\"",
    "status": "OK"
}