This package provides the Python bits needed by the Datadog Agent to run Agent-based Integrations (also known as Checks).
This package is used in two scenarios:
-
When used from within the Python interpreter embedded in the Agent, it provides all the base classes and utilities needed by any Check.
-
When installed in a local environment with a regular Python interpreter, it mocks the presence of a running Agent so checks can work in standalone mode, mostly useful for testing and development.
Please refer to the docs for details.
Checks from integrations-core already use the toolkit in a transparent way when you run the tests but you can install the toolkit locally and play with it:
pip install datadog-checks-baseWe strive to balance lean resource usage with a "batteries included" user experience. We employ a few tricks to achieve this.
One of them is the lazy-loader library that allows us to expose a nice API (simple, short imports) without the baseline memory overhead of importing everything all the time.
Another trick is to import some of our dependencies inside functions that use them instead of the more conventional import section at the top of the file. We rely on this the most in the AgentCheck base class.
Need help? Contact Datadog support.