Compartilhar via


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

Importante

Essa configuração requer que você modifique o recurso do Agente. Ele é configurado somente na implantação inicial usando 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.

Ao usar as configurações de diagnóstico, você pode configurar métricas, logs e 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 Protocol). Você pode convertê-las para o formato Prometheus usando um Coletor do OpenTelemetry e encaminhá-las para os 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. Você pode configurá-los para serem enviados aos Logs do Azure Monitor com os Insights de Contêineres.

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:

  • Os caminhos que as mensagens percorrem pelo sistema.
  • 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. Publicar ou assinar esses tópicos pode afetar a investigação ou os autotestes, gerando resultados inválidos. Os resultados inválidos podem ser listados em 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 obter mais informações, consulte 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, a alteração das configurações só tem suporte usando 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 operações de IoT usando o comando az iot ops create com o sinalizador --broker-config-file, como o comando a seguir. (Outros parâmetros são omitidos para fins 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.