يوفر ServicePulse مراقبة الإنتاج في الوقت الحقيقي للتطبيقات الموزعة. فهو يراقب صحة نقاط نهاية النظام، ويكتشف أخطاء المعالجة، ويرسل رسائل فاشلة لإعادة المعالجة، ويضمن تلبية احتياجات البيئة المحددة، كل ذلك في لوحة معلومات موحدة واحدة.
تعد ServicePulse جزءًا من منصة الخدمة الخاصة، والتي تتضمن NServiceBus وأدوات لإنشاء الأنظمة الموزعة ومراقبتها وتصحيح أخطائها.
راجع وثائق ServicePulse لمزيد من المعلومات.
يقدم ServicePulse بشكل أساسي البيانات المقدمة من مثيلات مراقبة ServiceControl وServiceControl.
يمكن تعيين عناوين URL لكلتا الخدمتين في src/Frontend/public/js/app.constants.js
.
يستخدم ServicePulse npm و Bower كمديرين للحزم. لكي يعمل الحل، يجب تنزيل التبعيات قبل تشغيل موقع ServicePulse.
قم بتثبيت التبعيات التالية إذا لم تكن قد قمت بتثبيتها بعد.
ci.yml
و release.yml
يتطابق مع إصدار بيئتك المحلية. ابحث عن name: Set up Node.js
على الرغم من أن Visual Studio أو Rider يبدو أنهما بيئات تطوير متكاملة مناسبة لتطوير الواجهة الأمامية، إلا أنهما يميلان إلى عدم الاعتماد عليهما مع أحدث أطر عمل الواجهة الأمامية والفحص والتنسيق. ولهذا السبب، لدينا توصيات إضافية لمساعدتك على تحقيق المزيد من النجاح في تطوير الواجهة الأمامية.
انتقل إلى ServicePulsesrcFrontend
و:
npm install
لتثبيت كافة تبعيات npmnpm run dev
(سيستضيف هذا خادم dev على المنفذ 5173 ويبدأ في مراقبة التغييرات في دليل /Frontend
) إذا فشل npm run dev
بسبب خطأ يتعلق بعدم تكوين وحدات git الفرعية بشكل صحيح، فقم بتشغيل أمر npm install
مرة أخرى للتأكد من توفر جميع التبعيات المطلوبة، ثم قم بتشغيل npm run dev
.
بعد القيام بالخطوات المذكورة أعلاه، انتقل إلى عنوان URL المقدم من خلال تنفيذ تطبيق Vue.js لرؤية تطبيق ServicePulse.
تستخدم الاختبارات الآلية للواجهة الأمامية Vitest كإطار عمل للاختبار ومكتبة اختبار لاختبار الأدوات المساعدة. يوفر Vitest وضعين: watch mode
في بيئة التطوير run mode
في بيئة CI بشكل افتراضي. يعمل Watch mode
على إعادة تشغيل الاختبارات ذات الصلة على الفور عند حفظ الملف، مما يوفر تعليقات فورية أثناء التطوير.
قبل تشغيل الاختبار، تأكد من إعداد خادم التطوير. انتقل إلى ServicePulsesrcFrontend
وقم بتشغيل npm install
لتثبيت كافة تبعيات npm.
انتقل إلى ServicePulsesrcFrontend
وقم بتشغيل:
npm run test:component
يقوم هذا الأمر بتشغيل كافة ملفات اختبار المكونات *.spcs.ts
في الدليل ServicePulsesrcFrontendsrc
وأدلته الفرعية. مع تمكين watch mode
، فإنه يسمح بتطوير الاختبار بكفاءة، حيث يتم إعادة تشغيل الاختبارات ذات الصلة فقط عند حفظ الملف.
انتقل إلى ServicePulsesrcFrontend
وقم بتشغيل:
npm run test:application
على غرار اختبارات المكونات، يقوم هذا الأمر بتشغيل كافة ملفات اختبار التطبيق *.spcs.ts
في الدليل ServicePulsesrcFrontendtest
وأدلته الفرعية.
انتقل إلى ServicePulsesrcFrontend
وقم بتشغيل:
npm run test:coverage
يقوم هذا الأمر بإنشاء تقرير يوضح نسبة الكشوف والفروع والوظائف والخطوط التي تغطيها الاختبارات. بالإضافة إلى ذلك، فإنه يحدد أرقام الأسطر المكشوفة.
dev
- يقوم بتشغيل vite
الذي يبدأ خادم التطوير بإجراء إعادة تحميل سريعة على الملفات المصدرbuild
- تشغيل البرنامج النصي للإنشاء الذي يقوم بإخراج الملفات إلى مجلد ..app
lint
- يتحقق باستخدام eslint من جميع ملفات vue وts وjstype-check
- يقوم بتشغيل TypeScript في وضع عدم الإرسال test:application
- يقوم بتشغيل جميع اختبارات التطبيق الموجودة في مجلد Frontend/test
.test:component
- يقوم بإجراء اختبارات جميع اختبارات المكونات الموجودة في المجلد Frontend/src
وأي أدلة فرعية.test:coverage
- يقوم بتشغيل تقرير تغطية الاختبار على الملفات المحددة في vitest.config.ts
من الممكن تشغيل ServicePulse مباشرة عبر ServicePulse.Host.exe
.
يعتمد ServicePulse.Host.exe على خادم ويب مستضاف ذاتيًا. يجب إعداد حجز قائمة التحكم بالوصول (ACL) لعنوان URL قبل أن يتم تشغيل المشروع. قم بتشغيل Visual Studio بامتيازات إدارية أو قم بتشغيل الأمر التالي لإضافة حجز ACL لعنوان URL المطلوب:
add urlacl url=URL
حيث URL
هو عنوان URL الذي تم تكوينه على الجهاز المحلي.
قم بتنفيذ البرنامج النصي للبناء من سطر الأوامر:
PowerShell -File .build.ps1
ملحوظة
قد يكون من الضروري تغيير سياسة تنفيذ PowerShell باستخدام Set-ExecutionPolicy Unrestricted -scope UserPolicy
ServicePulse.Host.exe
قم ببناء وتشغيل مشروع ServicePulse.Host
في IDE.
يتم دعم ServicePulse على إصدارات متصفح سطح المكتب التالية:
يوجد ملف Dockerfile لـ ServicePulse داخل المجلد src/ServicePulse
. تم إنشاء جميع صور الحاوية كجزء من سير عمل الإصدار وتم تنظيمها في Github Container Registry. بالنسبة للفروع ذات العلاقات العامة، سيتم وضع علامة على الصورة برقم العلاقات العامة، على سبيل المثال pr-1234
.