Skip to content
Piotr Gankiewicz edited this page Mar 24, 2016 · 19 revisions

Define "health checks" for your applications, resources and infrastructure. Keep your Sentry on the watch.

Sentry uses the fluent configuration API to define a set of watchers that are responsible for performing a check (monitoring) on the selected resources. Sentry can be used in any .NET application (Console, WPF, Web etc.), however the most typical example would probably be some kind of background service (e.g. Windows Service) that works all the time, therefore is able to monitor 24/7 the defined resources.

The main purpose of the Sentry is to provide an easy, yet customizable way to quickly build a service that will be responsible for monitoring your system and infrastructure. It's simple and lightweight library, but powerful enough to handle the most common scenarios such as notifying about failures, exceptions, successful checks and more. On top of that, you can build your custom metrics using the specialized types of responses returned by each watcher, and make use of that data to store and visualize e.g. the uptime and downtime of your system.

Sentry makes use of the asynchronous methods. It does not possess any external reference or dependency. Each watcher is an independent package that can be easily configured and plugged in, and is built on top of the common IWatcher interface that exposes a single method. It's quite easy to build a custom watcher if you feel a need to attach your own specific logic for some resource.

To start with, first take a look at the watchers first, next learn more about the Hooks and finally proceed to the Sentry itself.

Examples

Please browse the source code, examples can be found under the Sentry.Examples namespace, such as the Sentry.Examples.Console or Sentry.Examples.WindowsService.

Clone this wiki locally