datadog-checks-base 36.16.0__py2.py3-none-any.whl → 37.1.0__py2.py3-none-any.whl

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.
@@ -1,4 +1,4 @@
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
- __version__ = "36.16.0"
4
+ __version__ = "37.1.0"
@@ -0,0 +1,34 @@
1
+ DEFAULT_GO_METRICS = {
2
+ 'go_gc_duration_seconds': 'go.gc.duration.seconds',
3
+ 'go_goroutines': 'go.goroutines',
4
+ 'go_memstats_buck_hash_sys_bytes': 'go.memstats.buck_hash.sys_bytes',
5
+ 'go_memstats_frees': 'go.memstats.frees',
6
+ 'go_memstats_gc_cpu_fraction': 'go.memstats.gc.cpu_fraction',
7
+ 'go_memstats_gc_sys_bytes': 'go.memstats.gc.sys_bytes',
8
+ 'go_memstats_heap_alloc_bytes': 'go.memstats.heap.alloc_bytes',
9
+ 'go_memstats_heap_idle_bytes': 'go.memstats.heap.idle_bytes',
10
+ 'go_memstats_heap_inuse_bytes': 'go.memstats.heap.inuse_bytes',
11
+ 'go_memstats_heap_objects': 'go.memstats.heap.objects',
12
+ 'go_memstats_heap_released_bytes': 'go.memstats.heap.released_bytes',
13
+ 'go_memstats_heap_sys_bytes': 'go.memstats.heap.sys_bytes',
14
+ 'go_memstats_last_gc_time_seconds': 'go.memstats.last_gc_time.seconds',
15
+ 'go_memstats_lookups': 'go.memstats.lookups',
16
+ 'go_memstats_mallocs': 'go.memstats.mallocs',
17
+ 'go_memstats_mcache_inuse_bytes': 'go.memstats.mcache.inuse_bytes',
18
+ 'go_memstats_mcache_sys_bytes': 'go.memstats.mcache.sys_bytes',
19
+ 'go_memstats_mspan_inuse_bytes': 'go.memstats.mspan.inuse_bytes',
20
+ 'go_memstats_mspan_sys_bytes': 'go.memstats.mspan.sys_bytes',
21
+ 'go_memstats_next_gc_bytes': 'go.memstats.next.gc_bytes',
22
+ 'go_memstats_other_sys_bytes': 'go.memstats.other.sys_bytes',
23
+ 'go_memstats_stack_inuse_bytes': 'go.memstats.stack.inuse_bytes',
24
+ 'go_memstats_stack_sys_bytes': 'go.memstats.stack.sys_bytes',
25
+ 'go_memstats_sys_bytes': 'go.memstats.sys_bytes',
26
+ 'go_threads': 'go.threads',
27
+ 'process_cpu_seconds': 'process.cpu.seconds',
28
+ 'process_max_fds': 'process.max_fds',
29
+ 'process_open_fds': 'process.open_fds',
30
+ 'process_resident_memory_bytes': 'process.resident_memory.bytes',
31
+ 'process_start_time_seconds': 'process.start_time.seconds',
32
+ 'process_virtual_memory_bytes': 'process.virtual_memory.bytes',
33
+ 'process_virtual_memory_max_bytes': 'process.virtual_memory.max_bytes',
34
+ }
@@ -29,6 +29,7 @@ class DatadogAgentStub(object):
29
29
  self._process_start_time = 0
30
30
  self._external_tags = []
31
31
  self._host_tags = "{}"
32
+ self._sent_telemetry = defaultdict(list)
32
33
 
33
34
  def get_default_config(self):
34
35
  return {'enable_metadata_collection': True, 'disable_unsafe_yaml': True}
@@ -84,6 +85,12 @@ class DatadogAgentStub(object):
84
85
  count, tags_count, repr(self._external_tags)
85
86
  )
86
87
 
88
+ def assert_telemetry(self, check_name, metric_name, metric_type, metric_value):
89
+ values = self._sent_telemetry[(check_name, metric_name, metric_type)]
90
+ assert metric_value in values, 'Expected value {} for check {}, metric {}, type {}. Found {}.'.format(
91
+ metric_value, check_name, metric_name, metric_type, values
92
+ )
93
+
87
94
  def get_hostname(self):
