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 den API Betrieb der Steuerungsebene mithilfe des HTTPS Protokolls. Stellen Sie sicher, dass Sie mithilfe des HTTPS Protokolls eine Verbindung zum richtigen Endpunkt der Steuerungsebene hergestellt haben.
Eine Liste der AWS regionsspezifischen Endpunkte finden Sie unter AWS IoT Core — Endpunkte der Steuerungsebene.
Anmerkung
AWS IoT Jobs und AWS IoT Core teilen sich dieselben AWS regionsspezifischen Endpunkte.
- Wie finde ich den Endpunkt der AWS IoT Jobs-Datenebene?
-
AWS IoT Jobs unterstützt API Datenebenenoperationen mithilfe der MQTT Protokolle HTTPS und. Stellen Sie sicher, dass Sie mithilfe des HTTPS MQTT OR-Protokolls eine Verbindung zum richtigen Endpunkt der Datenebene hergestellt haben.
-
HTTPSProtokoll
-
Verwenden Sie den folgenden unten abgebildeten describe-endpoint
CLIBefehl oder den DescribeEndpoint
RESTAPI. Verwenden Sieiot:Jobs
für den Endpunkttyp.aws iot describe-endpoint --endpoint-type
iot:Jobs
-
-
MQTTProtokoll
-
Verwenden Sie den folgenden unten abgebildeten describe-endpoint
CLIBefehl oder den DescribeEndpoint
RESTAPI. Verwenden Sieiot:Data-ATS
für den Endpunkttyp.aws iot describe-endpoint --endpoint-type
iot:Data-ATS
-
Eine Liste der FIPS kompatiblen Endpunkte auf der Datenebene von AWS IoT Jobs finden Sie unter FIPSEndpoints by Service
-
Wie überwache ich die AWS IoT Jobaktivitä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 im AWS Management Console AWS CLI, oder erfolgenAPI. AWS IoT Die Protokollierung, die für bestimmte Dinggruppen eingerichtet wurde, muss API nur mit 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 in den Feldern 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 Auftrag 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 Job und der nachfolgenden Jobausfü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
APIBefehl 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
APIBefehl. -
Verwenden Sie den
describe-job
APIBefehl, um zu überprüfen, ob dieIsConcurrent
Eigenschaft für den Job auf „Wahr“ oder „Falsch“ gesetzt 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. -
Wenn es sich bei dem Job um einen Snapshot-Job mit dem Status „Nicht gleichzeitig“ handelt, ist es wahrscheinlich, dass die Beziehung
Thing
oder dieThingGroup
Mitgliedschaft von AWS IoT Jobs nicht bestätigt wurde.IN_PROGRESS
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 Fehlermeldung von fehlschlägt
LimitedExceededException
, rufen Sie den auflist-jobs
API und überprüfen Sie alle Jobs mit,isConcurrent=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 Nutzlast begrenzt. Wenn Sie ein Auftragsdokument benötigen, das größer als 32 kB (Kilobyte), 32.000 B (Byte) ist, erstellen und speichern Sie das Jobdokument in Amazon S3 und fügen Sie ein Amazon S3 S3-Objekt URL in das
documentSource
Feld fürCreateJob
API oder mit dem ein. AWS CLI Fügen Sie für die AWS Management Console ein Amazon S3 S3-Objekt URL in das Amazon S3 URL S3-Textfeld ein, wenn Sie einen Job erstellen.-
AWS Management Console Job-Dokumentation 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
APIDokumentation: CreateJob
-
- Geräteseitige MQTT Nachrichtenanfragen drosseln Grenzwerte
-
Wenn Sie den Fehlercode 400 erhalten
ThrottlingException
, ist die geräteseitige MQTT Meldung fehlgeschlagen, da das Limit gleichzeitiger geräteseitiger 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 eine Fehlermeldung angezeigt wird, dass der API Befehl ungültig ist. Eine umfassende Liste aller AWS IoT API Befehle finden Sie in der AWS IoT APIReferenz.
- 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.
-