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

Austin S. Hemmelgarn f3881e1cd1 Fix handling of binary package uploads. (#10860) 4 years ago
.devcontainer c2c3b66d9d Support VS Code container devenv (#10723) 4 years ago
.github f3881e1cd1 Fix handling of binary package uploads. (#10860) 4 years ago
.travis e54982b6c8 Docker-based packaging workflow in GitHub Actions. (#9964) 4 years ago
aclk f36d14dbb8 move https_client into separate file (#10784) 4 years ago
backends 477f26fd7b Don't show alarms for charts without data (#10804) 4 years ago
build e7e5d0c372 Adds ACLK-NG as fallback(#10315) 4 years ago
build_external f4193c3b5c Spelling md (#10508) 4 years ago
claim 1db97b51d3 claiming: increase curl connect-timeout and decrease number of claim attempts (#10800) 4 years ago
cli 46a8075c8f Docs housekeeping for SEO and syntax, part 1 (#10388) 4 years ago
collectors a714066bcc Ebpf extend sync (#10814) 4 years ago
contrib e54982b6c8 Docker-based packaging workflow in GitHub Actions. (#9964) 4 years ago
daemon 5a815b1b1f Fix typo in main.h (#10858) 4 years ago
database 7ebb0a4da2 Fix memory leak when archived data is requested (#10837) 4 years ago
diagrams 46a8075c8f Docs housekeeping for SEO and syntax, part 1 (#10388) 4 years ago
docs 7b913eaf8b Add guide: Develop a custom data collector for Netdata in Python (#10710) 4 years ago
exporting 477f26fd7b Don't show alarms for charts without data (#10804) 4 years ago
health a66e9ef6a7 fix_repeat: Update repeat_every and avoid unecessary test (#10846) 4 years ago
libnetdata ffb7f94544 Fix resource allocation management during health reload (CID 367566) (#10813) 4 years ago
mqtt_websockets @ 232c761830 ff2af02155 mqtt-c coverity fixes (#10851) 4 years ago
packaging f3881e1cd1 Fix handling of binary package uploads. (#10860) 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 59638f03a9 Add check for children connecting to a parent agent with unsupported memory mode (#10787) 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 c76076b4c4 web/gui: make network state map sytanx consistent in the dashboard info (#10849) 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
.gitmodules e7e5d0c372 Adds ACLK-NG as fallback(#10315) 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 e66b02ff6a Properly prepare version for binary package builds. (#10790) 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 6d91200059 [ci skip] create nightly packages and update changelog 4 years ago
CMakeLists.txt 65f4f12e86 New thread for ebpf.plugin 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 f36d14dbb8 move https_client into separate file (#10784) 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 e7e5d0c372 Adds ACLK-NG as fallback(#10315) 4 years ago
coverity-scan.sh 3d67dc39b9 Update Coverity version so that scanning works again. (#10794) 4 years ago
cppcheck.sh f857aa35ae optimized ses and added des (#4470) 6 years ago
netdata-installer.sh aa390501a3 minor - add info about --aclk-ng to netdata-installer (#10852) 4 years ago
netdata.cppcheck 28fe156671 remove static dir config 6 years ago
netdata.spec.in e54982b6c8 Docker-based packaging workflow in GitHub Actions. (#9964) 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.

Menu

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