Monitor your servers, containers, and applications, in high-resolution and in real-time! https://www.netdata.cloud/

Odysseas Lamtzidis c2c3b66d9d Support VS Code container devenv (#10723) 4 years ago
.devcontainer c2c3b66d9d Support VS Code container devenv (#10723) 4 years ago
.github dbed7b51fc Changed Docker image tagging to use semver tags for releases. (#10648) 4 years ago
.travis beaeafc1f9 Fixed argument handling in `.travis/trigger_docker_build.sh`. (#10546) 4 years ago
aclk a96fec94ba remove unused fnc warning from ACLK Legacy (#10731) 4 years ago
backends 71bfcf54e3 Fix typo in backend_prometheus.c (#10716) 4 years ago
build 59a2aec9c8 Added support for using `/etc/cron.d` for auto-updates. (#9598) 4 years ago
build_external f4193c3b5c Spelling md (#10508) 4 years ago
claim 713cc2d329 fix claim behind proxy (#10734) 4 years ago
cli 46a8075c8f Docs housekeeping for SEO and syntax, part 1 (#10388) 4 years ago
collectors 42c23f45a2 collectors/cgroups: fix cpuset.cpus count (#10757) 4 years ago
contrib 6fb4f28fbe Fixed handling of permissions for some plugins. (#10490) 4 years ago
daemon 6aeeb63eca replace GA with PostHog for backend telemetry events. (#10636) 4 years ago
database adec24dffa Rename struct avl to avl_element and the typedef to avl_t (#10735) 4 years ago
diagrams 46a8075c8f Docs housekeeping for SEO and syntax, part 1 (#10388) 4 years ago
docs 6aeeb63eca replace GA with PostHog for backend telemetry events. (#10636) 4 years ago
exporting 5f1cd798f3 Don't add duplicate _total suffixes for the prometheus go.d module (#10674) 4 years ago
health fe0c96e1c3 Fix wrong count of paramteres (#10564) 4 years ago
libnetdata 10bb023852 Skip C++ incompatible header in main libnetdata header (#10737) 4 years ago
packaging ec7df1279a [ci skip] create nightly packages and update changelog 4 years ago
parser f4193c3b5c Spelling md (#10508) 4 years ago
registry adec24dffa Rename struct avl to avl_element and the typedef to avl_t (#10735) 4 years ago
spawn adec24dffa Rename struct avl to avl_element and the typedef to avl_t (#10735) 4 years ago
streaming 10b745cba8 add `_is_k8s_node` label to the host labels (#10501) 4 years ago
system ba85771673 Fix systemd comment syntax (#10066) 4 years ago
tests 46a8075c8f Docs housekeeping for SEO and syntax, part 1 (#10388) 4 years ago
web 686765cdd7 web/gui: add supervisord to the dashboard_info.js (#10754) 4 years ago
.clang-format d4213ef59f Add clang-format. Update Contribution guidelines. (#6677) 5 years ago
.codacy.yml 87a0559ec3 Improving the ACLK performance - initial changes (#8399) 5 years ago
.codeclimate.yml 8fbf817ef8 modularized all source code (#4391) 6 years ago
.csslintrc 9a7c81208d added codeclimate coverage 8 years ago
.dockerignore d307ba7ec5 Adds Docker based build system for Binary Packages, CI/CD, Smoke Testing and Development. (#7735) 5 years ago
.eslintignore 9a7c81208d added codeclimate coverage 8 years ago
.eslintrc 9a7c81208d added codeclimate coverage 8 years ago
.gitattributes ffa23129c0 Add a .gitattributes file (#6381) 5 years ago
.gitignore a65193925e Move ACLK Legacy into a subfolder (#10265) 4 years ago
.lgtm.yml fe5646ce76 Split js 2 (#4581) 6 years ago
.mlc_config.json 9605ceba09 GitHub action markdown link check update (#10474) 4 years ago
.remarkignore 7648928e7d add CHANGELOG.md to .remarkignore (#6671) 5 years ago
.remarkrc.js 3adf54ff45 Change lint standard for lists (#10371) 4 years ago
.squash.yml c18b816012 Squash integration (#5566) 5 years ago
.travis.yml 237ea440eb Fixed handling of Docker image tags for release builds. (#10615) 4 years ago
.yamllint.yml 72216c8fa7 github/workflow: disable `document-start` yamllint check (#8522) 4 years ago
BREAKING_CHANGES.md 46a8075c8f Docs housekeeping for SEO and syntax, part 1 (#10388) 4 years ago
BUILD.md f4193c3b5c Spelling md (#10508) 4 years ago
CHANGELOG.md ec7df1279a [ci skip] create nightly packages and update changelog 4 years ago
CMakeLists.txt 71e711430c Add Linux page cache metrics to eBPF (#10693) 4 years ago
CODE_OF_CONDUCT.md 46a8075c8f Docs housekeeping for SEO and syntax, part 1 (#10388) 4 years ago
CONTRIBUTING.md 0d0e7dad5f Updated contributing guidelines to suggest use of Draft PRs. (#10125) 4 years ago
CONTRIBUTORS.md b79b67b043 web/gui: Added support for per series styling for dygraphs (#8668) 4 years ago
Dockerfile c4e491f7b8 Remove the confusion around the multiple Dockerfile(s) we have (#8214) 5 years ago
Dockerfile.test c4e491f7b8 Remove the confusion around the multiple Dockerfile(s) we have (#8214) 5 years ago
HISTORICAL_CHANGELOG.md f4193c3b5c Spelling md (#10508) 4 years ago
LICENSE bd864d5ac9 remove license templates; add info about SPDX to main license file 6 years ago
Makefile.am 71e711430c Add Linux page cache metrics to eBPF (#10693) 4 years ago
README.md a22c9a5829 Update latest release on main README (#10590) 4 years ago
REDISTRIBUTED.md 46a8075c8f Docs housekeeping for SEO and syntax, part 1 (#10388) 4 years ago
SECURITY.md 46a8075c8f Docs housekeeping for SEO and syntax, part 1 (#10388) 4 years ago
build-artifacts.sh 11c610af74 Fix the netdata-updater.sh to correctly pass REINSTALL_OPTIONS (finally) (#8808) 4 years ago
configs.signatures 6b119d9170 Drop dirty dbengine pages if disk cannot keep up (#7777) 5 years ago
configure.ac ad163251fc Remove unreachable #else directives in plugins. (#10523) 4 years ago
coverity-scan.sh a18ec2d2d8 Fix coverity scan (#8388) 5 years ago
cppcheck.sh f857aa35ae optimized ses and added des (#4470) 6 years ago
netdata-installer.sh 6fb4f28fbe Fixed handling of permissions for some plugins. (#10490) 4 years ago
netdata.cppcheck 28fe156671 remove static dir config 6 years ago
netdata.spec.in 6fb4f28fbe Fixed handling of permissions for some plugins. (#10490) 4 years ago
package-lock.json c9cce13995 fix minor vulnerability alert, updating socket-io dependency (#10557) 4 years ago
package.json c9cce13995 fix minor vulnerability alert, updating socket-io dependency (#10557) 4 years ago

README.md

Netdata

Netdata is high-fidelity infrastructure monitoring and troubleshooting.
Open-source, free, preconfigured, opinionated, and always real-time.


Latest release Build status CII Best Practices
Code Climate Codacy LGTM C LGTM PYTHON

---

Netdata's distributed, real-time monitoring Agent collects thousands of metrics from systems, hardware, containers, and applications with zero configuration. It runs permanently on all your physical/virtual servers, containers, cloud deployments, and edge/IoT devices, and is perfectly safe to install on your systems mid-incident without any preparation.

You can install Netdata on most Linux distributions (Ubuntu, Debian, CentOS, and more), container platforms (Kubernetes clusters, Docker), and many other operating systems (FreeBSD, macOS). No sudo required.

Netdata is designed by system administrators, DevOps engineers, and developers to collect everything, help you visualize metrics, troubleshoot complex performance problems, and make data interoperable with the rest of your monitoring stack.

People get addicted to Netdata. Once you use it on your systems, there's no going back! You've been warned...

Users who are addicted to
Netdata

Latest release: v1.29.0, February 2, 2021

The v1.29.0 release of the Netdata Agent is a maintenance release that brings incremental but necessary improvements that make your monitoring experience more robust. We've pushed improvements and bug fixes to the installation and update scripts, enriched our library of collectors, and focused on fixing bugs reported by the community.

Features

Netdata in
action

Here's what you can expect from Netdata:

  • 1s granularity: The highest possible resolution for all metrics.
  • Unlimited metrics: Netdata collects all the available metrics—the more, the better.
  • 1% CPU utilization of a single core: It's unbelievably optimized.
  • A few MB of RAM: The highly-efficient database engine stores per-second metrics in RAM and then "spills" historical metrics to disk long-term storage.
  • Minimal disk I/O: While running, Netdata only writes historical metrics and reads error and access logs.
  • Zero configuration: Netdata auto-detects everything, and can collect up to 10,000 metrics per server out of the box.
  • Zero maintenance: You just run it. Netdata does the rest.
  • Stunningly fast, interactive visualizations: The dashboard responds to queries in less than 1ms per metric to synchronize charts as you pan through time, zoom in on anomalies, and more.
  • Visual anomaly detection: Our UI/UX emphasizes the relationships between charts to help you detect the root cause of anomalies.
  • Scales to infinity: You can install it on all your servers, containers, VMs, and IoT devices. Metrics are not centralized by default, so there is no limit.
  • Several operating modes: Autonomous host monitoring (the default), headless data collector, forwarding proxy, store and forward proxy, central multi-host monitoring, in all possible configurations. Use different metrics retention policies per node and run with or without health monitoring.

Netdata works with tons of applications, notifications platforms, and other time-series databases:

  • 300+ system, container, and application endpoints: Collectors autodetect metrics from default endpoints and immediately visualize them into meaningful charts designed for troubleshooting. See everything we support.
  • 20+ notification platforms: Netdata's health watchdog sends warning and critical alarms to your favorite platform to inform you of anomalies just seconds after they affect your node.
  • 30+ external time-series databases: Export resampled metrics as they're collected to other local- and Cloud-based databases for best-in-class interoperability.

💡 Want to leverage the monitoring power of Netdata across entire infrastructure? View metrics from any number of distributed nodes in a single interface and unlock even more features with Netdata Cloud.

Get Netdata

User base Servers monitored Sessions served Docker Hub pulls
New users today New machines today Sessions today Docker Hub pulls today

To install Netdata from source on most Linux systems (physical, virtual, container, IoT, edge), run our one-line installation script. This script downloads and builds all dependencies, including those required to connect to Netdata Cloud if you choose, and enables automatic nightly updates and anonymous statistics.

bash <(curl -Ss https://my-netdata.io/kickstart.sh)

To view the Netdata dashboard, navigate to http://localhost:19999, or http://NODE:19999.

Docker

You can also try out Netdata's capabilities in a Docker container:

docker run -d --name=netdata \
  -p 19999:19999 \
  -v netdataconfig:/etc/netdata \
  -v netdatalib:/var/lib/netdata \
  -v netdatacache:/var/cache/netdata \
  -v /etc/passwd:/host/etc/passwd:ro \
  -v /etc/group:/host/etc/group:ro \
  -v /proc:/host/proc:ro \
  -v /sys:/host/sys:ro \
  -v /etc/os-release:/host/etc/os-release:ro \
  --restart unless-stopped \
  --cap-add SYS_PTRACE \
  --security-opt apparmor=unconfined \
  netdata/netdata

To view the Netdata dashboard, navigate to http://localhost:19999, or http://NODE:19999.

Other operating systems

See our documentation for additional operating systems, including Kubernetes, .deb/.rpm packages, and more.

Post-installation

When you're finished with installation, check out our single-node or infrastructure monitoring quickstart guides based on your use case.

Or, skip straight to configuring the Netdata Agent.

Read through Netdata's documentation, which is structured based on actions and solutions, to enable features like health monitoring, alarm notifications, long-term metrics storage, exporting to external databases, and more.

How it works

Netdata is a highly efficient, highly modular, metrics management engine. Its lockless design makes it ideal for concurrent operations on the metrics.

Diagram of Netdata's core
functionality

The result is a highly efficient, low-latency system, supporting multiple readers and one writer on each metric.

Infographic

This is a high-level overview of Netdata features and architecture. Click on it to view an interactive version, which has links to our documentation.

An infographic of how Netdata
works

Documentation

Netdata's documentation is available at Netdata Learn.

This site also hosts a number of guides to help newer users better understand how to collect metrics, troubleshoot via charts, export to external databases, and more.

Community

You can find most of the Netdata team in our community forum. It's the best place to ask questions, find resources, and get to know the Netdata team.

You can also find Netdata on:

Contribute

We welcome contributions to our code and to our documentation. Feel free to join the team!

To report bugs or get help, use GitHub's issues.

Package maintainers should read the guide on building Netdata from source for instructions on building each Netdata component from source and preparing a package.

License

The Netdata Agent is GPLv3+. Netdata re-distributes other open-source tools and libraries. Please check the third party licenses.

Is it any good?

Yes.

When people first hear about a new product, they frequently ask if it is any good. A Hacker News user remarked:

Note to self: Starting immediately, all raganwald projects will have a “Is it any good?” section in the readme, and the answer shall be “yes.".

So, we follow the tradition...