0
0
Fork 0
mirror of https://github.com/netdata/netdata.git synced 2025-04-17 19:22:40 +00:00
netdata_netdata/integrations
Costa Tsaousis a399128dbf
config parsers ()
* added parser for durations

* preliminary work for timeframes

* Update CMakeLists.txt

* updated parsing and generation for durations

* renames

* report parser errors; added compatibility to existing config_parse_duration()

* duration parsing is used on most netdata.conf and stream.conf entries

* more uses of duration parsing; simplification of stream.conf

* code cleanup

* more duration changes

* added html playground

* improved js code

* duration parsing applied to dbengine retention

* fixed doc

* simplified logic; added size parser

* added parsing for sizes

* renames and documentation updates

* hide appconfig internals from the rest of netdata

* fix crash on cleanup of streaming receivers

* fix buffer overflow in gorilla compression

* config return values are const

* ksm set to auto

* support reformatting migrated values

* removed obsolete metrics correlations settings

* split appconfig to multiple files

* durations documentation

* sizes documentation

* added backward compatibility in retention configuration

* provide description on migrations and reformattings

* config options are now a double linked list

* config sections are now a double linked list; config uses spinlocks; code cleanup and renames

* added data type to all config options

* update data types

* split appconfig api to multiple files

* code cleanup and renames

* removed size units above PiB

* Revert "fix buffer overflow in gorilla compression"

This reverts commit 3d5c48e84b.

* appconfig internal api changes
2024-09-04 14:42:01 +03:00
..
cloud-authentication Regenerate integrations.js () 2024-08-19 20:06:55 +03:00
cloud-notifications Regenerate integrations.js () 2024-08-05 11:49:47 +03:00
schemas add Okta SSO integration () 2024-04-10 12:00:48 +03:00
templates go.d docs: add a note that debug mode not supported for Dyncfg jobs () 2024-08-19 21:33:30 +03:00
categories.yaml add Okta SSO integration () 2024-04-10 12:00:48 +03:00
check_collector_metadata.py Add initial tooling for generating integrations.js file. () 2023-08-01 17:23:16 -04:00
deploy.yaml docs: deploy docker add host root mount (stable) () 2024-07-10 21:41:14 +03:00
gen_doc_collector_page.py necessary changes for integrations to work after moving collectors/ i… () 2024-02-08 11:22:51 +02:00
gen_docs_integrations.py restructure go.d () 2024-07-02 15:32:34 +03:00
gen_integrations.py restructure go.d () 2024-07-02 15:32:34 +03:00
integrations.js config parsers () 2024-09-04 14:42:01 +03:00
integrations.json config parsers () 2024-09-04 14:42:01 +03:00
README.md Add initial tooling for generating integrations.js file. () 2023-08-01 17:23:16 -04:00

To generate a copy of integrations.js locally, you will need:

  • Python 3.6 or newer (only tested on Python 3.10 currently, should work on any version of Python newer than 3.6).
  • The following third-party Python modules:
    • jsonschema
    • referencing
    • jinja2
    • ruamel.yaml
  • A local checkout of https://github.com/netdata/netdata
  • A local checkout of https://github.com/netdata/go.d.plugin. The script expects this to be checked out in a directory called go.d.plugin in the root directory of the agent repo, though a symlink with that name pointing at the actual location of the repo will work as well.

The first two parts can be easily covered in a Linux environment, such as a VM or Docker container:

  • On Debian or Ubuntu: apt-get install python3-jsonschema python3-referencing python3-jinja2 python3-ruamel.yaml
  • On Alpine: apk add py3-jsonschema py3-referencing py3-jinja2 py3-ruamel.yaml
  • On Fedora or RHEL (EPEL is required on RHEL systems): dnf install python3-jsonschema python3-referencing python3-jinja2 python3-ruamel-yaml

Once the environment is set up, simply run integrations/gen_integrations.py from the agent repo. Note that the script must be run from this specific location, as it uses its own path to figure out where all the files it needs are.