1. Product Description
The purpose of SnowMirror Monitor is to provide an overview of your synchronizations directly from ServiceNow instance.
Prerequisite for Monitor to show any data is at least one SnowMirror product up and running in customer’s environment. SnowMirror product handles communication between ServiceNow instance and a target database where customer wants his data to be migrated. This communication runs as a daemon process by SnowMirror product.
Communication with ServiceNow instance is done via web services. Monitor doesn’t need any additional rights to perform it’s job. Rights assigned to user used for SnowMirror product are sufficient.
Monitor watches status of all products connected to the same ServiceNow instance. It uses HeartBeat functionality to monitor server status. HeartBeats are periodically sending response requests to all SnowMirror products and Monitor lets products answer these requests. If answered properly the product status is recognized as "on" and as "off" on the contrary.
Monitor retrieves all synchronization definitions from all products. It provides to user very compact view on the definition itself including all details about scheduler and also also full load scheduler. List of single runs of the definition and also all synchronized columns are listed with each definition.
Monitor stores all runs of all synchronization in one single module. Available filtering makes this list very usable when users seeks for information about particular run.
On top of that Monitor provides various graphs and dashboards for monitoring SnowMirror product performance so user is able to take action whenever necessary.
1.1. Prerequisites
This chapter lists all prerequisites needed before installation of SnowMirror Monitor.
-
Target customer’s ServiceNow instance up and running.
-
SnowMirror product installed & setup & running in customer’s environment.
Monitor is not able to retrieve historical data from old synchronization’s runs. It starts loading data at the very moment of setting Monitor "on" in SnowMirror product.
SnowMirror monitor can watch several SnowMirror applications installed on different servers. In order to work correctly those SnowMirror servers have to have different names.
Minimal versions of related software versions:
Service Now |
Fuji |
SnowMirror |
3.0 |
2. Installation Instructions
Installation process is straight-forward. It consists of two basic steps. It is strongly recommended to keep the order as is:
-
Load the SnowMirror Monitor Application into ServiceNow instance.
-
Set up SnowMirror product to communicate with the monitor.
For correct installation of application please follow detailed instructions below. Screenshots below are taken from Geneva ServiceNoc version. They are also valid for Fuji version too, just graphic is very sligtly different.
-
Login to ServiceNow instance as a user with rights to install applications / load update set (usually with admin role).
-
In left navigation pane go to “Update sets" and select "Retrieved update sets”
-
On opened page select option ""Use Related links "Import update sets".
-
Click on "Browse" to find update set to load.
-
Find SnowMirror Monitor update set. It is located in SnowMirror’s installation folder. Usually, it is "C:\Program Files\SnowMirror\snow-mirror\monitor". There, there is "SnowMirror Monitor-5.5.9.xml" file. Choose it and click on "Open".
-
Click on "Upload" and wait until it is fully uploaded.
Please note that loading of the update set may take some time. After approx. 10sec you can see a timer right next to the logged username indicating that operation is in progress.
-
When loading is finished a Review Update Set module opens. Open the update set by hitting its name "SnowMirror Monitor".
-
Review the update set by click on button "Preview Update Set".
-
A pop-up window with loading progress bar opens. Once finished, click on "Close" to continue.
-
Click "Commit Update Set".
-
Click "Commit Update Set". A pop-up window with progress bar opens.
Commit procedure is finished when a message "Update set committed in x minutes / seconds" appears. Click on "Close" button to finish installation process.
-
Installation of the monitor itself is finished now. State of the Update Set is now Committed. A new application is visible in the application navigator.
-
Login to SnowMirror product as user with rights to modify products settings.
-
Product go to "Settings" → "ServiceNow" → check box "Advanced Settings".
-
Check the option “SnowMirror Monitor Enabled” and "Save" the settings.
3. Update Instructions
Update process is pretty straight-forward. The process of upgrading SnowMirror Monitor is the same as installation process.
4. Security Roles
SnowMirror Monitor is an extension for SnowMirror product. Security restrictions applied for product are also sufficient for the monitor. There is no need for any other right to be added to any user in ServiceNow to let Monitor do its job. Monitor starts doing its job when it is installed into ServiceNow and also enabled in product.
In ServiceNow the SnowMirror Monitor application and all its modules is secured by role "SnowMirrorAdmin". Administrators have automatically access to the Monitor. Role SnowMirrorAdmin can be assigned to any user or to any user group. Users with this role or users in a group with this role are able to see whole application and every module in it.
Without this role assigned the ShowMirror Monitor application isn’t either visible or accessible for users.
5. Application Modules
SnowMirror monitor consists of several modules which are all available under "SnowMirror Monitor" application. All modules are available to all users with correct rights assigned.
-
Overview - SnowMirror performance dashboard
-
Synchronizations - list of all scheduled & planned synchronizations
-
Synchronization Runs - list of all runs of all synchronizations
-
Servers - list of monitored servers
-
Support - link to information about SnowMirror support
5.1. Synchronizations
In SnowMirror product each table is transferred from ServiceNow to customer’s database separately via its synchronization definition. These definitions are independent on each other.
Each synchronization definition can have multiple parameters. This parameters can differ between single definitions to - for example - split the load to customer’s database in time.
Synchronization of any table from ServiceNow can be configured via the Synchronization definition in SnowMirror product. In the product multiple parameters such as frequency and synchronization time and many others can be set.
Module "Synchronization" offers to user a view on all these definitions. In this module all definitions are visible. If multiple SnowMirror products (servers) are connected to one instance all definitions from all producst are displayed here. Additional information about last definition run is also visible there.
5.1.1. Synchronization list
In Service now a list can be customized to show required data. In the table below there is a list of all available details related to the synchronization definition.
Name | Description |
---|---|
Status |
Status of the last synchronization run |
Name |
Name of the synchronization definition |
Synchronization Definition |
Name of the synchronization definition |
Next run |
Planned date & time of next synchronization |
Duration |
How long was the last synchronization run |
Latest |
Indicator which shows if monitor has latest results of the synchronization run |
Started On |
Time and date of last synchronization run |
Sys ID (run_sys_id) |
System identification of last synchronization run |
Sys ID (def_sys_id) |
System identification of synchronization definition |
5.1.2. Synchronization form
After opening particular synchronization definition by click on the column "Name" or "Synchronization Definition" a form with all details regarding definition opens. This form as following fields:
Name | Description |
---|---|
Name |
Name of the synchronization definition |
ServiceNow Table |
The table in SNOW which is being synchronized |
Mirror Table |
Table in the destination database |
Encoded query |
The query used for synchronization, only records matching the query criteria are migrated (for example only active users) |
Delete strategy |
The strategy for recognizing a deleted record in Service Now. |
Active |
Indicator If this synchronization is used actively |
Created By |
Which user in SnowMirror application created this definition |
Created On |
Time and date when this definition was created |
Server |
SnowMirror application server which handles the synchronization |
Synchronization Type |
Either table, view or attachment can be synchronized. If view is selected, view synchronization type and master table need to be specified. |
Next Run |
Time and date of next synchronization run |
Section Columns
This section shows information about synchronization strategy related to columns.
Name | Description |
---|---|
Reference field type |
Type of foreign keys reference between SNOW table and destination table |
Auto Schema Update |
If true, it automatically updates table structure in the mirror database. |
Allow Inherited columns |
If true, columns can be inherited from its parent table. |
Section Scheduler
Displays the incremental scheduler settings for current synchronization. Incremental scheduler usually runs more often than full load scheduler as it migrates only the newly added data.
Type, begin date and time field are available for all different types of scheduler. Other field differs by selected Scheduler type. In the table below they are all available fields. If field is specific for some type it is distinguish with [scheduler_type].
Name | Description |
---|---|
Scheduler Type |
How the scheduler triggers synchronization |
Scheduler Begin Date |
When the synchronization begins |
Scheduler Time |
Time of synchronization beginning |
[Weekly] Monday / Tuesday / Wednesday / Thursday / Friday / Saturday / Sunday |
The day of week when synchronization occurs |
[Periodically] Scheduler Interval |
Interval (in minutes) when synchronization occurs |
[Cron] Scheduler cron |
Cron job specification when synchronization occurs |
Section Full Load Scheduler
Displays the settings for the full load scheduler list. It usually runs less often than the normal scheduler because it downloads all the data at one time and synchronize them.
The fields are the same as on the normal scheduler related list. Just names of the fields have prefix "Full Load".
Section SnowMirror Synchronization Runs
This list displays all runs of the synchronization. For description of Synchronization Runs see appropriate chapter in this document.
Section Synchronized Columns
This list displays columns that are being synchronized with this synchronization definition. Column manes and types visible in this list corresponds to source columns in the ServiceNow instance.
5.2. Synchronization runs
Depending on definition and its parameters any synchronization can be run multiple times a day / week. Each synchronization run can result into either successfully migrated records or into a failure. The result of each run of synchronization definition is stored in the Synchronization run module with a lot of related details.
Module "Synchronization runs" offers to user a view on all runs of all definitions from all products / servers. As default view layout in this list a user can see status (result) it the run, its name, starting and ending time and also how many records was inserted, updated and deleted in this particular run.
Numerous additional information such as synchronization start date and end date, duration of the run, logs and who started the run and many more are available here.
5.2.1. Synchronization runs list
As usual in Service now this list can be customized to show required data. In the table below there is a list of all available details related to the synchronization run.
Name | Description |
---|---|
Status |
Status of the last synchronization run |
Started On |
Time and date of last run’s start |
Started by |
Who started last run |
Ended On |
Time and date of last run’s end |
Duration |
Duration of the last run |
Latest |
Indicator which shows if monitor has latest results of the synchronization run |
Inserted |
Count of newly inserted records |
Updated(updated) |
Count of updated records |
Deleted |
Count of deleted records |
Total |
Count of total migrated records during last run |
Created |
Time and date when run was created |
Created by |
Who created the synchronization |
Log |
Detailed XML formatted log of last run |
Log HTML |
Detailed HTML formatted log of the last run |
Scheduled Start |
Time and date of first run of the definition |
SnowMirror ID |
Synchronization run ID in SnowMirror application |
Started by |
Who has started the run |
Synchronization Definition |
Name of synchronization definition used for this run |
Name (Synchronization Definition Name) |
Name of synchronization definition used for this run |
Server (Synchronization Definition Server) |
Name of SnowMirror server used for this run |
Tags |
Associated tags |
URL |
URL of the log from last run |
Updated(sys_updated_on) |
Time and date of last update of this run |
Updated by |
Who has updated this run |
Updates |
How many times was this run updated |
5.2.2. Synchronization runs form
After opening particular synchronization run by click on the column "Status" a form with all details regarding run opens. This form as following fields:
Name | Description |
---|---|
Status |
Status of the last synchronization run |
Scheduled Start |
Time and date of first run of the definition |
Started by |
Who started last run |
Duration |
Duration of the last run |
Ended On |
Time and date of last run’s end |
Started On |
Time and date of last run’s start |
URL |
URL of the log from last run |
Inserted |
Count of newly inserted records |
Updated |
Count of updated records |
Deleted |
Count of deleted records |
Total |
Count of total migrated records during last run |
Synchronization Definition |
Name of synchronization definition used for this run |
Log HTML |
Detailed HTML formatted log of the last run |
5.3. Servers
After the SnowMirror Monitor is installed in customer’s ServiceNow instance, it automatically discovers all SnowMirror products which are configured to connect to the instance and that are configured to use the Monitor. Communication between all products and monitor starts automatically right after seokrver is discovered.
Monitor reads all available information from each SnowMirror application. For every product it reads state of the server such us version of product installed, version of the operating system, databases and others. Additional information about how long is it running, last seen time and product URL is also available. and others and all synchronization definitions. Monitor doesn’t read any historical records for synchronization runs.
Module "Servers" offers to user on all customer’s SnowMirror servers. It monitors their status - if they are up or down. It also gets version of installed SnowMirror application, installed operating system, how log they were up and many others.
5.3.1. Servers list
As usual in Service now this list can be customized to show required data. In the table below there is a list of all available details related to the servers.
Field name | Description |
---|---|
Name |
Name of the server |
Version |
Version number of SnowMirror server application |
Status |
Status of the SnowMirror server, updated by HeartBeat functionality |
Start Time |
Time and date when server has started |
Uptime |
How long was (is) server running |
Last seen |
Time and date when last response was obtained from the HeartBeat request |
URL |
URL of the SnowMirror application server |
Configuration database |
Type of configuration database for the SnowMirror application |
Created |
Time and date when server was registered by SnowMirror monitor |
Created by |
Who registered the server into monitor |
JRE version |
Version of the Java Runtime Environment |
OS Name |
Type of operating system on running on SnowMirror server |
Last Refreshed |
Time and date when server details were updated as last |
Mirror database |
Type of the database in which the data are stored |
Tags |
Associated tags |
Updated |
Time and date of last update of this server |
Updated by |
Who has updated this server |
Updates |
How many times was this server updated |
5.3.2. Server form
After opening particular server by click on the column "Name" a form with all details regarding the server opens. This form as following fields: