datadog-checks-base 37.6.1__tar.gz → 37.8.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/.gitignore +1 -4
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/PKG-INFO +18 -8
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/README.md +10 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/__about__.py +1 -1
- datadog_checks_base-37.8.0/datadog_checks/base/__init__.py +11 -0
- datadog_checks_base-37.8.0/datadog_checks/base/__init__.pyi +31 -0
- datadog_checks_base-37.8.0/datadog_checks/base/checks/__init__.py +6 -0
- datadog_checks_base-37.6.1/datadog_checks/base/checks/__init__.py → datadog_checks_base-37.8.0/datadog_checks/base/checks/__init__.pyi +2 -3
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/base.py +58 -27
- datadog_checks_base-37.8.0/datadog_checks/base/checks/kube_leader/__init__.py +6 -0
- datadog_checks_base-37.6.1/datadog_checks/base/checks/kube_leader/__init__.py → datadog_checks_base-37.8.0/datadog_checks/base/checks/kube_leader/__init__.pyi +2 -3
- datadog_checks_base-37.8.0/datadog_checks/base/checks/kubelet_base/__init__.py +6 -0
- datadog_checks_base-37.8.0/datadog_checks/base/checks/kubelet_base/__init__.pyi +6 -0
- datadog_checks_base-37.8.0/datadog_checks/base/checks/openmetrics/__init__.py +6 -0
- datadog_checks_base-37.6.1/datadog_checks/base/checks/openmetrics/__init__.py → datadog_checks_base-37.8.0/datadog_checks/base/checks/openmetrics/__init__.pyi +1 -3
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/scraper.py +0 -2
- datadog_checks_base-37.8.0/datadog_checks/base/checks/openmetrics/v2/transformers/__init__.py +6 -0
- datadog_checks_base-37.6.1/datadog_checks/base/checks/openmetrics/v2/transformers/__init__.py → datadog_checks_base-37.8.0/datadog_checks/base/checks/openmetrics/v2/transformers/__init__.pyi +14 -1
- datadog_checks_base-37.8.0/datadog_checks/base/checks/prometheus/__init__.py +6 -0
- datadog_checks_base-37.6.1/datadog_checks/base/checks/prometheus/__init__.py → datadog_checks_base-37.8.0/datadog_checks/base/checks/prometheus/__init__.pyi +2 -3
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/prometheus/mixins.py +1 -1
- datadog_checks_base-37.8.0/datadog_checks/base/checks/win/__init__.py +6 -0
- datadog_checks_base-37.6.1/datadog_checks/base/checks/win/__init__.py → datadog_checks_base-37.8.0/datadog_checks/base/checks/win/__init__.pyi +1 -2
- datadog_checks_base-37.8.0/datadog_checks/base/checks/win/wmi/__init__.py +6 -0
- datadog_checks_base-37.8.0/datadog_checks/base/checks/win/wmi/__init__.pyi +32 -0
- datadog_checks_base-37.6.1/datadog_checks/base/checks/win/wmi/__init__.py → datadog_checks_base-37.8.0/datadog_checks/base/checks/win/wmi/base.py +5 -5
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/log.py +10 -8
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/stubs/aggregator.py +1 -1
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/stubs/datadog_agent.py +5 -6
- datadog_checks_base-37.8.0/datadog_checks/base/utils/_http_utils.py +51 -0
- datadog_checks_base-37.8.0/datadog_checks/base/utils/db/__init__.py +6 -0
- datadog_checks_base-37.6.1/datadog_checks/base/utils/db/__init__.py → datadog_checks_base-37.8.0/datadog_checks/base/utils/db/__init__.pyi +3 -1
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/db/sql.py +2 -2
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/db/utils.py +3 -3
- datadog_checks_base-37.8.0/datadog_checks/base/utils/discovery/__init__.py +6 -0
- datadog_checks_base-37.6.1/datadog_checks/base/utils/discovery/__init__.py → datadog_checks_base-37.8.0/datadog_checks/base/utils/discovery/__init__.pyi +3 -1
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/fips.py +30 -0
- datadog_checks_base-37.8.0/datadog_checks/base/utils/format/__init__.py +3 -0
- datadog_checks_base-37.8.0/datadog_checks/base/utils/format/_json.py +43 -0
- datadog_checks_base-37.8.0/datadog_checks/base/utils/format/json.py +30 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/http.py +37 -66
- datadog_checks_base-37.8.0/datadog_checks/base/utils/metadata/__init__.py +6 -0
- datadog_checks_base-37.6.1/datadog_checks/base/utils/metadata/__init__.py → datadog_checks_base-37.8.0/datadog_checks/base/utils/metadata/__init__.pyi +3 -1
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/prometheus/__init__.py +2 -1
- datadog_checks_base-37.8.0/datadog_checks/base/utils/prometheus/__init__.pyi +6 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/replay/execute.py +6 -5
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/replay/redirect.py +8 -7
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/serialization.py +5 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/tracing.py +10 -1
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/pyproject.toml +7 -7
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/test_agent_check.py +2 -1
- datadog_checks_base-37.8.0/tests/base/checks/windows/conftest.py +8 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/db/test_util.py +6 -6
- datadog_checks_base-37.8.0/tests/base/utils/format/__init__.py +3 -0
- datadog_checks_base-37.8.0/tests/base/utils/format/test_json.py +26 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/http/test_auth.py +2 -2
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/http/test_tls_and_certs.py +8 -8
- datadog_checks_base-37.8.0/tests/base/utils/test_fips.py +47 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/stubs/test_aggregator_service_checks.py +6 -0
- datadog_checks_base-37.6.1/datadog_checks/base/__init__.py +0 -51
- datadog_checks_base-37.6.1/tests/base/utils/http/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/agent.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/kube_leader/base_check.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/kube_leader/mixins.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/kube_leader/record.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/kubelet_base/base.py +0 -0
- {datadog_checks_base-37.6.1/datadog_checks/base/checks/kubelet_base → datadog_checks_base-37.8.0/datadog_checks/base/checks/libs}/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/libs/prometheus.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/libs/thread_pool.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/libs/timer.py +0 -0
- {datadog_checks_base-37.6.1/datadog_checks/base/checks/libs → datadog_checks_base-37.8.0/datadog_checks/base/checks/libs/vmware}/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/libs/vmware/all_metrics.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/libs/vmware/basic_metrics.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/logs/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/logs/crawler/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/logs/crawler/base.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/logs/crawler/stream.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/network.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/base_check.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/mixins.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/base.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/first_scrape_handler.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/labels.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/metrics.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/transform.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/transformers/counter.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/transformers/counter_gauge.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/transformers/gauge.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/transformers/histogram.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/transformers/metadata.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/transformers/rate.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/transformers/service_check.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/transformers/summary.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/transformers/temporal_percent.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/transformers/time_elapsed.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/openmetrics/v2/utils.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/prometheus/base_check.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/prometheus/prometheus_base.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/win/winpdh.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/win/winpdh_base.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/win/winpdh_stub.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/win/wmi/counter_type.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/win/wmi/sampler.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/win/wmi/types.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/base.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/connection.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/constants.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/counter.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/transform.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/transformers/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/transformers/count.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/transformers/gauge.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/transformers/monotonic_count.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/transformers/rate.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/transformers/service_check.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/transformers/temporal_percent.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/transformers/time_elapsed.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/utils.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/windows/perf_counters/utils_win32pdh_fix.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/config.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/constants.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/ddyaml.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/errors.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/stubs/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/stubs/_util.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/stubs/common.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/stubs/log.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/stubs/similar.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/stubs/tagging.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/types.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/agent/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/agent/common.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/agent/debug.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/agent/memory.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/agent/packages.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/agent/utils.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/aws.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/common.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/concurrency/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/concurrency/limiter.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/constants.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/containers.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/date.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/db/core.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/db/query.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/db/sql_commenter.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/db/statement_metrics.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/db/timed_cache.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/db/transform.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/db/types.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/diagnose.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/discovery/cache.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/discovery/discovery.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/discovery/filter.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/functions.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/headers.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/limiter.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/metadata/constants.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/metadata/core.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/metadata/utils.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/metadata/version.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/models/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/models/types.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/models/validation/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/models/validation/core.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/models/validation/utils.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/network.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/platform.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/prometheus/functions.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/prometheus/metrics_pb2.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/replay/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/replay/constants.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/secrets.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/subprocess_output.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/tagging.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/tailfile.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/time.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/timeout.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/tls.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/utils/tracking.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/base.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/libs/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/libs/thread_pool.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/libs/timer.py +0 -0
- {datadog_checks_base-37.6.1/datadog_checks/base → datadog_checks_base-37.8.0/datadog_checks}/checks/libs/vmware/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/libs/vmware/all_metrics.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/libs/vmware/basic_metrics.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/libs/wmi/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/libs/wmi/sampler.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/network.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/network_checks.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/openmetrics/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/openmetrics/base_check.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/openmetrics/mixins.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/prometheus/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/prometheus/base_check.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/prometheus/mixins.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/prometheus/prometheus_base.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/prometheus_check/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/win/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/win/winpdh.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/win/winpdh_base.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/win/winpdh_stub.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/win/wmi/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/win/wmi/counter_type.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/win/wmi/sampler.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/checks/winwmi_check.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/config.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/errors.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/log.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/py.typed +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/stubs/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/stubs/_util.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/stubs/aggregator.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/stubs/datadog_agent.py +0 -0
- {datadog_checks_base-37.6.1/datadog_checks/checks/libs/vmware → datadog_checks_base-37.8.0/datadog_checks/utils}/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/utils/common.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/utils/containers.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/utils/headers.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/utils/limiter.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/utils/platform.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/utils/prometheus/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/utils/prometheus/functions.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/utils/prometheus/metrics_pb2.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/utils/proxy.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/utils/subprocess_output.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/utils/tailfile.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/utils/timeout.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/utils/tracing.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/hatch.toml +0 -0
- {datadog_checks_base-37.6.1/datadog_checks/utils → datadog_checks_base-37.8.0/tests}/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/__init__.py +0 -0
- {datadog_checks_base-37.6.1/tests → datadog_checks_base-37.8.0/tests/base/checks}/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/logs/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/logs/crawler/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/logs/crawler/test_base.py +0 -0
- {datadog_checks_base-37.6.1/tests/base/checks → datadog_checks_base-37.8.0/tests/base/checks/openmetrics}/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/bench_utils.py +0 -0
- {datadog_checks_base-37.6.1/tests/base/checks/openmetrics → datadog_checks_base-37.8.0/tests/base/checks/openmetrics/test_legacy}/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_legacy/test_bench.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_legacy/test_compat_scraper.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_legacy/test_openmetrics.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_legacy/test_openmetrics_base_check.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_legacy/utils.py +0 -0
- {datadog_checks_base-37.6.1/tests/base/checks/openmetrics/test_legacy → datadog_checks_base-37.8.0/tests/base/checks/openmetrics/test_v2}/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_bench.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_config.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_first_scrape_handler.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_interface.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_options.py +0 -0
- {datadog_checks_base-37.6.1/tests/base/checks/openmetrics/test_v2 → datadog_checks_base-37.8.0/tests/base/checks/openmetrics/test_v2/test_transformers}/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_transformers/test_counter.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_transformers/test_counter_gauge.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_transformers/test_gauge.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_transformers/test_histogram.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_transformers/test_metadata.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_transformers/test_native_dynamic.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_transformers/test_rate.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_transformers/test_service_check.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_transformers/test_summary.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_transformers/test_temporal_percent.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_transformers/test_time_elapsed.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/test_transformers/test_type_override.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/openmetrics/test_v2/utils.py +0 -0
- {datadog_checks_base-37.6.1/tests/base/checks/openmetrics/test_v2/test_transformers → datadog_checks_base-37.8.0/tests/base/checks/prometheus}/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/prometheus/test_prometheus.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/prometheus/test_prometheus_base_check.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/test_kube_leader.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/test_kubelet_base.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/utils.py +0 -0
- {datadog_checks_base-37.6.1/tests/base/checks/prometheus → datadog_checks_base-37.8.0/tests/base/checks/win}/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/win/test_pdhbasecheck.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/win/test_winpdh.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/win/test_wmicheck.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/win/test_wmisampler.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/test_aggregation.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/test_config.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/test_filter.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/test_health.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/test_integration.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/test_legacy_support.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/test_localization.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/test_refresh.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/test_subclass.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/transformers/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/transformers/test_count.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/transformers/test_gauge.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/transformers/test_monotonic_count.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/transformers/test_rate.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/transformers/test_service_check.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/transformers/test_temporal_percent.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/transformers/test_time_elapsed.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/checks/windows/perf_counters/utils.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/test_constants.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/test_ddyaml.py +0 -0
- {datadog_checks_base-37.6.1/tests/base/checks/win → datadog_checks_base-37.8.0/tests/base/utils}/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/concurrency/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/concurrency/test_limiter.py +0 -0
- {datadog_checks_base-37.6.1/tests/base/utils → datadog_checks_base-37.8.0/tests/base/utils/db}/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/db/common.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/db/test_custom_queries.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/db/test_db_sql.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/db/test_db_statements.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/db/test_query_executor.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/db/test_query_manager.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/db/test_query_result.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/db/test_sql_commenter.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/db/test_timed_cache.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/db/test_transformers.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/discovery/test_discovery.py +0 -0
- {datadog_checks_base-37.6.1/tests/base/utils/db → datadog_checks_base-37.8.0/tests/base/utils/http}/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/http/common.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/http/test_api.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/http/test_authtoken.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/http/test_config.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/http/test_headers.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/http/test_http.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/http/test_kerberos_int.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/http/test_kerberos_unit.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/http/test_proxy.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/http/test_socks5_proxy_integration.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/replay/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/replay/test_check.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/test_agent_packages.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/test_agent_utils.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/test_aws.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/test_diagnose.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/test_time.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/test_tls.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/test_tracing.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/test_tracking.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/base/utils/test_utils.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-agent/Dockerfile +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-agent/configurekerberos.sh +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-agent/configurenginx.sh +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-agent/entrypoint.sh +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-agent/nginx.yaml +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-agent.yaml +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-kdc/Dockerfile +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-kdc/init.sh +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-kdc/kdc.conf +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-kdc/krb5.conf +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-nginx/Dockerfile +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-nginx/configurekerberos.sh +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-nginx/configurenginx.sh +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-nginx/entrypoint.sh +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-nginx/nginx.conf +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos-nginx/setupkeytab.sh +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/kerberos/kerberos.yaml +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/socks5-proxy.yaml +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/uds/uds-nginx/nginx.conf +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/uds/uds-nginx/templates/default.conf.template +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/compose/uds/uds.yaml +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/conftest.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/fixtures/bearer_tokens/custom_token +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/fixtures/bearer_tokens/default_token +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/fixtures/dcos/private-key.pem +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/fixtures/dcos/public-key.pem +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/fixtures/ddyaml/valid_conf.yaml +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/fixtures/kerberos/krb5.conf +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/fixtures/kubelet_base/pod_list_raw.dat +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/fixtures/kubelet_base/pod_list_raw.json +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/fixtures/prometheus/amazon_msk_jmx_metrics.txt +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/fixtures/prometheus/deprecated.txt +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/fixtures/prometheus/ksm.txt +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/fixtures/prometheus/metrics.txt +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/fixtures/prometheus/protobuf.bin +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/models/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/models/config_models/__init__.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/models/config_models/defaults.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/models/config_models/deprecations.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/models/config_models/instance.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/models/config_models/shared.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/models/config_models/validators.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/models/data/spec.yaml +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/models/test_interface.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/models/test_types.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/stubs/test_aggregator_metric_has_tag.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/stubs/test_aggregator_no_duplicate.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/stubs/test_aggregator_similar.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/stubs/test_datadog_agent.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/test_config.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/test_log.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/test_metadata.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/test_serialization.py +0 -0
- {datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/tests/test_zzz_run_last.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: datadog-checks-base
|
|
3
|
-
Version: 37.
|
|
3
|
+
Version: 37.8.0
|
|
4
4
|
Summary: The Datadog Check Toolkit
|
|
5
5
|
Project-URL: Source, https://github.com/DataDog/integrations-core
|
|
6
6
|
Author-email: Datadog <packages@datadoghq.com>
|
|
@@ -16,10 +16,11 @@ Provides-Extra: db
|
|
|
16
16
|
Requires-Dist: mmh3==5.1.0; extra == 'db'
|
|
17
17
|
Provides-Extra: deps
|
|
18
18
|
Requires-Dist: binary==1.0.1; extra == 'deps'
|
|
19
|
-
Requires-Dist: cachetools==5.5.
|
|
20
|
-
Requires-Dist: cryptography==
|
|
19
|
+
Requires-Dist: cachetools==5.5.2; extra == 'deps'
|
|
20
|
+
Requires-Dist: cryptography==44.0.1; extra == 'deps'
|
|
21
21
|
Requires-Dist: ddtrace==2.10.6; extra == 'deps'
|
|
22
22
|
Requires-Dist: jellyfish==1.1.3; extra == 'deps'
|
|
23
|
+
Requires-Dist: lazy-loader==0.4; extra == 'deps'
|
|
23
24
|
Requires-Dist: prometheus-client==0.21.1; extra == 'deps'
|
|
24
25
|
Requires-Dist: protobuf==5.29.3; extra == 'deps'
|
|
25
26
|
Requires-Dist: pydantic==2.10.6; extra == 'deps'
|
|
@@ -29,15 +30,14 @@ Requires-Dist: pyyaml==6.0.2; extra == 'deps'
|
|
|
29
30
|
Requires-Dist: requests-toolbelt==1.0.0; extra == 'deps'
|
|
30
31
|
Requires-Dist: requests-unixsocket2==0.4.2; extra == 'deps'
|
|
31
32
|
Requires-Dist: requests==2.32.3; extra == 'deps'
|
|
32
|
-
Requires-Dist: simplejson==3.
|
|
33
|
-
Requires-Dist: uptime==3.0.1; extra == 'deps'
|
|
33
|
+
Requires-Dist: simplejson==3.20.1; extra == 'deps'
|
|
34
34
|
Requires-Dist: wrapt==1.17.2; extra == 'deps'
|
|
35
35
|
Provides-Extra: http
|
|
36
36
|
Requires-Dist: aws-requests-auth==0.4.3; extra == 'http'
|
|
37
|
-
Requires-Dist: botocore==1.36.
|
|
37
|
+
Requires-Dist: botocore==1.36.26; extra == 'http'
|
|
38
38
|
Requires-Dist: oauthlib==3.2.2; extra == 'http'
|
|
39
39
|
Requires-Dist: pyjwt==2.10.1; extra == 'http'
|
|
40
|
-
Requires-Dist: pyopenssl==24.
|
|
40
|
+
Requires-Dist: pyopenssl==24.3.0; extra == 'http'
|
|
41
41
|
Requires-Dist: pysocks==1.7.1; extra == 'http'
|
|
42
42
|
Requires-Dist: requests-kerberos==0.15.0; extra == 'http'
|
|
43
43
|
Requires-Dist: requests-ntlm==1.3.0; extra == 'http'
|
|
@@ -45,7 +45,7 @@ Requires-Dist: requests-oauthlib==2.0.0; extra == 'http'
|
|
|
45
45
|
Provides-Extra: json
|
|
46
46
|
Requires-Dist: orjson==3.10.15; extra == 'json'
|
|
47
47
|
Provides-Extra: kube
|
|
48
|
-
Requires-Dist: kubernetes==32.0.
|
|
48
|
+
Requires-Dist: kubernetes==32.0.1; extra == 'kube'
|
|
49
49
|
Requires-Dist: requests-oauthlib==2.0.0; extra == 'kube'
|
|
50
50
|
Description-Content-Type: text/markdown
|
|
51
51
|
|
|
@@ -80,6 +80,15 @@ install the toolkit locally and play with it:
|
|
|
80
80
|
pip install datadog-checks-base
|
|
81
81
|
```
|
|
82
82
|
|
|
83
|
+
## Performance Optimizations
|
|
84
|
+
|
|
85
|
+
We strive to balance lean resource usage with a "batteries included" user experience.
|
|
86
|
+
We employ a few tricks to achieve this.
|
|
87
|
+
|
|
88
|
+
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.
|
|
89
|
+
|
|
90
|
+
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.
|
|
91
|
+
|
|
83
92
|
## Troubleshooting
|
|
84
93
|
|
|
85
94
|
Need help? Contact [Datadog support][8].
|
|
@@ -91,3 +100,4 @@ Need help? Contact [Datadog support][8].
|
|
|
91
100
|
[6]: https://github.com/DataDog/integrations-core
|
|
92
101
|
[7]: https://pypi.org/project/datadog-checks-base/
|
|
93
102
|
[8]: https://docs.datadoghq.com/help/
|
|
103
|
+
[9]: https://github.com/scientific-python/lazy-loader
|
|
@@ -29,6 +29,15 @@ install the toolkit locally and play with it:
|
|
|
29
29
|
pip install datadog-checks-base
|
|
30
30
|
```
|
|
31
31
|
|
|
32
|
+
## Performance Optimizations
|
|
33
|
+
|
|
34
|
+
We strive to balance lean resource usage with a "batteries included" user experience.
|
|
35
|
+
We employ a few tricks to achieve this.
|
|
36
|
+
|
|
37
|
+
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.
|
|
38
|
+
|
|
39
|
+
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.
|
|
40
|
+
|
|
32
41
|
## Troubleshooting
|
|
33
42
|
|
|
34
43
|
Need help? Contact [Datadog support][8].
|
|
@@ -40,3 +49,4 @@ Need help? Contact [Datadog support][8].
|
|
|
40
49
|
[6]: https://github.com/DataDog/integrations-core
|
|
41
50
|
[7]: https://pypi.org/project/datadog-checks-base/
|
|
42
51
|
[8]: https://docs.datadoghq.com/help/
|
|
52
|
+
[9]: https://github.com/scientific-python/lazy-loader
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# (C) Datadog, Inc. 2018-present
|
|
2
|
+
# All rights reserved
|
|
3
|
+
# Licensed under a 3-clause BSD style license (see LICENSE)
|
|
4
|
+
import lazy_loader
|
|
5
|
+
|
|
6
|
+
__getattr__, __dir__, __all__ = lazy_loader.attach_stub(__name__, __file__)
|
|
7
|
+
|
|
8
|
+
if __getattr__('datadog_agent').get_config('use_boringssl'):
|
|
9
|
+
import urllib3.contrib.pyopenssl
|
|
10
|
+
|
|
11
|
+
urllib3.contrib.pyopenssl.inject_into_urllib3()
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# (C) Datadog, Inc. 2025-present
|
|
2
|
+
# All rights reserved
|
|
3
|
+
# Licensed under a 3-clause BSD style license (see LICENSE)
|
|
4
|
+
from .__about__ import __version__
|
|
5
|
+
from .agent import datadog_agent
|
|
6
|
+
from .checks import AgentCheck
|
|
7
|
+
from .checks.kube_leader import KubeLeaderElectionBaseCheck
|
|
8
|
+
from .checks.openmetrics import OpenMetricsBaseCheck
|
|
9
|
+
from .checks.openmetrics.v2.base import OpenMetricsBaseCheckV2
|
|
10
|
+
from .checks.win import PDHBaseCheck
|
|
11
|
+
from .checks.windows.perf_counters import PerfCountersBaseCheck
|
|
12
|
+
from .config import is_affirmative
|
|
13
|
+
from .errors import ConfigurationError
|
|
14
|
+
from .utils.common import ensure_bytes, ensure_unicode, to_native_string, to_string
|
|
15
|
+
|
|
16
|
+
__all__ = [
|
|
17
|
+
'__version__',
|
|
18
|
+
'AgentCheck',
|
|
19
|
+
'ConfigurationError',
|
|
20
|
+
'KubeLeaderElectionBaseCheck',
|
|
21
|
+
'OpenMetricsBaseCheck',
|
|
22
|
+
'OpenMetricsBaseCheckV2',
|
|
23
|
+
'PDHBaseCheck',
|
|
24
|
+
'PerfCountersBaseCheck',
|
|
25
|
+
'datadog_agent',
|
|
26
|
+
'ensure_bytes',
|
|
27
|
+
'ensure_unicode',
|
|
28
|
+
'is_affirmative',
|
|
29
|
+
'to_native_string',
|
|
30
|
+
'to_string',
|
|
31
|
+
]
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
# (C) Datadog, Inc.
|
|
1
|
+
# (C) Datadog, Inc. 2025-present
|
|
2
2
|
# All rights reserved
|
|
3
3
|
# Licensed under a 3-clause BSD style license (see LICENSE)
|
|
4
|
-
|
|
5
4
|
from .base import AgentCheck
|
|
6
5
|
from .network import EventType, NetworkCheck, Status
|
|
7
6
|
|
|
8
|
-
__all__ = ['AgentCheck', '
|
|
7
|
+
__all__ = ['AgentCheck', 'EventType', 'NetworkCheck', 'Status']
|
{datadog_checks_base-37.6.1 → datadog_checks_base-37.8.0}/datadog_checks/base/checks/base.py
RENAMED
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
# (C) Datadog, Inc. 2018-present
|
|
2
2
|
# All rights reserved
|
|
3
3
|
# Licensed under a 3-clause BSD style license (see LICENSE)
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
import copy
|
|
5
7
|
import functools
|
|
6
8
|
import importlib
|
|
7
|
-
import inspect
|
|
8
9
|
import logging
|
|
9
10
|
import os
|
|
10
11
|
import re
|
|
11
|
-
import traceback
|
|
12
|
-
import unicodedata
|
|
13
12
|
from collections import deque
|
|
14
13
|
from os.path import basename
|
|
15
14
|
from typing import ( # noqa: F401
|
|
@@ -27,10 +26,10 @@ from typing import ( # noqa: F401
|
|
|
27
26
|
Union,
|
|
28
27
|
)
|
|
29
28
|
|
|
30
|
-
import
|
|
31
|
-
from pydantic import BaseModel, ValidationError
|
|
29
|
+
import lazy_loader
|
|
32
30
|
|
|
33
31
|
from datadog_checks.base.agent import AGENT_RUNNING, aggregator, datadog_agent
|
|
32
|
+
from datadog_checks.base.utils.format import json
|
|
34
33
|
|
|
35
34
|
from ..config import is_affirmative
|
|
36
35
|
from ..constants import ServiceCheck
|
|
@@ -46,15 +45,8 @@ from ..types import (
|
|
|
46
45
|
)
|
|
47
46
|
from ..utils.agent.utils import should_profile_memory
|
|
48
47
|
from ..utils.common import ensure_bytes, to_native_string
|
|
49
|
-
from ..utils.diagnose import Diagnosis
|
|
50
48
|
from ..utils.fips import enable_fips
|
|
51
|
-
from ..utils.http import RequestsWrapper
|
|
52
|
-
from ..utils.limiter import Limiter
|
|
53
|
-
from ..utils.metadata import MetadataManager
|
|
54
|
-
from ..utils.secrets import SecretsSanitizer
|
|
55
|
-
from ..utils.serialization import from_json, to_json
|
|
56
49
|
from ..utils.tagging import GENERIC_TAGS
|
|
57
|
-
from ..utils.tls import TlsContextWrapper
|
|
58
50
|
from ..utils.tracing import traced_class
|
|
59
51
|
|
|
60
52
|
if AGENT_RUNNING:
|
|
@@ -87,7 +79,18 @@ if is_affirmative(datadog_agent.get_config('integration_profiling')):
|
|
|
87
79
|
prof.start()
|
|
88
80
|
|
|
89
81
|
if TYPE_CHECKING:
|
|
82
|
+
import inspect as _module_inspect
|
|
90
83
|
import ssl # noqa: F401
|
|
84
|
+
import traceback as _module_traceback
|
|
85
|
+
import unicodedata as _module_unicodedata
|
|
86
|
+
|
|
87
|
+
from datadog_checks.base.utils.diagnose import Diagnosis
|
|
88
|
+
from datadog_checks.base.utils.http import RequestsWrapper
|
|
89
|
+
from datadog_checks.base.utils.metadata import MetadataManager
|
|
90
|
+
|
|
91
|
+
inspect: _module_inspect = lazy_loader.load('inspect')
|
|
92
|
+
traceback: _module_traceback = lazy_loader.load('traceback')
|
|
93
|
+
unicodedata: _module_unicodedata = lazy_loader.load('unicodedata')
|
|
91
94
|
|
|
92
95
|
# Metric types for which it's only useful to submit once per set of tags
|
|
93
96
|
ONE_PER_CONTEXT_METRIC_TYPES = [aggregator.GAUGE, aggregator.RATE, aggregator.MONOTONIC_COUNT]
|
|
@@ -342,6 +345,9 @@ class AgentCheck(object):
|
|
|
342
345
|
limit = self._get_metric_limit(instance=instance)
|
|
343
346
|
|
|
344
347
|
if limit > 0:
|
|
348
|
+
# See Performance Optimizations in this package's README.md.
|
|
349
|
+
from datadog_checks.base.utils.limiter import Limiter
|
|
350
|
+
|
|
345
351
|
return Limiter(name, 'metrics', limit, self.warning)
|
|
346
352
|
|
|
347
353
|
return None
|
|
@@ -386,17 +392,22 @@ class AgentCheck(object):
|
|
|
386
392
|
"""
|
|
387
393
|
Convenience wrapper to ease programmatic use of this class from the C API.
|
|
388
394
|
"""
|
|
395
|
+
# See Performance Optimizations in this package's README.md.
|
|
396
|
+
import yaml
|
|
397
|
+
|
|
389
398
|
return yaml.safe_load(yaml_str)
|
|
390
399
|
|
|
391
400
|
@property
|
|
392
|
-
def http(self):
|
|
393
|
-
# type: () -> RequestsWrapper
|
|
401
|
+
def http(self) -> RequestsWrapper:
|
|
394
402
|
"""
|
|
395
403
|
Provides logic to yield consistent network behavior based on user configuration.
|
|
396
404
|
|
|
397
405
|
Only new checks or checks on Agent 6.13+ can and should use this for HTTP requests.
|
|
398
406
|
"""
|
|
399
407
|
if not hasattr(self, '_http'):
|
|
408
|
+
# See Performance Optimizations in this package's README.md.
|
|
409
|
+
from datadog_checks.base.utils.http import RequestsWrapper
|
|
410
|
+
|
|
400
411
|
self._http = RequestsWrapper(self.instance or {}, self.init_config, self.HTTP_CONFIG_REMAPPER, self.log)
|
|
401
412
|
|
|
402
413
|
return self._http
|
|
@@ -432,12 +443,14 @@ class AgentCheck(object):
|
|
|
432
443
|
return self.__formatted_tags
|
|
433
444
|
|
|
434
445
|
@property
|
|
435
|
-
def diagnosis(self):
|
|
436
|
-
# type: () -> Diagnosis
|
|
446
|
+
def diagnosis(self) -> Diagnosis:
|
|
437
447
|
"""
|
|
438
448
|
A Diagnosis object to register explicit diagnostics and record diagnoses.
|
|
439
449
|
"""
|
|
440
450
|
if not hasattr(self, '_diagnosis'):
|
|
451
|
+
# See Performance Optimizations in this package's README.md.
|
|
452
|
+
from datadog_checks.base.utils.diagnose import Diagnosis
|
|
453
|
+
|
|
441
454
|
self._diagnosis = Diagnosis(sanitize=self.sanitize)
|
|
442
455
|
return self._diagnosis
|
|
443
456
|
|
|
@@ -451,6 +464,9 @@ class AgentCheck(object):
|
|
|
451
464
|
Since: Agent 7.24
|
|
452
465
|
"""
|
|
453
466
|
if not hasattr(self, '_tls_context_wrapper'):
|
|
467
|
+
# See Performance Optimizations in this package's README.md.
|
|
468
|
+
from datadog_checks.base.utils.tls import TlsContextWrapper
|
|
469
|
+
|
|
454
470
|
self._tls_context_wrapper = TlsContextWrapper(
|
|
455
471
|
self.instance or {}, self.TLS_CONFIG_REMAPPER, overrides=overrides
|
|
456
472
|
)
|
|
@@ -461,8 +477,7 @@ class AgentCheck(object):
|
|
|
461
477
|
return self._tls_context_wrapper.tls_context
|
|
462
478
|
|
|
463
479
|
@property
|
|
464
|
-
def metadata_manager(self):
|
|
465
|
-
# type: () -> MetadataManager
|
|
480
|
+
def metadata_manager(self) -> MetadataManager:
|
|
466
481
|
"""
|
|
467
482
|
Used for sending metadata via Go bindings.
|
|
468
483
|
"""
|
|
@@ -470,6 +485,9 @@ class AgentCheck(object):
|
|
|
470
485
|
if not self.check_id and AGENT_RUNNING:
|
|
471
486
|
raise RuntimeError('Attribute `check_id` must be set')
|
|
472
487
|
|
|
488
|
+
# See Performance Optimizations in this package's README.md.
|
|
489
|
+
from datadog_checks.base.utils.metadata import MetadataManager
|
|
490
|
+
|
|
473
491
|
self._metadata_manager = MetadataManager(self.name, self.check_id, self.log, self.METADATA_TRANSFORMERS)
|
|
474
492
|
|
|
475
493
|
return self._metadata_manager
|
|
@@ -498,8 +516,9 @@ class AgentCheck(object):
|
|
|
498
516
|
return False
|
|
499
517
|
|
|
500
518
|
def log_typos_in_options(self, user_config, models_config, level):
|
|
501
|
-
#
|
|
519
|
+
# See Performance Optimizations in this package's README.md.
|
|
502
520
|
from jellyfish import jaro_winkler_similarity
|
|
521
|
+
from pydantic import BaseModel
|
|
503
522
|
|
|
504
523
|
user_configs = user_config or {} # type: Dict[str, Any]
|
|
505
524
|
models_config = models_config or {}
|
|
@@ -570,6 +589,8 @@ class AgentCheck(object):
|
|
|
570
589
|
|
|
571
590
|
model = getattr(package, model_name, None)
|
|
572
591
|
if model is not None:
|
|
592
|
+
from pydantic import ValidationError
|
|
593
|
+
|
|
573
594
|
try:
|
|
574
595
|
config_model = model.model_validate(config, context=context)
|
|
575
596
|
except ValidationError as e:
|
|
@@ -598,12 +619,14 @@ class AgentCheck(object):
|
|
|
598
619
|
def _get_config_model_context(self, config):
|
|
599
620
|
return {'logger': self.log, 'warning': self.warning, 'configured_fields': frozenset(config)}
|
|
600
621
|
|
|
601
|
-
def register_secret(self, secret):
|
|
602
|
-
# type: (str) -> None
|
|
622
|
+
def register_secret(self, secret: str) -> None:
|
|
603
623
|
"""
|
|
604
624
|
Register a secret to be scrubbed by `.sanitize()`.
|
|
605
625
|
"""
|
|
606
626
|
if not hasattr(self, '_sanitizer'):
|
|
627
|
+
# See Performance Optimizations in this package's README.md.
|
|
628
|
+
from datadog_checks.base.utils.secrets import SecretsSanitizer
|
|
629
|
+
|
|
607
630
|
# Configure lazily so that checks that don't use sanitization aren't affected.
|
|
608
631
|
self._sanitizer = SecretsSanitizer()
|
|
609
632
|
self.log.setup_sanitization(sanitize=self.sanitize)
|
|
@@ -953,6 +976,10 @@ class AgentCheck(object):
|
|
|
953
976
|
# type: (str, ServiceCheckStatus, Sequence[str], str, str, bool) -> None
|
|
954
977
|
"""Send the status of a service.
|
|
955
978
|
|
|
979
|
+
!!! warning "Soft Deprecation"
|
|
980
|
+
When building new checks avoid submitting service checks.
|
|
981
|
+
**Checks that already submit service checks will continue to do so.**
|
|
982
|
+
|
|
956
983
|
Parameters:
|
|
957
984
|
name (str):
|
|
958
985
|
the name of the service check
|
|
@@ -1005,15 +1032,15 @@ class AgentCheck(object):
|
|
|
1005
1032
|
# convert seconds to milliseconds
|
|
1006
1033
|
attributes['timestamp'] = int(timestamp * 1000)
|
|
1007
1034
|
|
|
1008
|
-
datadog_agent.send_log(
|
|
1035
|
+
datadog_agent.send_log(json.encode(attributes), self.check_id)
|
|
1009
1036
|
if cursor is not None:
|
|
1010
|
-
self.write_persistent_cache('log_cursor_{}'.format(stream),
|
|
1037
|
+
self.write_persistent_cache('log_cursor_{}'.format(stream), json.encode(cursor))
|
|
1011
1038
|
|
|
1012
1039
|
def get_log_cursor(self, stream='default'):
|
|
1013
1040
|
# type: (str) -> dict[str, Any] | None
|
|
1014
1041
|
"""Returns the most recent log cursor from disk."""
|
|
1015
1042
|
data = self.read_persistent_cache('log_cursor_{}'.format(stream))
|
|
1016
|
-
return
|
|
1043
|
+
return json.decode(data) if data else None
|
|
1017
1044
|
|
|
1018
1045
|
def _log_deprecation(self, deprecation_key, *args):
|
|
1019
1046
|
# type: (str, *str) -> None
|
|
@@ -1184,7 +1211,11 @@ class AgentCheck(object):
|
|
|
1184
1211
|
The agent calls this method to retrieve diagnostics from integrations. This method
|
|
1185
1212
|
runs explicit diagnostics if available.
|
|
1186
1213
|
"""
|
|
1187
|
-
return
|
|
1214
|
+
return json.encode([d._asdict() for d in (self.diagnosis.diagnoses + self.diagnosis.run_explicit())])
|
|
1215
|
+
|
|
1216
|
+
def _clear_diagnosis(self) -> None:
|
|
1217
|
+
if hasattr(self, '_diagnosis'):
|
|
1218
|
+
self._diagnosis.clear()
|
|
1188
1219
|
|
|
1189
1220
|
def _get_requests_proxy(self):
|
|
1190
1221
|
# type: () -> ProxySettings
|
|
@@ -1268,7 +1299,7 @@ class AgentCheck(object):
|
|
|
1268
1299
|
def run(self):
|
|
1269
1300
|
# type: () -> str
|
|
1270
1301
|
try:
|
|
1271
|
-
self.
|
|
1302
|
+
self._clear_diagnosis()
|
|
1272
1303
|
# Ignore check initializations if running in a separate process
|
|
1273
1304
|
if is_affirmative(self.instance.get('process_isolation', self.init_config.get('process_isolation', False))):
|
|
1274
1305
|
from ..utils.replay.execute import run_with_isolation
|
|
@@ -1304,7 +1335,7 @@ class AgentCheck(object):
|
|
|
1304
1335
|
except Exception as e:
|
|
1305
1336
|
message = self.sanitize(str(e))
|
|
1306
1337
|
tb = self.sanitize(traceback.format_exc())
|
|
1307
|
-
error_report =
|
|
1338
|
+
error_report = json.encode([{'message': message, 'traceback': tb}])
|
|
1308
1339
|
finally:
|
|
1309
1340
|
if self.metric_limiter:
|
|
1310
1341
|
if is_affirmative(self.debug_metrics.get('metric_contexts', False)):
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
# (C) Datadog, Inc.
|
|
1
|
+
# (C) Datadog, Inc. 2025-present
|
|
2
2
|
# All rights reserved
|
|
3
3
|
# Licensed under a 3-clause BSD style license (see LICENSE)
|
|
4
|
-
|
|
5
4
|
from .base_check import KubeLeaderElectionBaseCheck
|
|
6
5
|
from .mixins import KubeLeaderElectionMixin
|
|
7
6
|
from .record import ElectionRecordAnnotation, ElectionRecordLease
|
|
8
7
|
|
|
9
|
-
__all__ = ['
|
|
8
|
+
__all__ = ['ElectionRecordAnnotation', 'ElectionRecordLease', 'KubeLeaderElectionBaseCheck', 'KubeLeaderElectionMixin']
|
|
@@ -50,7 +50,6 @@ class OpenMetricsScraper:
|
|
|
50
50
|
"""
|
|
51
51
|
The base class for any scraper overrides.
|
|
52
52
|
"""
|
|
53
|
-
|
|
54
53
|
self.config = config
|
|
55
54
|
|
|
56
55
|
# Save a reference to the check instance
|
|
@@ -393,7 +392,6 @@ class OpenMetricsScraper:
|
|
|
393
392
|
"""
|
|
394
393
|
Yield the connection line.
|
|
395
394
|
"""
|
|
396
|
-
|
|
397
395
|
try:
|
|
398
396
|
with self.get_connection() as connection:
|
|
399
397
|
# Media type will be used to select parser dynamically
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# (C) Datadog, Inc.
|
|
1
|
+
# (C) Datadog, Inc. 2025-present
|
|
2
2
|
# All rights reserved
|
|
3
3
|
# Licensed under a 3-clause BSD style license (see LICENSE)
|
|
4
4
|
from .counter import get_counter
|
|
@@ -11,3 +11,16 @@ from .service_check import get_service_check
|
|
|
11
11
|
from .summary import get_summary
|
|
12
12
|
from .temporal_percent import get_temporal_percent
|
|
13
13
|
from .time_elapsed import get_time_elapsed
|
|
14
|
+
|
|
15
|
+
__all__ = [
|
|
16
|
+
'get_counter',
|
|
17
|
+
'get_counter_gauge',
|
|
18
|
+
'get_gauge',
|
|
19
|
+
'get_histogram',
|
|
20
|
+
'get_metadata',
|
|
21
|
+
'get_rate',
|
|
22
|
+
'get_service_check',
|
|
23
|
+
'get_summary',
|
|
24
|
+
'get_temporal_percent',
|
|
25
|
+
'get_time_elapsed',
|
|
26
|
+
]
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
# (C) Datadog, Inc.
|
|
1
|
+
# (C) Datadog, Inc. 2025-present
|
|
2
2
|
# All rights reserved
|
|
3
3
|
# Licensed under a 3-clause BSD style license (see LICENSE)
|
|
4
|
-
|
|
5
4
|
from .base_check import GenericPrometheusCheck, PrometheusScraper
|
|
6
5
|
from .mixins import PrometheusFormat, UnknownFormatError
|
|
7
6
|
from .prometheus_base import PrometheusCheck
|
|
8
7
|
|
|
9
|
-
__all__ = ['
|
|
8
|
+
__all__ = ['GenericPrometheusCheck', 'PrometheusCheck', 'PrometheusFormat', 'PrometheusScraper', 'UnknownFormatError']
|
|
@@ -569,7 +569,7 @@ class PrometheusScraperMixin(object):
|
|
|
569
569
|
and not handler.ignore_tls_warning
|
|
570
570
|
and not is_affirmative(handler.options.get('ssl_verify', True))
|
|
571
571
|
):
|
|
572
|
-
self.log.
|
|
572
|
+
self.log.debug(u'An unverified HTTPS request is being made to %s', endpoint)
|
|
573
573
|
|
|
574
574
|
try:
|
|
575
575
|
response = handler.get(endpoint, extra_headers=headers, stream=False)
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# (C) Datadog, Inc. 2025-present
|
|
2
|
+
# All rights reserved
|
|
3
|
+
# Licensed under a 3-clause BSD style license (see LICENSE)
|
|
4
|
+
from .base import (
|
|
5
|
+
InvalidWMIQuery,
|
|
6
|
+
MissingTagBy,
|
|
7
|
+
TagQuery,
|
|
8
|
+
TagQueryUniquenessFailure,
|
|
9
|
+
WinWMICheck,
|
|
10
|
+
WMIFilter,
|
|
11
|
+
WMIMetric,
|
|
12
|
+
WMIObject,
|
|
13
|
+
WMIProperties,
|
|
14
|
+
WMISampler,
|
|
15
|
+
from_time,
|
|
16
|
+
to_time,
|
|
17
|
+
)
|
|
18
|
+
|
|
19
|
+
__all__ = [
|
|
20
|
+
'InvalidWMIQuery',
|
|
21
|
+
'MissingTagBy',
|
|
22
|
+
'TagQuery',
|
|
23
|
+
'TagQueryUniquenessFailure',
|
|
24
|
+
'WinWMICheck',
|
|
25
|
+
'WMIFilter',
|
|
26
|
+
'WMIMetric',
|
|
27
|
+
'WMIObject',
|
|
28
|
+
'WMIProperties',
|
|
29
|
+
'WMISampler',
|
|
30
|
+
'from_time',
|
|
31
|
+
'to_time',
|
|
32
|
+
]
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
# (C) Datadog, Inc.
|
|
1
|
+
# (C) Datadog, Inc. 2025-present
|
|
2
2
|
# All rights reserved
|
|
3
3
|
# Licensed under a 3-clause BSD style license (see LICENSE)
|
|
4
|
-
from typing import Any, Dict, List, Optional, Tuple
|
|
4
|
+
from typing import Any, Dict, List, Optional, Tuple # noqa: F401
|
|
5
5
|
|
|
6
6
|
from ... import AgentCheck
|
|
7
7
|
from .sampler import WMISampler
|
|
8
|
-
from .types import TagQuery, WMIFilter, WMIMetric, WMIObject, WMIProperties
|
|
8
|
+
from .types import TagQuery, WMIFilter, WMIMetric, WMIObject, WMIProperties # noqa: F401
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
class InvalidWMIQuery(Exception):
|
|
@@ -293,10 +293,10 @@ class WinWMICheck(AgentCheck):
|
|
|
293
293
|
Create and cache a (metric name, metric type) by WMI property map and a property list.
|
|
294
294
|
"""
|
|
295
295
|
if not self._wmi_props:
|
|
296
|
-
metric_name_by_property = dict(
|
|
296
|
+
metric_name_by_property = dict( # noqa: C402
|
|
297
297
|
(wmi_property.lower(), (metric_name, metric_type)) for wmi_property, metric_name, metric_type in metrics
|
|
298
298
|
) # type: Dict[str, Tuple[str, str]]
|
|
299
|
-
properties = map(lambda x: x[0], metrics + tag_queries) # type: List[str]
|
|
299
|
+
properties = map(lambda x: x[0], metrics + tag_queries) # type: List[str] # noqa: C417
|
|
300
300
|
|
|
301
301
|
self._wmi_props = (metric_name_by_property, properties)
|
|
302
302
|
|