Aws-iot-device-sdk-python-v2: message='Die Verbindung wurde unerwartet geschlossen.', Code=5134 Region us-west-1

Erstellt am 1. Feb. 2021  ·  7Kommentare  ·  Quelle: aws/aws-iot-device-sdk-python-v2

Bestätigen Sie, indem Sie unten [ ] zu [x] ändern, um sicherzustellen, dass es sich um einen Fehler handelt:

Bekanntes Problem

  • [X] Ich verwende den ATS-Datentyp-Endpunkt: Der Endpunkt sollte wie folgt aussehen: <prefix>-ats.iot.<region>.amazonaws.com
    xxxxxxxxx-ats.iot.us-west-1.amazonaws.com

Beschreiben Sie den Fehler
„Erste Schritte – und Gerät registrieren“ durchlaufen
Erhaltenes Zertifikat, privater Schlüssel, öffentlicher Schlüssel und CA

SDK-Versionsnummer
2 (python3)

Plattform/Betriebssystem/Gerät
Auf was lässt du das SDK laufen?
Ubuntu

Reproduzieren (beobachtetes Verhalten)
Schritte zum Reproduzieren des Verhaltens (bitte Code teilen)
Einfaches Pub/Sub-Beispiel
python3 pubsub.py --endpoint xxxxxxxxxx-ats.iot.us-west-1.amazonaws.com --root-ca root-CA.crt --cert zztest.cert.pem --key zztest.private.key -- Ausführlichkeit Debuggen

 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75343a700] [task-scheduler] – id=0x7fc744013750: Aufgabe socket_handler_close zur sofortigen Ausführung planen
 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75343a700] [task-scheduler] – id=0x7fc7440021b0: Ausführen der Aufgabe epoll_event_loop_unsubscribe_cleanup mitStatus
 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75343a700] [task-scheduler] – id=0x7fc744013750: Task socket_handler_close wird ausgeführt mitStatus
 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75343a700] [channel] – id=0x7fc744002770: Handler 0x7fc7440136b0 Herunterfahren im Schreibverzeichnis abgeschlossen.
 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75343a700] [task-scheduler] – id=0x7fc744002798: Scheduling (null) Task zur sofortigen Ausführung
 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75343a700] [task-scheduler] – id=0x7fc744002798: Laufende (null) Aufgabe mitStatus
 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75343a700] [channel] – id=0x7fc744002770: während des Herunterfahrens Aufgabe 0x7fc744013920 abbrechen
 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75343a700] [task-scheduler] – id=0x7fc744013920: Ausführen der tls_timeout-Aufgabe mitStatus
 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75343a700] [channel] – id=0x7fc744002770: während des Herunterfahrens Aufgabe 0x7fc74402de40 abbrechen
 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75343a700] [task-scheduler] – id=0x7fc74402de40: Ausführen der Aufgabe mqtt_connack_timeout mitStatus
 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75343a700] [channel-bootstrap] – id=0x10f7550: Kanal 0x7fc744002770 heruntergefahren mit Fehler 0.
 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75343a700] [Kanal] – id=0x7fc744002770: Kanal wird zerstört.
 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75343a700] [channel-bootstrap] – id=0x10f7550: Freigabe der Bootstrap-Referenz
 Traceback (letzter Aufruf zuletzt):
 Datei "pubsub.py", Zeile 130, in
 connect_future.result()
 Datei "/usr/lib/python3.6/concurrent/futures/_base.py", Zeile 432, im Ergebnis
 gib self.__get_result() zurück
 Datei „/usr/lib/python3.6/concurrent/futures/_base.py“, Zeile 384, in __get_result
 Erhöhen Sie self._exception
 awscrt.exceptions.AwsCrtError: AwsCrtError(name='AWS_ERROR_MQTT_UNEXPECTED_HANGUP', message='Die Verbindung wurde unerwartet geschlossen.', Code=5134)
 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75814b740] [mqtt-client] – id=0x12fbb80: Benutzer hat Trennen aufgerufen.
 [ERROR] [2021-02-01T06:03:41Z] [00007fc75814b740] [mqtt-client] – id=0x12fbb80: Die Verbindung ist nicht geöffnet und darf nicht geschlossen werden
 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75814b740] [mqtt-client] - id=0x12fbb80: Der letzte Refcount für die Verbindung wurde freigegeben, beginnen Sie mit der Zerstörung der Verbindung.
 [DEBUG] [2021-02-01T06:03:41Z] [00007fc75814b740] [mqtt-client] - id=0x12fbb80: Verbindung wird zerstört

