Skip to main content

Insights+

Introduction

Device42 Insights+ provides integrated analytics that leverage the breadth and depth of Device42 discovery to help you make sense of your data through visuals and dashboards so that you can make better, more informed business decisions quickly.

Insights+ identifies patterns, trends, and outliers in data sets across your entire estate, elevating your performance with data understanding.

The combination of automatic discovered data and visualization empowers you and your IT teams with a more accurate understanding of your environment that would take the most senior IT staff years to understand –  which helps reduce the time it takes to restore service, increase the speed of root cause discovery, and better plan for capacity growth.

Note: Additional curated dashboards are available on our Insights+ GitHub page: https://github.com/device42/insights. Follow the instructions on the page to download and import the dashboards.

Using Insights+

  • Click on Insights+ in the Device42 main menu to display the Insights+ home page, and then select the visualizations you want to see.

Note: You can also select and display Insights+ dashboards on the Device42 home page.

  • Click DBB Cookbook to go to the cookbook documentation pages.
  • Click Data Dictionary to see the available Data Building Blocks.
  • Click Import to get new or updated dashboards as they become available. (Note you must be a super admin user or have the Feature | Update Insights+ Dashboards permission to import.)
  • Click Reports to create or edit email Reports and Alerts.
  • Click How it Works? to view the Insights+ documentation page.
  • Click Repository to go to the Insights+ GitHub page.
  • Click on a Dashboard to see its charts and graphs. Note that the list of dashboards and charts now appears in the left panel.

  • Hover over elements in a chart or graphic to see additional information.

  • Many Insights+ dashboards include filters you can use to refine the visualizations to see the information you want. You can collapse the filters to increase the dashboard viewing area.

  • You can also refresh or maximize a chart, view the chart query, view it as a table, or download it as an image or as a CSV file.

Terminology

Before diving into Insights+, there are some key terms to go over.

DataSet

Datasets are the smallest building block within Insights+. This term refers to the result of a query to the Device42 database. It includes the defining SQL query, resulting columns & data types, as well as metrics and calculated columns (defined below).

Metric

A Metric is an aggregation defined on top of a dataset. For example, in a query that returns 1 record per physical device, a Metric, could be the count of records returned – the total number of physical devices. Available aggregations include Count, Sum, Avg, Max, and Min.

Calculated Column

A Calculated Column is similar to a metric in that it is defined on top of a dataset. The difference is that it is not limited to aggregations. It is defined by a SQL expression and acts like any of the columns defined in the results of the dataset**.**

Chart

A Chart is a visual representation of a singular dataset. While a dataset can be shared by multiple charts, one chart can only utilize one dataset.

Dashboard

A Dashboard is a collection of charts that share a common theme. These charts can share underlying Datasets or utilize several different ones. Dashboards can also include filters that apply to charts contained within, as well as tabs to help organize the visualizations into relevant categories.

System-Defined

Any Dataset, Chart, or Dashboard provided within Device42 are considered to be System-Defined. This means that users of Insights+ cannot delete or otherwise modify these objects.

Tags

Tags within Insights+ are much like tags throughout Device42 – brief descriptions of the object they are attached to. They can be used for searching and filtering for specific visualizations.

Dashboard Hierarchy

Upon opening Insights+, the landing page shows the hierarchy of existing dashboards and charts. Each System-Defined dashboard in this list comes with a brief description and a set of tags. These can be viewed through the info bubble next to their name. Dashboards also have a clickable arrow to display the list of charts that exist on it.

Clicking on any individual chart or dashboard will pull it up front and center while moving the hierarchy over to a navigation pane on the left. The sidebar can be hidden by selecting the arrow in the top-left corner of the page, and the dashboard hierarchy can be reloaded using the refresh button next to it.

Search and Filter

On the landing page of Insights+ there is a search bar. This will search through existing charts and dashboards and open up a new page with descriptions and tags more visible to ensure the requested information is clear. Within that search bar is a filter option – searches can be restricted by content type (System-Defined or Custom) and by tag. The tag search will return any chart or dashboard that contains at least one of the tags selected.

Import & Export

There are several dashboards Device42 has developed which are not loaded into the application automatically. These dashboards are located in this Github repository. It is also possible that members of the Device42 team have developed out-of-band dashboards specific to a use case that need to be loaded in. For that, the import functionality allows a user to pull other content into the application.

On the Insights+ homepage, there is an Import button in the top-right hand corner. It opens a pop-up that expects a .zip file which defines a chart or dashboard. Caution: importing a dashboard that already exists will overwrite any existing content or changes. It is also important to note that System-defined dashboards can not be imported or overwritten.  The user that imports a dashboard or chart is considered the owner – they alone are able to make changes or re-import over it. The list of owners can be modified.

Exporting currently supports the download of a JPG image of the dashboard or chart being viewed.

Insight+ Videos

Instructional videos for using Insights+.

Standard Reports

