Edge-home-orchestration-go: [DataStorage] خطأ وقت التشغيل

تم إنشاؤها على ١٩ يناير ٢٠٢١  ·  7تعليقات  ·  مصدر: lf-edge/edge-home-orchestration-go

صف الخلل
خطأ في وقت التشغيل عندما لا تعمل خوادم مسابك edgex ،

level=ERROR ts=2021-01-19T01:51:50.815737266Z app=datastorage source=init.go:154 msg="Get \"http://localhost:48080/api/v1/ping\": dial tcp 127.0.0.1:48080: connect: connection refused"
level=INFO ts=2021-01-19T01:51:51.817181193Z app=datastorage source=init.go:144 msg="Check Metadata service's status by ping..."
level=INFO ts=2021-01-19T01:51:51.818287982Z app=datastorage source=init.go:144 msg="Check Data service's status by ping..."
level=ERROR ts=2021-01-19T01:51:51.822577012Z app=datastorage source=init.go:154 msg="Get \"http://localhost:48081/api/v1/ping\": dial tcp 127.0.0.1:48081: connect: connection refused"
level=ERROR ts=2021-01-19T01:51:51.824049381Z app=datastorage source=init.go:154 msg="Get \"http://localhost:48080/api/v1/ping\": dial tcp 127.0.0.1:48080: connect: connection refused"
level=INFO ts=2021-01-19T01:51:52.825768174Z app=datastorage source=init.go:144 msg="Check Metadata service's status by ping..."
level=INFO ts=2021-01-19T01:51:52.826907105Z app=datastorage source=init.go:144 msg="Check Data service's status by ping..."
level=ERROR ts=2021-01-19T01:51:52.830784824Z app=datastorage source=init.go:154 msg="Get \"http://localhost:48081/api/v1/ping\": dial tcp 127.0.0.1:48081: connect: connection refused"
level=ERROR ts=2021-01-19T01:51:52.83209855Z app=datastorage source=init.go:154 msg="Get \"http://localhost:48080/api/v1/ping\": dial tcp 127.0.0.1:48080: connect: connection refused"
INFO[2021-01-19T01:51:53Z]discovery.go:833 activeDiscovery [discoverymgr] activeDiscovery!!!
INFO[2021-01-19T01:51:53Z]discovery.go:571 func1 [deviceDetectionRoutine] edge-orchestration-3125da9e-1e9a-41aa-ac83-004725eb2d1e
level=ERROR ts=2021-01-19T01:51:53.83359109Z app=datastorage source=init.go:139 msg="dependency Metadata service checking time out"
level=ERROR ts=2021-01-19T01:51:53.834663766Z app=datastorage source=init.go:139 msg="dependency Data service checking time out"
level=INFO ts=2021-01-19T01:51:53.840074015Z app=datastorage source=httpserver.go:116 msg="Web server shutting down"
level=INFO ts=2021-01-19T01:51:53.841736032Z app=datastorage source=httpserver.go:107 msg="Web server stopped"
level=INFO ts=2021-01-19T01:51:54.341966491Z app=datastorage source=httpserver.go:118 msg="Web server shut down"
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x8d1a0e]

goroutine 44 [running]:
github.com/edgexfoundry/device-sdk-go/internal/autoevent.(*manager).StopAutoEvents(0x0)
        /home/t25kim/edge-home-orchestration-go/vendor/github.com/edgexfoundry/device-sdk-go/internal/autoevent/manager.go:69 +0x4e
github.com/edgexfoundry/device-sdk-go/pkg/service.(*DeviceService).Stop(0xc0004c2780, 0xc0005ae600)
        /home/t25kim/edge-home-orchestration-go/vendor/github.com/edgexfoundry/device-sdk-go/pkg/service/service.go:134 +0x45
github.com/edgexfoundry/device-sdk-go/pkg/service.Main(0xe2dbda, 0xb, 0xe3a91d, 0x1a, 0xda46e0, 0xc0005a5de0, 0xf46e20, 0xc0005ae600, 0xc0000330a0, 0xc0005ac300, ...)
        /home/t25kim/edge-home-orchestration-go/vendor/github.com/edgexfoundry/device-sdk-go/pkg/service/main.go:69 +0x6fa
github.com/edgexfoundry/device-sdk-go/pkg/startup.Bootstrap(0xe2dbda, 0xb, 0xe3a91d, 0x1a, 0xda46e0, 0xc0005a5de0)
        /home/t25kim/edge-home-orchestration-go/vendor/github.com/edgexfoundry/device-sdk-go/pkg/startup/bootstrap.go:19 +0x117
created by github.com/lf-edge/edge-home-orchestration-go/src/controller/storagemgr.StorageImpl.StartStorage
        /home/t25kim/edge-home-orchestration-go/src/controller/storagemgr/storage.go:51 +0xef

لإعادة إنتاج

  1. ضع ملفات التكوين الضرورية في / var / edge-orchestration / datastorage /
  2. قم بتشغيل edge-home-orchestration-go

سلوك متوقع
تحقق من خادم مسبك edgex مقدمًا قبل بدء تخزين البيانات.

