All Projects → FeliceGeracitano → webperf-dashboard

FeliceGeracitano / webperf-dashboard

Licence: other
Web Performance Dashboard forked from https://github.com/boyney123/garie

Programming Languages

typescript
32286 projects
shell
77523 projects
Dockerfile
14818 projects

Projects that are alternatives of or similar to webperf-dashboard

Unifiedmetrics
Fully-featured metrics collection agent for Minecraft servers. Supports Prometheus and InfluxDB. Dashboard included out-of-box.
Stars: ✭ 29 (-43.14%)
Mutual labels:  influxdb, metrics, grafana
Hastic Server
Hastic data management server for analyzing patterns and anomalies from Grafana
Stars: ✭ 292 (+472.55%)
Mutual labels:  influxdb, metrics, grafana
cv4pve-metrics
Metrics for Proxmox VE, Grafana with dasboard, InfluxDb
Stars: ✭ 38 (-25.49%)
Mutual labels:  influxdb, metrics, grafana
Appmetrics
App Metrics is an open-source and cross-platform .NET library used to record and report metrics within an application.
Stars: ✭ 1,986 (+3794.12%)
Mutual labels:  influxdb, metrics, grafana
Grafana
The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
Stars: ✭ 45,930 (+89958.82%)
Mutual labels:  influxdb, metrics, grafana
Pgwatch2
PostgreSQL metrics monitor/dashboard
Stars: ✭ 960 (+1782.35%)
Mutual labels:  influxdb, metrics, grafana
Questdb
An open source SQL database designed to process time series data, faster
Stars: ✭ 7,544 (+14692.16%)
Mutual labels:  influxdb, metrics, grafana
Influxgraph
Graphite InfluxDB backend. InfluxDB storage finder / plugin for Graphite API.
Stars: ✭ 87 (+70.59%)
Mutual labels:  influxdb, metrics, grafana
Grafana Influx Dashboard
Grafana InfluxDB scripted dashboard
Stars: ✭ 130 (+154.9%)
Mutual labels:  influxdb, metrics, grafana
Icingaweb2 Module Grafana
Grafana module for Icinga Web 2 (supports InfluxDB & Graphite)
Stars: ✭ 190 (+272.55%)
Mutual labels:  influxdb, metrics, grafana
ml-ops
Get your MLOps (Level 1) platform started and going fast.
Stars: ✭ 81 (+58.82%)
Mutual labels:  influxdb, grafana
octane-exporter
Export Laravel Octane metrics using this Prometheus exporter.
Stars: ✭ 14 (-72.55%)
Mutual labels:  metrics, grafana
rpi-monitoring-node
Automated installation of Grafana, Telegraf and influxdb for your Raspberry Pi
Stars: ✭ 18 (-64.71%)
Mutual labels:  influxdb, grafana
formula1-telemetry-kafka
No description or website provided.
Stars: ✭ 99 (+94.12%)
Mutual labels:  influxdb, grafana
microservices-observability
🎉 Microservices Observability - Log Aggregation, Distributed Tracking, Metrics
Stars: ✭ 40 (-21.57%)
Mutual labels:  influxdb, grafana
air-quality
Live dashboard for air quality in my home.
Stars: ✭ 70 (+37.25%)
Mutual labels:  influxdb, grafana
darksky2influxdb
Stores wheather forcecast data from darkskyapi into a influxdb database
Stars: ✭ 21 (-58.82%)
Mutual labels:  influxdb, grafana
envsensor-observer-py
Python Bluetooth low energy observer example for OMRON Environment Sensor (2JCIE-BL01)
Stars: ✭ 31 (-39.22%)
Mutual labels:  influxdb, grafana
docker-telegraf-influxdb-grafana
Docker Image with Telegraf, InfluxDB and Grafana
Stars: ✭ 17 (-66.67%)
Mutual labels:  influxdb, grafana
solar-logger
A datalogger for a solar inverter. Stores data in influxdb and displays it in grafana. Has load diverting capability, to use the inverter's excess power
Stars: ✭ 53 (+3.92%)
Mutual labels:  influxdb, grafana

WebPerformanceDashboard

Introduction

Web performance dashboard powered by Lighthouse, forked from https://github.com/boyney123/garie with addition of

  • Typescript
  • Monorepo approach
  • GitHub BOT
  • Removed Pagespeed Insights (now powered by lighthouse)
  • Latest lighthouse
  • Grafana dashboards with more details
  • more to come.. (Performance delta on target Branch, more metrics, parallel page analysis)

Requirements

  • docker >= 18 and Node >= 8

Installation

git clone https://github.com/FeliceGeracitano/webperf-dashboard.git

Run the project

$ docker-compose -f "docker-compose.yml" up -d --build

open dashboard at localhost, user: admin pass: secret

this will run 4 services influxdb, chronograf, grafana & felicegeracitano/webperf-dashboard-lighthouse

Configuration

In the root of the application there is a config.json file, which is propagated to packages/lighthouse during docker build step.

example,

{
  "cron": "0 */10 * * * *",
  "urls": [
    { "url": "https://reactjs.org", "options": { "report": true } },
    { "url": "https://vuejs.org", "options": { "report": true } },
    { "url": "https://angular.io", "options": { "report": true } }
  ]
}

Set report if you want to save lighthouse report as html.

More info about the cron pattern at https://www.npmjs.com/package/cron

Dashboards Built-in

  • Single Audit Image of Single Page Dashboard

Inspired by the lighthouse report, analyze score trend over time, identify performance metric and their thresholds. Read suggestions directly from Latest Lighthouse report embedded in the dashboard

  • Versus Image of Versus Dashboard

Pretty much a like Single Page Dashboard but oriented to 1vs1 or all comparision.

Develop packages/lighthouse

Comment out felicegeracitano/webperf-dashboard-lighthouse service in docker-compose.yml, then run to spin up dependecies:

$ docker-compose -f "docker-compose.yml" up -d --build
$ cd packages/lighthouse && npm start

Test local container for packages/lighthouse

In docker-compose.yml replace felicegeracitano/webperf-dashboard-lighthouse with webperf-dashboard-lighthouse (or any other local name you prefer), then run:

$ cd packages/lighthouse && docker build -t webperf-dashboard-lighthouse .
$ cd ../.. && docker-compose up

Deploy your container

$ cd packages/lighthouse
$ docker tag webperf-dashboard-lighthouse:latest felicegeracitano/webperf-dashboard-lighthouse:latest
$ docker push felicegeracitano/webperf-dashboard-lighthouse:latest

Tip:
replace latest tag with fixed version etc 1.1, 2.0...

Troubleshooting

  • Kills all running containers with docker kill $(docker ps -q)
  • Delete all stopped containers with docker rm $(docker ps -a -q)
  • Delete all images with docker rmi $(docker images -q)

GitHub BOT

You can improve reviewers life running Lighthouse audit on every PR update. In this repo there is an example using a Travis CI, the job communicate progress and result to GitHub.

Running Job:

Result Comment from the BOT:

Configure your repo with a Travis Job:

if you inspect run_audit.sh you will notice that you need to provide an url of your running up. This obsvously depends on your app, you can choose to build your app in the travis job itsels or provide an external URL.

  • run_audit.sh will launch the lighthouse service and inspectig your app, posting the result in the PR created.

Other Tips

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].