Metadata-Version: 2.1
Name: datadog-checks-base
Version: 37.20.0
Summary: The Datadog Check Toolkit
Project-URL: Source, https://github.com/DataDog/integrations-core
Author-email: Datadog <packages@datadoghq.com>
Keywords: agent,checks,datadog
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: System :: Monitoring
Provides-Extra: db
Requires-Dist: mmh3==5.2.0; extra == 'db'
Provides-Extra: deps
Requires-Dist: binary==1.0.2; extra == 'deps'
Requires-Dist: cachetools==6.2.0; extra == 'deps'
Requires-Dist: cryptography==45.0.6; extra == 'deps'
Requires-Dist: ddtrace==3.12.5; extra == 'deps'
Requires-Dist: jellyfish==1.2.0; extra == 'deps'
Requires-Dist: lazy-loader==0.4; extra == 'deps'
Requires-Dist: prometheus-client==0.22.1; extra == 'deps'
Requires-Dist: protobuf==6.32.0; extra == 'deps'
Requires-Dist: pydantic==2.11.7; extra == 'deps'
Requires-Dist: python-dateutil==2.9.0.post0; extra == 'deps'
Requires-Dist: pywin32==311; sys_platform == 'win32' and extra == 'deps'
Requires-Dist: pyyaml==6.0.2; extra == 'deps'
Requires-Dist: requests-toolbelt==1.0.0; extra == 'deps'
Requires-Dist: requests-unixsocket2==1.0.0; extra == 'deps'
Requires-Dist: requests==2.32.5; extra == 'deps'
Requires-Dist: simplejson==3.20.1; extra == 'deps'
Requires-Dist: urllib3==2.5.0; extra == 'deps'
Requires-Dist: wrapt==1.17.3; extra == 'deps'
Provides-Extra: http
Requires-Dist: aws-requests-auth==0.4.3; extra == 'http'
Requires-Dist: botocore==1.40.21; extra == 'http'
Requires-Dist: oauthlib==3.3.1; extra == 'http'
Requires-Dist: pyjwt==2.10.1; extra == 'http'
Requires-Dist: pyopenssl==25.1.0; extra == 'http'
Requires-Dist: pysocks==1.7.1; extra == 'http'
Requires-Dist: requests-kerberos==0.15.0; extra == 'http'
Requires-Dist: requests-ntlm==1.3.0; extra == 'http'
Requires-Dist: requests-oauthlib==2.0.0; extra == 'http'
Provides-Extra: json
Requires-Dist: orjson==3.11.3; extra == 'json'
Provides-Extra: kube
Requires-Dist: kubernetes==33.1.0; extra == 'kube'
Requires-Dist: requests-oauthlib==2.0.0; extra == 'kube'
Description-Content-Type: text/markdown

# Datadog Checks Base

[![Latest PyPI version][1]][7]
[![Supported Python versions][2]][7]

## Overview

This package provides the Python bits needed by the [Datadog Agent][4]
to run Agent-based Integrations (also known as _Checks_).

This package is used in two scenarios:

1. When used from within the Python interpreter embedded in the Agent, it
provides all the base classes and utilities needed by any Check.

2. 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][5] for details.

## Installation

Checks from [integrations-core][6] already
use the toolkit in a transparent way when you run the tests but you can
install the toolkit locally and play with it:

```shell
pip install datadog-checks-base
```

## Performance Optimizations

We 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][9] 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.

## Troubleshooting

Need help? Contact [Datadog support][8].

[1]: https://img.shields.io/pypi/v/datadog-checks-base.svg
[2]: https://img.shields.io/pypi/pyversions/datadog-checks-base.svg
[4]: https://github.com/DataDog/datadog-agent
[5]: https://datadoghq.dev/integrations-core/base/about/
[6]: https://github.com/DataDog/integrations-core
[7]: https://pypi.org/project/datadog-checks-base/
[8]: https://docs.datadoghq.com/help/
[9]: https://github.com/scientific-python/lazy-loader