88
95
  return self._hostname
89
96
 
@@ -152,6 +159,9 @@ class DatadogAgentStub(object):
152
159
  # Passthrough stub: obfuscation implementation is in Go code.
153
160
  return command
154
161
 
162
+ def emit_agent_telemetry(self, check_name, metric_name, metric_value, metric_type):
163
+ self._sent_telemetry[(check_name, metric_name, metric_type)].append(metric_value)
164
+
155
165
 
156
166
  # Use the stub as a singleton
157
167
  datadog_agent = DatadogAgentStub()
@@ -0,0 +1,95 @@
1
+ Metadata-Version: 2.3
2
+ Name: datadog-checks-base
3
+ Version: 37.1.0
4
+ Summary: The Datadog Check Toolkit
5
+ Project-URL: Source, https://github.com/DataDog/integrations-core
6
+ Author-email: Datadog <packages@datadoghq.com>
7
+ License-Expression: BSD-3-Clause
8
+ Keywords: agent,checks,datadog
9
+ Classifier: Development Status :: 5 - Production/Stable
10
+ Classifier: Intended Audience :: Developers
11
+ Classifier: Intended Audience :: System Administrators
12
+ Classifier: License :: OSI Approved :: BSD License
13
+ Classifier: Programming Language :: Python :: 3.12
14
+ Classifier: Topic :: System :: Monitoring
15
+ Provides-Extra: db
16
+ Requires-Dist: mmh3==4.1.0; extra == 'db'
17
+ Provides-Extra: deps
18
+ Requires-Dist: binary==1.0.0; extra == 'deps'
19
+ Requires-Dist: cachetools==5.5.0; extra == 'deps'
20
+ Requires-Dist: cryptography==43.0.1; extra == 'deps'
21
+ Requires-Dist: ddtrace==2.10.6; extra == 'deps'
22
+ Requires-Dist: importlib-metadata==2.1.3; (python_version < '3.8') and extra == 'deps'
23
+ Requires-Dist: jellyfish==1.1.0; extra == 'deps'
24
+ Requires-Dist: prometheus-client==0.20.0; extra == 'deps'
25
+ Requires-Dist: protobuf==5.27.3; extra == 'deps'
26
+ Requires-Dist: pydantic==2.8.2; extra == 'deps'
27
+ Requires-Dist: python-dateutil==2.9.0.post0; extra == 'deps'
28
+ Requires-Dist: pywin32==306; (sys_platform == 'win32') and extra == 'deps'
29
+ Requires-Dist: pyyaml==6.0.2; extra == 'deps'
30
+ Requires-Dist: requests-toolbelt==1.0.0; extra == 'deps'
31
+ Requires-Dist: requests-unixsocket2==0.4.2; extra == 'deps'
32
+ Requires-Dist: requests==2.32.3; extra == 'deps'
33
+ Requires-Dist: simplejson==3.19.3; extra == 'deps'
34
+ Requires-Dist: six==1.16.0; extra == 'deps'
35
+ Requires-Dist: uptime==3.0.1; extra == 'deps'
36
+ Requires-Dist: wrapt==1.16.0; extra == 'deps'
37
+ Provides-Extra: http
38
+ Requires-Dist: aws-requests-auth==0.4.3; extra == 'http'
39
+ Requires-Dist: botocore==1.35.10; extra == 'http'
40
+ Requires-Dist: oauthlib==3.2.2; extra == 'http'
41
+ Requires-Dist: pyjwt==2.9.0; extra == 'http'
42
+ Requires-Dist: pyopenssl==24.2.1; extra == 'http'
43
+ Requires-Dist: pysocks==1.7.1; extra == 'http'
44
+ Requires-Dist: requests-kerberos==0.15.0; extra == 'http'
45
+ Requires-Dist: requests-ntlm==1.3.0; extra == 'http'
46
+ Requires-Dist: requests-oauthlib==2.0.0; extra == 'http'
47
+ Provides-Extra: json
48
+ Requires-Dist: orjson==3.10.7; extra == 'json'
49
+ Provides-Extra: kube
50
+ Requires-Dist: kubernetes==30.1.0; extra == 'kube'
51
+ Requires-Dist: requests-oauthlib==2.0.0; extra == 'kube'
52
+ Description-Content-Type: text/markdown
53
+
54
+ # Datadog Checks Base
55
+
56
+ [![Latest PyPI version][1]][7]
57
+ [![Supported Python versions][2]][7]
58
+
59
+ ## Overview
60
+
61
+ This package provides the Python bits needed by the [Datadog Agent][4]
62
+ to run Agent-based Integrations (also known as _Checks_).
63
+
64
+ This package is used in two scenarios:
65
+
66
+ 1. When used from within the Python interpreter embedded in the Agent, it
67
+ provides all the base classes and utilities needed by any Check.
68
+
69
+ 2. When installed in a local environment with a regular Python interpreter, it
70
+ mocks the presence of a running Agent so checks can work in standalone mode,
71
+ mostly useful for testing and development.
72
+
73
+ Please refer to the [docs][5] for details.
74
+
75
+ ## Installation
76
+
77
+ Checks from [integrations-core][6] already
78
+ use the toolkit in a transparent way when you run the tests but you can
79
+ install the toolkit locally and play with it:
80
+
81
+ ```shell
82
+ pip install datadog-checks-base
83
+ ```
84
+
85
+ ## Troubleshooting
86
+
87
+ Need help? Contact [Datadog support][8].
88
+
89
+ [1]: https://img.shields.io/pypi/v/datadog-checks-base.svg
90
+ [2]: https://img.shields.io/pypi/pyversions/datadog-checks-base.svg
91
+ [4]: https://github.com/DataDog/datadog-agent
92
+ [5]: https://datadoghq.dev/integrations-core/base/about/
93
+ [6]: https://github.com/DataDog/integrations-core
94
+ [7]: https://pypi.org/project/datadog-checks-base/
95
+ [8]: https://docs.datadoghq.com/help/
@@ -3,7 +3,7 @@ datadog_checks/config.py,sha256=PrAXGdlLnoV2VMQff_noSaSJJ0wg4BAiGnw7jCQLSik,196
3
3
  datadog_checks/errors.py,sha256=eFwmnrX-batIgbu-iJyseqAPNO_4rk1UuaKK89evLhg,155