Erwartetes Verhalten
Eine klare und prägnante Beschreibung dessen, was Sie erwartet haben.
Nachrichten werden laufend veröffentlicht

Protokolle/Ausgabe
Fügen Sie gegebenenfalls Protokolle oder Fehlerausgaben hinzu.

DENKEN SIE DARAN, IHRE PERSÖNLICHEN DATEN ZU BESEINIGEN

awscrt.io.init_logging(awscrt.io.LogLevel.Warn, 'stderr')

Zusätzlicher Kontext
Fügen Sie hier einen beliebigen anderen Kontext zum Problem hinzu.

Das scheint ein wenig albern und verwirrend zu sein ...
image
Warum gibt es in der Verwaltungskonsole zwei verschiedene Dinge namens IoT Core?
Ich arbeite derzeit in der Region us-west-1 (Nordkalifornien) ...
Bei einem von ihnen steht, dass IoT Core nicht unterstützt wird. Wenn ich dann auf das andere Symbol klicke, heißt es, dass dies der Fall ist. Können Sie das erklären?
image

und hier ist der, der in us-west-1 funktioniert
image
Oder funktioniert es nicht? ist das das Wurzelproblem ... es funktioniert, aber es funktioniert nicht ... :P

closed-for-staleness guidance

Hilfreichster Kommentar

Ich komme mir gerade so blöd vor, der Fehler war bei mir, dass ich das Zertifikat in der IoT-Konsole nicht aktiviert hatte. Das ist etwas Dummes, könnte aber anderen helfen

Alle 7 Kommentare

Welche Version von Python3 und Ubuntu verwenden Sie? Welche Berechtigungen verwenden Sie auch für die IAM-Richtlinie? Es sieht so aus, als hätten Sie ein Problem mit der Verbindung. Ich empfehle daher, mit AWSIoTFullAccess zu beginnen, um auszuschließen, dass Ihre Richtlinie das Problem ist. Stellen Sie einfach sicher, dass Sie es nur auf die Aktionen und Ressourcen beschränken, die Sie später tatsächlich benötigen.

AWSIoTFullAccess:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iot:*"
            ],
            "Resource": "*"
        }
    ]
}

Was die zusätzlichen Inhalte betrifft, die Sie erwähnt haben, hat einer von ihnen iot in der URL, während der andere iotv2 hat. Welches ist dasjenige, das für Sie arbeitet?

Danke für die Antwort jmklix.
Was Sie vorgeschlagen haben, ist speziell für MQTT?
Ich habe Websockets zum Laufen gebracht, aber nur mit .aws-Anmeldeinformationen, was für unseren Anwendungsfall meiner Meinung nach nicht erwünscht ist.
Können sich Websockets mithilfe der Zertifikatsdateien (xxxx.pem xxx.private.key xxx.public.key) authentifizieren und autorisieren, die mqtt verwendet?

Ja, ich habe die URL iot/iot2 gefunden ... gibt es eine Dokumentation, die den Unterschied zwischen den beiden iot-Core-Versionen erklärt?
Es gibt auch 2 Client-Python-SDKS afaik - eines ist für Python 2.7 das andere für Python 3, gibt es weitere Unterschiede? Sind sie eng mit den iot- und iot2-Core-Versionen gekoppelt? Sind sie kreuz- oder rückenkompatibel? Gibt es dazu Unterlagen?

Ja, es ist für MQTT. Nein, Sie können keine Zertifikatsdateien mit Web-Sockets verwenden

Sie können die Richtlinie für IoT things bearbeiten, die bereits auf der AWS-Konsole erstellt wurden. Wählen Sie thing und wählen Sie Sicherheit in der unteren Seitenleiste. Dort sollten Sie Zertifikate sehen und Sie möchten dieses Zertifikat auswählen. Sobald dies geöffnet ist, wählen Sie Richtlinie in der unteren Seitenleiste aus. Wählen Sie dann diese Richtlinie aus und klicken Sie schließlich auf Edit policy document und fügen Sie den zuvor aufgelisteten AWSIoTFullAccess ein. Die Standardrichtlinie funktioniert nicht mit den v2-SDKs. Bitte lassen Sie es mich wissen, wenn Sie weitere Erklärungen benötigen.

