Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
AWS IoT Problembehebung bei Jobs
Dies ist der Abschnitt zur Fehlerbehebung für AWS IoT Jobs.
Wie finde ich einen AWS IoT Jobs-Endpunkt?
- Wie finde ich den Endpunkt der AWS IoT Jobs-Kontrollebene?
-
AWS IoT Jobs unterstützt API-Operationen auf Kontrollebene mithilfe des HTTPS-Protokolls. Stellen Sie sicher, dass Sie über das HTTPS-Protokoll eine Verbindung zum richtigen Endpunkt der Steuerebene hergestellt haben.
Eine Liste der AWS regionsspezifischen Endpunkte finden Sie unter AWS IoT Core — Endpoints der Steuerungsebene.
Eine Liste der FIPS-kompatiblen Endpunkte der AWS IoT -Auftragssteuerebene finden Sie unter FIPS-Endpunkte nach Dienst
Anmerkung
AWS IoT Jobs und AWS IoT Core teilen sich dieselben regionsspezifischen Endpunkte. AWS
- Wie finde ich den Endpunkt der AWS IoT Jobs-Datenebene?
-
AWS IoT Jobs unterstützt API-Operationen auf Datenebene mithilfe der Protokolle HTTPS und MQTT. Stellen Sie sicher, dass Sie über das HTTPS- oder MQTT-Protokoll eine Verbindung zum richtigen Endpunkt der Datenebene hergestellt haben.
-
Protokoll: HTTPS
-
Verwenden Sie den folgenden describe-endpoint
-CLI-Befehl, der unten gezeigt wird, oder die DescribeEndpoint
-REST-API. Verwenden Sieiot:Jobs
für den Endpunkttyp.aws iot describe-endpoint --endpoint-type
iot:Jobs
-
-
MQTT-Protokoll
-
Verwenden Sie den folgenden describe-endpoint
-CLI-Befehl, der unten gezeigt wird, oder die DescribeEndpoint
-REST-API. Verwenden Sie für den Endpunkttypiot:Data-ATS
(empfohlen) oderiot:Data
.aws iot describe-endpoint --endpoint-type
iot:Data-ATS
(recommended)aws iot describe-endpoint --endpoint-type
iot:Data
-
Eine Liste der FIPS-kompatiblen AWS IoT Auftrags-Datenebenen-Endpunkte finden Sie unter FIPS-Endpunkte nach Dienst
-
Wie überwache ich die AWS IoT Jobs-Aktivitäten und stelle Messwerte bereit?
Die Überwachung AWS IoT der Auftragsaktivitäten mithilfe von Amazon CloudWatch bietet Echtzeiteinblicke in den laufenden AWS IoT Auftragsbetrieb und hilft, die Kosten mithilfe von CloudWatch Alarmen mithilfe von AWS IoT Regeln zu kontrollieren. Sie müssen die Protokollierung konfigurieren, bevor Sie die AWS IoT Job-Aktivitäten überwachen und CloudWatch Alarme einrichten können. Weitere Informationen zum Einrichten der Protokollierung finden Sie unter Konfigurieren Sie die AWS IoT Protokollierung.
Weitere Informationen zu Amazon CloudWatch und zur Einrichtung von Berechtigungen über eine IAM-Benutzerrolle zur Nutzung von CloudWatch Ressourcen finden Sie unter Identitäts- und Zugriffsmanagement für Amazon CloudWatch.
- Wie richte ich AWS IoT Job-Metriken und Monitoring mit Amazon ein CloudWatch?
-
Um die AWS IoT Protokollierung einzurichten, folgen Sie den unter AWS IoT Protokollierung konfigurieren beschriebenen Schritten. AWS IoT Die Einrichtung der Protokollierung kann in der AWS Management Console AWS CLI, oder API erfolgen. AWS IoT Die Protokollierung, die für bestimmte Dinggruppen eingerichtet wurde, darf nur in der API AWS CLI oder erfolgen.
Der Abschnitt AWS IoT Job-Metriken enthält die AWS IoT Job-Metriken, die zur Überwachung der AWS IoT Jobs-Aktivität verwendet werden. Darin wird erklärt, wie die Metriken im AWS Management Console und angezeigt AWS CLI werden.
Darüber hinaus können Sie CloudWatch Alarme einrichten, um Sie auf bestimmte Kennzahlen aufmerksam zu machen, die Sie genau überwachen möchten. Anleitungen zur Alarmeinrichtung finden Sie unter CloudWatch Amazon-Alarme verwenden.
Problembehebung bei Geräteflotten und einzelnen Geräten
- Bei der Ausführung eines Auftrags wird der Status von
QUEUED
auf unbestimmte Zeit beibehalten -
Wenn eine Auftragsausführung mit einem Status von
QUEUED
nicht zum nächsten logischen Status übergeht, z. B.IN_PROGRESS
,FAILED
oderTIMED_OUT
, kann eines der folgenden Szenarien die Ursache sein:-
Überprüfen Sie Ihre Geräteaktivitäten in den CloudWatch Protokollen in der CloudWatch Konsole. Weitere Informationen finden Sie unter Überwachung AWS IoT mithilfe von CloudWatch Protokollen.
-
Die IAM-Rolle, die dem Job und der nachfolgenden Auftragsausführung zugeordnet ist, verfügt möglicherweise nicht über die richtigen Berechtigungen, die in einer der Richtlinienerklärungen der IAM-Richtlinie aufgeführt sind, die dieser IAM-Rolle zugeordnet ist. Verwenden Sie die
describe-job
-API, um die IAM-Rolle zu identifizieren, die mit diesem Auftrag und der nachfolgenden Auftragsausführung verknüpft ist, und überprüfen Sie die IAM-Richtlinie auf die richtigen Berechtigungen. Sobald die Richtlinienberechtigungserklärungen aktualisiert wurden, sollten Sie in der Lage sein, denAssumeRole
-API-Befehl für die Ressource auszuführen.
-
- Für mein Objekt oder meine Objektgruppe wurde keine Auftragsausführung erstellt
-
Wenn der Status eines Auftrags auf
IN_PROGRESS
aktualisiert wird, beginnt der Rollout des Auftragsdokuments auf allen Geräten in Ihrer Zielgruppe. Durch diese Statusaktualisierung wird für jedes Zielgerät eine Auftragsausführung erstellt. Wenn für eines der Zielgeräte keine Auftragsausführung erstellt wurde, lesen Sie die folgenden Anleitungen:-
Wirkt sich der Auftrag direkt auf
thing
aus, hat der Auftrag den StatusIN_PROGRESS
, und läuft der Auftrag gleichzeitig? Wenn alle drei Bedingungen erfüllt sind, sendet der Auftrag immer noch Auftragsausführungen an alle Geräte in Ihrer Zielgruppe, und für dieses spezielle Gerätthing
wurde der Auftrag noch nicht ausgeführt.-
Überprüfen Sie die Geräte in Ihrer Zielgruppe für den Job und den Status des Jobs in der AWS Management Console oder verwenden Sie den
describe-job
API-Befehl. -
Verwenden Sie den
describe-job
-API-Befehl, um zu überprüfen, ob dieIsConcurrent
-Eigenschaft für den Auftrag auf „Wahr“ oder „Falsch“ festgelegt ist. Weitere Informationen finden Sie unter Auftragslimits.
-
-
Der Auftrag zielt nicht direkt auf
thing
ab.-
Wenn
Thing
zu einemThingGroup
hinzugefügt wurde und der Auftrag aufThingGroup
abzielte, überprüfen Sie, obThing
Teil vonThingGroup
ist. -
Handelt es sich bei dem Auftrag um einen Snapshot-Auftrag mit dem Status
IN_PROGRESS
der gleichzeitig läuft, sendet der Auftrag weiterhin Auftragsausführungen an alle Geräte in Ihrer Zielgruppe, und dieser spezifischeThing
hat seine Auftragsausführung noch nicht erhalten. -
Wenn es sich bei dem Auftrag um einen kontinuierlichen gleichzeitigen Auftrag mit dem Status
IN_PROGRESS
handelt, sendet der Auftrag immer noch Auftragsausführungen an alle Geräte in Ihrer Zielgruppe, und dieser spezifischeThing
hat seine Auftragsausführung noch nicht erhalten. Nur für fortlaufende Aufträge können Sie denThing
aus demThingGroup
entfernen und dann denThing
wieder demThingGroup
hinzufügen. -
Handelt es sich bei dem Job um einen Snapshot-Job mit dem Statusstatus
IN_PROGRESS
und ist er nicht gleichzeitig, dann ist es wahrscheinlich, dass dieThing
oder dieThingGroup
Mitgliedschaftsbeziehung von AWS IoT Jobs nicht bestätigt wurde. Es wird empfohlen, nach IhremAddThingToThingGroup
Anruf mehrere Sekunden Wartezeit einzuplanen, bevor Sie Ihren Anruf erstellen.Job
Alternativ können Sie die Zielauswahl auf ändernContinuous
, sodass der Dienst das verzögerte EreignisThing
und dieThingGroup
Mitgliedschaft automatisch auffüllt.
-
-
- Ein neuer Auftrag schlägt aufgrund eines
LimitedExceededException
-Fehlers fehl -
Wenn Ihre Auftragserstellung mit der Fehlerantwort von
LimitedExceededException
fehlschlägt, rufen Sie dielist-jobs
-API auf und überprüfen Sie alle Aufträge mitisConcurrent=true
, um festzustellen, ob Sie das Limit für die gleichzeitige Ausführung von Aufträgen erreicht haben. Weitere Informationen zu gleichzeitigen Aufträgen finden Sie unter Auftragslimits. Um Ihre Limits für die gleichzeitige Ausführung von Aufträgen zu sehen und eine Erhöhung des Limits zu beantragen, gehen Sie zu AWS IoT Device Management Auftragslimits und -kontingente.
- Begrenzung der Dokumentgröße
-
Die Größe des Auftragsdokuments ist durch die Größe der MQTT-Payload begrenzt. Wenn Sie ein Auftragsdokument benötigen, das größer als 32 kB (Kilobyte), 32.000 B (Byte) ist, erstellen und speichern Sie das Auftragsdokument in Amazon S3 und fügen Sie eine Amazon S3-Objekt-URL in das
documentSource
-Feld für dieCreateJob
-API ein oder verwenden Sie AWS CLI. Fügen Sie für die AWS Management Console eine Amazon S3 S3-Objekt-URL in das Textfeld Amazon S3 S3-URL ein, wenn Sie einen Job erstellen.-
AWS Management Console Auftragsdokumentation erstellen: Erstellen und verwalten Sie Jobs mithilfe der AWS Management Console
-
AWS CLI Jobdokumentation erstellen: Erstellen und verwalten Sie Jobs mit dem AWS CLI
-
CreateJob
API-Dokumentation: CreateJob
-
- Geräteseitige MQTT-Nachrichtenanfragen - Drosselungsgrenzwerte
-
Wenn Sie den Fehlercode 400
ThrottlingException
erhalten, ist die geräteseitige MQTT-Nachricht fehlgeschlagen, da das Limit für gleichzeitige geräteseitige Anfragen erreicht wurde. Unter AWS IoT Device Management -Limits und Kontingente für Aufträge finden Sie weitere Informationen zu den Limits für Aufträge und darüber, ob diese einstellbar sind.
- Verbindungstimeoutfehler
-
Ein Fehlercode 400
RequestExpired
weist auf einen Verbindungsfehler hin, der auf eine hohe Latenz oder niedrige clientseitige Timeout-Werte zurückzuführen ist.-
Informationen zum Testen der Verbindung zwischen der Client- und der Serverseite finden Sie unter Testen der Konnektivität mit Ihrem Gerätedatenendpunkt.
-
- Ungültiger API-Befehl
-
Vergewissern Sie sich, dass der richtige API-Befehl eingegeben wurde, um zu vermeiden, dass die Fehlermeldung angezeigt wird, dass der API-Befehl ungültig ist. In der AWS IoT API-Referenz finden Sie eine umfassende Liste aller AWS IoT -API-Befehle.
- Verbindungsfehler auf der Serviceseite
-
Ein Fehlercode 503
ServiceUnavailable
gibt an, dass der Fehler auf der Serverseite auftrat.-
Den aktuellen Status aller AWS Dienste finden Sie unter AWS Health Dashboard (alle AWS Dienste)
. -
Unter AWS Health Dashboard (persönlich AWS-Konto)
finden Sie den aktuellen Status Ihrer persönlichen Daten AWS-Konto.
-