All Projects โ†’ sitespeedio โ†’ dashboard.sitespeed.io

sitespeedio / dashboard.sitespeed.io

Licence: other
Example how to use sitespeed.io to monitor the performance of your web site

Programming Languages

javascript
184084 projects - #8 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to dashboard.sitespeed.io

Requesttracker
Track when your users get your HTTP requests
Stars: โœญ 13 (-69.77%)
Mutual labels:  performance-monitoring, webperf
Speedtracker
๐Ÿ“‰ Visualisation layer and data store for SpeedTracker
Stars: โœญ 482 (+1020.93%)
Mutual labels:  performance-monitoring, webperf
performance-budget-plugin
Perfromance budget plugin for Webpack (https://webpack.js.org/)
Stars: โœญ 65 (+51.16%)
Mutual labels:  performance-monitoring, webperf
Nemetric
ๅ‰็ซฏๆ€ง่ƒฝๆŒ‡ๆ ‡็š„็›‘ๆŽง,้‡‡้›†ไปฅๅŠไธŠๆŠฅใ€‚็”จไบŽๆต‹้‡็ฌฌไธ€ไธชdom็”Ÿๆˆ็š„ๆ—ถ้—ด(FP/FCP/LCP)ใ€็”จๆˆทๆœ€ๆ—ฉๅฏๆ“ไฝœๆ—ถ้—ด๏ผˆfid|tti๏ผ‰ๅ’Œ็ป„ไปถ็š„็”Ÿๅ‘ฝๅ‘จๆœŸๆ€ง่ƒฝ,๏ผŒ็ฝ‘็ปœ็Šถๅ†ตไปฅๅŠ่ต„ๆบๅคงๅฐ็ญ‰็ญ‰ใ€‚ๅ‘็›‘ๆŽงๅŽๅฐๆŠฅๅ‘Šๅฎž้™…็”จๆˆทๆต‹้‡ๅ€ผใ€‚
Stars: โœญ 145 (+237.21%)
Mutual labels:  performance-monitoring, webperf
webmethods-integrationserver-skyprofiler
SKYProfiler is a performance monitoring tool for Integration Server. SKYProfiler tracks the service invocations and the monitored data can be seen in real time. This helps users track the time each service invocation takes and further drills down to the child service to identify which service contributes to time.
Stars: โœญ 26 (-39.53%)
Mutual labels:  performance-monitoring
Perfume.js
Web performance library for measuring all User-centric performance metrics
Stars: โœญ 2,533 (+5790.7%)
Mutual labels:  performance-monitoring
Myperf4j
High performance Java APM. Powered by ASM. Try it. Test it. If you feel its better, use it.
Stars: โœญ 2,281 (+5204.65%)
Mutual labels:  performance-monitoring
Appsignal Elixir
๐ŸŸช AppSignal for Elixir package
Stars: โœญ 176 (+309.3%)
Mutual labels:  performance-monitoring
jekyll-gzip
Generate gzipped assets and files for your Jekyll site at build time
Stars: โœญ 34 (-20.93%)
Mutual labels:  webperf
perfmetrics
A library for sending software performance metrics from Python libraries and apps to statsd.
Stars: โœญ 26 (-39.53%)
Mutual labels:  performance-monitoring
HowSlow
A Service Worker that monitors network requests to estimate bandwidth and RTT
Stars: โœญ 38 (-11.63%)
Mutual labels:  webperf
Element
๐Ÿ’ฆLoad test your app using real web browsers
Stars: โœญ 204 (+374.42%)
Mutual labels:  performance-monitoring
playwright-lighthouse
๐ŸŽญ: Playwright Lighthouse Audit
Stars: โœญ 120 (+179.07%)
Mutual labels:  performance-monitoring
Azuredatabricksbestpractices
Version 1 of Technical Best Practices of Azure Databricks based on real world Customer and Technical SME inputs
Stars: โœญ 186 (+332.56%)
Mutual labels:  performance-monitoring
ibm-spectrum-scale-bridge-for-grafana
This tool allows the IBM Spectrum Scale users to perform performance monitoring for IBM Spectrum Scale devices using third-party applications such as Grafana software.
Stars: โœญ 24 (-44.19%)
Mutual labels:  performance-monitoring
Blockcanaryex
make performance bottleneck detection easily when app blocked
Stars: โœญ 2,123 (+4837.21%)
Mutual labels:  performance-monitoring
Droidtelescope
DroidTelescope๏ผˆDT๏ผ‰๏ผŒAndroid็ซฏAppๆ€ง่ƒฝ็›‘ๆŽงๆก†ๆžถ
Stars: โœญ 231 (+437.21%)
Mutual labels:  performance-monitoring
webperf-ecommerce-id
โšก๏ธ Web Perf Comparison for E-Commerce in Indonesia
Stars: โœญ 38 (-11.63%)
Mutual labels:  webperf
Snmpcollector
A full featured Generic SNMP data collector with Web Administration Interface for InfluxDB
Stars: โœญ 216 (+402.33%)
Mutual labels:  performance-monitoring
Sqlwatch
SQL Server Performance Monitor
Stars: โœญ 213 (+395.35%)
Mutual labels:  performance-monitoring

Tests running dashboard.sitespeed.io

Build status

This is a working example of how you can use sitespeed.io to monitor the performance of your web site. The code run on an instance on Digital Ocean and send the metrics to dashboard.sitespeed.io (that is setup using our docker-compose file and configured for production usage).

You should use this repository as an example of what you can setup yourself. The idea is to make it easy to setup, easy to add new URLs to test and easy to add a new user journey. You start the a script (loop.sh) on your server that runs forever but for each iteration, it runs git pull and update the scripts so that if you add new URLs to test, they are automatically picked up.

You can check out the full documentation at our documentation site.

Do you want to add a new URL to test on desktop? Navigate to desktop and create your new file there. Want to add a user journey? Add the script in the same place and name then .js.

Our example run tests for desktop, emulated mobile (both URLs and scripts).

The structure looks like this:

.
โ”œโ”€โ”€ README.md
โ”œโ”€โ”€ config
โ”‚   โ”œโ”€โ”€ README.md
โ”‚   โ”œโ”€โ”€ alexaDesktop.json
โ”‚   โ”œโ”€โ”€ alexaMobile.json
โ”‚   โ”œโ”€โ”€ crux.json
โ”‚   โ”œโ”€โ”€ desktop.json
โ”‚   โ”œโ”€โ”€ desktopMulti.json
โ”‚   โ”œโ”€โ”€ emulatedMobile.json
โ”‚   โ”œโ”€โ”€ emulatedMobileMulti.json
โ”‚   โ”œโ”€โ”€ loginWikipedia.json
โ”‚   โ”œโ”€โ”€ news.json
โ”‚   โ”œโ”€โ”€ replay.json
โ”‚   โ””โ”€โ”€ spa.json
โ”œโ”€โ”€ loop.sh
โ”œโ”€โ”€ run.sh
โ””โ”€โ”€ tests
    โ”œโ”€โ”€ desktop
    โ”‚   โ”œโ”€โ”€ alexaDesktop.txt
    โ”‚   โ”œโ”€โ”€ crux.txt
    โ”‚   โ”œโ”€โ”€ desktop.txt
    โ”‚   โ”œโ”€โ”€ desktopMulti.js
    โ”‚   โ”œโ”€โ”€ loginWikipedia.js
    โ”‚   โ”œโ”€โ”€ news.txt
    โ”‚   โ”œโ”€โ”€ replay.replay
    โ”‚   โ””โ”€โ”€ spa.js
    โ””โ”€โ”€ emulatedMobile
        โ”œโ”€โ”€ alexaMobile.txt
        โ”œโ”€โ”€ emulatedMobile.txt
        โ””โ”€โ”€ emulatedMobileMulti.js
        

The loop.sh is the start point. Run it. That script will git pull the repo for every iteration and run the script run.sh.

Then run.sh will use the right configuration in /config/ and run the URLs/scripts that are configured. Our configuration files extends configuration files that only exits on the server where we hold secret information like username and passwords. You don't need set it up that way, if you use a private git repo.

Install

Run your tests on a Linux machine. You will need Docker and Git. You can follow Dockers official documentation or follow our instructions:

# Update
sudo apt-get update
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common -y

## Add official key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

## Add repo
sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

sudo apt-get update

# Install docker
sudo apt-get install docker-ce docker-ce-cli containerd.io -y

You also need git on your server:

sudo apt-get install git -y

Then depending on where you run your tests, you wanna setup the firewall.

Your server now ready for testing.

Setup

On our server we clone this repo but you should clone your own :)

git clone https://github.com/sitespeedio/dashboard.sitespeed.io.git

On our server we have two configuration files that only exits on that server, that's where we have the secrets. They look like this:

/conf/secrets.json

{
  "graphite": {
    "host": "OUR_HOST",
    "auth": "THE_AUTH",
    "annotationScreenshot": true
  },
  "slack": {
    "hookUrl": "https://hooks.slack.com/services/THE/SECRET/S"
  },
  "resultBaseURL": "https://s3.amazonaws.com/results.sitespeed.io",
  "s3": {
    "key": "S3_KEY",
    "secret": "S3_SECRET",
    "bucketname": "BUCKET_NAME",
    "removeLocalResult": true
  },
  "browsertime": {
    "wikipedia": {
      "user": "username",
      "password": "password"
    }
  }

}

Run

Go into the directory that where you cloned the directory: cd dashboard.sitespeed.io And then start: nohup ./loop.sh &

To verify that everything works you should tail the log: tail -f /tmp/sitespeed.io.log

Stop your tests

Starting your test creates a file named sitespeed.run in your current folder. The script on the server will continue to run forever until you remove the control file: rm sitespeed.run

The script will then stop when it has finished the current run(s).

Start on reboot

Sometimes your cloud server reboots. To make sure it auto start your tests, you can add it to the crontab. Edit the crontab with crontab -e and add (make sure to change the path to your installation and the server name):

@reboot rm /root/dashboard.sitespeed.io/sitespeed.run;cd /root/dashboard.sitespeed.io/ && ./loop.sh
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].