Managing the Views Service (version 22)
The Views Service acts as the hub for data queries between clients and the Canary Historian. Other Canary services, Canary client tools, and third-party applications all connect to the historical archive through the Views. As the single endpoint for the historical record, Views also plays a crucial role in data security and contextualization.
Tags and tag properties are added and/or removed from most systems at different frequencies. In order for Views to be aware of these changes, they must be rebuilt periodically.
By default, every thirty seconds, the Views looks to the historian for DataSet changes. When changes are found, any affected Views are rebuilt, allowing them to pick up the changes in the underlying tag data. Likewise, if a Virtual View is built on top of another View that undergoes a rebuild, it is also triggered to rebuild. Once a View rebuild is triggered, by default it will not initiate another rebuild for five minutes.
Should this time period need adjusted it can be done from the 'CanaryViews.exe.admin' file located in C:\Program Files\Canary\Views\.
When opening the admin file, lockoutTimeForInitialViewsToBuild should remain defaulted to '00:15:00'. However, lockoutTimeForRecaching can be adjusted if View changes are not being picked up fast enough. Be aware that moving to a speed faster than the defaulted '00:05:00' can impact system performance.
The 'Last Update' property found within the 'VIEW' window displays the last time the currently selected View rebuilt.
From the application Canary Admin, select the Views tile. By default, the 'Views' tab is selected and all browsable Views are shown. Unless additional Virtual Views have been built, only one View will appear, the Local Historian View. By clicking the View tile one time, the View will be selected, as indicated by changing from blue to yellow.
Additionally, there are two windows on the left hand side. The upper window is referred to as the 'VIEWS' window and displays general information about the Views Service. The lower window is referred to as the 'VIEW' window and displays information about the currently selected View.
The 'VIEWS' window is white and the uppermost of the two windows. This window provides information about the entire Views Service. Use the left and right arrows within the grey navigation bar directly above the 'VIEWS' window to navigate through the currently selected View tile. Double-clicking on the View tile also will work for navigation purposes.
To create a new View, select the white down arrow and then select 'CREATE NEW VIEW'. Additional information around creating Virtual Views can be found within the 'Creating a Virtual View or Asset Model' article.
With a View tile selected, the following information is displayed within the 'VIEWS' window.
|Current Connections||The amount of connections currently being held by clients.|
|Total Connections||The total amount of connections made and released by clients.|
|Request Count||The total requests for information from client connections.|
|Requests/Sec||The number of requests to the Views Service each second. A request for data is usually for a group of tags over a specified time period.|
|TVQCount||The total number of TVQs (Timestamp, Value, Quality) returned to clients.|
|TVQ/Sec||The number of TVQs being returned to clients each second.|
The 'VIEW' window displays information about the currently selected View tile. The information changes depending on whether the selected View is associated with the historian or a Virtual View.
|Last Update||The last time the historian has undergone structural changes such as the creation or deleting of DataSet(s) or the addition or subtraction of tags within a DataSet.|
|Server Address||The machine name or IP address of the Historian machine.|
|Started At||The time when the View Historian last started.|
|Up Time||The length of time the Historian has been running since the last start.|
|Total Run Time||The amount of time that this Historian has run.|
|Historian Version||The current Version that this Historian is running on.|
|License||The number of tag licenses ascribed to this Historian.|
|DataSet Count||The number of DataSets created within the Historian.|
|Last Update||The last time the Virtual View was modified or rebuilt.|
|Source Views||Lists the historian machine name and DataSet(s) the View reads data from.|
|Tag Count||The number of tags being acted upon by the View|
|Asset Count||The number of Assets within the View.|
|Child Asset Count||The number of Child Assets. The name of the Assets will replace 'Child Asset'.|
|Child Asset Count||Additional Child Assets will be displayed here|
Select the yellow drop down arrow in the 'VIEW' window to access the options for that View. Once selected, you have the following options.
|EDIT||Allows the user to access the 'Defined Rules' for the select View.|
|REMOVE||Permanently deletes this View.|
|RENAME||Renames the View.|
|REBUILD||Manually triggers the rebuild of the View.|
Unlike browsing HDB files which present tags as flat lists and ignores structure in the tag name, Views provides the ability to browse multiple levels of tag structure.
Canary recognizes the dot ('.') in a tag name as hierarchy. As such, each tag is organized within the View based on how many dot breaks there are in the tag name. As you navigate through each structural level, tags that terminate in that current level are displayed on the left within the 'TAGS' window. Remaining tags with additional structure are displayed as navigable tiles in the main browse window.
For a simple example of this UI, let's examine a basic Virtual View named 'Production'. Below are the five tags that are contained within this View.
The top tag 'Production.AllSiteTotals' has two levels of depth, 'Production' and 'AllSiteTotals'. However, the second and fourth tag have three levels of depth and the third and fifth tags contain four levels of depth.
This means when browsing to the tag 'Production.Site1.FacilityA.Status' within the Production Virtual View, you would move through four levels of tag hierarchy before terminating at the 'Status' tag for FacilityA.
At the highest level, all available Views are exposed in the main window.
Once the 'Production' Virtual View has been selected, the main window displays tiles that represent the second level of tag naming structure, 'Site1' and 'Site2' and the 'TAGS' window displays the tag that terminates at this level, 'Production.AllSiteTotals'.
Notice that the grey navigation bar breadcrumb has been updated to represent the current browse level.
Once 'Site1' has been selected, the 'Production.Site1.Total' tag is shown in the 'TAGS' window and 'FacilityA' is represented in the main window. Again, the grey navigation bar has been updated.
After selecting 'FacilityA' we have reached the furthest point of the browse structure, indicated by a lack of navigation tiles in the main window. The tag 'Production.Site1.FacilityA.Status' is available to be selected and displayed in the 'TAGS' window.
Selecting the tag with a single-click will display all known values as well as additional properties.
As you navigate through different levels of tag structure, tags that terminate at the current level will display in the 'TAGS' window. Selecting a tag by single-clicking the tag name will show all records for that tag in the main display window.
Select the drop down arrow right beside the tag search bar to export the tag list to a CSV file. The 'Include parent path' checkbox determines whether the tag list will include the full tag name, which prepends the view name and any other nodes leading up to the tag name. The 'Include sub nodes' checkbox determines if you want to include all of the sub-node tags found within and below the current level/node.
The 'PROPERTIES' window within a View displays information available for tags, asset types, or DataSets that are currently selected. Depending on the type of View, whether historian or virtual, the 'PROPERTIES' window will display different information.
When an asset is selected, only the Model Type and corresponding value are displayed.
When a DataSet is selected in the Views window, the following fields are displayed:
|Delete Files||Displays how many HDB2 files have been deleted from this DataSet.|
|HDB File Count||The number of HDB2 files in this DataSet|
|Last Update||Displays the last time tags were added or removed from this DataSet.|
|Local Primary Path||The directory where HDB2 files will be stored. This must be defined when the DataSet is created.|
|Next Roll Over||Displays the date and time the DataSet is configured to Rollover (create a new HDB2 file). If logging is stopped and resumed after the time passes then the Rollover will occur when the logging starts.|
|Offline File Count||The number of files in this DataSet with an offline extension because background validation found errors in the file.|
|Open Readers||Number of tags being read from this DataSet.|
|Open Writers||Number of tags being written to this DataSet.|
|Roll-Over||Current setting when the DataSet is scheduled to create a new file.|
|Roll-Up||Current setting for combining Roll-Over files for this DataSet. It can be either Never, Daily, Weekly, Monthly, or Quarterly.|
|Status||Shows the following possible states for a DataSet.
Open: A client is currently reading or writing historical data.
Idle: No client is currently accessing, but the DataSet is still open. For optimization purposes a DataSet will remain in the idle state for one minute before it is "Closed".
Closed: No Activity
Rolling Up: Displaying during the time a Roll-Up is taking place on the DataSet.
|Tag Count||Total number of tags being logged in this DataSet based on the most current file.|
|Updates/Sec||Logging rate indicating number of updates/second throughput rate.|
|Validation||Is either Enabled or Disabled. When enabled, a background thread will validate any files for this DataSet not already validated except in the current file.|
When a DataSet is selected in the Views window, the following fields are displayed for tags that are written to the archive through:
Provides the data type used by the tag.
Displays the first known timestamp for the tag.
The path for the tag as it appears in the historical archive.
The last known quality score for the tag.
Last known timestamp for the tag, displays timestamp extension if tag is still actively being logged.
Last known value for the tag.
All other metadata properties displayed by individual row.
When a DataSet is selected in the Views window, the following fields are displayed for calculated tags in addition to the above:
|Calculated by||Name of the calculation instance as defined within the Calculation Server.|
|CalculatedByGUID||The unique GUID of the calculation instance.|
When a Virtual View is selected, the following additional fields are displayed for a tag:
|Historian ItemId||Provides the link to the historian archive for the tag within the Virtual View .|
|ItemID||The path for the tag as it appears in the current View.|
|Source ItemId||Provides the link to the original source volume for the tag.|
When a tag has been selected within the 'TAGS' window, timestamps, values, quality scores, and data types are displayed in the main Views window. Each column can be sized by grabbing and dragging the vertical line between column headers.
A tag that is actively logging data will have its timestamp automatically extended once every sixty seconds unless a new value is recorded. More detail around this procedure can be found in the Canary Historian documentation.
Additionally, several buttons are presented in the upper right hand corner.
Returns the main window display back to showing the available node tiles rather than displaying the currently selected tag data.
Selecting the 'FILTER' button will allow you to control the amount of data shown in the main window as well as whether to designate that data as raw data values or processed data values.
|Start||Timestamp for start of data to load into grid. A calendar control allows selection of the month, day and year. Hours, minutes and seconds can also be typed after the date as shown.|
|Stop||Timestamp of end of data to load into grid. A calendar control allows selection of the month, day and year. Hours, minutes and seconds can also be typed after the date as shown.|
|Data Type||Toggle between 'Raw' (when value changes) or 'Processed' (value for each aggregate interval).|
|Show Newest Data||When checked will scroll the grid to the end of data specified by the Stop timestamp. Unchecked will scroll the grid to the start of the data specified by the Start timestamp.|
If 'Processed' is selected as the data type, an additional configuration of the desired aggregate as well as the aggregate interval will need entered.
Clicking the 'REFRESH' button will return the 'Start' and 'Stop' fields to their default.
Provides a basic trend chart of the selected data. This can be helpful for visually inspecting the data pattern without needing to load an Axiom client. This tool is basic and not meant for any real diagnostic work.
Provides a refreshed view of the data, triggering any new timestamps, values, and quality scores to display. The refresh button can also be used to reset the 'Start' and 'Stop' fields of the Filter.