Konfigurera diagnostikinställningar för MQTT-koordinator
Viktigt!
Den här inställningen kräver att du ändrar Broker-resursen och kan endast konfigureras vid den första distributionen med hjälp av Azure CLI eller Azure-portalen. En ny distribution krävs om konfigurationsändringar i Broker behövs. Mer information finns i Anpassa standard broker.
Med diagnostikinställningar kan du konfigurera mått, loggar och självkontroll för MQTT-koordinatorn.
Mått
Mått ger information om aktuell och tidigare hälsa och status för MQTT-koordinatorn. Dessa mått genereras i OpenTelemetry-format (OTLP). De kan konverteras till Prometheus-format med hjälp av en OpenTelemetry Collector och dirigeras till Azure Managed Grafana-instrumentpaneler med Azure Monitor Managed Service för Prometheus. Mer information finns i Konfigurera observerbarhet och övervakning.
En fullständig lista över tillgängliga mått finns i MQTT-koordinatormått.
Loggar
Loggarna innehåller information om de åtgärder som utförs av MQTT-asynkron meddelandekö. Dessa loggar är tillgängliga i Kubernetes-klustret som containerloggar. De kan konfigureras för att skickas till Azure Monitor-loggar med Container Insights.
Mer information finns i Konfigurera observerbarhet och övervakning.
Självkontroll
MQTT-mäklarens självkontrollmekanism är aktiverad som standard. Den använder en diagnostikavsökning och OpenTelemetry-spårningar (OTel) för att övervaka koordinatorn. Avsökningen skickar testmeddelanden för att kontrollera systemets beteende och tidsinställning.
Valideringsprocessen kontrollerar om systemet fungerar korrekt genom att jämföra testresultaten med förväntade resultat. Dessa resultat omfattar:
- Sökvägarna som meddelandena tar genom systemet.
- Systemets tidsinställning.
Diagnostikavsökningen kör regelbundet MQTT-åtgärder (PING, CONNECT, PUBLISH, SUBSCRIBE, UNSUBSCRIBE) på MQTT-koordinatorn och övervakar motsvarande ACL:er och spårningar för att söka efter svarstid, meddelandeförlust och korrekthet i replikeringsprotokollet.
Viktigt!
Diagnostikavsökningen med självkontroll publicerar meddelanden till ämnet azedge/dmqtt/selftest
. Publicera eller prenumerera inte på diagnostikavsökningsämnen som börjar med azedge/dmqtt/selftest
. Publicering eller prenumeration på dessa ämnen kan påverka avsöknings- eller självtestkontrollerna, vilket resulterar i ogiltiga resultat. Ogiltiga resultat kan visas i diagnostikavsökningsloggar, mått eller instrumentpaneler. Du kan till exempel se problemet Sökvägsverifieringen misslyckades för avsökningshändelsen med åtgärdstypen "Publicera" i loggarna för diagnostikavsökning. Mer information finns i Kända problem.
Ändra diagnostikinställningar
I de flesta scenarier räcker standarddiagnostikinställningarna. Om du vill åsidosätta standarddiagnostikinställningarna för MQTT-asynkronisering diagnostics
redigerar du avsnittet i Broker-resursen. För närvarande stöds ändringsinställningar endast med hjälp av --broker-config-file
flaggan när du distribuerar Azure IoT Operations med kommandot az iot ops create
.
Du åsidosätter genom att först förbereda en Broker-konfigurationsfil efter API-referensen BrokerDiagnostics . Till exempel:
{
"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
}
}
}
Distribuera sedan Azure IoT Operations med kommandot az iot ops create
med --broker-config-file
flaggan, till exempel följande kommando (andra parametrar utelämnas för korthet):
az iot ops create ... --broker-config-file <FILE>.json
Mer information finns i Azure CLI-stöd för avancerad MQTT-koordinatorkonfiguration och Broker-exempel.