Cenário: Alarmando Dados de Log

Configure alarmes para dados de log usando os serviços Connector Hub, Logging e Monitoring.

Esse cenário envolve a criação de um conector e um alarme. O conector (Connector Hub) processa e move os dados de log de Registro em Log para Monitoramento, enquanto o alarme é acionado quando acionado por dados de log recebidos.

Política Obrigatória do Serviço IAM

Se você for membro do grupo Administradores, já terá o acesso necessário para executar esse cenário. Caso contrário, você precisará de acesso a Monitoramento e Notificações .

O workflow para criar o conector inclui uma política padrão quando necessário para fornecer permissão para gravar no serviço de destino. Se você não estiver familiarizado com políticas, consulte Visão Geral de Políticas do Serviço IAM.

Configurando este Cenário

A configuração é fácil na Console. Como alternativa, você pode usar a CLI ou a API do Oracle Cloud Infrastructure, que permite que você mesmo execute as operações individuais.

Usando a Console

Esta seção explica a criação de um conector e de um alarme usando a Console e, em seguida, a atualização do tópico criado com o alarme.

Observação

Outro workflow para este cenário envolve a criação de seu tópico e suas inscrições primeiro, depois a seleção desse tópico ao criar seu alarme.

Para obter ajuda para solucionar problemas, consulte Diagnóstico e Solução de Problemas com Conectores e Diagnóstico e Solução de Problemas com Notificações.

Tarefa 1: Criar o conector

Este exemplo explica o uso da Console para criar um conector que filtra o log de fluxo daVCN do serviço Logging para tráfego rejeitado e, em seguida, move esse dado de log para uma nova métrica no serviço Monitoring.

  1. Abra o menu de navegação e selecione Análise e IA. Em Mensagens, selecione Connector Hub.
  2. Escolha o Compartimento no qual você deseja criar o conector de serviço.
  3. Selecione Criar conector.
  4. Na página Criar conector, filtre o log do fluxo da VCN para uma nova métrica:

    • Digite um Nome do conector como "Erros de Log de Fluxo da VCN". Evite digitar informações confidenciais.
    • Selecione o Compartimento de recursos no qual você deseja armazenar o novo conector.
    • Em Configurar conector, selecione seus serviços de origem e destino para mover dados de log para uma métrica:
      • Origem: Logging
      • Destino: Monitoring
    • Em Configurar conexão de origem, selecione seu log de fluxo da VCN:
      • Nome do compartimento: O compartimento que contém os dados de log de fluxo da VCN.
      • Grupo de logs: O grupo de logs que contém os dados de log do fluxo da VCN.
      • Logs: O nome do objeto de log dos logs de fluxo da sua VCN.
    • Em Tarefa de filtro de log, filtre os dados de log para o tráfego rejeitado:

      • Propriedade: data.action
      • Operador: =
      • Valor: RECUSAR

      Se tiver interesse em tráfego rejeitado para uma porta ou endereço específico, adicione outro filtro. Por exemplo, selecione a propriedade data.destinationPort ou data.destinationAddress.

    • Em Configurar conexão de destino, informe o namespace de métricas e o nome da métrica que você deseja usar para os dados de log filtrados:
      • Selecione o Compartimento no qual você deseja armazenar os pontos dos dados de métrica correspondentes aos dados de log do fluxo da VCN para tráfego rejeitado.
      • Informe um novo Namespace de Métricas : vcnlogs.
        Observação

        Ao digitar um novo namespace de métricas, pressione ENTER para enviá-lo.
      • Informe uma nova Métrica : rejeitadotráfego
  5. Se for solicitado a criar uma política (necessário para acesso para criar ou atualizar um conector de serviço), selecione Criar.
  6. Selecione Criar.
Tarefa 2: Criar o alarme

Este exemplo explica o uso da Console para criar um alarme que envia uma mensagem quando o serviço Monitoring recebe pontos de dados de métrica correspondentes aos dados de log de fluxo da VCN para tráfego rejeitado. Durante esse processo, você criará um tópico e uma assinatura de e-mail.

  1. Abra o menu de navegação e selecione Observabilidade e Gerenciamento. Em Monitoramento, selecione Definições de Alarme.
  2. Selecione Criar Alarme.

  3. Na página Criar Alarme, em Definir alarme, configure o seu limite:

    • Descrição da métricas
      • Compartimento: (selecione o compartimento especificado na tarefa anterior, no qual você estará armazenando os pontos dos dados da métrica correspondentes aos dados do log de fluxo da VCN)
      • Namespace de métricas: (digite o namespace de métricas especificado no conector)
      • Nome da métrica: (digite o nome da métrica especificado no conector)
      • Intervalo: 1 m
      • Estatística: Contagem
    • Regra do acionador:

      • Operador: maior que
      • Valor: 0
      • Minutos de atraso do acionador: 1
  4. Em Notifications, Destinos, configure uma notificação por e-mail:
    • Destination Service: Serviço de Notificações
    • Compartimento: (selecione o compartimento no qual você deseja criar o tópico e assinaturas associadas)
    • Tópico: Selecione Criar um tópico

      Observação

      Se você já criou seu tópico e assinatura de e-mail, poderá selecionar esse tópico aqui, em vez de criar um novo.
      • Nome do tópico: Tópico de Tráfego Rejeitado
      • Protocolo de assinatura: E-mail
      • E-mail de Assinatura: (digite seu endereço de e-mail aqui)
  5. Selecione Salvar alarme.

