日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

EMQ服务器问题处理及分析

發布時間:2025/3/21 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 EMQ服务器问题处理及分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


在一臺服務器上來回操作重啟EMQ,在進行集群和退出集群操作,日志報以下錯誤。
EMQ使用rpm命令安裝,一直無法定位到相關問題。

2018-04-27 10:13:02.032 [error] <0.1274.0> Supervisor emqttd_sup had child emqttd_broker started with emqttd_broker:start_link() at <0.1325.0> exit with reason bad argument in call to ets:lookup(mqtt_route, <<"$SYS/brokers/emq@127.0.0.1/uptime">>) in emqttd_router:'-match/1-lc$^0/1-0-'/1 line 94 in context child_terminated
2018-04-27 10:13:02.032 [error] <0.1274.0> Supervisor emqttd_sup had child emqttd_broker started with emqttd_broker:start_link() at <0.1325.0> exit with reason reached_max_restart_intensity in context shutdown
2018-04-27 10:14:10.203 [error] <0.1325.0> gen_server emqttd_broker terminated with reason: bad argument in call to ets:lookup(mqtt_route, <<"$SYS/brokers/emq@127.0.0.1/uptime">>) in emqttd_router:'-match/1-lc$^0/1-0-'/1 line 94
2018-04-27 10:14:10.203 [error] <0.1325.0> CRASH REPORT Process emqttd_broker with 0 neighbours crashed with reason: bad argument in call to ets:lookup(mqtt_route, <<"$SYS/brokers/emq@127.0.0.1/uptime">>) in emqttd_router:'-match/1-lc$^0/1-0-'/1 line 94
2018-04-27 10:14:10.204 [error] <0.1274.0> Supervisor emqttd_sup had child emqttd_broker started with emqttd_broker:start_link() at <0.1325.0> exit with reason bad argument in call to ets:lookup(mqtt_route, <<"$SYS/brokers/emq@127.0.0.1/uptime">>) in emqttd_router:'-match/1-lc$^0/1-0-'/1 line 94 in context child_terminated
2018-04-27 10:14:10.204 [error] <0.1274.0> Supervisor emqttd_sup had child emqttd_broker started with emqttd_broker:start_link() at <0.1325.0> exit with reason reached_max_restart_intensity in context shutdown
1
2
3
4
5
6
最后卸載已經安裝的EMQ包,例如下:

卸載EMQ
查看安裝包:

[root@home configs]# rpm -qa | grep emqttd
emqttd-2.3-1.el6.x86_64
1
2
卸載安裝包:
rpm -e emqttd-2.3-1.el6.x86_64

安裝指定包:
rpm -ivh emqttd-centos6.8-v2.3-1.el7.centos.x86_64.rpm
更換了好幾個不同版本都一直報同樣的錯誤,只能放棄rpm安裝方式。

通用包安裝
最后使用通用包安裝方法
控制臺調試模式啟動,檢查 EMQ 是否可正常啟動:
/usr/local/emqttd/bin/emqttd console

CTRL+c 關閉控制臺。守護進程模式啟動:
./bin/emqttd start
啟動錯誤日志將輸出在 log/ 目錄。

EMQ消息服務器進程狀態查詢:
./bin/emqttd_ctl status

正常運行狀態,查詢命令返回:

$ ./bin/emqttd_ctl status
Node 'emqttd@127.0.0.1' is started
emqttd 2.0 is running
1
2
3
停止服務器:
./bin/emqttd stop
有時候不好使用,直接殺死進程比較有效

重復快速關閉重啟服務提示,主要是在與其它EMQ集群之后出現

Protocol 'inet_tcp': register/listen error: eaddrinuse
1
原因是端口一直在被占用

sudo netstat -apn | grep ?1883
1
kill掉相關進程即可
?

總結

以上是生活随笔為你收集整理的EMQ服务器问题处理及分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。