Die URL iot ist diejenige, die Sie verwenden möchten, da iotv2 nicht mehr sichtbar sein sollte und in Kürze entfernt wird. Die Python- und IOT-SDKs sind unabhängig voneinander und haben keine Beziehung. Das iot v1 unterstützt Python 2 und 3, während das iot v2 nur Python 3 unterstützt. Die iot-SDKs sind nicht kreuz- oder rückwärtskompatibel und die Dokumentation für das v2-API finden Sie hier .

Ich habe das gleiche Problem, ich habe die oben enthaltene Richtlinie @jmklix verwendet, ein neues Zertifikat manuell erstellt, es mit dem IoT-Ding und der Richtlinie verknüpft und die .pem-Datei, den privaten Schlüssel und die Root-CA wie folgt heruntergeladen:

python3 shadow.py --endpoint xxxxxxxxxx-ats.iot.us-east-2.amazonaws.com --root-ca root-CA.crt --cert 726290b105-certificate.pem.crt --key 726290b105-private.pem.key --thing-name MyThingName

Das Beispiel shadow.py besagt, dass --cert im .pem-Format vorliegen sollte, also habe ich es auch mit 726290b105-certificate.pem versucht

Derselbe Fehler tritt beim pubsub.py-Beispiel auf.

Ich verwende einen Raspberry Pi mit Python 3.

Versucht, mit PyPI zu installieren und mit Quelle zu installieren.

Der Fehler tritt in connected_future.result() im Beispiel shadow.py auf.

Ich habe eine Komponente, die mithilfe von MQTT ähnlich dem Beispiel ipc_greengrass.py veröffentlicht und gut funktioniert.

Mein Verdacht ist, dass ich etwas falsch mache, wenn ich den Schlüssel, das Zertifikat und --rood-ca einschließe. Obwohl ich die Formate der Dateien doppelt überprüft habe. Ich bekomme diesen Fehler:

Traceback (most recent call last):
  File "shadow.py", line 275, in <module>
    connected_future.result()
  File "/usr/lib/python3.7/concurrent/futures/_base.py", line 432, in result
    return self.__get_result()
  File "/usr/lib/python3.7/concurrent/futures/_base.py", line 384, in __get_result
    raise self._exception
awscrt.exceptions.AwsCrtError: AwsCrtError(name='AWS_ERROR_MQTT_UNEXPECTED_HANGUP', 
message='The connection was closed unexpectedly.',
code=5134)

Läuft mit --verbosity --debug

