Configure the web UI

COMMERCIAL FEATURE: Access web UI configuration in the packaged Sensu Go distribution. For more information, read Get started with commercial features.

Web UI configuration allows you to define certain display options for the Sensu web UI, such as which web UI theme to use, the number of items to list on each page, and which URLs and linked images to expand. You can define a single custom web UI configuration to federate to all, some, or only one of your clusters.

Create a web UI configuration

Use the enterprise/web/v1 API POST endpoint or sensuctl create to create a GlobalConfig resource. The web UI configuration reference describes each attribute you can configure in the GlobalConfig resource.

NOTE: Each cluster should have only one web configuration.

If an individual user’s settings conflict with the web UI configuration settings, Sensu will use the individual user’s settings. For example, if a user’s system is set to dark mode and their web UI settings are configured to use their system settings, the web UI will use dark mode for that user, even if you set the theme to classic in your web UI configuration.

Federate a web UI configuration to specific clusters

The web UI configuration in use is provided by the cluster you are connected to. For example, if you open the web UI for https://cluster-a.sensu.my.org:3000, the web UI display will be configured according to the GlobalConfig resource for cluster-a.

In a federated environment, you can create an etcd replicator for your GlobalConfig resource so you can use it for different clusters:

--- 
type: EtcdReplicator
api_version: federation/v1
metadata: 
  name: web_global_config
spec: 
  api_version: web/v1
  ca_cert: /path/to/ssl/trusted-certificate-authorities.pem
  cert: /path/to/ssl/cert.pem
  insecure: false
  key: /path/to/ssl/key.pem
  replication_interval_seconds: 120
  resource: GlobalConfig
  url: "http://127.0.0.1:2379"
{
  "type": "EtcdReplicator",
  "api_version": "federation/v1",
  "metadata": {
    "name": "web_global_config"
  },
  "spec": {
    "api_version": "web/v1",
    "ca_cert": "/path/to/ssl/trusted-certificate-authorities.pem",
    "cert": "/path/to/ssl/cert.pem",
    "insecure": false,
    "key": "/path/to/ssl/key.pem",
    "replication_interval_seconds": 120,
    "resource": "GlobalConfig",
    "url": "http://127.0.0.1:2379"
  }
}

Debugging in federated environments

In a federated environment, a problem like incorrect configuration, an error, or a network issue could prevent a cluster from appearing in the web UI namespace switcher.

If you set the always_show_local_cluster attribute to true in your web UI configuration, the namespace switcher will display a heading for each federated cluster, along with the local-cluster heading to indicate the cluster you are currently connected to. With always_show_local_cluster set to true, the cluster administrator can directly connect to the local cluster even if there is a problem that would otherwise prevent the cluster from being listed in the namespace switcher.

NOTE: Use the always_show_local_cluster attribute only in federated environments. In a single-cluster environment, the namespace switcher will only list a local-cluster heading and the namespaces for that cluster.