Compartilhar via


Definir as configurações de diagnóstico do Agente MQTT

Importante

Essa configuração exige a modificação do recurso do Agente e só pode ser definida no momento da implantação inicial com a CLI do Azure ou o portal do Azure. Uma nova implantação será necessária se forem necessárias alterações na configuração do Agente. Para saber mais, confira Personalizar o Agente padrão.

As configurações de diagnóstico permitem que você defina as métricas, os logs e a autoverificação do Agente MQTT.

Métricas

As métricas fornecem informações sobre a integridade e o status atual e passado do Agente MQTT. Essas métricas são emitidas no formato OTLP (OpenTelemetry). Elas podem ser convertidas no formato do Prometheus por meio de um coletor do OpenTelemetry e roteadas para painéis do Espaço Gerenciado do Azure para Grafana por meio do serviço gerenciado para Prometheus do Azure Monitor. Para saber mais, confira Configurar a observabilidade e o monitoramento.

Para ver a lista completa de métricas disponíveis, confira Métricas do Agente MQTT.

Logs

Os logs apresentam informações sobre as operações executadas pelo Agente MQTT. Esses logs estão disponíveis no cluster do Kubernetes como logs de contêiner. Eles podem ser configurados para serem enviados aos logs do Azure Monitor com os Insights de Contêiner.

Para saber mais, confira Configurar a observabilidade e o monitoramento.

Autoverificação

O mecanismo de autoverificação do Agente MQTT está habilitado por padrão. Ele usa uma investigação de diagnóstico e rastreamentos do OTel (OpenTelemetry) para monitorar o agente. A investigação envia mensagens de teste para verificar o comportamento e o tempo do sistema.

O processo de validação verifica se o sistema funciona corretamente comparando os resultados do teste com os resultados esperados. Esses resultados incluem:

  1. Os caminhos que as mensagens percorrem pelo sistema.
  2. O comportamento de tempo do sistema.

A investigação de diagnóstico executa periodicamente operações do MQTT (PING, CONNECT, PUBLISH, SUBSCRIBE, UNSUBSCRIBE) no Agente MQTT e monitora as confirmações e os rastreamentos correspondentes para verificar a latência, a perda de mensagens e a correção do protocolo de replicação.

Importante

A investigação de diagnóstico de autoverificação publica as mensagens no tópico azedge/dmqtt/selftest. Não publique nem assine os tópicos de investigação de diagnóstico que começam com azedge/dmqtt/selftest. A publicação ou a assinatura desses tópicos pode afetar as verificações de investigação ou autoteste, gerando resultados inválidos. Os resultados inválidos podem ser listados nos logs de investigação de diagnóstico, métricas ou painéis. Por exemplo, talvez você veja o problema Falha na verificação de caminho para o evento de investigação com o tipo de operação ‘Publicar’ nos logs de investigação de diagnóstico. Para saber mais, confira Problemas conhecidos.

Alterar as configurações de diagnóstico

Na maioria dos cenários, as configurações de diagnóstico padrão são suficientes. Para substituir as configurações de diagnóstico padrão do Agente MQTT, edite a seção diagnostics no recurso Agente. Atualmente, só há suporte para a alteração das configurações com o sinalizador --broker-config-file quando você implanta as Operações do Azure IoT usando o comando az iot ops create.

Para fazer a substituição, primeiro prepare um arquivo de configuração do Agente seguindo a referência de API BrokerDiagnostics. Por exemplo:

{
  "diagnostics": {
    "metrics": {
      "prometheusPort": 9600
    },
      "logs": {
        "level": "debug"
      },
    "traces": {
      "mode": "Enabled",
      "cacheSizeMegabytes": 16,
      "selfTracing": {
        "mode": "Enabled",
        "intervalSeconds": 30
      },
      "spanChannelCapacity": 1000
    },
    "selfCheck": {
      "mode": "Enabled",
      "intervalSeconds": 30,
      "timeoutSeconds": 15
    }
  }
}

Em seguida, implante as Operações do Azure IoT usando o comando az iot ops create com o sinalizador --broker-config-file, como o seguinte comando (os outros parâmetros foram omitidos por questões de brevidade):

az iot ops create ... --broker-config-file <FILE>.json

Para saber mais, confira Suporte da CLI do Azure para configuração avançada do Agente MQTT e Exemplos do Agente.

Próximas etapas