summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xnetdata-installer.sh424
-rw-r--r--src/global_statistics.c6
-rw-r--r--src/health.c3
-rw-r--r--web/dashboard.html1006
-rw-r--r--web/dashboard.js11450
-rw-r--r--web/demo.html78
-rw-r--r--web/demo2.html250
-rw-r--r--web/demosites.html1950
-rw-r--r--web/index.html5187
-rw-r--r--web/registry.html382
-rw-r--r--web/tv.html482
11 files changed, 10614 insertions, 10604 deletions
diff --git a/netdata-installer.sh b/netdata-installer.sh
index 1a3e1a188c..4ffddbcd12 100755
--- a/netdata-installer.sh
+++ b/netdata-installer.sh
@@ -47,50 +47,50 @@ NETDATA_PREFIX=
LIBS_ARE_HERE=0
usage() {
- cat <<-USAGE
+ cat <<USAGE
- ${ME} <installer options>
+${ME} <installer options>
- Valid <installer options> are:
+Valid <installer options> are:
- --install /PATH/TO/INSTALL
+ --install /PATH/TO/INSTALL
- If your give: --install /opt
- netdata will be installed in /opt/netdata
+ If your give: --install /opt
+ netdata will be installed in /opt/netdata
- --dont-start-it
+ --dont-start-it
- Do not (re)start netdata.
- Just install it.
+ Do not (re)start netdata.
+ Just install it.
- --dont-wait
+ --dont-wait
- Do not wait for the user to press ENTER.
- Start immediately building it.
+ Do not wait for the user to press ENTER.
+ Start immediately building it.
- --zlib-is-really-here
- --libs-are-really-here
+ --zlib-is-really-here
+ --libs-are-really-here
- If you get errors about missing zlib,
- or libuuid but you know it is available,
- you have a broken pkg-config.
- Use this option to allow it continue
- without checking pkg-config.
+ If you get errors about missing zlib,
+ or libuuid but you know it is available,
+ you have a broken pkg-config.
+ Use this option to allow it continue
+ without checking pkg-config.
- Netdata will by default be compiled with gcc optimization -O3
- If you need to pass different CFLAGS, use something like this:
+Netdata will by default be compiled with gcc optimization -O3
+If you need to pass different CFLAGS, use something like this:
- CFLAGS="<gcc options>" ${ME} <installer options>
+ CFLAGS="<gcc options>" ${ME} <installer options>
- For the installer to complete successfully, you will need
- these packages installed:
+For the installer to complete successfully, you will need
+these packages installed:
- gcc make autoconf automake pkg-config zlib1g-dev (or zlib-devel)
- uuid-dev (or libuuid-devel)
+ gcc make autoconf automake pkg-config zlib1g-dev (or zlib-devel)
+ uuid-dev (or libuuid-devel)
- For the plugins, you will at least need:
+For the plugins, you will at least need:
- curl nodejs
+ curl nodejs
USAGE
}
@@ -172,26 +172,26 @@ do
fi
done
-cat <<-BANNER
+cat <<BANNER
- Welcome to netdata!
- Nice to see you are giving it a try!
+Welcome to netdata!
+Nice to see you are giving it a try!
- You are about to build and install netdata to your system.
+You are about to build and install netdata to your system.
- It will be installed at these locations:
+It will be installed at these locations:
- - the daemon at ${NETDATA_PREFIX}/usr/sbin/netdata
- - config files at ${NETDATA_PREFIX}/etc/netdata
- - web files at ${NETDATA_PREFIX}/usr/share/netdata
- - plugins at ${NETDATA_PREFIX}/usr/libexec/netdata
- - cache files at ${NETDATA_PREFIX}/var/cache/netdata
- - db files at ${NETDATA_PREFIX}/var/lib/netdata
- - log files at ${NETDATA_PREFIX}/var/log/netdata
- - pid file at ${NETDATA_PREFIX}/var/run
+ - the daemon at ${NETDATA_PREFIX}/usr/sbin/netdata
+ - config files at ${NETDATA_PREFIX}/etc/netdata
+ - web files at ${NETDATA_PREFIX}/usr/share/netdata
+ - plugins at ${NETDATA_PREFIX}/usr/libexec/netdata
+ - cache files at ${NETDATA_PREFIX}/var/cache/netdata
+ - db files at ${NETDATA_PREFIX}/var/lib/netdata
+ - log files at ${NETDATA_PREFIX}/var/log/netdata
+ - pid file at ${NETDATA_PREFIX}/var/run
- This installer allows you to change the installation path.
- Press Control-C and run the same command with --help for help.
+This installer allows you to change the installation path.
+Press Control-C and run the same command with --help for help.
BANNER
@@ -199,40 +199,40 @@ if [ "${UID}" -ne 0 ]
then
if [ -z "${NETDATA_PREFIX}" ]
then
- cat <<-NONROOTNOPREFIX
+ cat <<NONROOTNOPREFIX
- Sorry! This will fail!
+Sorry! This will fail!
- You are attempting to install netdata as non-root, but you plan to install it
- in system paths.
+You are attempting to install netdata as non-root, but you plan to install it
+in system paths.
- Please set an installation prefix, like this:
+Please set an installation prefix, like this:
- $0 ${@} --install /tmp
+ $0 ${@} --install /tmp
- or, run the installer as root:
+or, run the installer as root:
- sudo $0 ${@}
+ sudo $0 ${@}
- We suggest to install it as root, or certain data collectors will not be able
- to work. Netdata drops root privileges when running. So, if you plan to keep
- it, install it as root to get the full functionality.
+We suggest to install it as root, or certain data collectors will not be able
+to work. Netdata drops root privileges when running. So, if you plan to keep
+it, install it as root to get the full functionality.
NONROOTNOPREFIX
exit 1
else
- cat <<-NONROOT
+ cat <<NONROOT
- IMPORTANT:
- You are about to install netdata as a non-root user.
- Netdata will work, but a few data collection modules that
- require root access will fail.
+IMPORTANT:
+You are about to install netdata as a non-root user.
+Netdata will work, but a few data collection modules that
+require root access will fail.
- If you installing permanently on your system, run the
- installer like this:
+If you installing permanently on your system, run the
+installer like this:
- sudo $0 ${@}
+ sudo $0 ${@}
NONROOT
fi
@@ -271,23 +271,23 @@ then
then
echo "Will skip autoreconf step"
else
- cat <<-"EOF"
+ cat <<"EOF"
- -------------------------------------------------------------------------------
- autotools 2.60 or later is required
+-------------------------------------------------------------------------------
+autotools 2.60 or later is required
- Sorry, you do not seem to have autotools 2.60 or later, which is
- required to build from the git sources of netdata.
+Sorry, you do not seem to have autotools 2.60 or later, which is
+required to build from the git sources of netdata.
- You can either install a suitable version of autotools and automake
- or download a netdata package which does not have these dependencies.
+You can either install a suitable version of autotools and automake
+or download a netdata package which does not have these dependencies.
- Source packages where autotools have already been run are available
- here:
- https://firehol.org/download/netdata/
+Source packages where autotools have already been run are available
+here:
+ https://firehol.org/download/netdata/
- The unsigned/master folder tracks the head of the git tree and released
- packages are also available.
+The unsigned/master folder tracks the head of the git tree and released
+packages are also available.
EOF
exit 1
fi
@@ -304,33 +304,33 @@ if [ ${DONOTWAIT} -eq 0 ]
fi
build_error() {
- cat <<-EOF
+ cat <<EOF
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Sorry! NetData failed to build...
+Sorry! NetData failed to build...
- You many need to check these:
+You many need to check these:
- 1. The package uuid-dev (or libuuid-devel) has to be installed.
+1. The package uuid-dev (or libuuid-devel) has to be installed.
- If your system cannot find libuuid, although it is installed
- run me with the option: --libs-are-really-here
+ If your system cannot find libuuid, although it is installed
+ run me with the option: --libs-are-really-here
- 2. The package zlib1g-dev (or zlib-devel) has to be installed.
+2. The package zlib1g-dev (or zlib-devel) has to be installed.
- If your system cannot find zlib, although it is installed
- run me with the option: --libs-are-really-here
+ If your system cannot find zlib, although it is installed
+ run me with the option: --libs-are-really-here
- 3. You need basic build tools installed, like:
+3. You need basic build tools installed, like:
- gcc make autoconf automake pkg-config
+ gcc make autoconf automake pkg-config
- Autoconf version 2.60 or higher is required.
+ Autoconf version 2.60 or higher is required.
- If you still cannot get it to build, ask for help at github:
+If you still cannot get it to build, ask for help at github:
- https://github.com/firehol/netdata/issues
+ https://github.com/firehol/netdata/issues
EOF
@@ -849,36 +849,36 @@ fi
# Check for KSM
ksm_is_available_but_disabled() {
- cat <<-KSM1
+ cat <<KSM1
- -------------------------------------------------------------------------------
- Memory de-duplication instructions
+-------------------------------------------------------------------------------
+Memory de-duplication instructions
- You have kernel memory de-duper (called Kernel Same-page Merging,
- or KSM) available, but it is not currently enabled.
+You have kernel memory de-duper (called Kernel Same-page Merging,
+or KSM) available, but it is not currently enabled.
- To enable it run:
+To enable it run:
- echo 1 >/sys/kernel/mm/ksm/run
- echo 1000 >/sys/kernel/mm/ksm/sleep_millisecs
+echo 1 >/sys/kernel/mm/ksm/run
+echo 1000 >/sys/kernel/mm/ksm/sleep_millisecs
- If you enable it, you will save 40-60% of netdata memory.
+If you enable it, you will save 40-60% of netdata memory.
KSM1
}
ksm_is_not_available() {
- cat <<-KSM2
+ cat <<KSM2
- -------------------------------------------------------------------------------
- Memory de-duplication not present in your kernel
+-------------------------------------------------------------------------------
+Memory de-duplication not present in your kernel
- It seems you do not have kernel memory de-duper (called Kernel Same-page
- Merging, or KSM) available.
+It seems you do not have kernel memory de-duper (called Kernel Same-page
+Merging, or KSM) available.
- To enable it, you need a kernel built with CONFIG_KSM=y
+To enable it, you need a kernel built with CONFIG_KSM=y
- If you can have it, you will save 40-60% of netdata memory.
+If you can have it, you will save 40-60% of netdata memory.
KSM2
}
@@ -898,18 +898,18 @@ fi
if [ ! -s web/version.txt ]
then
- cat <<-VERMSG
+ cat <<VERMSG
- -------------------------------------------------------------------------------
- Version update check warning
+-------------------------------------------------------------------------------
+Version update check warning
- The way you downloaded netdata, we cannot find its version. This means the
- Update check on the dashboard, will not work.
+The way you downloaded netdata, we cannot find its version. This means the
+Update check on the dashboard, will not work.
- If you want to have version update check, please re-install it
- following the procedure in:
+If you want to have version update check, please re-install it
+following the procedure in:
- https://github.com/firehol/netdata/wiki/Installation
+https://github.com/firehol/netdata/wiki/Installation
VERMSG
fi
@@ -919,29 +919,29 @@ fi
if [ "${UID}" -ne 0 ]
then
- cat <<-SETUID_WARNING
+ cat <<SETUID_WARNING
- -------------------------------------------------------------------------------
- apps.plugin needs privileges
+-------------------------------------------------------------------------------
+apps.plugin needs privileges
- Since you have installed netdata as a normal user, to have apps.plugin collect
- all the needed data, you have to give it the access rights it needs, by running
- either of the following sets of commands:
+Since you have installed netdata as a normal user, to have apps.plugin collect
+all the needed data, you have to give it the access rights it needs, by running
+either of the following sets of commands:
- To run apps.plugin with escalated capabilities:
+To run apps.plugin with escalated capabilities:
- sudo chown root:${NETDATA_USER} "${NETDATA_PREFIX}/usr/libexec/netdata/plugins.d/apps.plugin"
- sudo chmod 0750 "${NETDATA_PREFIX}/usr/libexec/netdata/plugins.d/apps.plugin"
- sudo setcap cap_dac_read_search,cap_sys_ptrace+ep "${NETDATA_PREFIX}/usr/libexec/netdata/plugins.d/apps.plugin"
+ sudo chown root:${NETDATA_USER} "${NETDATA_PREFIX}/usr/libexec/netdata/plugins.d/apps.plugin"
+ sudo chmod 0750 "${NETDATA_PREFIX}/usr/libexec/netdata/plugins.d/apps.plugin"
+ sudo setcap cap_dac_read_search,cap_sys_ptrace+ep "${NETDATA_PREFIX}/usr/libexec/netdata/plugins.d/apps.plugin"
- or, to run apps.plugin as root:
+or, to run apps.plugin as root:
- sudo chown root "${NETDATA_PREFIX}/usr/libexec/netdata/plugins.d/apps.plugin"
- sudo chmod 4755 "${NETDATA_PREFIX}/usr/libexec/netdata/plugins.d/apps.plugin"
+ sudo chown root "${NETDATA_PREFIX}/usr/libexec/netdata/plugins.d/apps.plugin"
+ sudo chmod 4755 "${NETDATA_PREFIX}/usr/libexec/netdata/plugins.d/apps.plugin"
- apps.plugin is performing a hard-coded function of data collection for all
- running processes. It cannot be instructed from the netdata daemon to perform
- any task, so it is pretty safe to do this.
+apps.plugin is performing a hard-coded function of data collection for all
+running processes. It cannot be instructed from the netdata daemon to perform
+any task, so it is pretty safe to do this.
SETUID_WARNING
fi
@@ -949,122 +949,122 @@ fi
# -----------------------------------------------------------------------------
# Keep un-install info
-cat >netdata-uninstaller.sh <<-UNINSTALL
- #!/bin/bash
+cat >netdata-uninstaller.sh <<UNINSTALL
+#!/usr/bin/env bash
- # this script will uninstall netdata
+# this script will uninstall netdata
- if [ "\$1" != "--force" ]
- then
- echo >&2 "This script will REMOVE netdata from your system."
- echo >&2 "Run it again with --force to do it."
- exit 1
- fi
-
- echo >&2 "Stopping a possibly running netdata..."
- for p in \$(pidof netdata); do kill \$p; done
- sleep 2
+if [ "\$1" != "--force" ]
+ then
+ echo >&2 "This script will REMOVE netdata from your system."
+ echo >&2 "Run it again with --force to do it."
+ exit 1
+fi
- deletedir() {
- if [ ! -z "\$1" -a -d "\$1" ]
- then
- echo
- echo "Deleting directory '\$1' ..."
- rm -I -R "\$1"
- fi
- }
+echo >&2 "Stopping a possibly running netdata..."
+for p in \$(pidof netdata); do kill \$p; done
+sleep 2
- if [ ! -z "${NETDATA_PREFIX}" -a -d "${NETDATA_PREFIX}" ]
+deletedir() {
+ if [ ! -z "\$1" -a -d "\$1" ]
then
- # installation prefix was given
-
- deletedir "${NETDATA_PREFIX}"
+ echo
+ echo "Deleting directory '\$1' ..."
+ rm -I -R "\$1"
+ fi
+}
- else
- # installation prefix was NOT given
+if [ ! -z "${NETDATA_PREFIX}" -a -d "${NETDATA_PREFIX}" ]
+ then
+ # installation prefix was given
- if [ -f "${NETDATA_PREFIX}/usr/sbin/netdata" ]
- then
- echo "Deleting ${NETDATA_PREFIX}/usr/sbin/netdata ..."
- rm -i "${NETDATA_PREFIX}/usr/sbin/netdata"
- fi
+ deletedir "${NETDATA_PREFIX}"
- deletedir "${NETDATA_PREFIX}/etc/netdata"
- deletedir "${NETDATA_PREFIX}/usr/share/netdata"
- deletedir "${NETDATA_PREFIX}/usr/libexec/netdata"
- deletedir "${NETDATA_PREFIX}/var/lib/netdata"
- deletedir "${NETDATA_PREFIX}/var/cache/netdata"
- deletedir "${NETDATA_PREFIX}/var/log/netdata"
- fi
+else
+ # installation prefix was NOT given
- if [ -f /etc/logrotate.d/netdata ]
+ if [ -f "${NETDATA_PREFIX}/usr/sbin/netdata" ]
then
- echo "Deleting /etc/logrotate.d/netdata ..."
- rm -i /etc/logrotate.d/netdata
+ echo "Deleting ${NETDATA_PREFIX}/usr/sbin/netdata ..."
+ rm -i "${NETDATA_PREFIX}/usr/sbin/netdata"
fi
- if [ -f /etc/systemd/system/netdata.service ]
- then
- echo "Deleting /etc/systemd/system/netdata.service ..."
- rm -i /etc/systemd/system/netdata.service
- fi
+ deletedir "${NETDATA_PREFIX}/etc/netdata"
+ deletedir "${NETDATA_PREFIX}/usr/share/netdata"
+ deletedir "${NETDATA_PREFIX}/usr/libexec/netdata"
+ deletedir "${NETDATA_PREFIX}/var/lib/netdata"
+ deletedir "${NETDATA_PREFIX}/var/cache/netdata"
+ deletedir "${NETDATA_PREFIX}/var/log/netdata"
+fi
- getent passwd netdata > /dev/null
- if [ $? -eq 0 ]
- then
- echo
- echo "You may also want to remove the user netdata"
- echo "by running:"
- echo " userdel netdata"
- fi
+if [ -f /etc/logrotate.d/netdata ]
+ then
+ echo "Deleting /etc/logrotate.d/netdata ..."
+ rm -i /etc/logrotate.d/netdata
+fi
- getent group netdata > /dev/null
- if [ $? -eq 0 ]
- then
- echo
- echo "You may also want to remove the group netdata"
- echo "by running:"
- echo " groupdel netdata"
- fi
+if [ -f /etc/systemd/system/netdata.service ]
+ then
+ echo "Deleting /etc/systemd/system/netdata.service ..."
+ rm -i /etc/systemd/system/netdata.service
+fi
- getent group docker > /dev/null
- if [ $? -eq 0 -a "${NETDATA_ADDED_TO_DOCKER}" = "1" ]
- then
- echo
- echo "You may also want to remove the netdata user from the docker group"
- echo "by running:"
- echo " gpasswd -d netdata docker"
- fi
+getent passwd netdata > /dev/null
+if [ $? -eq 0 ]
+ then
+ echo
+ echo "You may also want to remove the user netdata"
+ echo "by running:"
+ echo " userdel netdata"
+fi
+
+getent group netdata > /dev/null
+if [ $? -eq 0 ]
+ then
+ echo
+ echo "You may also want to remove the group netdata"
+ echo "by running:"
+ echo " groupdel netdata"
+fi
+
+getent group docker > /dev/null
+if [ $? -eq 0 -a "${NETDATA_ADDED_TO_DOCKER}" = "1" ]
+ then
+ echo
+ echo "You may also want to remove the netdata user from the docker group"
+ echo "by running:"
+ echo " gpasswd -d netdata docker"
+fi
UNINSTALL
chmod 750 netdata-uninstaller.sh
# -----------------------------------------------------------------------------
-cat <<-END
+cat <<END
- -------------------------------------------------------------------------------
+-------------------------------------------------------------------------------
- OK. NetData is installed and it is running.
+OK. NetData is installed and it is running.
- -------------------------------------------------------------------------------
+-------------------------------------------------------------------------------
- By default netdata listens on all IPs on port ${NETDATA_PORT},
- so you can access it with:
+By default netdata listens on all IPs on port ${NETDATA_PORT},
+so you can access it with:
- http://this.machine.ip:${NETDATA_PORT}/
+http://this.machine.ip:${NETDATA_PORT}/
- To stop netdata, just kill it, with:
+To stop netdata, just kill it, with:
- killall netdata
+ killall netdata
- To start it, just run it:
+To start it, just run it:
- ${NETDATA_PREFIX}/usr/sbin/netdata
+ ${NETDATA_PREFIX}/usr/sbin/netdata
- Enjoy!
+Enjoy!
END
echo >&2 "Uninstall script generated: ./netdata-uninstaller.sh"
diff --git a/src/global_statistics.c b/src/global_statistics.c
index 0512c4382c..ad89ab5446 100644
--- a/src/global_statistics.c
+++ b/src/global_statistics.c
@@ -163,7 +163,7 @@ void global_statistics_charts(void) {
if (!stclients) stclients = rrdset_find("netdata.clients");
if (!stclients) {
stclients = rrdset_create("netdata", "clients", NULL, "netdata", NULL, "NetData Web Clients",
- "connected clients", 130100, rrd_update_every, RRDSET_TYPE_LINE);
+ "connected clients", 130200, rrd_update_every, RRDSET_TYPE_LINE);
rrddim_add(stclients, "clients", NULL, 1, 1, RRDDIM_ABSOLUTE);
} else rrdset_next(stclients);
@@ -176,7 +176,7 @@ void global_statistics_charts(void) {
if (!streqs) streqs = rrdset_find("netdata.requests");
if (!streqs) {
streqs = rrdset_create("netdata", "requests", NULL, "netdata", NULL, "NetData Web Requests", "requests/s",
- 130200, rrd_update_every, RRDSET_TYPE_LINE);
+ 130300, rrd_update_every, RRDSET_TYPE_LINE);
rrddim_add(streqs, "requests", NULL, 1, 1, RRDDIM_INCREMENTAL);
} else rrdset_next(streqs);
@@ -189,7 +189,7 @@ void global_statistics_charts(void) {
if (!stbytes) stbytes = rrdset_find("netdata.net");
if (!stbytes) {
stbytes = rrdset_create("netdata", "net", NULL, "netdata", NULL, "NetData Network Traffic", "kilobits/s",
- 130300, rrd_update_every, RRDSET_TYPE_AREA);
+ 130000, rrd_update_every, RRDSET_TYPE_AREA);
rrddim_add(stbytes, "in", NULL, 8, 1024, RRDDIM_INCREMENTAL);
rrddim_add(stbytes, "out", NULL, -8, 1024, RRDDIM_INCREMENTAL);
diff --git a/src/health.c b/src/health.c
index 8310170338..0e139bf8f5 100644
--- a/src/health.c
+++ b/src/health.c
@@ -1042,6 +1042,7 @@ int health_readfile(const char *path, const char *filename) {
rt = NULL;
}
+ // FIXME: make sure the value does not any operators or spaces
rc = callocz(1, sizeof(RRDCALC));
rc->name = strdupz(value);
rc->hash = simple_hash(rc->name);
@@ -1057,6 +1058,7 @@ int health_readfile(const char *path, const char *filename) {
if(rt && !rrdcalctemplate_add(&localhost, rt))
rrdcalctemplate_free(&localhost, rt);
+ // FIXME: make sure the value does not any operators or spaces
rt = callocz(1, sizeof(RRDCALCTEMPLATE));
rt->name = strdupz(value);
rt->hash_name = simple_hash(rt->name);
@@ -1278,6 +1280,7 @@ void health_readdir(const char *path) {
void health_init(void) {
char *path;
+ // FIXME: allow the user to enable/disable health monitoring
{
char buffer[FILENAME_MAX + 1];
snprintfz(buffer, FILENAME_MAX, "%s/health.d", config_get("global", "config directory", CONFIG_DIR));
diff --git a/web/dashboard.html b/web/dashboard.html
index a64eb9018c..709af9e614 100644
--- a/web/dashboard.html
+++ b/web/dashboard.html
@@ -1,24 +1,24 @@
<!DOCTYPE html>
<html lang="en">
<head>
- <title>NetData Dashboard</title>
- <meta name="application-name" content="netdata">
-
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta charset="utf-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="apple-mobile-web-app-capable" content="yes">
- <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
- <meta name="author" content="costa@tsaousis.gr">
-
- <meta property="og:locale" content="en_US" />
- <meta property="og:image" content="https://my-netdata.io/images/seo-performance-512.png"/>
- <meta property="og:url" content="http://my-netdata.io/"/>
- <meta property="og:type" content="website"/>
- <meta property="og:site_name" content="netdata"/>
- <meta property="og:title" content="netdata - real-time performance monitoring, done right!"/>
- <meta property="og:description" content="Stunning real-time dashboards, blazingly fast and extremely interactive. Zero configuration, zero dependencies, zero maintenance." />
+ <title>NetData Dashboard</title>
+ <meta name="application-name" content="netdata">
+
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta charset="utf-8">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <meta name="apple-mobile-web-app-capable" content="yes">
+ <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
+ <meta name="author" content="costa@tsaousis.gr">
+
+ <meta property="og:locale" content="en_US" />
+ <meta property="og:image" content="https://my-netdata.io/images/seo-performance-512.png"/>
+ <meta property="og:url" content="http://my-netdata.io/"/>
+ <meta property="og:type" content="website"/>
+ <meta property="og:site_name" content="netdata"/>
+ <meta property="og:title" content="netdata - real-time performance monitoring, done right!"/>
+ <meta property="og:description" content="Stunning real-time dashboards, blazingly fast and extremely interactive. Zero configuration, zero dependencies, zero maintenance." />
</head>
<body>
@@ -32,33 +32,33 @@ This is a template for building custom dashboards. To build a dashboard you just
&lt;!DOCTYPE html>
&lt;html lang="en">
&lt;head>
- &lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- &lt;meta charset="utf-8">
- &lt;meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
- &lt;meta name="viewport" content="width=device-width, initial-scale=1">
- &lt;meta name="apple-mobile-web-app-capable" content="yes">
- &lt;meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
+ &lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ &lt;meta charset="utf-8">
+ &lt;meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+ &lt;meta name="viewport" content="width=device-width, initial-scale=1">
+ &lt;meta name="apple-mobile-web-app-capable" content="yes">
+ &lt;meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
&lt;/head>
&lt;body>
- &lt;div data-netdata="system.processes"
- data-chart-library="dygraph"
- data-width="600"
- data-height="200"
- data-after="-600"
- >&lt;/div>
+ &lt;div data-netdata="system.processes"
+ data-chart-library="dygraph"
+ data-width="600"
+ data-height="200"
+ data-after="-600"
+ >&lt;/div>
&lt;/body>
&lt;script type="text/javascript" src="http://netdata.server:19999/dashboard.js">&lt;/script>
&lt;/html>
</pre>
<ul>
- <li>You can host your dashboard anywhere.</li>
- <li>You can add as many charts as you like.</li>
- <li>You can have charts from many different netdata servers (add <pre>data-host="http://another.netdata.server:19999/"</pre> to each chart).</li>
- <li>You can use different chart libraries on the same page: <b>peity</b>, <b>sparkline</b>, <b>dygraph</b>, <b>google</b>, <b>morris</b></li>
- <li>You can customize each chart to your preferences. For each chart library most of their attributes can be given in <b>data-</b> attributes.</li>
- <li>Each chart can have each own duration - it is controlled with the <b>data-after</b> attribute to give that many seconds of data.</li>
- <li>Depending on the width of the chart and <b>data-after</b> attribute, netdata will automatically refresh the chart when it needs to be updated. For example giving 600 pixels for width for -600 seconds of data, using a chart library that needs 3 pixels per point, will yeld in a chart updated once every 3 seconds.</li>
+ <li>You can host your dashboard anywhere.</li>
+ <li>You can add as many charts as you like.</li>
+ <li>You can have charts from many different netdata servers (add <pre>data-host="http://another.netdata.server:19999/"</pre> to each chart).</li>
+ <li>You can use different chart libraries on the same page: <b>peity</b>, <b>sparkline</b>, <b>dygraph</b>, <b>google</b>, <b>morris</b></li>
+ <li>You can customize each chart to your preferences. For each chart library most of their attributes can be given in <b>data-</b> attributes.</li>
+ <li>Each chart can have each own duration - it is controlled with the <b>data-after</b> attribute to give that many seconds of data.</li>
+ <li>Depending on the width of the chart and <b>data-after</b> attribute, netdata will automatically refresh the chart when it needs to be updated. For example giving 600 pixels for width for -600 seconds of data, using a chart library that needs 3 pixels per point, will yeld in a chart updated once every 3 seconds.</li>
</ul>
@@ -69,61 +69,61 @@ Sparkline charts stretch the values to show the variations between values in mor
They also have mouse-hover support.
<br/>
<b>Sparklines are fantastic</b>. You can inline charts in text. For example this
- <div data-netdata="system.cpu"
- data-chart-library="sparkline"
- data-width="5%"
- data-height="20"
- data-after="-30"
- ></div> is my current cpu usage (last 30 seconds),
- while this
- <div data-netdata="netdata.net"
- data-dimensions="out"
- data-chart-library="sparkline"
- data-width="10%"
- data-height="20"
- data-after="-60"
- ></div> is the bandwidth my netdata server is currently transmitting (last minute)
- and this
- <div data-netdata="netdata.requests"
- data-chart-library="sparkline"
- data-width="20%"
- data-height="20"
- data-after="-180"
- ></div> is the requests/sec it serves (last 3 minutes).
+ <div data-netdata="system.cpu"
+ data-chart-library="sparkline"
+ data-width="5%"
+ data-height="20"
+ data-after="-30"
+ ></div> is my current cpu usage (last 30 seconds),
+ while this
+ <div data-netdata="netdata.net"
+ data-dimensions="out"
+ data-chart-library="sparkline"
+ data-width="10%"
+ data-height="20"
+ data-after="-60"
+ ></div> is the bandwidth my netdata server is currently transmitting (last minute)
+ and this
+ <div data-netdata="netdata.requests"
+ data-chart-library="sparkline"
+ data-width="20%"
+ data-height="20"
+ data-after="-180"
+ ></div> is the requests/sec it serves (last 3 minutes).
<br/>
<div style="width: 33%; display: inline-block;">
- <div data-netdata="system.processes"
- data-chart-library="sparkline"
- data-width="100%"
- data-height="30"
- data-after="-300"
- data-dt-element-name="time101"
- ></div>
- <br/>
- <small>rendered in <span id="time101">X</span> ms</small>
+ <div data-netdata="system.processes"
+ data-chart-library="sparkline"
+ data-width="100%"
+ data-height="30"
+ data-after="-300"
+ data-dt-element-name="time101"
+ ></div>
+ <br/>
+ <small>rendered in <span id="time101">X</span> ms</small>
</div>
<div style="width: 33%; display: inline-block;">
- <div data-netdata="system.ipv4"
- data-chart-library="sparkline"
- data-width="100%"
- data-height="30"
- data-after="-300"
- data-dt-element-name="time102"
- ></div>
- <br/>
- <small>rendered in <span id="time102">X</span> ms</small>
+ <div data-netdata="system.ipv4"
+ data-chart-library="sparkline"
+ data-width="100%"
+ data-height="30"
+ data-after="-300"
+ data-dt-element-name="time102"
+ ></div>
+ <br/>
+ <small>rendered in <span id="time102">X</span> ms</small>
</div>
<div style="width: 33%; display: inline-block;">
- <div data-netdata="system.cpu"
- data-chart-library="sparkline"
- data-width="100%"
- data-height="30"
- data-after="-300"
- data-dt-element-name="time103"
- ></div>
- <br/>
- <small>rendered in <span id="time103">X</span> ms</small>
+ <div data-netdata="system.cpu"
+ data-chart-library="sparkline"
+ data-width="100%"
+ data-height="30"
+ data-after="-300"
+ data-dt-element-name="time103"