4
4
  datadog_checks/log.py,sha256=orvOgMKGNEsqSTLalCAQpWP-ouorpG1A7Gn-j2mRD80,301
5
5
  datadog_checks/py.typed,sha256=la67KBlbjXN-_-DfGNcdOcjYumVpKG_Tkw-8n5dnGB4,8
6
- datadog_checks/base/__about__.py,sha256=8xjRUgJhtPjizb4GupXbi3KyAfTDk9Z8U3JPDVrkKm0,139
6
+ datadog_checks/base/__about__.py,sha256=SBS6ylBzyN2wNgsYQvMqwjhNbwAdMS1B8fpXn0-WH3I,138
7
7
  datadog_checks/base/__init__.py,sha256=CULac89r85FQGvVbqWEhHpF9G9BBJghnwdsgeKwHNcA,1587
8
8
  datadog_checks/base/agent.py,sha256=nX9x_BYYizRKGNYfXq5z7S0FZ9xcX_wd2tuxpGe3_8k,350
9
9
  datadog_checks/base/config.py,sha256=qcAA4X9sXQZRdwQe8DgiGd2980VBp1SQA0d695tX_tU,604
@@ -39,6 +39,7 @@ datadog_checks/base/checks/openmetrics/v2/__init__.py,sha256=P81FBhJLA9MGpz4L7o_
39
39
  datadog_checks/base/checks/openmetrics/v2/base.py,sha256=9krejP41UHHlbIYYDQALBSl2iWRnuSlDP7hrzd-AHz4,4200
40
40
  datadog_checks/base/checks/openmetrics/v2/first_scrape_handler.py,sha256=In-tZXMzieSdL2OXJlIAFi78KbQVwuJnGP0iaLH9974,941
41
41
  datadog_checks/base/checks/openmetrics/v2/labels.py,sha256=0F0ISh03wS2vVsjbns3FrYDn6gvxj0Xv-2fkA2Hh9D8,7310
