Prerequisites
Minimum Version: Requires SysTrack 10.1 or later.
Notes
After this DEX Pack is installed, it may take up to 24 hours for data to appear.
If you update or reinstall this DEX Pack, you must reassign any Views created below to the SF_Remote Working Role. You must also repeat the steps listed under Set Up the Office Subnets.
Installation Steps
To install this DEX Pack, complete the following steps:
Import the Kit
There are two ways to import the DEX Pack to SysTrack:
Import the pack directly from the Kits page in SysTrack. See the Import Online Kits guide for more information.
Import a local file downloaded from the DEX and Kit Downloads page. Click the Download Kit link for the pack and follow the Import Local Kits guide to finish the import.
Create the Performance Data View
NOTE: This step is only required for versions prior to 11.2.
Some performance data in the DEX Pack requires you to create a new View:
Navigate to Configure > Views.
Click the padlock icon in the upper-right to enable editing.
Click the plus icon to add a new View.
Fill in the Settings as follows:
View Name: SF_NETPERFDAILY
Existing Category: General
Expires in: 30 Days
When Expired: Append Data
Do NOT check When overdue by 1 day(s).
Set the Refresh drop-downs to Daily, Inside, 24x7, and Every Day.
Copy the SF_NETPERFDAILY SQL Query, and paste it into the box under SQL Selection > Generic.
Click Test SQL. A Success message should appear at the top of the screen. If the test is not successful, the query may have been copied incorrectly.
Click Create View at the top-right.
SF_NETPERFDAILY SQL Query
SELECT
T1.WGUID,
GETUTCDATE() AS VWTIME,
DATEADD(D, DATEDIFF(D, 0, T1.WTIME), 0) AS DOTY,
T1.VPN_FLAG,
T1.ADPT_DESC,
T1.ADPT_IP4_ADDR,
MAX(T1.WLAN_SEC_ENABLED) AS WLAN_SEC_ENABLED,
MAX(T1.NET_INTERNET_CONN) AS NET_INTERNET_CONN,
AVG(T1.NET_UTIL) AS NET_UTIL,
AVG(T1.FRAME_RATE) AS FRAME_RATE,
AVG(T1.BYTE_RATE) AS BYTE_RATE,
AVG(T1.BCAST_RATE) AS BCAST_RATE,
AVG(T1.OUTQLEN) AS OUTQLEN,
AVG(T1.REXMIT) AS REXMIT,
AVG(T1.WIFI_SIGNALQ) AS WIFI_SIGNALQ,
AVG(T1.WIFI_TRANS_RATE) AS WIFI_TRANS_RATE,
AVG(T1.WIFI_RECV_RATE ) AS WIFI_RECV_RATE,
SUM(T2.LATENCY) AS HEALTH_LATENCY_MINS,
SUM(T2.NET) AS HEALTH_NET_MINS,
COUNT(T1.WTIME) * 10 AS CONN_MINS,
COUNT(T3.WTIME) * 10 AS ACTIVE_MINS
FROM (((
SELECT
T0.WTIME,
MAX(T1.VPN_FLAG) AS VPN_FLAG
FROM SANET AS T0
LEFT JOIN (
SELECT
CASE WHEN (S0.STRVALUE LIKE '%VPN%' OR S2.STRVALUE = 'Demand' OR T0.ADPT_MACADDR IS NULL OR S1.STRVALUE LIKE '%VPN%' OR S1.STRVALUE LIKE '%Cisco%' OR S1.STRVALUE LIKE '%Perimeter%' OR S1.STRVALUE LIKE '%Windscribe%' OR S1.STRVALUE LIKE '%twingate%' OR S1.STRVALUE LIKE '%Juniper%' OR S1.STRVALUE LIKE '%Nord%' OR S1.STRVALUE LIKE '%torguard%' OR S1.STRVALUE LIKE '%encrypt%' OR S1.STRVALUE LIKE '%avast%' OR S1.STRVALUE LIKE '%AVG%' OR S1.STRVALUE LIKE '%PANGP%') AND S1.STRVALUE NOT LIKE '%AVASTAR%' THEN 1 ELSE 0 END AS VPN_FLAG,
T0.CONN_TIME,
T0.DISCONN_TIME,
S1.STRVALUE AS ADPT_DESC,
S3.STRVALUE AS ADPT_IP4_ADDR
FROM ((((SANET_CONN_HISTORY AS T0
LEFT JOIN SASTRDEVICE AS S0 ON T0.ADPT_FRIENDLY_ID = S0.STRINGID)
LEFT JOIN SASTRDEVICE AS S1 ON T0.ADPT_DESC_ID = S1.STRINGID)
LEFT JOIN SASTRDEVICE AS S2 ON T0.ADPT_CONN_TYPE = S2.STRINGID)
LEFT JOIN SASTRDEVICE AS S3 ON T0.ADPT_IP4_ADDR_ID = S3.STRINGID)
LEFT JOIN SASTRDEVICE AS S4 ON T0.NET_DNSSUFFIX_ID = S4.STRINGID
WHERE
S4.STRVALUE <> 'Identifying...'
AND T0.DISCONN_TIME IS NOT NULL
AND T0.DISCONN_TIME >= GETUTCDATE() - 30
AND S0.STRVALUE NOT LIKE '%VMWARE%'
UNION
SELECT
T0.VPN_FLAG,
T0.CONN_TIME,
T0.DISCONN_TIME,
T0.ADPT_DESC,
T0.ADPT_IP4_ADDR
FROM (
SELECT
CASE WHEN (S0.STRVALUE LIKE '%VPN%' OR S2.STRVALUE = 'Demand' OR T0.ADPT_MACADDR IS NULL OR S1.STRVALUE LIKE '%VPN%' OR S1.STRVALUE LIKE '%Cisco%' OR S1.STRVALUE LIKE '%Perimeter%' OR S1.STRVALUE LIKE '%Windscribe%' OR S1.STRVALUE LIKE '%twingate%' OR S1.STRVALUE LIKE '%Juniper%' OR S1.STRVALUE LIKE '%Nord%' OR S1.STRVALUE LIKE '%torguard%' OR S1.STRVALUE LIKE '%encrypt%' OR S1.STRVALUE LIKE '%avast%' OR S1.STRVALUE LIKE '%AVG%' OR S1.STRVALUE LIKE '%PANGP%') AND S1.STRVALUE NOT LIKE '%AVASTAR%' THEN 1 ELSE 0 END AS VPN_FLAG,
T0.CONN_TIME AS CONN_TIME,
GETUTCDATE() AS DISCONN_TIME,
S1.STRVALUE AS ADPT_DESC,
S3.STRVALUE AS ADPT_IP4_ADDR
FROM ((((SANET_CONN_HISTORY AS T0
LEFT JOIN SASTRDEVICE AS S0 ON T0.ADPT_FRIENDLY_ID = S0.STRINGID)
LEFT JOIN SASTRDEVICE AS S1 ON T0.ADPT_DESC_ID = S1.STRINGID)
LEFT JOIN SASTRDEVICE AS S2 ON T0.ADPT_CONN_TYPE = S2.STRINGID)
LEFT JOIN SASTRDEVICE AS S3 ON T0.ADPT_IP4_ADDR_ID = S3.STRINGID)
LEFT JOIN SASTRDEVICE AS S4 ON T0.NET_DNSSUFFIX_ID = S4.STRINGID
WHERE
S4.STRVALUE <> 'Identifying...'
AND T0.DISCONN_TIME IS NULL
AND S0.STRVALUE NOT LIKE '%VMWARE%'
) AS T0
INNER JOIN (
SELECT
MAX(T0.CONN_TIME) AS CONN_TIME,
S1.STRVALUE AS ADPT_DESC
FROM (SANET_CONN_HISTORY AS T0
LEFT JOIN SASTRDEVICE AS S1 ON T0.ADPT_DESC_ID = S1.STRINGID)
LEFT JOIN SASTRDEVICE AS S4 ON T0.NET_DNSSUFFIX_ID = S4.STRINGID
WHERE
S4.STRVALUE <> 'Identifying...'
AND T0.DISCONN_TIME IS NULL
GROUP BY S1.STRVALUE
) AS T1 ON T0.ADPT_DESC = T1.ADPT_DESC AND T0.CONN_TIME = T1.CONN_TIME
) AS T1 ON T0.WTIME >= T1.CONN_TIME AND T0.WTIME < T1.DISCONN_TIME
WHERE
T0.WTYPE = 1
AND DATEDIFF(D, T0.WTIME, <LASTREFRESHTIME>) <= 0
AND DATEDIFF(D, T0.WTIME, GETUTCDATE()) > 0
GROUP BY T0.WTIME
) AS T0
INNER JOIN (
SELECT
T0.WGUID,
T0.WTIME,
T1.VPN_FLAG,
T1.ADPT_DESC,
T1.ADPT_IP4_ADDR,
T0.NET_UTIL,
T0.FRAME_RATE,
T0.BYTE_RATE,
T0.BCAST_RATE,
T0.OUTQLEN,
T0.REXMIT,
T0.WIFI_SIGNALQ,
T0.WIFI_TRANS_RATE,
T0.WIFI_RECV_RATE,
T1.WLAN_SEC_ENABLED,
T1.NET_INTERNET_CONN
FROM SANET AS T0
LEFT JOIN (
SELECT
CASE WHEN (S0.STRVALUE LIKE '%VPN%' OR S2.STRVALUE = 'Demand' OR T0.ADPT_MACADDR IS NULL OR S1.STRVALUE LIKE '%VPN%' OR S1.STRVALUE LIKE '%Cisco%' OR S1.STRVALUE LIKE '%Perimeter%' OR S1.STRVALUE LIKE '%Windscribe%' OR S1.STRVALUE LIKE '%twingate%' OR S1.STRVALUE LIKE '%Juniper%' OR S1.STRVALUE LIKE '%Nord%' OR S1.STRVALUE LIKE '%torguard%' OR S1.STRVALUE LIKE '%encrypt%' OR S1.STRVALUE LIKE '%avast%' OR S1.STRVALUE LIKE '%AVG%' OR S1.STRVALUE LIKE '%PANGP%') AND S1.STRVALUE NOT LIKE '%AVASTAR%' THEN 1 ELSE 0 END AS VPN_FLAG,
T0.CONN_TIME,
T0.DISCONN_TIME,
S1.STRVALUE AS ADPT_DESC,
S3.STRVALUE AS ADPT_IP4_ADDR,
T0.WLAN_SEC_ENABLED,
T0.NET_INTERNET_CONN
FROM ((((SANET_CONN_HISTORY AS T0
LEFT JOIN SASTRDEVICE AS S0 ON T0.ADPT_FRIENDLY_ID = S0.STRINGID)
LEFT JOIN SASTRDEVICE AS S1 ON T0.ADPT_DESC_ID = S1.STRINGID)
LEFT JOIN SASTRDEVICE AS S2 ON T0.ADPT_CONN_TYPE = S2.STRINGID)
LEFT JOIN SASTRDEVICE AS S3 ON T0.ADPT_IP4_ADDR_ID = S3.STRINGID)
LEFT JOIN SASTRDEVICE AS S4 ON T0.NET_DNSSUFFIX_ID = S4.STRINGID
WHERE
S4.STRVALUE <> 'Identifying...'
AND T0.DISCONN_TIME IS NOT NULL
AND T0.DISCONN_TIME >= GETUTCDATE() - 30
AND S0.STRVALUE NOT LIKE '%VMWARE%'
UNION
SELECT
T0.VPN_FLAG,
T0.CONN_TIME,
T0.DISCONN_TIME,
T0.ADPT_DESC,
T0.ADPT_IP4_ADDR,
T0.WLAN_SEC_ENABLED,
T0.NET_INTERNET_CONN
FROM (
SELECT
CASE WHEN (S0.STRVALUE LIKE '%VPN%' OR S2.STRVALUE = 'Demand' OR T0.ADPT_MACADDR IS NULL OR S1.STRVALUE LIKE '%VPN%' OR S1.STRVALUE LIKE '%Cisco%' OR S1.STRVALUE LIKE '%Perimeter%' OR S1.STRVALUE LIKE '%Windscribe%' OR S1.STRVALUE LIKE '%twingate%' OR S1.STRVALUE LIKE '%Juniper%' OR S1.STRVALUE LIKE '%Nord%' OR S1.STRVALUE LIKE '%torguard%' OR S1.STRVALUE LIKE '%encrypt%' OR S1.STRVALUE LIKE '%avast%' OR S1.STRVALUE LIKE '%AVG%' OR S1.STRVALUE LIKE '%PANGP%') AND S1.STRVALUE NOT LIKE '%AVASTAR%' THEN 1 ELSE 0 END AS VPN_FLAG,
T0.CONN_TIME AS CONN_TIME,
GETUTCDATE() AS DISCONN_TIME,
S1.STRVALUE AS ADPT_DESC,
S3.STRVALUE AS ADPT_IP4_ADDR,
T0.WLAN_SEC_ENABLED,
T0.NET_INTERNET_CONN
FROM ((((SANET_CONN_HISTORY AS T0
LEFT JOIN SASTRDEVICE AS S0 ON T0.ADPT_FRIENDLY_ID = S0.STRINGID)
LEFT JOIN SASTRDEVICE AS S1 ON T0.ADPT_DESC_ID = S1.STRINGID)
LEFT JOIN SASTRDEVICE AS S2 ON T0.ADPT_CONN_TYPE = S2.STRINGID)
LEFT JOIN SASTRDEVICE AS S3 ON T0.ADPT_IP4_ADDR_ID = S3.STRINGID)
LEFT JOIN SASTRDEVICE AS S4 ON T0.NET_DNSSUFFIX_ID = S4.STRINGID
WHERE
S4.STRVALUE <> 'Identifying...'
AND T0.DISCONN_TIME IS NULL
AND S0.STRVALUE NOT LIKE '%VMWARE%'
) AS T0
INNER JOIN (
SELECT
MAX(T0.CONN_TIME) AS CONN_TIME,
S1.STRVALUE AS ADPT_DESC
FROM (SANET_CONN_HISTORY AS T0
LEFT JOIN SASTRDEVICE AS S1 ON T0.ADPT_DESC_ID = S1.STRINGID)
LEFT JOIN SASTRDEVICE AS S4 ON T0.NET_DNSSUFFIX_ID = S4.STRINGID
WHERE
S4.STRVALUE <> 'Identifying...'
AND T0.DISCONN_TIME IS NULL
GROUP BY S1.STRVALUE
) AS T1 ON T0.ADPT_DESC = T1.ADPT_DESC AND T0.CONN_TIME = T1.CONN_TIME
) AS T1 ON T0.WTIME >= T1.CONN_TIME AND T0.WTIME < T1.DISCONN_TIME
WHERE
T0.WTYPE = 1
AND DATEDIFF(D, T0.WTIME, <LASTREFRESHTIME>) <= 0
AND DATEDIFF(D, T0.WTIME, GETUTCDATE()) > 0
) AS T1 ON T0.WTIME = T1.WTIME AND T0.VPN_FLAG = T1.VPN_FLAG)
LEFT JOIN (
SELECT
WTIME,
NET,
LATENCY
FROM SAHEALTH
WHERE
WTYPE = 1
AND DATEDIFF(D, WTIME, <LASTREFRESHTIME>) <= 0
AND DATEDIFF(D, WTIME, GETUTCDATE()) > 0
) AS T2 ON T0.WTIME = T2.WTIME)
LEFT JOIN (
SELECT WTIME
FROM SASYS
WHERE
WTYPE = 1
AND WUSAGE >= 3
AND DATEDIFF(D, WTIME, <LASTREFRESHTIME>) <= 0
AND DATEDIFF(D, WTIME, GETUTCDATE()) > 0
) AS T3 ON T0.WTIME = T3.WTIME
GROUP BY
T1.WGUID,
DATEADD(D, DATEDIFF(D, 0, T1.WTIME), 0),
T1.VPN_FLAG,
T1.ADPT_DESC,
T1.ADPT_IP4_ADDRCreate the External USB Devices View
The External USB Devices Dashboard requires you to create a new View:
Navigate to Configure > Views.
Click the padlock icon in the upper-right to enable editing.
Click the plus icon to add a new View.
Fill in the Settings as follows:
View Name: SF_USB
Existing Category: General
Expires in: 30 Days
When Expired: Overwrite Data
Do NOT check When overdue by 1 day(s).
Set the Refresh drop-downs to Daily, Inside, 24x7, and Every Day.
Copy the SF_USB SQL Query, and paste it into the box under SQL Selection > Generic.
Click Test SQL. A Success message should appear at the top of the screen. If the test is not successful, the query may have been copied incorrectly.
Click Create View at the top-right.
SF_USB SQL Query
SELECT
T0.WGUID,
GETUTCDATE() AS VWTIME,
S0.STRVALUE AS DEVICE_NAME,
S2.STRVALUE AS MANUFACTURER
FROM ((SAPNP AS T0
INNER JOIN SASTR AS S0 ON T0.CAPTION = S0.STRINGID)
INNER JOIN SASTR AS S1 ON T0.DEVICEID = S1.STRINGID)
INNER JOIN SASTR AS S2 ON T0.MANUFAC = S2.STRINGID
WHERE
S1.STRVALUE LIKE 'USB%'
AND S2.STRVALUE NOT IN ('(Standard USB HUBs)',
'(Standard system devices)',
'(Standard USB Host Controller)',
'(Generic USB Hub)')Assign the Views to the Remote Working Role
After the above Views have been created, they must be assigned to the SF_Remote Working Role:
Navigate to Configure > Roles.
Use the drop-down at the top to select the SF_Remote Working Role.
Click Views, then check the boxes next to SF_NETPERFDAILY and SF_USB.
Click Save Changes at the top-right.
Assign the Remote Working Role to Relevant Configurations
This DEX Pack requires you to assign the SF_Remote Working Role to the relevant Configurations:
Navigate to Configure > Configurations.
Click the padlock icon in the upper-right to enable editing.
Use the drop-down at the top to select a relevant Configuration, or create a new Configuration.
Assign the SF_Remote Working Role to the Configuration by dragging it from Available Roles to Assigned Roles.
Click Save Changes at the top-right.
Repeat this process for any other relevant Configurations.
Set Up the Office Subnets
Most Dashboards in this DEX Pack can be configured to ignore systems connected to your office subnets. If configured correctly, data in those Dashboards will be restricted to remote systems.
The default office subnets (10.0.0.0/8) may already cover most of the office subnets in your enterprise. If not, then you can manually enter new office subnets:
Open the Remote Working Dashboard in Dashboard Viewer.
Navigate to Remote Connectivity > Home Connectivity.
To quickly open a Dashboard in Dashboard Builder, replace the word viewer in the URL with the word builder.
Click the blue Page Context box connected to an Office Subnets box. This box is usually located in the lower-right section.
Paste a list of your office subnets in the Default Value text box, separated by commas. There is a 1,000-character limit for this text box.
Click Apply.
To quickly return to Dashboard Viewer, click the Viewer button or the Back button in your browser.
Repeat this process for every Dashboard in this DEX Pack containing an Office Subnets pane under Advanced Options. This includes every Dashboard except the Overview, Summary, and Remote Session Intelligence panes.
You must repeat this process any time you reinstall this DEX Pack.