You can use Insights+ to create a chart from existing Standard Reports (formerly known as Classic Reports).

Email Reports and Alerts

You can create and edit email Reports and Alerts for dashboards or charts that are generated and sent based on a schedule you set for each report or alert. The reports and alerts contain images of the dashboard or chart and links to them in Device42.

  • Report content can be either a dashboard or chart, and the report is triggered according to the schedule you set up for the report.
  • Alert content can also be either a dashboard or chart, but an alert is based on a condition you define for the alert using an SQL query that runs against a D42 database (d42_viewer_mt). The condition check is triggered according to the schedule you set up for the alert
  • Alerts and reports run as the alert or report creator, so they respect the model or RBAC permissions of the user who creates the report.
  • Alerts and reports can have have multiple owners (including the creator) who can all modify the alert or report.
  • Alerts and reports use the Device42 mail server settings (Tools > Settings > Mail Server Settings) to send alert and report emails – these need to be set for emails to function correctly.

Click Reports at the top right of the Insights+ home page, a dashboard or a chart to display the Alerts & Reports page.

The list page displays existing reports or alerts and include Actions options to view logs and edit or delete the reports or alerts. Click Alerts or Reports at the top left to display the items you want.

Reports

Click + Report to add a new report; click the Edit icon to edit an existing report. Insights+ displays the add/edit page.

  • Enter Name for the report, select the report Owners and add a Description if you want. Note that Owners should include the report creator and any other users you want to be able to modify the report.
  • The report is Active by default.
  • Use the Report schedule drop-downs to set the schedule or enter a CRON schedule.
  • You can select or enter Schedule settings for Log Retention and Working Timeout.
  • Select either Dashboard or Chart as the Message content, and then use the drop-down to select the specific dashboard or chart you want. Select Ignore cache when generating screen shot to have Insights+ regenerate the dashboard or chart graphic rather than using a cached version.
  • Select Email as the Notification method, and then enter the recipient email addresses (separated by commas or semicolons).
  • Click Save to save the report.

Alerts

Click + Alert to add a new alert; click the Edit icon to edit an existing alert. Insights+ displays the add/edit page. An alert lets you define an alert condition for the notification, but requires an SQL query to create the condition. The condition test is triggered according to the schedule you set for the alert.

  • Enter Name for the alert, select the alert Owner and add a Description if you want. Note that Owners should include the alert creator and any other users you want to be able to modify the alert.
  • The alert is Active by default.
  • Select the Database to use (this should always be d42_viewer_mt) for the Alert condition and enter the SQL Query for the condition. Select a Trigger Alert If… operator from the drop down, and then select the value for the statement to be used with the SQL query.

SQL Query – expects a SQL statement to poll Device42 for an aggregate value based on the input SQL. This means you will want to use a SQL statement that has a where clause and provides the output as a single aggregate value like COUNT, SUM, MAX, MIN, etc…

Here are a few examples:

Alert on certificates expiring in 30 days:

SELECT COUNT(*) FROM view_certificate_v1
WHERE valid_to BETWEEN CURRENT_DATE AND CURRENT_DATE + 30

New device discovered without a tag:

SELECT COUNT(*) FROM view_device_v2
WHERE DATE(first_added) = CURRENT_DATE AND tags IS NULL

Device discovered over 80% local storage:

Click to expand the code block
WITH
device_capacity AS (
Select
    a.device_pk Device_ID,
    ROUND(sum(c.capacity - c.free_capacity) / sum(c.capacity) * 100,2) used_percentage
From
    view_device_v2 a
    Left Join view_mountpoint_v1 c on c.device_fk = a.device_pk
   Where c.capacity>0
               and a.network_device = 'f'
GROUP BY 1
)
SELECT COUNT(*) FROM device_capacity
WHERE used_percentage > 80
  • Use the Report schedule drop-downs to set the schedule or enter a CRON schedule.
  • You can select or enter Schedule settings for Log Retention, Working Timeout, and Grace Period.
  • Select either Dashboard or Chart as the Message content, and then use the drop-down to select the specific dashboard or chart you want. Select Ignore cache when generating screen shot to have Insights+ regenerate the dashboard or chart graphic rather than using a cached version.
  • Select Email as the Notification method, and then enter the recipient email addresses (separated by commas or semicolons).
  • Click Save to save the alert.

DCIM Dataset, Chart and Alert Example

This section provides examples of how to take existing Device42 datasets and transform them into analytics of your own. For these datasets, you will first need to clone the dataset into one that you own and manage so that our system dashboards are not affected by any analysis you may want to do. This is most easily done by Exploring the dataset and viewing it in the SQL Editor. Here you can save it as a new dataset and label it something meaningful.

Power Flow

Power Flow is one of the datasets driving the Infrastructure Analysis dashboard, specifically the Power Usage & Impact Tab. It provides valuable insight on Resource Utilization for the Power Apparent Measurement – across all metrics, windows, and time periods. To aggregate on this dataset, it is important to clearly define which singular measurement set is desired.

