Wie konfiguriere ich die Standardprotokollierungseinstellungen für AWS IoT Core?
Ich möchte die Standardprotokollierungseinstellungen für AWS IoT-Protokolle in AWS IoT Core konfigurieren, um sowohl die Kosten als auch den Datenverkehr zu reduzieren.
Kurze Beschreibung
**Hinweis:**Dieser Artikel bezieht sich nur auf Version 2 der AWS IoT Core-Protokolle.
Es hat sich bewährt, die Standardprotokollierung für Ihren AWS IoT Core auf eine niedrige Ausführlichkeitsstufe festzulegen und die ressourcenspezifische Protokollierung auf eine höhere Ausführlichkeitsstufe zu konfigurieren. Zu den Ausführlichkeitsstufen der Protokolle gehören DISABLED (niedrigste), ERROR, WARN, INFO und DEBUG (höchste).
**Wichtig:**Abhängig von der Größe Ihrer AWS IoT Core-Flotte kann die Aktivierung ausführlicherer Protokoll-Levels hohe Kosten verursachen und die Fehlerbehebung erschweren. Die Aktivierung ausführlicherer Protokollebenen führt auch zu einem höheren Datenverkehr. Es hat sich bewährt, INFO oder DEBUG bei der Fehlerbehebung nur als vorübergehende Maßnahme zu verwenden. Wenn die Fehlerbehebung abgeschlossen ist, setzen Sie die Protokollierungsstufen wieder auf eine weniger ausführliche Einstellung zurück.
Auflösung
Voraussetzung
Stellen Sie sicher, dass Sie das AWS Command Line Interface (AWS CLI) lokal mit den Anmeldeinformationen für IoT-Administratorrechte installiert haben. Die standardmäßige AWS-Region für AWS CLI muss auf die AWS-Zielregion verweisen. Sie müssen Clients haben, die mit Ihren AWS IoT Core-Endpunkten verbunden sind und mit diesen interagieren, entweder als registrierte oder nicht registrierte IoT-Dinge.
**Hinweis:**Wenn Sie beim Ausführen von AWS-CLI-Befehlen Fehler erhalten, stellen Sie sicher, dass Sie die neueste Version der AWS-CLI verwenden.
Legen Sie die standardmäßigen Protokollierungsstufen fest
Indem Sie die Standardprotokollierungsstufe für Ihre AWS IoT-Protokolle auf ERROR oder WARN festlegen, können Sie Protokollfehler oder Warnungen überprüfen, sobald sie auftreten.
**Hinweis:**Wenn Sie sich an den AWS-Support wenden, um Unterstützung zu erhalten, müssen Sie die AWS IoT Core-Protokolle zur Fehlerbehebung bereitstellen. Diese Informationen gelten als Kundendaten und können vom AWS-Support nicht abgerufen werden.
1.Führen Sie denAWS-CLI-Befehl list-v2-logging-levels aus, um Ihre aktuell angewandten Protokollierungs-Level-Konfigurationen zu finden:
aws iot list-v2-logging-levels
Sie erhalten einen NotConfiguredException-Fehler, wenn AWS IoT-Protokolle nicht konfiguriert sind, weil keine Protokollierungsebenen festgelegt wurden.
Wenn AWS IoT Core-Protokolle konfiguriert, aber deaktiviert sind, erhalten Sie eine Ausgabe ähnlich der folgenden:
{ "logTargetConfigurations": [ { "logTarget": { "targetType": "DEFAULT" }, "logLevel": "DISABLED" } ] }
2.Führen Sie den folgenden Befehl aus, um die aktuell für AWS IoT Core-Protokolle konfigurierte AWS Identity and Access Management (IAM)-Rolle zu bestätigen:
aws iot get-v2-logging-options
Sie erhalten eine Ausgabe ähnlich der folgenden, wenn eine IAM-Rolle konfiguriert ist:
{ "roleArn": "arn:aws:iam::123456789012:role/service-role/iot-log-role", "defaultLogLevel": "DISABLED", "disableAllLogs": false }
**Hinweis:**Wenn keine IAM-Rolle konfiguriert ist, kann AWS IoT Core keine Protokolle an Amazon CloudWatch senden und diese Funktion steht Ihnen nicht zur Verfügung.
3.Stellen Sie die Standardprotokollierung von AWS IoT Core auf eine der weniger ausführlichen Protokollierungsstufen wie ERROR oder WARN ein. Dies kann mit der AWS IoT-Konsole oder der AWS-CLI erfolgen:
**Hinweis:**Wenn Sie ein Problem beheben und nicht über bestimmte Client-Attribute verfügen, können Sie die Standardprotokollierungsebene vorübergehend auf DEBUG festlegen. Die Einstellung der Stufe auf DEBUG verursacht erhebliche Kosten und Datenverkehr, abhängig von der Flottengröße und der Dauer, die sie auf dieser Ebene verbracht hat.
AWS-IoT-Konsole
1.Melden Sie sich bei der AWS IoT-Konsole an. **Hinweis:**Stellen Sie sicher, dass Sie die AWS-Region auswählen, die Sie konfigurieren möchten.
2.Wählen Sie im Navigationsbereich Einstellungen aus.
3.Wählen Sie unter** Protokolle** die Option Protokolle verwalten aus.
4. Wählen Sie unter Protokoll-Rolle die Option Rolle erstellen aus. Geben Sie einen Namen für die Rolle ein und wählen Sie dann Erstellen.
5. Wählen Sie unter Protokollebene eine der weniger ausführlichen Protokollierungsstufen (ERROR oder WARN) aus.
6. Wählen Sie Aktualisieren.
7. Öffnen Sie die IAM-Konsole.
8. Wählen Sie im Navigationsbereich Rollen aus.
9. Geben Sie den Namen der Protokollrolle, die Sie erstellt haben, in das Suchfeld ein, und wählen Sie dann die Rolle aus.
10. Notieren Sie sich unter Zusammenfassung den ARN der Protokollrolle. Es wird ähnlich wie arn:aws:iam::123456789012:role/service-role/iot-log-role aussehen.
AWS-CLI
1. Erstellen Sie eine IAM-Rolle mit einer bestimmten IAM-Richtlinie, die für Ihren AWS IoT Core-Protokoll-Service verwendet werden soll.
2. Führen Sie den folgenden Befehl aus, um die Standardprotokollierungsebene auf WARN festzulegen:
aws iot set-v2-logging-options \ --role-arn arn:aws:iam::123456789012:role/service-role/iot-log-role \ --default-log-level WARN
Hinweis:In diesem Beispiel ersetzen Sie--role-arn durch den ARN der IAM-Rolle, den Sie erstellt haben. Ersetzen Sie WARN durch die Protokollierungsebene, die Sie als Standardebene festlegen möchten.
3. Führen Sie den folgenden Befehl aus, um zu überprüfen, ob sich die Änderungen in Ihren Protokollierungsebenen widerspiegeln:
aws iot list-v2-logging levels
Die Ausgabe sieht ähnlich wie die folgende Meldung aus:
{ "logTargetConfigurations": [ { "logTarget": { "targetType": "DEFAULT" }, "logLevel": "WARN" } ] }
4. Führen Sie den folgenden Befehl aus, um zu überprüfen, ob sich die Änderungen in Ihren Protokollierungsoptionen widerspiegeln:
aws iot list-v2-logging-options
Die Ausgabe sieht ähnlich wie die folgende Meldung aus:
{ "roleArn": "arn:aws:iam::123456789012:role/service-role/iot-log-role", "defaultLogLevel": "WARN", "disableAllLogs": false }
Überwachen Sie generierte Protokolle
Es ist eine bewährte Methode, Ihre IoT-Protokolle auf Probleme oder Probleme zu überwachen. Sie können entweder die Amazon CloudWatch LogsKonsole, oder die AWS CLI verwenden, um Ihre AWS IoT Core-Protokolle zu überwachen. Weitere Informationen finden Sie im Abschnitt „Überwachung von Protokolleinträgen“ unter Wie verwalte ich die Protokollierungsebenen meiner AWS IoT-Protokolle in AWS IoT Core am besten?
Verwandte Informationen
Wie konfiguriere ich die Protokollierungsebenen dynamisch für bestimmte Ressourcen in AWS IoT Core?
Wie konfiguriere ich die Protokollierungsebenen manuell für bestimmte Ressourcen in AWS IoT Core?
Relevanter Inhalt
- AWS OFFICIALAktualisiert vor 2 Jahren
- Wie veröffentliche ich MQTT-Nachrichten von meinem Gerät auf AWS IoT Core, wenn ich Python verwende?AWS OFFICIALAktualisiert vor 3 Jahren
- AWS OFFICIALAktualisiert vor einem Jahr
- AWS OFFICIALAktualisiert vor 2 Jahren