42
+ datadog_checks/base/checks/openmetrics/v2/metrics.py,sha256=CuQbCIqEJ2cCUEbrs2IMiBHjJF8QEZaysDYxti_2L8U,1981
42
43
  datadog_checks/base/checks/openmetrics/v2/scraper.py,sha256=d4PcJM_b7wkHUBQ5b_IZo_VW_07jQj_gwTgfDrkp1BA,23279
43
44
  datadog_checks/base/checks/openmetrics/v2/transform.py,sha256=64FoiQXYdZFPu2ybJGodyYEgaLDgWplE3YnLlJsDUpA,8407
44
45
  datadog_checks/base/checks/openmetrics/v2/utils.py,sha256=tpk3htJAz_KwCRqFs2CTjajHkLCs_2TbGdBp514rWOQ,3565
@@ -86,7 +87,7 @@ datadog_checks/base/stubs/__init__.py,sha256=wpWAR9v7BiTbbmTO6pVpshqa_z-PWaYTr33
86
87
  datadog_checks/base/stubs/_util.py,sha256=ZDGtQa8F3cHf8-QvSVHMB4BGI3C9VgC7sGcGGvO0apI,1268
87
88
  datadog_checks/base/stubs/aggregator.py,sha256=whWRO0sx-12GG1C9xAYO_Zxabo8rSuqeJAzsRjfX5gk,24476
88
89
  datadog_checks/base/stubs/common.py,sha256=ZGzF2dXy1uVFQGdG_bvz_pMMiULaBcpzra_k9wo9f04,1088
89
- datadog_checks/base/stubs/datadog_agent.py,sha256=fticTdaI4WooOLbGK3XpUoX425ZkyVbFzQ7T9T0zZbs,5445
90
+ datadog_checks/base/stubs/datadog_agent.py,sha256=OSJzu3TejRJ-hktCEi9VPyDGLUaLM6b-_d1bpHAkvSY,6028
90
91
  datadog_checks/base/stubs/log.py,sha256=A-eWnzY5gTpTW41Zch-W5CVclzldlmhMTW-vDNFdT1o,836
91
92
  datadog_checks/base/stubs/similar.py,sha256=zZ1bq5wPaQ-8cBY_HS-612spFR3UJ3vyFAaXVsGccBM,5867
92
93
  datadog_checks/base/stubs/tagging.py,sha256=zxLdPC4EqHxGiS_HEhbaOsL_s5nZIhN8BDkx2BATOqs,1439
@@ -198,6 +199,6 @@ datadog_checks/utils/tracing.py,sha256=HQbQakKM-Lw75MDkItaYJYipS6YO24Z_ymDVxDsx5
198
199
  datadog_checks/utils/prometheus/__init__.py,sha256=8WwXnM9g1sfS5267QYCJX_hd8MZl5kRgBgQ_SzdNdXs,161
199
200
  datadog_checks/utils/prometheus/functions.py,sha256=4vWsTGLgujHwdYZo0tlAQkqDPHofqUJM3k9eItJqERQ,197
200
201
  datadog_checks/utils/prometheus/metrics_pb2.py,sha256=xg3UdUHe4TjeR4s13LUKZ2U1WVSt6U6zjsVRG6lX6dc,173
