ServicePulse proporciona monitoreo de producción en tiempo real para aplicaciones distribuidas. Supervisa el estado de los puntos finales de un sistema, detecta errores de procesamiento, envía mensajes fallidos para reprocesamiento y garantiza que se satisfagan las necesidades específicas del entorno, todo en un panel consolidado.
ServicePulse es parte de Particular Service Platform, que incluye NServiceBus y herramientas para construir, monitorear y depurar sistemas distribuidos.
Consulte la documentación de ServicePulse para obtener más información.
ServicePulse presenta principalmente datos proporcionados por instancias de ServiceControl y ServiceControl Monitoring.
Las URL para ambos servicios se pueden configurar en src/Frontend/public/js/app.constants.js
.
ServicePulse utiliza npm y Bower como administradores de paquetes. Para que la solución funcione, se deben descargar las dependencias antes de iniciar el sitio web ServicePulse.
Instale las siguientes dependencias si aún no las tiene instaladas.
ci.yml
y release.yml
coincida con la versión de su entorno local. Busque el name: Set up Node.js
Aunque Visual Studio o Rider parecen ser IDE adecuados para el desarrollo front-end, tienden a ser poco confiables con los últimos frameworks, linting y formateo de front-end. Por eso, tenemos recomendaciones adicionales para ayudarlo a tener aún más éxito en el desarrollo front-end.
Navegue a ServicePulsesrcFrontend
y:
npm install
para instalar todas las dependencias de npmnpm run dev
(esto alojará un servidor de desarrollo en el puerto 5173 y comenzará a observar los cambios en el directorio /Frontend
) Si npm run dev
falla con un error relacionado con los submódulos de git que no están configurados correctamente, ejecute el comando npm install
nuevamente para asegurarse de que todas las dependencias requeridas estén disponibles y luego ejecute npm run dev
.
Después de realizar los pasos anteriores, navegue hasta la URL presentada por la ejecución de la aplicación Vue.js para ver la aplicación ServicePulse.
Las pruebas automatizadas de interfaz utilizan Vitest como marco de prueba y biblioteca de pruebas para las utilidades de prueba. Vitest proporciona dos modos: watch mode
en el entorno de desarrollo y run mode
en el entorno CI de forma predeterminada. Watch mode
vuelve a ejecutar instantáneamente las pruebas relevantes al guardar el archivo, proporcionando retroalimentación inmediata durante el desarrollo.
Antes de ejecutar la prueba, asegúrese de haber configurado el servidor de desarrollo. Navegue hasta ServicePulsesrcFrontend
y ejecute npm install
para instalar todas las dependencias de npm.
Navegue hasta ServicePulsesrcFrontend
y ejecute:
npm run test:component
Este comando ejecuta todos los archivos de prueba de componentes *.spcs.ts
en el directorio ServicePulsesrcFrontendsrc
y sus subdirectorios. Con watch mode
habilitado, se permite un desarrollo de pruebas eficiente, ya que solo las pruebas relevantes se vuelven a ejecutar al guardar el archivo.
Navegue hasta ServicePulsesrcFrontend
y ejecute:
npm run test:application
De manera similar a las pruebas de componentes, este comando ejecuta todos los archivos de prueba de la aplicación *.spcs.ts
en el directorio ServicePulsesrcFrontendtest
y sus subdirectorios.
Navegue hasta ServicePulsesrcFrontend
y ejecute:
npm run test:coverage
Este comando genera un informe que indica el porcentaje de declaraciones, ramas, funciones y líneas cubiertas por las pruebas. Además, identifica números de línea descubiertos.
dev
: ejecuta vite
que inicia el servidor de desarrollo realizando recargas en caliente sobre los archivos fuentebuild
: ejecuta el script de compilación que genera archivos en la carpeta ..app
lint
: comprueba con eslint todos los archivos vue, ts y jstype-check
: ejecuta TypeScript en modo sin emisión test:application
: ejecuta todas las pruebas de la aplicación ubicadas en la carpeta Frontend/test
.test:component
: ejecuta pruebas de todas las pruebas de componentes ubicadas en la carpeta Frontend/src
y cualquier subdirectorio.test:coverage
: ejecuta el informe de cobertura de prueba en los archivos definidos en vitest.config.ts
Es posible ejecutar ServicePulse directamente a través de ServicePulse.Host.exe
.
ServicePulse.Host.exe depende de un servidor web autohospedado. Se debe configurar una reserva de ACL de URL antes de que se pueda ejecutar el proyecto. Ejecute Visual Studio con privilegios administrativos o ejecute el siguiente comando para agregar la reserva de ACL de URL requerida:
add urlacl url=URL
Donde URL
es la URL configurada en la máquina local.
Ejecute el script de compilación desde la línea de comando:
PowerShell -File .build.ps1
Nota
Puede que sea necesario cambiar la política de ejecución de PowerShell utilizando Set-ExecutionPolicy Unrestricted -scope UserPolicy
ServicePulse.Host.exe
Cree y ejecute el proyecto ServicePulse.Host
en el IDE.
ServicePulse es compatible con las siguientes versiones de navegadores de escritorio:
Un Dockerfile para ServicePulse reside dentro de la carpeta src/ServicePulse
. Todas las imágenes del contenedor se crean como parte del flujo de trabajo de lanzamiento y se organizan en Github Container Registry. Para sucursales con PR, la imagen se etiquetará con el número de PR, por ejemplo, pr-1234
.