summaryrefslogtreecommitdiffstats
path: root/Makefile.am
AgeCommit message (Collapse)Author
2021-04-02Fixed bundling of ACLK-NG components in dist tarballs. (#10894)Austin S. Hemmelgarn
2021-03-19move https_client into separate file (#10784)Timotej S
2021-03-17New thread for ebpf.plugin thiagoftsm
Add monitoring to `sync` syscall
2021-03-16Adds ACLK-NG as fallback(#10315)Timotej S
* adds a new implementation of ACLK written almost from scratch * external dependencies only OpenSSL and JSON-C * fallback for systems where ACLK Legacy can't build (for technical or philosophical reasons) * can be forced to build by giving "--aclk-ng" to the installer
2021-03-15Enable metadata persistence in all memory modes (#10742)Stelios Fragkakis
2021-03-03Add Linux page cache metrics to eBPF (#10693)thiagoftsm
Add new eBPF thread to display page cache utilization.
2021-01-19Move ACLK Legacy into a subfolder (#10265)Timotej S
* move all legacy ACLK into a subfolder to make space for ACLK-NG
2021-01-11ACLK fix error for older compilers (#10470)Timotej S
* organizes code better and fixes error with older C compilers
2020-12-14Kubernetes labels (#10107)Ilya Mashchenko
Co-authored-by: Markos Fountoulakis <markos.fountoulakis.senior@gmail.com> Co-authored-by: Vladimir Kobal <vlad@prokk.net>
2020-11-24Migrate metadata log to SQLite (#10139)Stelios Fragkakis
2020-11-05Add HTTP and HTTPS support to the simple exporting connector (#9911)Vladimir Kobal
2020-10-30allows use of system libwebsockets instead of bundled one (#9984)Timotej S
* allows usage of system libwebsockets * fixes problems that were preventing ACLK to work with LWS `4.1.` * add LWS info to buildinfo Co-authored-by: Austin S. Hemmelgarn <austin@netdata.cloud>
2020-10-20Wireless statistics (#10052)thiagoftsm
Co-authored-by: Ilya Mashchenko <ilya@netdata.cloud> Co-authored-by: Joel Hans <joel.g.hans@gmail.com> Co-authored-by: ladakis <vaggosbboy@gmail.com>
2020-09-16Added a way to get build configuration info from the agent. (#9913)Austin S. Hemmelgarn
* Add a way to get build configuration info from the agent. This adds a new option to the `-W` switch called 'buildinfo'. When invoked with this argument, Netdata will print it's version, the configure options, and a list of optional features and whether they are enabled or not. This is intended to serve three purposes: * It allows developers to more quickly get an idea of how Netdata was built when triaging bug reports. * It provides an easier way to validate changes to the build system that affect optional features during the development cycle. * It provides an easier way to build CI workflows that validate that building under a given set of constraints results in a feature being enabled or not. The actual implementation is a bit large but overall exceedingly simple, consisting of a set of preprocessor directives to extract optional feature state information from config.h and then a series of printf() calls to actually report this info (which should end up optimized by smart compilers due to all the arguments being compile-time constants). * Added zlib to optional libraries. * Added remaining optional plugins to buildinfo output. * Changed formatting to be more human friendly. * Add remaining optional libraries. * Fix up formatting to be even more human friendly. * Fix typo in buildinfo output. * Remove unused variable. * Fixed spelling of config.h option name. * Update daemon/buildinfo.c Co-authored-by: Markos Fountoulakis <44345837+mfundul@users.noreply.github.com> * Fix option name mismatch for libcrypto. * Update daemon/buildinfo.c Co-authored-by: Markos Fountoulakis <44345837+mfundul@users.noreply.github.com> Co-authored-by: Markos Fountoulakis <44345837+mfundul@users.noreply.github.com>
2020-09-10Implements ACLK v2 http message with compression (#9895)Timotej S
Allows cloud to use v2 queries which support compression.
2020-09-04Fixed handling of libJudy bundling for RPM packages. (#9875)Austin S. Hemmelgarn
2020-09-01Added code to bundle libJudy on systems which do not provide a usable copy ↵Austin S. Hemmelgarn
of it. (#9776) * Add installer code to bundle libJudy. * Update libJudy build to work on more systems. * Added libtool to deps. * First part of configure changes - detection of library * Configure change part two: integrating flags into the build I've tested the build works and that the symbols end up correct in the compiled binary, but I have not tested that dbengine is working properly after the changes. * Add required configure options for bundling libJudy. * Bail early if a libJudy build step fails. * Added messges for specific reasons libJudy is being built. * Fix bail condition for bundling failures. We don't care about whether the cloud is required or not, just whether the user asked for a local build of libJudy or not. * Fix logic for deciding when to bundle libJudy. * Fix judy build to clean up properly if it fails. Co-authored-by: Andrew Moss <1043609+amoss@users.noreply.github.com>
2020-08-03Fetch libbpf from netdata fork (#9637)Vladimir Kobal
2020-07-30Added eBPF collector support to DEB and RPM packages. (#9628)Austin S. Hemmelgarn
* Add DEB/RPM package build tests to Travis. * Add working support for bundling eBPF in binary packages. * Show stdout and stderr from commands run in LXC. * Add proper bundling code for libbpf. * Use AC_CHECK_FILE for libbpf.a external dep. This way it gets properly logged in both configure output and the configure log.
2020-07-21Add libbpf patch to make dist. (#9571)Austin S. Hemmelgarn
2020-07-16Use the libbpf library for the eBPF plugin (#9490)Vladimir Kobal
2020-07-16Revert the eBPF package bundling that breaks the release and DEB packages. ↵James Mills
(#9552) * Revert "Fix SHA256 handling in eBPF bundling code. (#9546)" This reverts commit 7ff315810e1d2c5871c4e87049687852b2cee7ee. * Revert "Add eBPF bundling script to `make dist`. (#9539)" This reverts commit 3a7961d4176aee63f24c4cbc96dabaa13010d6f1. * Revert "Properly include eBPF collector in binary packages. (#9450)" This reverts commit 690fbcefd3ae0cbc858870ad64d320f6f251e5fc.
2020-07-15Add eBPF bundling script to `make dist`. (#9539)Austin S. Hemmelgarn
2020-07-10adds support for multiple ACLK query processing threads (#9355)Timotej S
2020-07-02Add infiniband monitoring to collector proc.plugin (#9091)Adrien Mahieux
2020-06-12Integration between eBPF and Apps (#9178)thiagoftsm
* ebpf_apps: Create files to do integration * ebpf_apps: move functions from apps to ebpf part 1 * ebpf_apps: move functions from apps to ebpf part 2 * ebpf_apps: Functions to read apps_groups.conf * ebpf_apps: reset structures * ebpf_apps: Verify user running plugin * ebpf_apps: Adjust structures used for eBPF.plugin * rebase * ebpf_apps: Move ebpf submenu near apps submenu * ebpf_apps: Brings structures from kernel-collector repository4 * ebpf_apps: Set definitions for the new chart names * ebpf_apps: bring new functions to read data from kernel ring * ebpf_apps: New variable to store PID information on process thread * ebpf_apps: It brings PID variable to socket * ebpf_apps: Chart creation * ebpf_apps: New probe * ebpf_apps: Fix order * ebpf_apps: Clean targets * ebpf_apps: Necessary changes to avoid parse proc * rebase * ebpf_apps: Fix key inside collect_data_for_all_processes to remove infinite loop * ebpf_apps: Bring variables to read data from hash table * ebpf_apps: Fix coverity warnings * ebpf_apps: Fix the missing allocation for all_pids and another small adjusts * ebpf_apps: Postpone thread creation to fill targets * ebpf_apps: Add comments while functions were tested * ebpf_apps: Fix LGTM warnings * ebpf_apps: Clean allocated structure with raw data * ebpf_apps: Bring missing functions to calculate apps charts for process * ebpf_apps: Rename a function and update apps_groups.conf * ebpf_apps: Copy logic for chart creation to sockets * ebpf_apps: Remove unecessary variable * Update chart creating * Remove Users and User Groups targets * ebpf_apps: missing argument * ebpf_apps: Fix LGTM https://github.com/netdata/netdata/pull/9178#issuecomment-638253538 error * Synchronize getting and sending data * eb^C_apps: Remove error messages adding read of proc file * ebpf_apps: Missing function * ebpf_apps: Move socket chart creation and change necessary functions to read cmdline * ebpf_apps: Bring missing loop to reset variable * ebpf_apps: Remove unecessary sleep * ebpf_apps: Fix return and allocation to allow the apps integration * ebpf_apps: create structure to set apps dimension * ebpf_apps: create structure to set apps dimension for socket * ebpf_apps: Fix wrong family for process * ebpf_apps: Enable apps by default * Functions to enable charts for apps * Fix small bugs * ebpf_apps: Fix missing root_pid * Fix negative output on charts * ebpf_apps: Remove debug messages from process * ebpf_apps: Fix socket lock scheme * ebpf_apps: Small fixes * ebpf_apps; Remove unecessary function call and header * ebpf_apps: Enable apps by default * remove wrong files * ebpf_apps: update cheksum * Update dashboard.info bringing missing parameters for charts that do integration with ebpf * Fix a bug * ebpf_apps: Fix open of proc files that are not more present * ebpf_apps:Fix synchronization problems * ebpf_apps: Remove dupplication that was killing socket charts * ebpf_apps: Fix codacy warnings * ebpf_apps: Fix process read from memory * ebpf_apps: Remove unecessary variable from code * ebpf_apps: Fix wrong variable usage * ebpf_apps: complete separation between global and apps charts * Fix missing check and a wrong check * ebpf_apps: Comment unnecessary code copied from apps_plugin.c * ebpf_apps: Restart ebpf when number of monitored PIDs is smaller than 0.7 * ebpf_apps: Fix coverity scan error * ebpf_release: Update release version * ebpf_apps: Remove unecessary test * ebpf_apps: Remove unecessary error message * ebpf_apps: Clean probes during the startup * ebpf_apps: Bring additional variables to monitor chart plot * ebpf_apps: Missing chart when entry mode is enabled * ebpf_apps: Do synchronization between apps.plugin and ebpf.plugin dimension * ebpf_apps: socket synchronization * ebpf_apps: fix problems with task_close * ebpf_apps: Brings title to charts * ebpf_apps: restore to fix errors * ebpf_apps: Remove hard code update every * ebpf_apps: rename variables * ebpf_apps: Bring title for the charts * ebpf_apps: Remove unecessary line * ebpf_apps: bring new release to PR * ebpf_apps: Fix constant value when a function is not used for a process * ebpf_apps: This fixes a possible memory leak * ebpf_apps: move delete function to bring back synchronization between charts * Change chart type * Fix for exited pids Co-authored-by: Vladimir Kobal <vlad@prokk.net>
2020-06-12Add support for persistent metadata (#9324)Stelios Fragkakis
* Implemented collector metadata logging * Added persistent GUIDs for charts and dimensions * Added metadata log replay and automatic compaction * Added detection of charts with no active collector (archived) * Added new endpoint to report archived charts via `/api/v1/archivedcharts` * Added support for collector metadata update Co-authored-by: Markos Fountoulakis <44345837+mfundul@users.noreply.github.com>
2020-06-11Adds metrics for ACLK performance and status (#9269)Timotej S
Adds ACLK charts
2020-06-03Fix bugs in streaming and enable support for gap filling (#9214)Andrew Moss
This PR adds (inactive) support that we will use to fill the gaps on chart when a receiving agent goes offline and the sender reconnects. The streaming component has been reworked to make the connection bi-directional and fix several outstanding bugs in the area. * Fixed an incorrect case of version negotiation. Removed fatal() on exhaustion of fds. * Fixed cases that fell through to polling the socket after closing. * Fixed locking of data related to sender and receiver in the host structure. * Added fine-grained locks to reduce contention. * Added circular buffer to sender to prevent starvation in high-latency conditions. * Fixed case where agent is a proxy and negotiated different streaming versions with sender and receiver. * Changed interface to new parser to put the buffering code in streaming. * Fixed the bug that stopped senders from reconnecting after their socket times out - this was part of the scaling fixes that provide an early shortcut path for rejecting connections without lock contention. * Uses fine-grained locking and a different approach to thread shutdown instead. * Added liveness detection to connections to allow selection of the best connection.
2020-05-28eBPF modular (#9148)thiagoftsm
Convert the monolithic ebpf.plugin in a modular plugin.
2020-05-27Fix missing ebpf packaging files from dist archive (#9182)James Mills
* Install/Bundle the eBPF kernel-collector library / eBPF programs anyway even if the Kernel check fails (just warn the user) * Fix missing check-kernel-config.sh from dist (breaking kickstart.sh installs) * Add missing packaging/ebpf.version and packaging/ebpf.cehcksums to dist source archive
2020-05-25Implement new incremental parser (#9074)Stelios Fragkakis
Implemented a new parser for the pluginsd language
2020-05-22Remove old docs generation tooling (#8783)James Mills
* Remove old docs generation tooling * Remove more references to docs/generator/* * Remove more refernece to things no longer used for docs generation * Update contributing-documentation.md * Update contributing-documentation.md Co-authored-by: Joel Hans <joel.g.hans@gmail.com>
2020-05-18Clean instances (#9081)thiagoftsm
Brings function used to clean export instances.
2020-05-14Improve the impact of health code on netdata scalability (#8407)Markos Fountoulakis
* Add support for spawning processes without pipes. * Port health_alarm_execute() from mypopen() to netdata_spawn() * Make alarm notifications asynchronous within a single health thread iteration * Initial version of spawn server. * preliminary integration of spawn client with health
2020-05-14Fix error handling in exporting connector (#8910)Vladimir Kobal
2020-05-14Add a Google Cloud Pub/Sub connector to the exporting engine (#8855)Vladimir Kobal
* Implement formatters * Add specific configuration options * Add the connector to the Autotools and CMake configuration * Initialize a connector instance * Publish netdata metrics * Fix internal stats * Add unit tests * Improve the documentation
2020-05-13Rename eBPF collector (#8822)thiagoftsm
We renamed eBPF collector for a more meaningful name.
2020-05-12Added JSON-C packaging fils to make dist. (#8986)Austin S. Hemmelgarn
2020-05-11Enable support for Netdata Cloud.Andrew Moss
This PR merges the feature-branch to make the cloud live. It contains the following work: Co-authored-by: Andrew Moss <1043609+amoss@users.noreply.github.com(opens in new tab)> Co-authored-by: Jacek Kolasa <jacek.kolasa@gmail.com(opens in new tab)> Co-authored-by: Austin S. Hemmelgarn <austin@netdata.cloud(opens in new tab)> Co-authored-by: James Mills <prologic@shortcircuit.net.au(opens in new tab)> Co-authored-by: Markos Fountoulakis <44345837+mfundul@users.noreply.github.com(opens in new tab)> Co-authored-by: Timotej S <6674623+underhood@users.noreply.github.com(opens in new tab)> Co-authored-by: Stelios Fragkakis <52996999+stelfrag@users.noreply.github.com(opens in new tab)> * dashboard with new navbars, v1.0-alpha.9: PR #8478 * dashboard v1.0.11: netdata/dashboard#76 Co-authored-by: Jacek Kolasa <jacek.kolasa@gmail.com(opens in new tab)> * Added installer code to bundle JSON-c if it's not present. PR #8836 Co-authored-by: James Mills <prologic@shortcircuit.net.au(opens in new tab)> * Fix claiming config PR #8843 * Adds JSON-c as hard dep. for ACLK PR #8838 * Fix SSL renegotiation errors in old versions of openssl. PR #8840. Also - we have a transient problem with opensuse CI so this PR disables them with a commit from @prologic. Co-authored-by: James Mills <prologic@shortcircuit.net.au(opens in new tab)> * Fix claiming error handling PR #8850 * Added CI to verify JSON-C bundling code in installer PR #8853 * Make cloud-enabled flag in web/api/v1/info be independent of ACLK build success PR #8866 * Reduce ACLK_STABLE_TIMEOUT from 10 to 3 seconds PR #8871 * remove old-cloud related UI from old dashboard (accessible now via /old suffix) PR #8858 * dashboard v1.0.13 PR #8870 * dashboard v1.0.14 PR #8904 * Provide feedback on proxy setting changes PR #8895 * Change the name of the connect message to update during an ongoing session PR #8927 * Fetch active alarms from alarm_log PR #8944
2020-04-27Fix build and add bundle-dashbaord.sh to dist_noinst_DATA (#8823)James Mills
* Fix build and add bundle-dashbaord.sh to dist_noinst_DATA * Fix typo
2020-04-13Revert "Revert changes since v1.21 in pereparation for hotfix release."Austin S. Hemmelgarn
This reverts commit e2874320fc027f7ab51ab3e115d5b1889b8fd747.
2020-04-13Revert changes since v1.21 in pereparation for hotfix release.Austin S. Hemmelgarn
2020-04-10Show internal stats for the exporting engine (#8635)Vladimir Kobal
* Add a print function for internal exporting statistics * Send statistics for simple connectors * Flush sending buffers on failures * Send statistics for the Kinesis connector * Send statistics for the MongoDB connector * Add unit tests
2020-04-06Prometheus web api connector (#8540)Vladimir Kobal
* Fix the Prometheus web API code in the exporting engine * Rename connector types * Remove the conditional compilation of the exporting engine * Use labels instead of tags * Fix the exporter configuration * Document functions * Add unit tests
2020-04-03fix ubuntu build with both libcap-dev and libcapng (#8596)Timo
2020-03-31Switching over to soft feature flag (#8545)Andrew Moss
Preparing for the cloud release. This changes how we handle the feature flag so that it no longer requires installer switches and can be set from the config file. This still requires internal access to use and is not ready for public access yet.
2020-03-31Switched to the new React dashboard code as the default dashboard. (#8363)Austin S. Hemmelgarn
* Initial installer components for new dashboard. * Add script to switch between react and classic dashboards. * Update to newest version of react dashboard. * Properly substitute webdir. * Fix installation of dashboard switch script. * Properly handle file ownership and permissions. * Fix install of react dashboard. * Add dashboard_info.js to the react dashboard tree. * Update to version 0.3.2 of the React dashboard. * Switch using file lists instead of nuking old directory. * Properly handle updates. * Fix variable naming in switching script. * Fix copying of files in switching script. * Fix switching script invocation in installer. * update dashboard to v0.4.0 * v0.4.1 gauge & easypiechart width update proper centering when clicking alarm in alarms-log keep loader until react app is ready fix top bar not showing when highlighting (few lines of code) "check known URLs" issue "reset" options is not hooked up go to host node from streamed node (low priority, because that's removed on release) * Persist user selection of dashboard across updates. * update dashboard to v0.4.2 (temperature, units options fixed) * v0.4.5 fixed print modal progress text force reload on sync-selection option change * fix memory leak on firefox * fix active-alarms number in main.js header fix "back to normal" notifications constantly throwing in loop * fix active-alarms fetching * support subpaths Co-authored-by: Jacek Kolasa <jacek.kolasa@gmail.com>
2020-03-30Add a MongoDB connector to the exporting engine (#8416)Vladimir Kobal
* Copy files from the MongoDB backend * Update the documentation * Rename functions in the MongoDB backend * Add the connector to the Netdata build * Add an initializer and a worker * Add specific configuration options * Initialize the connector * Add a ring buffer for inserting data to a MongoDB database * Add unit tests
2020-03-15Support SOCKS5 in ACLK Challenge/Response and rewrite with LWS (#8404)Timo
* wip * add alpn * beggining of cleanup * move common code * add SOCKS5 support * check HTTP response code * add timeout * separate https_client into own files * fix some mem leaks from master + avoid string copying and alloc/free * fix some PR unrelated warnings