201
- datadog_checks_base-36.16.0.dist-info/METADATA,sha256=jmLBGCRry7mR6GRfKrUXGxpbf32rbRhOHA8w6WGiHj4,6491
202
- datadog_checks_base-36.16.0.dist-info/WHEEL,sha256=fl6v0VwpzfGBVsGtkAkhILUlJxROXbA3HvRL6Fe3140,105
203
- datadog_checks_base-36.16.0.dist-info/RECORD,,
202
+ datadog_checks_base-37.1.0.dist-info/METADATA,sha256=eWfUKzgU-gh11gwBmp9MYHq_--ODC-n4q7RjVWKkBmc,3719
203
+ datadog_checks_base-37.1.0.dist-info/WHEEL,sha256=fl6v0VwpzfGBVsGtkAkhILUlJxROXbA3HvRL6Fe3140,105
204
+ datadog_checks_base-37.1.0.dist-info/RECORD,,
@@ -1,120 +0,0 @@
1
- Metadata-Version: 2.3
2
- Name: datadog-checks-base
3
- Version: 36.16.0
4
- Summary: The Datadog Check Toolkit
5
- Project-URL: Source, https://github.com/DataDog/integrations-core
6
- Author-email: Datadog <packages@datadoghq.com>
7
- License-Expression: BSD-3-Clause
8
- Keywords: agent,checks,datadog
9
- Classifier: Development Status :: 5 - Production/Stable
10
- Classifier: Intended Audience :: Developers
11
- Classifier: Intended Audience :: System Administrators
12
- Classifier: License :: OSI Approved :: BSD License
13
- Classifier: Programming Language :: Python :: 3.12
14
- Classifier: Topic :: System :: Monitoring
15
- Provides-Extra: db
16
- Requires-Dist: mmh3==2.5.1; (python_version < '3.0') and extra == 'db'
17
- Requires-Dist: mmh3==4.1.0; (python_version > '3.0') and extra == 'db'
18
- Provides-Extra: deps
19
- Requires-Dist: binary==1.0.0; extra == 'deps'
20
- Requires-Dist: cachetools==3.1.1; (python_version < '3.0') and extra == 'deps'
21
- Requires-Dist: cachetools==5.5.0; (python_version > '3.0') and extra == 'deps'
22
- Requires-Dist: contextlib2==0.6.0.post1; (python_version < '3.0') and extra == 'deps'
23
- Requires-Dist: cryptography==3.3.2; (python_version < '3.0') and extra == 'deps'
24
- Requires-Dist: cryptography==43.0.1; (python_version > '3.0') and extra == 'deps'
25
- Requires-Dist: ddtrace==0.32.2; (sys_platform == 'win32' and python_version < '3.0') and extra == 'deps'
26
- Requires-Dist: ddtrace==0.53.2; (sys_platform != 'win32' and python_version < '3.0') and extra == 'deps'
27
- Requires-Dist: ddtrace==2.10.6; (python_version > '3.0') and extra == 'deps'
28
- Requires-Dist: enum34==1.1.10; (python_version < '3.0') and extra == 'deps'
29
- Requires-Dist: importlib-metadata==2.1.3; (python_version < '3.8') and extra == 'deps'
30
- Requires-Dist: ipaddress==1.0.23; (python_version < '3.0') and extra == 'deps'
31
- Requires-Dist: jellyfish==1.1.0; (python_version > '3.0') and extra == 'deps'
32
- Requires-Dist: prometheus-client==0.12.0; (python_version < '3.0') and extra == 'deps'
33
- Requires-Dist: prometheus-client==0.20.0; (python_version > '3.0') and extra == 'deps'
34
- Requires-Dist: protobuf==3.17.3; (python_version < '3.0') and extra == 'deps'
35
- Requires-Dist: protobuf==5.27.3; (python_version > '3.0') and extra == 'deps'
36
- Requires-Dist: pydantic==2.8.2; (python_version > '3.0') and extra == 'deps'
37
- Requires-Dist: python-dateutil==2.9.0.post0; extra == 'deps'
38
- Requires-Dist: pywin32==228; (sys_platform == 'win32' and python_version < '3.0') and extra == 'deps'
39
- Requires-Dist: pywin32==306; (sys_platform == 'win32' and python_version > '3.0') and extra == 'deps'
40
- Requires-Dist: pyyaml==5.4.1; (python_version < '3.0') and extra == 'deps'
41
- Requires-Dist: pyyaml==6.0.2; (python_version > '3.0') and extra == 'deps'
42
- Requires-Dist: requests-toolbelt==1.0.0; extra == 'deps'
43
- Requires-Dist: requests-unixsocket2==0.4.2; (python_version > '3.0') and extra == 'deps'
44
- Requires-Dist: requests-unixsocket==0.3.0; (python_version < '3.0') and extra == 'deps'
45
- Requires-Dist: requests==2.27.1; (python_version < '3.0') and extra == 'deps'
46
- Requires-Dist: requests==2.32.3; (python_version > '3.0') and extra == 'deps'
47
- Requires-Dist: simplejson==3.19.3; extra == 'deps'
48
- Requires-Dist: six==1.16.0; extra == 'deps'
49
- Requires-Dist: typing==3.10.0.0; (python_version < '3.0') and extra == 'deps'
50
- Requires-Dist: uptime==3.0.1; extra == 'deps'
51
- Requires-Dist: wrapt==1.15.0; (python_version < '3.0') and extra == 'deps'
52
- Requires-Dist: wrapt==1.16.0; (python_version > '3.0') and extra == 'deps'
53
- Provides-Extra: http
54
- Requires-Dist: aws-requests-auth==0.4.3; extra == 'http'
55
- Requires-Dist: botocore==1.20.112; (python_version < '3.0') and extra == 'http'
56
- Requires-Dist: botocore==1.35.10; (python_version > '3.0') and extra == 'http'
57
- Requires-Dist: oauthlib==3.1.0; (python_version < '3.0') and extra == 'http'
58
- Requires-Dist: oauthlib==3.2.2; (python_version > '3.0') and extra == 'http'
59
- Requires-Dist: pyjwt==1.7.1; (python_version < '3.0') and extra == 'http'
60
- Requires-Dist: pyjwt==2.9.0; (python_version > '3.0') and extra == 'http'
61
- Requires-Dist: pyopenssl==24.2.1; (python_version > '3.0') and extra == 'http'
62
- Requires-Dist: pysocks==1.7.1; extra == 'http'
63
- Requires-Dist: requests-kerberos==0.12.0; (python_version < '3.0') and extra == 'http'
64
- Requires-Dist: requests-kerberos==0.15.0; (python_version > '3.0') and extra == 'http'
65
- Requires-Dist: requests-ntlm==1.1.0; (python_version < '3.0') and extra == 'http'
66
- Requires-Dist: requests-ntlm==1.3.0; (python_version > '3.0') and extra == 'http'
67
- Requires-Dist: requests-oauthlib==1.3.1; (python_version < '3.0') and extra == 'http'
68
- Requires-Dist: requests-oauthlib==2.0.0; (python_version > '3.0') and extra == 'http'
69
- Requires-Dist: win-inet-pton==1.1.0; (sys_platform == 'win32' and python_version < '3.0') and extra == 'http'
70
- Provides-Extra: json
71
- Requires-Dist: orjson==3.10.7; (python_version > '3.0') and extra == 'json'
72
- Provides-Extra: kube
73
- Requires-Dist: kubernetes==18.20.0; (python_version < '3.0') and extra == 'kube'
74
- Requires-Dist: kubernetes==30.1.0; (python_version > '3.0') and extra == 'kube'
75
- Requires-Dist: requests-oauthlib==1.3.1; (python_version < '3.0') and extra == 'kube'
76
- Requires-Dist: requests-oauthlib==2.0.0; (python_version > '3.0') and extra == 'kube'
77
- Description-Content-Type: text/markdown
78
-
79
- # Datadog Checks Base
80
-
81
- [![Latest PyPI version][1]][7]
82
- [![Supported Python versions][2]][7]
83
-
84
- ## Overview
85
-
86
- This package provides the Python bits needed by the [Datadog Agent][4]
87
- to run Agent-based Integrations (also known as _Checks_).
88
-
89
- This package is used in two scenarios:
90
-
91
- 1. When used from within the Python interpreter embedded in the Agent, it
92
- provides all the base classes and utilities needed by any Check.
93
-
94
- 2. When installed in a local environment with a regular Python interpreter, it
95
- mocks the presence of a running Agent so checks can work in standalone mode,
96
- mostly useful for testing and development.
97
-
98
- Please refer to the [docs][5] for details.
99
-
100
- ## Installation
101
-
102
- Checks from [integrations-core][6] already
103
- use the toolkit in a transparent way when you run the tests but you can
104
- install the toolkit locally and play with it:
105
-
106
- ```shell
107
- pip install datadog-checks-base
108
- ```
109
-
110
- ## Troubleshooting
111
-
112
- Need help? Contact [Datadog support][8].
113
-
114
- [1]: https://img.shields.io/pypi/v/datadog-checks-base.svg
115
- [2]: https://img.shields.io/pypi/pyversions/datadog-checks-base.svg
116
- [4]: https://github.com/DataDog/datadog-agent
117
- [5]: https://datadoghq.dev/integrations-core/base/about/
118
- [6]: https://github.com/DataDog/integrations-core
119
- [7]: https://pypi.org/project/datadog-checks-base/
120
- [8]: https://docs.datadoghq.com/help/