Warden Web Panel released

Today is the day, in which the Warden Web Panel has been finally released. It is available in the Azure cloud, where you can create a free account and use it immediately, or, if you wish to host it on your own, just clone the repository and run the web application – it’s actually quite easy to get it up and running on localhost in a matter of minutes (or even seconds).
In the post details, you can find more information about the idea behind the Web Panel UI and what can be done do with this tool in terms of managing the monitoring workspace, displaying the real-time statistics or browsing the historical data.


 

The Web Panel has been created in order to provide a user interface for the already existing Warden library. This application does not allow e.g. to define a new Watcher or change its configuration – for that you still need to write a regular code using the fluent API.
Instead, this app will let you do the following:

  • Create one or more organizations to coordinate your monitoring – you can think of it as a workspace, where you can add users and plugin Wardens.
  • Display a real-time data using the Dashboard view – you can browse charts, statistics, error details etc.
  • Browse the historical data – Warden iterations, particular watchers results and so on.
  • Manage your account – create API keys and change or reset a password.
Warden Web Panel - Dashboard

Warden Web Panel – Dashboard

Like I said before, you may either use the free version available in the cloud or host it on your own. For the latter, all you need to do is to clone the repository, open the solution and run the Warden.Web application. These are the requirements that have to be met:

  • ASP.NET 5
  • NPM
  • Bower
  • MongoDB

Once you have them installed, just start the web application and that’s it! You may also take a look at the config.json file, to set a connection string or configure the email service (by default I’m using SendGrid, but you can add your own provider quite easily).

Here is the typical scenario that will get you started with the Web Panel:

Setting up account and organization

  • Sign up – create a new account.
  • Sign in – login using the newly created or an existing account.
  • Edit the default organization My organization or create a new one. Copy the organization id.
  • Go to the Settings page and copy the API key.
Warden Web Panel - Organization

Warden Web Panel – Organization

Warden Web Panel - Warden details

Warden Web Panel – Warden details

Configuring Warden monitoring application

  • Install the [HTTP API integration](https://github.com/spetz/Warden/wiki/Integration-with-HTTP-API) to the Warden monitoring application (console, windows service etc.).
  • Within the Warden application, invoke the IntegrateWithHttpApi() and set the following parameters (examples below):
    • API URL: http://localhost:11223/api or https://panel.getwarden.net/api (cloud service)
    • API key: SRsUBAKXwHGPXoFU/58wV8Dc+vIL+k2/fWF14VXPiuK
    • Organization id: 0b8351f1-dc93-4137-90b9-e3a7d7e12054

  • While configuring the SetHooks() method use the available overload which provides the integrations parameter, and add the following code to the OnIterationCompletedAsync(), so it may look like this:

Warden Web Panel - Account

Warden Web Panel – Account

Accessing the dashboard

  • Run your Warden application.
  • Open the web application and refresh the organization details view – you should see a new Warden added via the HTTP API call from the Warden application.
  • Open the Warden details and navigate to the dashboard – you will see a real-time statistics from now on.
Warden Web Panel - Iterations

Warden Web Panel – Iterations

I hope that you will like this app and find it to be a useful extension of the Warden.
Any feedback would be greatly appreciated!

Leave A Comment

Your email address will not be published. Required fields are marked *