Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Historian Monitor (Reference) : when the solution is running and the Designer is connected with the runtime, the Historian Monitor page show basic status of its HistorianTable and an User Interface created using the Trend Chart Control, which allows to monitor historical data. provides real-time visibility into historian table operations and data collection status during runtime, it enables:

  • Real-time status of historian tables
  • Trend chart visualization of historical data
  • Performance metrics tracking
  • Error monitoring and diagnostics
  • Remote access via web browser

Access the monitor at Historian → Historian Monitor when connected to runtime.

In this page:

Table of Contents
maxLevel2
minLevel2
indent10px
excludeSteps
stylenone

Monitoring the Historian Module

You can access the monitor by navigating to Historian / Historian Monitor.

When the solution is runtime, the monitor will display a Trend Chart page, and a table with the runtime properties of the HistorianTables.

Trend Chart Page 

This TrendChart Page is an out-of-box User Interface to monitor Historian Data, created using the same tools available to create displays and the Trend Chart Control.  When creating displays in your application there is a template in Charts similar to the one embedded in the Designer. 

Tip

Using a Browser, with no installation required, you can verify the Historian Status of remote server. With the following URL.


Monitor Components

Trend Chart Page

Built-in user interface for visualizing historian data:

  • Created using TrendChart Control
  • Same tools available for custom displays
  • Template available in Charts library
  • Real-time and historical data viewing

Status Table

Runtime properties of all historian tables:

  • Row counts and success metrics
  • Error tracking and messages
  • Last stored timestamps
  • Performance indicators

Remote Access

Monitor historian status remotely without installation:

URL Format:

http://[server]
http://localhost
:3101/html5/?Monitor=Historian

Locahost: shall be replaced by the IP or Computer Network Name of the computer you want to access. The port 3101 shall reflect the Port the Runtime is using, typically it is 3101 for production profile, and 3201 for Development profile. The reaming for the URL remains the same.

Parameters:

  • [server]: IP address or hostname
  • Port 3101: Production profile (default)
  • Port 3201: Development profile

Example:

http://192.168.1.100:3101/html5/?Monitor=Historian

Monitor Table Properties

ColumnDescriptionRuntime Access
NamespaceItem namespace location-
NameHistorian table identifier@Historian.Table.<Name>
RowCountTotal rows stored@Historian.Table.<Name>.RowCount
SuccessCountSuccessful storage operations@Historian.Table.<Name>.SuccessCount
ErrorCountFailed storage attempts

Historian Monitor Table Columns

The information in this table is constructed from the runtime properties of the object: Historian.Table.<Name>.  

The properties shown in the monitor table can also be accessed in Displays or Scripts using the following syntax:
@Historian.Table.<Name>.
<PropertyName>

HistorianTables Monitor Columns

Column

Description

Namespace

Specifies the namespace the item belongs to.

Name

HistorianTable's name

RowCount

The total number of rows of data stored in the HistorianTable.

SuccessCount

The total number of times the system successfully stored data in the table. 

ErrorCount

The number of times the system failed to save data into the table. 

LastStoredTimeStamp

The timestamp of the last data entry stored in the table.

LastStoredErrorMessage

The last error message encountered.
ErrorCount
LastStoredTimeStampMost recent data timestamp@Historian.Table.<Name>.LastStoredTimeStamp
LastStoredErrorMessageLatest error description@Historian.Table.<Name>.LastStoredErrorMessage

Runtime Property Access

Access monitor properties in displays or scripts:

csharp

// Get table status
int rows = @Historian.Table.ProcessData.RowCount;
int errors = @Historian.Table.ProcessData.ErrorCount;
DateTime lastStore = @Historian.Table.ProcessData.LastStoredTimeStamp;

// Check for errors
if (@Historian.Table.ProcessData.ErrorCount > 0)
{
    string error = @Historian.Table.ProcessData.LastStoredErrorMessage;
    // Handle error condition
}

Using Monitor Data

Health Monitoring

csharp

// Calculate success rate
double successRate = @Historian.Table.MyTable.SuccessCount / 
                    (@Historian.Table.MyTable.SuccessCount + 
                     @Historian.Table.MyTable.ErrorCount) * 100;

Data Validation

csharp

// Check data currency
TimeSpan dataAge = DateTime.Now - @Historian.Table.MyTable.LastStoredTimeStamp;
if (dataAge.TotalMinutes > 5)
{
    // Alert: Data may be stale
}

Troubleshooting with Monitor

Common Issues

High Error Count:

  • Check storage location connectivity
  • Verify database permissions
  • Review error messages for patterns
  • Check disk space

No Row Count Increase:

  • Verify triggers are firing
  • Check tag quality
  • Review deadband settings
  • Confirm table is enabled

Timestamp Not Updating:

  • Check data collection is running
  • Verify tag values are changing
  • Review SaveOnChange settings
  • Check time deadband

Best Practices

  •  Monitor regularly - Check error counts daily
  •  Set up alerts - Notify on error thresholds
  •  Track trends - Monitor row count growth
  •  Document errors - Keep log of issues
  •  Use remote access - Monitor from anywhere
  •  Create dashboards - Build custom monitoring displays

In this section...

Page Tree
root@parent
spaces93DRAF