[INFO] [2021-02-18T19:57:17Z] [b7b6bec0] [event-loop] - id=0xa4371f0: Initializing edge-triggered epoll
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [event-loop] - id=0xa4371f0: Eventfd not available, falling back to pipe for cross-thread notification.
[INFO] [2021-02-18T19:57:17Z] [b7b6bec0] [event-loop] - id=0xa4371f0: Starting event-loop thread.
[INFO] [2021-02-18T19:57:17Z] [b7b6bec0] [dns] - id=0xa42b310: Initializing default host resolver with 16 max host entries.
[INFO] [2021-02-18T19:57:17Z] [b7050b40] [thread] - id=0xa3eeb8c: a cpu affinity was specified when launching this thread and set_mempolicy() is available on this system. Setting the memory policy to MPOL_PREFERRED
[WARN] [2021-02-18T19:57:17Z] [b7050b40] [thread] - id=0xa3eeb8c: call to set_mempolicy() failed with errno 38
[INFO] [2021-02-18T19:57:17Z] [b7b6bec0] [channel-bootstrap] - id=0xa44d200: Initializing client bootstrap with event-loop group 0xa43ea60
[INFO] [2021-02-18T19:57:17Z] [b684fb40] [event-loop] - id=0xa4371f0: main loop started
[INFO] [2021-02-18T19:57:17Z] [b684fb40] [event-loop] - id=0xa4371f0: default timeout 100000, and max events to process per tick 100
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [tls-handler] - ctx: Certificate and key have been set, setting them up now.
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [tls-handler] - ctx: Setting ALPN list x-amzn-mqtt-ca
Connecting to <endpoint> with client ID 'test-1e0e6e8b-ee1f-441d-8956-69aaedcb937d'...
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - client=0xa4ee030: Initalizing MQTT client
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - id=0xa450e40: Creating new connection
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-topic-tree] - tree=0xa450f94: Creating new topic tree
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - id=0xa450e40: Begin connecting process, switch state to CONNECTING.
[INFO] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - id=0xa450e40: using ping timeout of 3000000000 ns
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [dns] - id=0xa42b310: Host resolution requested for a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [dns] - id=0xa42b310: No cached entries found for a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com starting new resolver thread.
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: resolving host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: resolved record: 3.131.31.52
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: resolved record: 52.15.119.124
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: resolved record: 13.59.30.89
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: resolved record: 2600:1f00:6000::383:1f34
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: resolved record: 2600:1f00:6000::340f:777c
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: resolved record: 2600:1f00:6000::d3b:1e59
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: new address resolved 3.131.31.52 for host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com caching
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: new address resolved 52.15.119.124 for host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com caching
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: new address resolved 13.59.30.89 for host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com caching
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: new address resolved 2600:1f00:6000::383:1f34 for host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com caching
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: new address resolved 2600:1f00:6000::340f:777c for host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com caching
[DEBUG] [2021-02-18T19:57:17Z] [b5754b40] [dns] - static: new address resolved 2600:1f00:6000::d3b:1e59 for host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com caching
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb4e03050: Scheduling attempt_connection task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb4e03b50: Scheduling attempt_connection task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb4e03050: Running attempt_connection task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: initializing with domain 1 and type 0
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: setting socket options to: keep-alive 0, keep idle 0, keep-alive interval 0, keep-alive probe count 0.
[WARN] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: setsockopt() for NO_SIGNAL failed with errno 92. If you are having SIGPIPE signals thrown, you may want to install a signal trap in your application layer.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: beginning connect.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: connecting to endpoint 2600:1f00:6000::383:1f34:443.
[ERROR] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: connect failed with error code 101.
[INFO] [2021-02-18T19:57:17Z] [b684fb40] [dns] - id=0xa42b310: recording failure for record 2600:1f00:6000::383:1f34 for a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com, moving to bad list
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [dns] - static: purging address 2600:1f00:6000::383:1f34 for host a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com from the cache due to cache eviction or shutdown
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: is still open, closing...
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: closing
[ERROR] [2021-02-18T19:57:17Z] [b684fb40] [channel-bootstrap] - id=0xa44d200: failed to create socket with error 1049
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb4e03b50: Running attempt_connection task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: initializing with domain 0 and type 0
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: setting socket options to: keep-alive 0, keep idle 0, keep-alive interval 0, keep-alive probe count 0.
[WARN] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: setsockopt() for NO_SIGNAL failed with errno 92. If you are having SIGPIPE signals thrown, you may want to install a signal trap in your application layer.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: beginning connect.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: connecting to endpoint 3.131.31.52:443.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01aa0: Scheduling (null) task for future execution at time 8129633861413
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01ae0: Scheduling epoll_event_loop_unsubscribe_cleanup task for immediate execution
[INFO] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: connection success
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: local endpoint 10.0.2.15:39292
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: assigning to event loop 0xa4371f0
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel-bootstrap] - id=0xa44d200: client connection on socket 0xb5d00b70 completed with error 0.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: Beginning creation and setup of new channel.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01e30: Scheduling on_channel_setup_complete task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01ae0: Running epoll_event_loop_unsubscribe_cleanup task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01e30: Running on_channel_setup_complete task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: setup complete, notifying caller.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: no message pool is currently stored in the event-loop local storage, adding 0xb5d01f80 with max message size 16384, message count 4, with 4 small blocks of 128 bytes.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel-bootstrap] - id=0xa44d200: channel 0xb5d01c70 setup succeeded: bootstrapping.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket-handler] - id=0xb5d12620: Socket handler created with max_read_size of 16384
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d12718: Scheduling tls_timeout task for future execution at time 8134691976802
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [tls-handler] - id=0xb5d12700: Alpn protocol negotiated as x-amzn-mqtt-ca
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [tls-handler] - id=0xb5d12700: Remote server name is a1ypu7uyt3br9h-ats.iot.us-east-2.amazonaws.com
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel-bootstrap] - id=0xa44d200: tls negotiation result 0 on channel 0xb5d01c70
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [mqtt-client] - id=0xa450e40: Connection successfully opened, sending CONNECT packet
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d2c800: Scheduling mqtt_connack_timeout task for future execution at time 8127847022119
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [mqtt-client] - id=0xa450e40: Adding username ?SDK=PythonV2&Version=0.9.15 to connection
Traceback (most recent call last):
  File "shadow.py", line 275, in <module>
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [tls-handler] - id=0xb5d12700: Alert code 0
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01d88: Scheduling channel_shutdown task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01d88: Running channel_shutdown task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: beginning shutdown process
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: handler 0xb5d12620 shutdown in read dir completed.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [tls-handler] - id=0xb5d12700: Shutting down read direction with error code 0
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: handler 0xb5d12700 shutdown in read dir completed.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: handler 0xa450e54 shutdown in read dir completed.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01c84: Scheduling (null) task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01c84: Running (null) task with <Running> status
[INFO] [2021-02-18T19:57:17Z] [b684fb40] [mqtt-client] - id=0xa450e40: sending disconnect message as part of graceful shutdown.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [mqtt-client] - id=0xa450e40: failed to send courteous disconnect io message
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: handler 0xa450e54 shutdown in write dir completed.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [tls-handler] - id=0xb5d12700: Shutting down write direction
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: handler 0xb5d12700 shutdown in write dir completed.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [socket] - id=0xb5d00b70 fd=7: closing
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01c40: Scheduling epoll_event_loop_unsubscribe_cleanup task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d12674: Scheduling socket_handler_close task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01c40: Running epoll_event_loop_unsubscribe_cleanup task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d12674: Running socket_handler_close task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: handler 0xb5d12620 shutdown in write dir completed.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01c84: Scheduling (null) task for immediate execution
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d01c84: Running (null) task with <Running> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: during shutdown, canceling task 0xb5d12718
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d12718: Running tls_timeout task with <Canceled> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: during shutdown, canceling task 0xb5d2c800
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [task-scheduler] - id=0xb5d2c800: Running mqtt_connack_timeout task with <Canceled> status
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel-bootstrap] - id=0xa44d200: channel 0xb5d01c70 shutdown with error 0.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel] - id=0xb5d01c70: destroying channel.
[DEBUG] [2021-02-18T19:57:17Z] [b684fb40] [channel-bootstrap] - id=0xa44d200: releasing bootstrap reference
    connected_future.result()
  File "/usr/lib/python3.7/concurrent/futures/_base.py", line 432, in result
    return self.__get_result()
  File "/usr/lib/python3.7/concurrent/futures/_base.py", line 384, in __get_result
    raise self._exception
