ServicePulse ให้การตรวจสอบการผลิตแบบเรียลไทม์สำหรับแอปพลิเคชันแบบกระจาย โดยจะตรวจสอบความสมบูรณ์ของอุปกรณ์ปลายทางของระบบ ตรวจจับข้อผิดพลาดในการประมวลผล ส่งข้อความที่ล้มเหลวสำหรับการประมวลผลซ้ำ และรับประกันว่าตรงตามความต้องการเฉพาะของสภาพแวดล้อม ทั้งหมดนี้อยู่ในแดชบอร์ดรวมที่เดียว
ServicePulse เป็นส่วนหนึ่งของแพลตฟอร์มบริการเฉพาะ ซึ่งรวมถึง NServiceBus และเครื่องมือสำหรับสร้าง ตรวจสอบ และดีบักระบบแบบกระจาย
ดูเอกสารประกอบ ServicePulse สำหรับข้อมูลเพิ่มเติม
ServicePulse นำเสนอข้อมูลที่ได้รับจากอินสแตนซ์ ServiceControl และ ServiceControl Monitoring เป็นหลัก
URL สำหรับทั้งสองบริการสามารถตั้งค่าได้ใน src/Frontend/public/js/app.constants.js
ServicePulse ใช้ npm และ Bower เป็นตัวจัดการแพ็คเกจ เพื่อให้โซลูชันใช้งานได้ ต้องดาวน์โหลดการขึ้นต่อกันก่อนเปิดตัวเว็บไซต์ ServicePulse
ติดตั้งการอ้างอิงต่อไปนี้หากคุณยังไม่ได้ติดตั้ง
ci.yml
และ release.yml
ตรงกับเวอร์ชันของสภาพแวดล้อมภายในเครื่องของคุณ มองหา name: Set up Node.js
แม้ว่า Visual Studio หรือ Rider ดูเหมือนจะเป็น IDE ที่เพียงพอสำหรับการพัฒนาส่วนหน้า แต่ก็มักจะไม่น่าเชื่อถือกับเฟรมเวิร์กส่วนหน้าล่าสุด Linting และการจัดรูปแบบ ด้วยเหตุนี้ เราจึงมีคำแนะนำเพิ่มเติมเพื่อช่วยให้คุณประสบความสำเร็จในการพัฒนาส่วนหน้ามากยิ่งขึ้น
นำทางไปยัง ServicePulsesrcFrontend
และ:
npm install
เพื่อติดตั้งการพึ่งพา npm ทั้งหมดnpm 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
- รันสคริปต์ build ที่ส่งออกไฟล์ไปยังโฟลเดอร์ ..app
lint
- ตรวจสอบกับ eslint ไฟล์ vue, ts และ js ทั้งหมดtype-check
- รัน TypeScript ในโหมดไม่ปล่อย test:application
- รันการทดสอบแอปพลิเคชันทั้งหมดที่อยู่ในโฟลเดอร์ Frontend/test
test:component
- รันการทดสอบการทดสอบส่วนประกอบทั้งหมดที่อยู่ในโฟลเดอร์ Frontend/src
และไดเร็กทอรีย่อยใดๆtest:coverage
- รันรายงานความครอบคลุมการทดสอบกับไฟล์ที่กำหนดใน vitest.config.ts
สามารถเรียกใช้ ServicePulse ได้โดยตรงผ่าน ServicePulse.Host.exe
ServicePulse.Host.exe ขึ้นอยู่กับเว็บเซิร์ฟเวอร์ที่โฮสต์เอง ต้องตั้งค่าการจอง URL ACL ก่อนจึงจะสามารถรันโปรเจ็กต์ได้ เรียกใช้ Visual Studio ด้วยสิทธิ์ผู้ดูแลระบบหรือเรียกใช้คำสั่งต่อไปนี้เพื่อเพิ่มการจอง URL ACL ที่จำเป็น:
add urlacl url=URL
โดยที่ URL
คือ URL ที่กำหนดค่าไว้ในเครื่องท้องถิ่น
รันสคริปต์ build จากบรรทัดคำสั่ง:
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 รูปภาพจะถูกแท็กด้วยหมายเลข PR เช่น pr-1234