Skip to content

Custom widgets to enhance your New Relic dashboards. Includes: Map, Multiline Compare, Line/Bar, Event Overlays, Radar, List, Granular, Cumulative Timeseries, Navigator Widgets

License

Notifications You must be signed in to change notification settings

newrelic/nr-labs-widget-pack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

New Relic One Catalog Project header

Labs Widget Pack

GitHub release (latest SemVer including pre-releases)

A library of New Relic custom chart widgets created by the New Relic Labs team, for use in New Relic dashboards.

To get started:

Widgets

Click on the short description in each section to view chart details.

Line & Bar Chart

Display changes in quantity alongside trends over time.
Bar and Line chart screenshot

Overview

Use the Line & Bar chart to understand changes in quantity values (rendered as bars) alongside trends over time (rendered as lines). For instance, you may be interested in understanding how infrastructure load is impacted by throughput on your web site. Or you may want to see if web page response time effects the total number of orders processed - these are perfect use cases for a Line & Bar Chart.

The Line & Bar chart plots data across three axes:

  • the X axis represents time
  • the left Y axis represents the values for the Bar Charts
  • the right Y axis represents the values for the Line Charts

The chart allows you to define multiple line and bar queries, so it is highly recommended that the queries are aligned in terms of units and time periods.

Requirements

In order to use this chart, there are a few requirements:

  • You must provide at least 1 bar query and 1 time query
  • Each query must use the TIMESERIES clause, with the same bucket eg. TIMESERIES 1 day
  • If using the SINCE clause it is strongly recommended to be the same across all configured queries

A valid bar query for the chart could look like this: SELECT percentile(duration, 80) as 'Load' from PageView TIMESERIES 1 day since last week

A valid line query for the chart could look like this: SELECT count(*) as 'Views' from PageView where TIMESERIES 1 day since last week

To include multiple lines and/or bars in the chart, you can either:

  • define additional queries following the guidelines above
  • include a FACET clause in your query. Note that if you are faceting on the same attribute in both the line and the bar queries, you will need to alias one of those facets in order to avoid name collisions in the chart output.

Granular Timeseries Charts

Perform timeseries queries above the default 366 bucket allowance.

Overview

Use the Granular Timeseries Chart to see longer periods of data in high granularity above the default 366 allowance.

The Granular Timeseries Chart, supports Line, Area & Sparkline chart types.

Requirements

In order to use this chart, there are a few requirements:

  • Each query must use and end with the TIMESERIES clause, and also contain the bucket eg. TIMESERIES 1 second
  • Do not use SINCE or UNTIL clauses as they will automatically be determined based on the time range picker
  • If using the LIMIT clause, this should be placed before and not after the TIMESERIES clause
  • Be aware that with longer time ranges, the chart will need more time to load. Use of this chart is ideal for shorter ranges, such as 7 - 14 days.

A valid query for the chart could look like this: SELECT count(*) FROM Transaction FACET appName TIMESERIES 1 second


Cumulative Timeseries Chart

Trend cumulative values over time as a line or area chart. Cumulative chart screenshot

Overview

Use the Cumulative Chart to see running totals, or the total sum of a given data set as it grows with time.

The Cumulative Timeseries chart supports Line & Area chart types.

Requirements

In order to use this chart, there are a few requirements:

  • Each query must use and end with the TIMESERIES clause, and also contain the bucket eg. TIMESERIES 1 second
  • Do not use SINCE or UNTIL clauses as they will automatically be determined based on the time range picker
  • If using the LIMIT clause, this should be placed before and not after the TIMESERIES clause

A valid query for the chart could look like this: SELECT count(*) FROM Transaction FACET appName TIMESERIES


Condition Summary Chart

Display status of alert conditions or groups of conditions (based on tags). Condition summary screenshot

Multiline Compare Chart

Display multiple comparison periods in a single timeseries chart. Multi Line Compare chart screenshot

Multiline and Event Overlay Chart

Render events as markers on a line chart. Line and Event overlay screenshot

Area and Event Overlay Chart

Render events as markers on an area chart. Area and Event overlay screenshot

Scatter and Event Overlay Chart

Render events as markers on a scatter chart. Scatter and Event overlay screenshot

Radar Chart