awscrt.exceptions.AwsCrtError: AwsCrtError(name='AWS_ERROR_MQTT_UNEXPECTED_HANGUP', message='The connection was closed unexpectedly.', code=5134)
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - id=0xa450e40: user called disconnect.
[ERROR] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - id=0xa450e40: Connection is not open, and may not be closed
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - id=0xa450e40: Last refcount on connection has been released, start destroying the connection.
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - id=0xa450e40: Destroying connection
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-topic-tree] - tree=0xa450f94: Cleaning up topic tree
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [mqtt-client] - client=0xa4ee030: Cleaning up MQTT client
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [channel-bootstrap] - id=0xa44d200: releasing bootstrap reference
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [channel-bootstrap] - id=0xa44d200: releasing bootstrap reference
[DEBUG] [2021-02-18T19:57:17Z] [b7b6bec0] [channel-bootstrap] - id=0xa44d200: destroying




Ich komme mir gerade so blöd vor, der Fehler war bei mir, dass ich das Zertifikat in der IoT-Konsole nicht aktiviert hatte. Das ist etwas Dummes, könnte aber anderen helfen

@hackaprende Danke für das Teilen der Lösung, wo Sie stecken geblieben sind.

Wenn ich hier poste, falls dies zukünftigen Suchenden hilft, erhielt ich auch den Fehler awscrt.exceptions.AwsCrtError: AWS_ERROR_MQTT_UNEXPECTED_HANGUP: The connection was closed unexpectedly. und für mich stellte sich heraus, dass ich das AWS IoT-Ding-Zertifikat nicht _aktiviert_ hatte. Nachdem Sie es erstellt haben, gibt es einen weiteren Schritt, um es zu aktivieren.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

victorct-pronto picture victorct-pronto  ·  3Kommentare

satay99 picture satay99  ·  6Kommentare

shravan097 picture shravan097  ·  6Kommentare

qcabrol picture qcabrol  ·  8Kommentare

Sanrro10 picture Sanrro10  ·  16Kommentare