تكوين بيئة الاختبار (يرجى استكمال المعلومات التالية):

  • إصدار البرنامج الثابت: Ubuntu 18.04
  • الأجهزة: x86-64
  • إصدار تنسيق الحواف: جوز الهند
bug

التعليق الأكثر فائدة

بعد التواصل مع أعضاء EdgeX ، قاموا بتزويدنا بشوكة: github.com/hahattan/device-sdk-go v1.4.1 مع الإصلاح في فرع هانوي ، مما تسبب في هذا الانهيار.

كنت أختبر الإصلاح باستخدام توجيه الاستبدال في go.mod. يبدو أن هذا يعمل بشكل جيد.

كما ذكرت ، يمكننا الانتظار حتى إصدار أيرلندا أو يمكننا أيضًا استنساخ الإصلاح في الريبو الخاص بنا حتى وقت إصدار EdgeX أيرلندا.

يرجى مشاركة أفكارك حول نفس؟
@ t25kim

شكرا !

ال 7 كومينتر

@ suresh-lc PTAL. شكرا لكم مقدما.

مرحبًا Sunchit ،

لقد اكتشفت سبب تحطمها. إنه خطأ ، وليس من الصعب إصلاحه.

لا تتم تهيئة AutoEvent Manager عند إيقاف الخدمة بسبب انتهاء مهلة التبعية (بيانات EdgeX الأساسية والبيانات الوصفية الأساسية).

في هذا السطر ، https://github.com/edgexfoundry/device-sdk-go/blob/v1.4.0/pkg/service/service.go#L134

يجب أن نتحقق مما إذا كان AutoEvent Manager لا شيء قبل استدعاء StopAutoEvents.

لقد قمنا بحل هذه المشكلة في V2 (أيرلندا).

مرحبًا جيم وإيان ،

هل يمكننا إنشاء فرع هانوي لإصلاح هذه المشكلة ووضع علامة 1.4.1 لهم؟

مرحبًا Sunchit ،

لقد اكتشفت سبب تحطمها. إنه خطأ ، وليس من الصعب إصلاحه.

لا تتم تهيئة AutoEvent Manager عند إيقاف الخدمة بسبب انتهاء مهلة التبعية (بيانات EdgeX الأساسية والبيانات الوصفية الأساسية).

في هذا السطر ، https://github.com/edgexfoundry/device-sdk-go/blob/v1.4.0/pkg/service/service.go#L134

يجب أن نتحقق مما إذا كان AutoEvent Manager لا شيء قبل استدعاء StopAutoEvents.

لقد قمنا بحل هذه المشكلة في V2 (أيرلندا).

مرحبًا جيم وإيان ،

هل يمكننا إنشاء فرع هانوي لإصلاح هذه المشكلة ووضع علامة 1.4.1 لهم؟

@ suresh-lc من كتب هذا البريد الإلكتروني؟

مرحبًا Sunchit ،
لقد اكتشفت سبب تحطمها. إنه خطأ ، وليس من الصعب إصلاحه.
لا تتم تهيئة AutoEvent Manager عند إيقاف الخدمة بسبب انتهاء مهلة التبعية (بيانات EdgeX الأساسية والبيانات الوصفية الأساسية).
في هذا السطر ، https://github.com/edgexfoundry/device-sdk-go/blob/v1.4.0/pkg/service/service.go#L134
يجب أن نتحقق مما إذا كان AutoEvent Manager لا شيء قبل استدعاء StopAutoEvents.
لقد قمنا بحل هذه المشكلة في V2 (أيرلندا).
مرحبًا جيم وإيان ،
هل يمكننا إنشاء فرع هانوي لإصلاح هذه المشكلة ووضع علامة 1.4.1 لهم؟

@ suresh-lc من كتب هذا البريد الإلكتروني؟

Cloud Tsai من فريق EdgeX- Device Service

سيتم حل هذه المشكلة باستخدام إصدار edgexfoundry 'Ireland' ، لكن لم يتم إصداره رسميًا.
أود ترك هذا كـ known issue وترقية edgexfoundry عند إصدار أيرلندا.

بعد التواصل مع أعضاء EdgeX ، قاموا بتزويدنا بشوكة: github.com/hahattan/device-sdk-go v1.4.1 مع الإصلاح في فرع هانوي ، مما تسبب في هذا الانهيار.

كنت أختبر الإصلاح باستخدام توجيه الاستبدال في go.mod. يبدو أن هذا يعمل بشكل جيد.

كما ذكرت ، يمكننا الانتظار حتى إصدار أيرلندا أو يمكننا أيضًا استنساخ الإصلاح في الريبو الخاص بنا حتى وقت إصدار EdgeX أيرلندا.

يرجى مشاركة أفكارك حول نفس؟
@ t25kim

شكرا !

@ sun-sharma شكرا لإعلامنا بذلك.
هل يمكن تعديل go.mod الملف مع replace العلم؟
سيكون من الجيد إضافة ملاحظة أنه مؤقت وسيتم إزالته.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات