W3-Top isn't grafana, fio, sysbench, Crystal Disk Mark, htop, atop, iotop or gnome-system-monitor. It's all together with a web interface and built-in benchmarks.
Here is a build tool for w3top, an HTTP-based monitoring and benchmarking tool based on KernelManagementJam
Live demo: on xeon, on an Orange PI board
Supported architectures: x64, armv7 (32-bit) and aarch64 (arm 64-bit). ArmV6 (Raspberry PI 1st and Raspberry PI Zero) is not supported.
Pay attention, that these browsers are not perfect as the latest versions in performance. It is supposed that these ancient browsers should not be used on daily basis.
Short instruction: extract
w3top-linux-x64.tar.gz,
w3top-linux-arm.tar.gz,
w3top-linux-arm64.tar.gz,
w3top-linux-musl-x64.tar.gz or
w3top-rhel.6-x64.tar.gz archive
and run ./Universe.W3Top
or install SystemD service using install-systemd-service.sh
Shorter option:
export HTTP_HOST=0.0.0.0 HTTP_PORT=5050
export RESPONSE_COMPRESSION=True
export INSTALL_DIR=/opt/w3top
script=https://raw.githubusercontent.com/devizer/w3top-bin/master/install-w3top-service.sh
(wget -q -nv --no-check-certificate -O - $script 2>/dev/null || curl -ksSL $script) | bash
This configures storage for benchmark and metrics history using sqlite3 database. In addition to sqlite, Postgres 8.4+, mysql 5.1+ and MS Sql Server are also supported. It is enough to provide corresponding DATABASE-variable for script above:
# either mysql db
export MYSQL_DATABASE='Server=localhost;Database=w3top;Port=3306;Uid=w3top;Pwd="D0tN3t;42";Connect Timeout=20;'
# or postresql db
export PGSQL_DATABASE="Host=localhost;Port=5432;Database=w3top;Username=w3top;Password=pass;Timeout=15;"
# or MS Sql Server db
export MSSQL_DATABASE="Server=localhost,1433;Database=w3top;User=w3top;Password=pass;"
Examples of local-only accessed db configurations for w3top are prepared for MySQL 5.1, Postgres SQL 8.4, Postgres SQL 11 on centos 6. By the way this scripts are used by CI auto-tests
Official .Net Core prerequisites: https://docs.microsoft.com/en-us/dotnet/core/linux-prerequisites
Unofficial one-line installer of them using built-in package manager (zypper, yum, dnf, apk or apt):
script=https://raw.githubusercontent.com/devizer/glist/master/install-dotnet-dependencies.sh;
(wget -q -nv --no-check-certificate -O - $script 2>/dev/null || curl -ksSL $script) | bash
As of now w3top service needs 60Mb of RAM on 32-bit arm and 100Mb of RAM on x64/arm64.
The Installer above needs common command line tools: sudo
, bash
, tar
, gzip
, sha256sum
and wget
| curl
.
sudo systemctl disable w3top.service
sudo rm -f /etc/systemd/system/w3top.service
sudo rm -rf /opt/w3top
journalctl -u w3top.service || cat /tmp/w3top.log
For disk benchmark, it is recommended to install the latest fio and libaio. w3top comes with precompiled binaries of fio for all the supported architectures (x64, arm32, and arm64), but system fio takes precedence. After upgrading system fio or system libaio, fio metadata cache should be flushed: rm -rf ~/.cache/fio; systemctl restart w3top
Compile from source.