Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support checks #48

Closed
wants to merge 49 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
a357547
Adds basic disk polling mechanism to 'discover' checks
scottopell May 13, 2024
62d0962
Corrects the topology and the 'is check config' check
scottopell May 13, 2024
9fc63a6
Some comments
scottopell May 13, 2024
70f4690
Reads the checks YAML configuration file and looks for the .py in the…
remeh May 14, 2024
ba6085a
Adds concept of runnable check requests
scottopell May 14, 2024
b54d889
Adds a check runner
scottopell May 14, 2024
fd27b4f
'runs' checks on the specified interval
scottopell May 14, 2024
9524dec
Adds example check
scottopell May 14, 2024
8eb1de1
small refactor to warmup for the day
scottopell May 15, 2024
d8f497b
Scheduler is partially implemented, python can run, but not run corre…
scottopell May 15, 2024
3fe15a4
VM now tries (but fails) to import the datadog_checks module
scottopell May 15, 2024
26aec6d
remove rando check
scottopell May 15, 2024
2704636
adds pyo3
scottopell May 16, 2024
6d384be
Corrects the lifetime mgmnt of py check classes
scottopell May 16, 2024
50be260
Checks actually run!
scottopell May 16, 2024
26f04bc
Don't need 2nd tokio runtime anymore, pyo3 doesn't store an interpreter
scottopell May 16, 2024
f60910b
Adds initial stubs of some expected native modules
scottopell May 16, 2024
28feb0d
small refactor to warm up
scottopell May 17, 2024
2163a53
Propagate metrics resulting from a check execution to the Event Buffer.
remeh May 17, 2024
642138a
check metrics are pushed correctly into the event buffer
scottopell May 17, 2024
4c7f3f4
Merge pull request #55 from DataDog/remeh/check-reporting
scottopell May 17, 2024
e091915
Removes un-used deps
scottopell May 17, 2024
1223461
Forward event buffer with check metrics
scottopell May 17, 2024
a4136a2
Move python modules into dedicated file
scottopell May 20, 2024
e257454
Refactor conversion into TryInto
scottopell May 20, 2024
3c61c01
Some cleanup
scottopell May 20, 2024
ba05534
Slightly changes expected python loading structure to more closely al…
scottopell May 20, 2024
8d5c2f8
small fixes
scottopell May 20, 2024
ebd14b1
Adds instructions for loading venv with required agent check libs
scottopell May 21, 2024
ea36274
Parse yaml instance config and pass it through as native py objects
scottopell May 21, 2024
4c640bb
Adds support for init_config and instance config
scottopell May 21, 2024
5bb0be5
Refactor in pursuit of functional unit tests
scottopell May 21, 2024
4d8f264
Test coverage!!
scottopell May 21, 2024
1d0e133
Merge branch 'main' into sopell/checks
scottopell May 21, 2024
d922752
implement memory bounds for checks
scottopell May 21, 2024
69bc1b3
Maybe fix CI for pyo3, maybe not
scottopell May 21, 2024
87ecaca
Normalize check name handling to match Agent behavior
scottopell May 22, 2024
a1ac8d6
Adds a layer of indirection to support non-python checks
scottopell May 22, 2024
384efcd
Adds template of core check scheduler
scottopell May 22, 2024
0c400dc
Implements basic corecheck scheduler
scottopell May 22, 2024
3e0142e
Very very rough wasm check impl
scottopell May 22, 2024
01661ab
Partially re-writes the directory config finder to find default checks
scottopell May 23, 2024
7626db0
Refactor dir listener to expose module name based on read path
scottopell May 24, 2024
7eee9d9
Remove experimental core check and wasm check schedulers
scottopell May 24, 2024
c2fa865
Rewrites yaml searching logic again and cleans up some error handling…
scottopell May 24, 2024
5083126
Removes un-used constructor
scottopell May 24, 2024
45d97c4
Adds basic telemetry into checks running
scottopell May 24, 2024
dc621d2
Adds links for future reference
scottopell May 31, 2024
ac5f407
Adds notes on check dependencies
scottopell May 31, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .ci/images/build/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,11 @@ RUN apt-get update && \
apt-get update && \
apt-get install -y --no-install-recommends gcc-8 g++-8 binutils-2.26 && \
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 60 --slave /usr/bin/g++ g++ /usr/bin/g++-8 && \
add-apt-repository ppa:deadsnakes/ppa -y && \
apt-get update && \
apt-get install -y --no-install-recommends libpython3-dev && \
rm -rf /var/lib/apt/lists/*

ENV PATH="/usr/lib/binutils-2.26/bin:${PATH}"

# Install Protocol Buffers compiler by hand, since Ubuntu 14.04 does not have a recent enough version.
Expand Down
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,7 @@ target/
.vscode/
tooling/bin/
test/k8s/charts/
test/build
dist/checks.d/__pycache__
test/build/
lib/ddsketch-agent/dhat-heap.json
lib/ddsketch-agent/dhat-heap.json
Loading