Koenkk / zigbee2mqtt

Zigbee 🐝 to MQTT bridge 🌉, get rid of your proprietary Zigbee bridges 🔨
https://www.zigbee2mqtt.io
GNU General Public License v3.0
11.77k stars 1.64k forks source link

zigbee2mqtt 1.38.0 exit with error and if run in deamon keep restart around 2-3min #23150

Open Keele520 opened 2 months ago

Keele520 commented 2 months ago

What happened?

  1. SSH to pi
  2. run npm ci and npm start without error.
  3. exit with ctrl-C.
  4. error with "Error: write after end".
  5. ignore this and Running as a daemon with systemctl.
  6. deamon keep restart in 2-3min (according to data/log date), and the log.log is same but without error.

What did you expect to happen?

run and exit without error

How to reproduce it (minimal and precise)

  1. $ git clone --depth 1 https://github.com/Koenkk/zigbee2mqtt.git /opt/zigbee2mqtt
  2. $ cd /opt/zigbee2mqtt
  3. $ npm ci
  4. $ npm run build
  5. $ cp /opt/zigbee2mqtt/data/configuration.example.yaml /opt/zigbee2mqtt/data/configuration.yaml
  6. $ nano /opt/zigbee2mqtt/data/configuration.yaml
  7. $ npm start
  8. Ctrl-C exit

Zigbee2MQTT version

1.38.0 commit: 6c7d52a3

Adapter firmware version

20230507

Adapter

ZigStar LAN Gateway Zigbee (zStack3x0)

Setup

Pi 4 2GB x64

Debug log

[2024-06-24 13:49:43] info: z2m: Logging to console, file (filename: log.log) [2024-06-24 13:49:43] info: z2m: Starting Zigbee2MQTT version 1.37.1 (commit #unknown) [2024-06-24 13:49:43] info: z2m: Starting zigbee-herdsman (0.46.6) [2024-06-24 13:49:44] info: zh:zstack:znp: Opening TCP socket with 192.168.100.51:6638 [2024-06-24 13:49:44] info: zh:zstack:znp: Socket connected [2024-06-24 13:49:44] info: zh:zstack:znp: Socket ready [2024-06-24 13:49:44] info: zh:zstack:znp: Writing CC2530/CC2531 skip bootloader payload [2024-06-24 13:49:45] info: zh:zstack:znp: Skip bootloader for CC2652/CC1352 [2024-06-24 13:50:22] info: z2m: zigbee-herdsman started (restored) [2024-06-24 13:50:22] info: z2m: Coordinator firmware version: '{"meta":{"maintrel":1,"majorrel":2,"minorrel":7,"product":1,"revision":20230507,"transportrev":2},"type":"zStack3x0"}' [2024-06-24 13:50:22] info: z2m: Currently 0 devices are joined: [2024-06-24 13:50:22] info: z2m: Zigbee: disabling joining new devices. [2024-06-24 13:50:22] info: z2m: Connecting to MQTT server at mqtt://localhost:1883 [2024-06-24 13:50:23] info: z2m: Connected to MQTT server [2024-06-24 13:50:23] info: z2m: Started frontend on port 8081 [2024-06-24 13:50:23] info: z2m: Zigbee2MQTT started! [2024-06-24 13:52:42] info: z2m: Disconnecting from MQTT server [2024-06-24 13:52:42] info: z2m: Stopping zigbee-herdsman... [2024-06-24 13:52:52] info: zh:controller: Wrote coordinator backup to '/opt/zigbee2mqtt-1.37.1/data/coordinator_backup.json' [2024-06-24 13:52:52] info: zh:zstack:znp: closing [2024-06-24 13:52:52] info: z2m: Stopped zigbee-herdsman [2024-06-24 13:52:52] info: z2m: Stopped Zigbee2MQTT

/opt/zigbee2mqtt-1.37.1/node_modules/winston/node_modules/readable-stream/lib/_stream_writable.js:264 var er = new ERR_STREAM_WRITE_AFTER_END(); ^ Error: write after end at writeAfterEnd (/opt/zigbee2mqtt-1.37.1/node_modules/winston/node_modules/readable-stream/lib/_stream_writable.js:264:12) at DerivedLogger.Writable.write (/opt/zigbee2mqtt-1.37.1/node_modules/winston/node_modules/readable-stream/lib/_stream_writable.js:300:21) at DerivedLogger.log (/opt/zigbee2mqtt-1.37.1/node_modules/winston/lib/winston/logger.js:252:14) at DerivedLogger. [as info] (/opt/zigbee2mqtt-1.37.1/node_modules/winston/lib/winston/create-logger.js:95:19) at Logger.info (/opt/zigbee2mqtt-1.37.1/lib/util/logger.ts:169:21) at Znp.onPortClose (/opt/zigbee2mqtt-1.37.1/node_modules/zigbee-herdsman/src/adapter/z-stack/znp/znp.ts:113:16) at Object.onceWrapper (node:events:635:26) at Socket.emit (node:events:532:35) at TCP. (node:net:339:12)

mmokrejs commented 2 months ago

Same here and it exits in such a way that the automatic watchdog service of HA aimed to start if a job crashes does not re-start it. You have to start it manually via GUI.