Real-time monitoring customized to fit distributed applications in general, and your application's specific needs in particular.
Keep track of the health of your system's endpoints, monitor for any processing errors, send failed messages for reprocessing and make sure your specific environment's needs are met, all in one consolidated dashboard.
ServicePulse mostly presents data provided by ServiceControl. Endpoint metrics data is provided by ServiceControl Monitoring.
The URLs for both services can be set in ServicePulse.Host/app/js/app.constants.js
under the constant scConfig
.
ServicePulse depends on a self-hosted webserver. In order to start the project a URL ACL reservation needs to be setup. Either run Visual Studio with Administrative privileges or run the following command to add the required URL ACL reservation:
netsh http add urlacl url=http://+:8081/ user=Everyone
ServicePulse uses npm and bower as package managers. For the solution to work dependencies needs to be downloaded before opening the ServicePulse website.
Install the following dependencies if you don't have them installed yet
- Open cmd window and navigate into
ServicePulse\src\ServicePulse.Host
path - run the following command
npm run setup
. This script will use webpack configuration to finish ServicePulse required configuration and will start watching root folder for changes.
In case npm run setup
fails with an error related to git submodule not properly configured, run the following command npm install
to ensure all required dependencies are available, and then run npm run setup
.
After doing the above steps one can open Visual Studio and continue working on this project. You can also run this project from node using npm run serve
.
test
- runs js tests in ServicePulse.Host.Test projectsetup
- this command runs few commands- installs the npm packages
- runs
webpack
load
- this command does the same thing thatsetup
but webpack is run only once to produce artifacts. This command is used by the builderserve
- serves js artifacts usinghttp-server
webpack
- runs webpack command, which does the following things for the given modules (monitoring, configuration)- joins js together
- runs babel transpiler
- has a file watcher to run the above whenever file is saved
lint
- checks with eslint all js filesdev
- runs in parallel two scriptswebpack
andserve
NOTE: Webpack observes files and updates the artifacts whenever they are changed, however at the moment not every bit of code is processed by webpack. Only monitoring and configuration is.
For information how to run automated tests please follow ServicePulse.Host.Tests/Readme.
ServicePulse is supported on the following desktop browser versions:
- Chrome latest major version
- Edge with EdgeHTML v17+
- Firefox ESR current version
- Internet Explorer 11
- Safari latest major version