All Projects → alerta → alerta-webui

alerta / alerta-webui

Licence: Apache-2.0 license
Alerta Web UI 7.0

Programming Languages

Vue
7211 projects
typescript
32286 projects
CSS
56736 projects
javascript
184084 projects - #8 most used programming language
HTML
75241 projects
shell
77523 projects

Projects that are alternatives of or similar to alerta-webui

congif
convert script(1) output to GIF
Stars: ✭ 52 (-38.1%)
Mutual labels:  console
log-utils
Basic logging utils: colors, symbols and timestamp.
Stars: ✭ 24 (-71.43%)
Mutual labels:  console
colorize
pub.dartlang.org/packages/colorize
Stars: ✭ 20 (-76.19%)
Mutual labels:  console
Inquirer.cs
A collection of common interactive command line user interfaces. Port of Inquirer.js
Stars: ✭ 26 (-69.05%)
Mutual labels:  console
CLI-Autocomplete
Cross-platform flexible autocomplete library for your CLI applications.
Stars: ✭ 21 (-75%)
Mutual labels:  console
px
ps and top for human beings
Stars: ✭ 151 (+79.76%)
Mutual labels:  console
barecolor
A tiny JavaScript utility for printing colorful console messages.
Stars: ✭ 20 (-76.19%)
Mutual labels:  console
sensu-alerta-handler
Use Alerta as a dashboard for Sensu
Stars: ✭ 21 (-75%)
Mutual labels:  alerta
x-terminal
An xterm based Atom plugin for providing terminals inside your Atom workspace.
Stars: ✭ 34 (-59.52%)
Mutual labels:  console
stylish-log
🎉 Stylish-log "A beautiful way to see your web console logs"
Stars: ✭ 12 (-85.71%)
Mutual labels:  console
douban.fm
简洁的豆瓣电台命令行版。
Stars: ✭ 13 (-84.52%)
Mutual labels:  console
yachalk
🖍️ Terminal string styling done right
Stars: ✭ 131 (+55.95%)
Mutual labels:  console
laravel-console-spinner
Customized loading ⌛ spinner for Laravel Artisan Console.
Stars: ✭ 70 (-16.67%)
Mutual labels:  console
mini-me
Inline multiline text-editor/prompt written in Rust.
Stars: ✭ 23 (-72.62%)
Mutual labels:  console
tput.cr
Low-level component for building term/console applications in Crystal
Stars: ✭ 22 (-73.81%)
Mutual labels:  console
std
stdout, for humans.
Stars: ✭ 17 (-79.76%)
Mutual labels:  console
vagrant-try-alerta
Vagrant Boxes of alerta with other popular monitoring tools eg. Nagios, Riemann, Zabbix, Sensu, Kibana
Stars: ✭ 16 (-80.95%)
Mutual labels:  alerta
xplr
A hackable, minimal, fast TUI file explorer
Stars: ✭ 2,271 (+2603.57%)
Mutual labels:  console
rvw developers core
SFCC Developers Core Cartridge. A Salesforce Commerce Cloud (Demandware) Cartridge for Developers.
Stars: ✭ 43 (-48.81%)
Mutual labels:  console
console
a debugger for async rust!
Stars: ✭ 2,101 (+2401.19%)
Mutual labels:  console

Alerta Web UI 7.0

Actions Status Slack chat

Version 7.0 of the Alerta web UI is a VueJS web app.

webui

Installation

To install the web console:

$ wget https://github.com/alerta/alerta-webui/releases/latest/download/alerta-webui.tar.gz
$ tar zxvf alerta-webui.tar.gz
$ cd dist
$ python3 -m http.server 8000

>> browse to http://localhost:8000

Configuration

Most configuration will come from the Alerta API server. The minimum, and most common, configuration is simply to tell the web UI where the API server is located.

Environment variables for some settings can be used at build time:

$ export VUE_APP_ALERTA_ENDPOINT=https://alerta-api.example.com
$ npm install
$ npm run build

or place a config.json configuration file in the dist directory for run time configuration:

{
    "endpoint": "https://alerta-api.example.com"
}

Any setting from the API server can be overridden if included in the local config.json file. For a full list of supported settings see the web UI config settings in the online docs.

As a special case, support for setting an OAuth Client ID using a build-time environment variable is possible but should not be be necessary for most deployments.

$ export VUE_APP_CLIENT_ID=0ffe5d26-6c66-4871-a6fa-593d9fa972b1

Quick Start

A docker container that is built using the most recent master branch is available for download from Docker Hub.

$ docker pull alerta/alerta-beta

It can also be built locally using the Dockerfile in this repository.

$ docker build -t alerta/alerta-beta .

To run, create a config.json file and mount the file into the container

$ echo '{"endpoint": "https://alerta-api.example.com"}' > config.json
$ docker run -v "$PWD/config.json:/usr/share/nginx/html/config.json" \
  -it -p 8000:80 --rm --name alerta-beta alerta/alerta-beta

Note: Update the CORS_ORIGINS setting in the Alerta API server config to include the URL that the beta web console is hosted at otherwise the browser will throw "blocked by CORS policy" errors and not work.

Deployment

Since this is a static web app then a production deployment of Alerta web UI is simply a matter of downloading the release tarball and copying the dist directory to the a location that can be served via a web server or CDN.

See the VueJS platform guide for more information.

Troubleshooting

The two main issues with deployment in production involve CORS and HTML5 history mode.

Cross-origin Errors (CORS)

All modern browsers restrict access of a web app running at one domain to resources at a different origin (domain). This mechanism is known as CORS.

To ensure that the Alerta web app has permission to access the Alerta API at a different origin the web URL needs to be added to the CORS_ORIGINS settings for the API.

See API server configuration for more details.

HTML5 History Mode

The web app uses HTML5 history mode so you must ensure to configure the web server or CDN correctly otherwise users will get 404 errors when accessing deep links such as /alert/:id directly in their browser.

The fix is to provide a catch-all fallback route so that any URL that doesn't match a static asset will be handled by the web app and redirected.

Example using nginx

location / {
  try_files $uri $uri/ /index.html;
}

Development

Project setup

npm install

Compiles and hot-reloads for development

npm run serve

Compiles and minifies for production

npm run build

Tests

Run your tests

npm run test

Lints and fixes files

npm run lint

Run your end-to-end tests

npm run test:e2e

Run your unit tests

npm run test:unit

License

Alerta monitoring system and console
Copyright 2019-2021 Nick Satterly

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].