Contents
Summary
The idea for this project was to create a “Health” dashboard similar to Amazon or Azure. In our environment, we don’t seem to have a problem getting emails when things fail.
Our problem was that were not getting notified about events that should have happened but did not. For example, if the process to import a file normally runs every morning, but it does not run one morning, we didn’t know about it. Since it didn’t run, it did not send an email about any problem.
Another benefit of a health dashboard is for a quick “sanity check” when a problem is reported. As a first step, we can check the dashboard to see the overall health of the system.
Screens
Home Page
The main page allows the user to quickly filter the checks by the environment (Prod, Test, Dev).
Home Page – Dark
I am not a designer (I can barely match a pair of socks). However, I do like options. Bootstrap/BootSwatch made it easy to do that. I allow the user to pick the theme they like, simply by clicking the links in the lower right of the screen.
Dashboard filtered by tag
The system supports tags to make it easy to group related checks. For example, all tasks running on a specific server may be tagged with that server name.
Edit Task & Tags
Example of screen to edit task description and tags along with any notes for the specific check.
Show Triggers
Each check can have multiple triggers. This allows some pretty flexible scheduling as shown in this example.
Edit Trigger
Clicking a trigger in the list brings up the modal edit dialog. I tried to use buttons to make it easy and visual for the user to “see” the schedule.
View Actions
Edit SQL Action
Example dialog to edit the Sql used for the check.
History Tab
The helps determine how often a check is failing. It also includes any notes that were added about a failure.
Edit Event Note
Clicking the pencil in the far right column allows the user to enter a note about a specific event. This can be helpful to explain why some event failed.
Export to Excel
This serves two purposes.
- Backup of existing configuration.
- I didn’t complete this piece, but the idea was to be able to add checks to the spreadsheet and import it back into the system.
WebAPI Generated Doc
Here is an example of the API Doc we get for free with WebAPI.
Trello Punch List
Trello screenshot showing a portion of the project punch list.
Technology / Tools
- C#
- WebApi
- AngularJS
- Bootstrap/BootSwatch
- Windows Service