What is the Sensu Enterprise Dashboard?

The Sensu Enterprise Dashboard is a simple web-based application that provides
realtime visibility into Sensu monitoring data, with dedicated views for
monitoring events, clients, checks, aggregates, data centers, and more. The
dashboard provides powerful global search features for filtering views so users
can focus on the data that’s important to them. The dashboard also provides
basic operational controls to acknowledge or otherwise “silence” monitoring
events, request ad hoc execution of monitoring checks, and much more.

What is Uchiwa?

The Sensu Enterprise Dashboard is based on the open-source – and
community developed – Uchiwa dashboard. Very much like the
relationship between Sensu Core and Sensu Enterprise, the Sensu Enterprise
Dashboard builds on top of Uchiwa via a number of added-value extensions (e.g.
Role Based Access Controls; LDAP, GitHub, and GitLab
authentication; Audit Logging; etc), which development also results in
many contributions to the open-source Uchiwa dashboard project.

What is the Sensu Enterprise Console?

The Sensu Enterprise Console is a federated API endpoint provided by the Sensu
Enterprise Dashboard for API access to multiple Sensu datacenters
(available in Sensu Enterprise Dashboard version 1.10 and newer). This API
provides added-value features including token-based authentication and granular
role-based access controls.

NOTE: the Sensu Enterprise Dashboard is comprised of two components: a backend
service (API) for aggregating monitoring data from one or more Sensu
datacenters, and a web application for displaying this information. As of
Sensu Enterprise Dashboard version 1.10, this Sensu Enterprise Dashboard backend
has been updated so that it provides the same API endpoints as the Sensu
API. Prior to version 1.10, the Sensu Enterprise Dashboard backend used
different API routes for accessing data from specific datacenters; for example,
client data was accessible via /clients/us-west-1/:client instead of
/clients/:client?dc=us-west-1. Version 1.11 introduced access token-based
authentication, and version 1.12 introduced RBAC for the Console API.

What is a Sensu “datacenter”?

The Sensu Enterprise Dashboard provides access to monitoring data from one or
more Sensu “datacenters”. A Sensu datacenter is simply a Sensu API endpoint,
which corresponds to a Sensu installation consisting of one or more Sensu
servers in cluster (multiple API endpoints may be provided by a single Sensu
installation or cluster).

Dashboard configuration

Example dashboard configuration

The following is the bare minimum that should be included in your Sensu
Enterprise Dashboard configuration.

Dashboard definition specification

The Sensu Enterprise dashboard uses two configuration scopes: the
{ "sensu": {} } configuration scope provides connection details for one or
more Sensu API endpoints (i.e. datacenters), and the { "dashboard": {} }
configuration scope is used to configure the behavior of the dashboard itself.

NOTE: by default, the Sensu Enterprise Dashboard will load configuration from
/etc/sensu/dashboard.json and/or from JSON configuration files located in
/etc/sensu/dashboard.d/**.json, with the same configuration merging behavior
as described here.

sensu attributes

name

description

The name of the Sensu API (used elsewhere as the datacenter name).

required

false

type

String

default

randomly generated

example

"name": "us-west-1"

host

description

The hostname or IP address of the Sensu API.

required

true

type

String

example

"host": "127.0.0.1"

port

description

The port of the Sensu API.

required

false

type

Integer

default

4567

example

"port": 4567

ssl

description

Determines whether or not to use the HTTPS protocol.

required

false

type

Boolean

default

false

example

"ssl": true

insecure

description

Determines whether or not to accept an insecure SSL certificate.

required

false

type

Boolean

default

false

example

"insecure": true

path

description

The path of the Sensu API. Leave empty unless your Sensu API is not mounted
to /.

required

false

type

String

example

"path": "/my_api"

timeout

description

The timeout for the Sensu API, in seconds.

required

false

type

Integer

default

5

example

"timeout": 15

user

description

The username of the Sensu API. Leave empty for no authentication.

required

false

type

String

example

"user": "my_sensu_api_username"

pass

description

The password of the Sensu API. Leave empty for no authentication.

required

false

type

String

example

"pass": "my_sensu_api_password"

dashboard attributes

host

description

The hostname or IP address on which Sensu Enterprise Dashboard will listen
on.

required

false

type

String

default

“0.0.0.0”

example

"host": "1.2.3.4"

port

description

The port on which Sensu Enterprise Dashboard and Console API will listen on.

auth attributes

NOTE: By default, temporary keys are generated when the Sensu Enterprise
Dashboard starts. These keys are later destroyed once the process is stopped or
restarted. These keys are used for generating and validating the signatures of
the JSON Web Tokens (JWT) for authentication. Specifying static keys is
supported and is necessary when using Sensu Enterprise Console behind a load
balancer. Static keys can be configured by using the auth attributes detailed
below.

privatekey

description

Path to a private RSA key used for generating and validating the signatures
of the JSON Web Tokens (JWT) for authentication.

required

false

type

String

example

"auth": {"privatekey": "/path/to/console.rsa"}

public

description

Path to a public RSA key used for generating and validating the signatures
of the JSON Web Tokens (JWT) for authentication.

Newsletter

Subscribe to the newsletter to get product updates about Sensu, including notifications when new releases are available. No more than one email per week, no less than one email per month. #monitoringlove.