Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O sistema de diagnóstico do broker MQTT é um conjunto de ferramentas integradas que monitoram a saúde do broker por meio de métricas, logs e sondas de autoverificação. Decida antes da implantação qual configuração de diagnóstico você precisa para o agente MQTT.
Importante
O diagnóstico é definido no recurso Agente. Configure o diagnóstico durante a implantação inicial usando a CLI do Azure ou o portal do Azure. Se você quiser alterar as configurações do agente, implante um novo recurso de agente. Para saber mais, confira Personalizar o Agente padrão.
Autoverificação
O mecanismo de autoverificação do broker MQTT está ativado por padrão. Ele usa uma investigação de diagnóstico e rastreamentos do OTel (OpenTelemetry) para monitorar o agente. A sonda 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 de teste com os resultados esperados. Esses resultados incluem:
- Os caminhos que as mensagens percorrem pelo sistema.
- Comportamento de temporização do sistema.
A sonda de diagnóstico executa regularmente operações MQTT (PING, CONNECT, PUBLISH, SUBSCRIBE, UNSUBSCRIBE) no corretor MQTT e monitora os ACKs e 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 ou 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 sondas de diagnóstico, métricas ou painéis de controle. 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.
Mesmo que o diagnóstico do agente MQTT produza mensagens de diagnóstico em seu próprio tópico, ainda é possível obter mensagens do autoteste ao assinar o tópico #. Essa é uma limitação e um comportamento esperado.
Configurar definiçõ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 broker MQTT, edite a seção diagnostics no recurso Broker. Atualmente, você só pode alterar as configurações usando o --broker-config-file sinalizador ao implantar operações de IoT do Azure com o az iot ops create comando. Para obter mais informações, consulte o suporte da CLI do Azure para a configuração avançada do agente MQTT.
Para substituir, prepare um arquivo de configuração do agente seguindo a referência da API BrokerDiagnostics. Por exemplo:
{
"diagnostics": {
"metrics": {
"prometheusPort": 9600
},
"logs": {
"level": "info"
},
"traces": {
"mode": "Enabled",
"cacheSizeMegabytes": 16,
"selfTracing": {
"mode": "Enabled",
"intervalSeconds": 30
},
"spanChannelCapacity": 1000
},
"selfCheck": {
"mode": "Enabled",
"intervalSeconds": 30,
"timeoutSeconds": 60
}
}
}
Em seguida, implante as Operações de IoT com o comando az iot ops create e a flag --broker-config-file, conforme mostrado no exemplo a seguir. (Outros parâmetros são omitidos para fins de brevidade.)
az iot ops create ... --broker-config-file <FILE>.json