Plot one or more groups of values over multiple variables, and compare them on a two-dimensional plane. Radar chart screenshot

Map Widget

Plot any data that includes latitude and longitude onto an interactive map, leveraging the Leaflet or Mapbox API.

Overview

Map screenshot

Supports multiple NRQL queries and custom markers

Requirements

In order to use this chart, there are a few requirements:

  • Leaflet requires no additional api key to setup (default)
  • Map Box provides additional features, but will require an Access Token from https://account.mapbox.com/auth/signup/
  • Query should contain one alias with 'name:SOME_VALUE' which will be used as the marker name
  • Query should have a FACET for latitude and longitude, use precision to ensure the FACET does not round the number
    FACET string(lat, precision: 5) as 'lat', string(lng, precision: 5) as 'lng'
    
  • Rotation can be set using the following alias with 'rotate:SOME_VALUE' (Map Box only)
  • Example Query:
    FROM FlightData SELECT latest(flightNo) as 'name:Flight No', latest(track) as 'rotate:track', latest(departure), latest(destination) FACET string(lat, precision: 5) as 'lat', string(lng, precision: 5) as 'lng' SINCE 60 seconds ago LIMIT MAX
    

List View

Display query results in a list, with smart formatting options.

Overview

List view screenshot

List View displays NRQL-queried data in a list. The list items are rows returned by the query, and formatted using a template. Below are a list of additional features.

  • Coerce values to number, date and boolean types
  • Format numbers and dates
  • Convert between digital size types (bytes, kilobytes, ...)
  • Search bar to filter list to the searched text

Requirements

For full details on how to use and format results in this chart, read the Template String documentation.


Action Loader

Incorporate buttons into your dashboards, with configurable onClick actions.

Overview

Incorporate buttons into your dashboards, with configurable onClick actions.

Example w/ Stacked Nerdlet

Nerdlet Id: service-maps.home

URL State
{"entityGuid":"MTYwNjg2MnxBUE18QVBQTElDQVRJT058NjI2OTA3NjE"}

Entity Navigator

Display entity navigator views directly in dashboards.

Overview

high density screenshot data mode screenshot

Entity Navigator supports both High Density mode (to display many entities' status efficiently) or Include Data mode (display up to 3 golden signals alongside status). Additional features include:

  • Configurable polling interval
  • Custom entitySearch query to filter entities further
  • Display only entities in an unhealthy state

NOTE: Only a single entity domain is configurable per widget


Enabling this Nerdpack

This pack of visualizations is available via the New Relic Catalog.

To enable it in your account, go to Add Data > Apps and Visualzations and search for "Labs Widget Pack". Click the icon and subscribe this to your accounts.

Once subscribed you can browse to Apps -> Custom Visualizations to add any of the widgets to a dashboard.

Manual Deployment

If you need to customize the widgets in this pack, you can fork the code base and follow the instructions on how to Customize a Nerdpack. If you have a change you feel everyone can benefit from, please submit a PR!

Support

This project is actively maintained by the New Relic Labs team. Connect with us directly by creating issues or asking questions in the discussions section of this repo.

We also encourage you to bring your experiences and questions to the Explorers Hub where our community members collaborate on solutions and new ideas.

New Relic has open-sourced this project, which is provided AS-IS WITHOUT WARRANTY OR DEDICATED SUPPORT.

Security

As noted in our security policy, New Relic is committed to the privacy and security of our customers and their data. We believe that providing coordinated disclosure by security researchers and engaging with the security community are important means to achieve our security goals.

If you believe you have found a security vulnerability in this project or any of New Relic's products or websites, we welcome and greatly appreciate you reporting it to New Relic through HackerOne.

Contributing

Contributions are encouraged! If you open an enhancement request, we'll invite you to contribute the change yourself. Please review our Contributors Guide.

Keep in mind that when you submit your pull request, you'll need to sign the CLA via the click-through using CLA-Assistant. If you'd like to execute our corporate CLA, or if you have any questions, please drop us an email at [email protected].

Open source license

This project is distributed under the Apache 2 license.

About

Custom widgets to enhance your New Relic dashboards. Includes: Map, Multiline Compare, Line/Bar, Event Overlays, Radar, List, Granular, Cumulative Timeseries, Navigator Widgets

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published