Translate

2019年11月28日木曜日

node環境でaws-iot-device-sdk-jsを使っていたら、Emitted 'error' event on DeviceClient instanceと出て落ちる件

node環境でaws-iot-device-sdk-jsをつかったexpressアプリを作って起動したら、

(env) foo@bar:~/tar $ node server.js
Node.js is listening to PORT:3000
connect
events.js:187
      throw er; // Unhandled 'error' event
      ^

Error: premature close
    at onclosenexttick (/home/pi/projects/donkey_agent_telemetry/node_modules/end-of-stream/index.js:54:86)
    at processTicksAndRejections (internal/process/task_queues.js:75:11)
Emitted 'error' event on DeviceClient instance at:
    at MqttClient. (/home/pi/projects/donkey_agent_telemetry/node_modules/aws-iot-device-sdk/device/index.js:772:15)
    at MqttClient.emit (events.js:215:7)
    at TLSSocket.f (/home/pi/projects/donkey_agent_telemetry/node_modules/once/once.js:25:25)
    at onclosenexttick (/home/pi/projects/donkey_agent_telemetry/node_modules/end-of-stream/index.js:54:73)
    at processTicksAndRejections (internal/process/task_queues.js:75:11)
(env) foo@bar:~/tar $


..というエラーがでた..

'error' イベントがemitされたらしいので

device.on('error', function() {
  console.log('error');
})

を使って例外を無視させようとしたけど、
同じエラーが発生..

どうもほかのイベントすべてを
うけとってやらないとエラーでnodeが落ちるらしい。

device.on('reconnect', function() {
  console.log('reconnect');
})

device.on('close', function() {
  console.log('close');
})

device.on('offline', function() {
  console.log('offline');
})

全部のイベントをうけとるようにしたら、
落ちなくなった...

それだけ。

0 件のコメント:

ClaudeをOpenAI O1のように思考させるDifyサンプルを試す

 Difyの「探索」タブにはさまざまなサンプルが載っており、その1つに「Thinking Claude (OpenAI O1 Alternative)」というものがある。   このサンプルがどういうものか、未だに自分でも解けない以下の問題をためしに聞いてみることにした。 『人類の...