Sentinel

...to watch over as a guard and provide real-time organization of logging sessions...

View project on GitHub

About Sentinel

Sentinel is a log viewer (implemented in WPF) with configurable filtering, extracting, and highlighting (foreground/background colours). Custom classifiers allow messages to be parsed and recomposed prior to display. This site is a fork of the original Sentinel project by Ray Hayes (http://sentinel.codeplex.com).

Sentinel Screenshot

Features

Log Sources

Sentinel can collect logs from:

  1. Log4Net UdpAppender
  2. NLog nLogViewer
  3. Log-File watcher

Classifiers

Upon receiving a new log entry it is processed through registered classifiers. Classifiers have the ability to rewrite the log entry prior to passing it to the visualisation aspect of Sentinel. Custom classifiers can be added, removed, and edited using the Preferences dialog box:

Classifiers

Filters

Filters remove log entries from the displayed values (note, the values are not lost, just hidden). Filters may be toggled on and off during the session. Filters are evaluated in the order specified, but since they hide any logs that match their criteria, the evaluation stops on the first match. Custom filters can be added, removed, and edited using the Preferences dialog box.

Filters

Extractors

Extractors are the opposite of filters - they only display log entries that match their criteria. Extractors may be toggled on and off during the session. Extractors are evaluated in the order specified, but since they hide any logs that do NOT match their criteria, the evaluation stops on the first match. Custom filters can be added, removed, and edited using the Preferences dialog box.

Extractors

Highlighters

Highlighters change the background and foreground color of log entries as they appear in view. Highlighters may be toggled on and off during the session. Custom highlighters can be added, removed, and edited using the Preferences dialog box.

Highlighters

Custom Images

As logs are displayed in the viewer window, they are often associated with an image that is registered by type. Custom images can be registered using the Preferences dialog box.

Images

Quick Search

Sometimes, it is necessary to highlight, filter, or extract logs quickly without going through the trouble of creating a custom object. A fully-implemented quick search box allows for immediate highlighting, filtering, or extraction based on the criteria specified on a single log field.

Export Logs

The most-requested feature is finally here! Sentinel can export logs from its viewer window to a separate (.log) or (.txt) file.

Save/Open Session

The second-most requested feature is also finally here! Sentinel can save the session data (not including log entries) to a (*.sntl) file to be opened at a later date. No more recreating connection information or filtering objects every time!

Configuring Log Sources

To allow a nLog based application transmit its log messages to Sentinel, use a configuration like the one shown below:

<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <targets>
    <target xsi:type="NLogViewer"
            name="viewer"
            address="udp://127.0.0.1:9999"/>
  </targets>
  <rules>
    <logger name="*"
            minlevel="Debug"
            writeTo="viewer" />
  </rules>
</nlog>

To allow a log4net application transmit its log messages to Sentinel, use a configuration like the one shown below:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="log4net"
             type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
  </configSections>

  <log4net>
    <appender name="udp"
              type="log4net.Appender.UdpAppender">

      <RemoteAddress value="127.0.0.2"/>
      <RemotePort value="9999"/>
      <layout type="log4net.Layout.XmlLayout"/>
    </appender>

    <root>
      <appender-ref ref="udp"/>
    </root>
  </log4net>
</configuration>

Authors and Contributors