Usando a CLI

Esta seção explica a criação do conector, do tópico, das inscrições e do alarme usando a CLI.

Para obter informações sobre como usar a API e assinar solicitações, consulte a documentação da API REST e Credenciais de Segurança. Para obter informações sobre SDKs, consulte SDKs e a CLI.

  1. Crie um conector: Abra um prompt de comando e execute o comando oci sch service-connector create:

    oci sch service-connector create --display-name
    "<display_name>" --compartment-id <compartment_OCID> --source [<source_in_JSON>] --tasks [<tasks_in_JSON>] --target [<targets_in_JSON>]
  2. Crie um tópico: Abra um prompt de comando e execute o comando oci ons topic create:

    oci ons topic create --name "Alarm Topic" --compartment-id "<compartment-ocid>"
  3. Para este tópico, adicione uma assinatura que faça referência ao seu endereço de e-mail. Abra um prompt de comando e execute o comando oci ons subscription create:

    oci ons subscription create --compartment-id "<compartment-ocid>" --topic-id "<topic-ocid>" --protocol "EMAIL" --subscription-endpoint "john.smith@example.com"
  4. Crie um alarme que defina o limite de erro e faça referência a este tópico como destino: Abra um prompt de comando e execute o comando oci monitoring alarm create:

    oci monitoring alarm create --display-name "My Alarm" --compartment-id "<compartment-ocid>" --metric-compartment-id "<compartment-ocid>" --namespace "oci_computeagent" --query-text "<yourmetric>[1m].count() > 0" --severity "INFO" --destinations "<topic-ocid>" --is-enabled true

Para obter ajuda para diagnosticar e solucionar problemas, consulte Solucionando Problemas dos Conectores e Solucionando Problemas das Notificações.

Usando a API

Esta seção explica a criação do conector, do tópico, da inscrição e do alarme usando a API.

Para obter informações sobre como usar a API e assinar solicitações, consulte a documentação da API REST e Credenciais de Segurança. Para obter informações sobre SDKs, consulte SDKs e a CLI.

Use as seguintes operações:

  1. CreateServiceConnector: Cria um conector.

    Exemplo de solicitação CreateServiceConnector
    POST /20200909/serviceConnectors
    Host: service-connector-hub.us-phoenix-1.oraclecloud.com
    <authorization and other headers>
    {
      "compartmentId": "<compartment_OCID>",
      "description": "My connector description",
      "displayName": "My Connector",
      "source": {
        "kind": "logging",
        "logSources": [
          {
            "compartmentId": "<compartment_OCID>",
            "logGroupId": "<log_group_OCID>",
            "logId": "<log_OCID>"
          }
        ]
      },
      "target": {
        "compartmentId": "<compartment_OCID>",
        "kind": "metrics",
        "metric": "<yourmetric>",
        "metricNamespace": "<yournamespace>"
      },
      "tasks": [
        {
          "condition": "data.action='REJECT'",
          "kind": "logRule"
        }
      ]
      }
    }
  2. CreateTopic: Criar um tópico.

    Exemplo de solicitação CreateTopic
    POST /20181201/topics
    Host: notification.us-phoenix-1.oraclecloud.com
    <authorization and other headers>
    {
      "name": "Alarm Topic",
      "compartmentId": "<compartment_OCID>"
    }
  3. CreateSubscription: Para este tópico, adicione uma assinatura que referencie seu endereço de e-mail.

    Exemplo de solicitação CreateSubscription: E-mail
    POST /20181201/subscriptions
    Host: notification.us-phoenix-1.oraclecloud.com
    <authorization and other headers>
    {
      "topicId": "<topic_OCID>",
      "compartmentId": "<compartment_OCID>",
      "protocol": "EMAIL",
      "endpoint": "john.smith@example.com"
    }
  4. CreateAlarm: cria um alarme que define o limite de memória e faz referência a este tópico.

    Exemplo de solicitação CreateAlarm
    POST /20180401/alarms
    Host: telemetry.us-phoenix-1.oraclecloud.com
    <authorization and other headers>
    {
      "displayName": "My Alarm",
      "compartmentId": "<compartment_OCID>",
      "metricCompartmentId": "<compartment_OCID>",
      "namespace": "<yournamespace>",
      "query": "<yourmetric>[1m].count() > 0",
      "severity": "INFO",
      "destinations":
      [
        "<topic_OCID>"
      ],
      "isEnabled": true
    }

Para obter ajuda para solucionar problemas, consulte Diagnóstico e Solução de Problemas com Conectores e Diagnóstico e Solução de Problemas com Notificações.