Since Device42 currently provides several point-in-time metrics on Power usage, you may want to develop a time-series analysis of power usage to predict future power needs. For that, a time series line chart will do well.

Start by selecting View All Charts and finding the #Time option in the list.

Choose the Time-series Smooth Line to return a clean looking graph. In the Time column, use Start Time from the dataset. End Time is also a suitable option depending on how you want to perform the analysis. Since it only returns day-level values, keep the time-grain as Day.

We want to measure the max Power Apparent from all PDUs, but let’s target the display by grouping the data on Room & Rack – so we can break down the totals into meaningful categories.

However, since the dataset returns all metrics and time periods we need to filter down the singular measurement we want to analyze. Let’s use the MAX metric and the 1 Day period  to get the peak value for power apparent measured each day.

We end up with something like this, but you can choose to customize the formatting in the Customize tab. Color schemes, labels, values and other options can be found there.

Power Impact

Power Impact, which is similar to Power Flow, drives the Power Usage and Impact tab of the Infrastructure Analysis Dashboard. This is a fairly simple dataset that details all dependencies related to PDUs. You can quickly build up a couple of analyses from this dataset that differ from the Device42 provided charts.

For example, you can take the cloned dataset and set up a bar chart as in the image below.

By just setting up the dimension as pdu and the metric as a count you quickly get an idea of how ubiquitous your PDUs are across your network. You can change this to a sunburst chart to include the percentage of devices on each PDU. It is easy to add a filter to this chart to look at a particular Building, room, or rack using the appropriate fields. You can swap to measure distinct Business Apps affected.

This dataset is ideal for impact analysis or incident management use cases – it helps narrow down the scope of information to just the affected devices in the case of an outage.

DC Capacity – Alert Example

Data Center Capacity is a dataset that supports the Risk Center dashboard. It provides capacity information at building, room, and rack level. Similar to power flow, we must filter down to a specific type of filter when analyzing this dataset, or the aggregation values won’t be accurate.  It also makes a great example of how to utilize Insights+ Alerts to your advantage.

First we’ll need to create a chart that provides some immediate value. Let’s look for racks with a limited number of network ports available. We will keep it simple and just have it return some tabular data. After cloning the dataset, create a chart from it and first set up the handful of columns we think are important: Building, Room, Rack, object_tags, network_device_count, and the network port count columns. In the filters, we want to display only racks (reminder this is case-sensitive!) that have less than some threshold of their network ports available for use. This is done through 1 simple filter and 1 Custom SQL Filter.

This will return a table of data showcasing racks that have less than 10% of their network ports available and it is easy to manipulate as needed. Now let’s create both a Report and an Alert. A report is a scheduled execution of a chart or dashboard that can be emailed as an image or a CSV. CSV works well for tabular data, so let’s choose that option. This schedule will send the file at noon EDT once a week on Mondays – regardless of what data is returned.

An Alert, while still a scheduled execution, will only send the email if a certain condition is met. In this case, let’s set up an email every day if there are any racks that have NO remaining netports available. This query was built using the rack_port_count part of the base query we used in the chart and wrapping a COUNT around it. Alerts will sometimes require some SQL knowledge to enable intelligent conditions.

Click to expand the code block
WITH rack_ports AS (
SELECT d.rack_fk
           ,count(*) total_network_port_count
           ,(SELECT COUNT(*) FROM view_netport_v1 np WHERE d.device_pk = np.device_fk AND np.remote_netport_fk IS NOT NULL OR d.device_pk = np.second_device_fk AND np.remote_netport_fk IS NOT NULL) used_network_port_count
FROM view_device_v2 d
JOIN view_netport_v1 np ON d.device_pk = np.device_fk OR d.device_pk = np.second_device_fk
JOIN view_rack_v1 r ON r.rack_pk = d.rack_fk
WHERE
            d.network_device IS TRUE
            AND d.rack_fk IS NOT NULL
GROUP BY
            d.rack_fk,d.device_pk)
SELECT
count(DISTINCT rack_fk)
FROM rack_ports
WHERE
           total_network_port_count = used_network_port_count

How To Delete a Custom Dataset

You can quickly delete a saved dataset by following these steps. Note that deleting a custom dataset will affect any charts and dashboards based on that dataset.

  1. From the "Insights+" main menu, click on the "Create" button and select the "Create Chart" option.
Select create new chartSelect create new chart

  1. You'll be directed to a table listing your existing datasets. Identify the dataset you want to delete and move your cursor to the far right, under the "Actions" column. A trashcan and pencil icon will appear as you hover over it. Click on the trashcan icon.
Dataset delete optionDataset delete option

  1. A modal window will appear informing you of the number of charts and dashboards that will be affected by deleting the selected dataset. Type ‘DELETE’ into the text box and click on the "Delete" button to delete the dataset.
Confirm deletionConfirm deletion