datadog-checks-base 37.22.0__py2.py3-none-any.whl → 37.22.1__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.
- datadog_checks/base/__about__.py +1 -1
- datadog_checks/base/utils/db/utils.py +9 -5
- {datadog_checks_base-37.22.0.dist-info → datadog_checks_base-37.22.1.dist-info}/METADATA +1 -1
- {datadog_checks_base-37.22.0.dist-info → datadog_checks_base-37.22.1.dist-info}/RECORD +5 -5
- {datadog_checks_base-37.22.0.dist-info → datadog_checks_base-37.22.1.dist-info}/WHEEL +0 -0
datadog_checks/base/__about__.py
CHANGED
|
@@ -110,7 +110,7 @@ class ConstantRateLimiter:
|
|
|
110
110
|
|
|
111
111
|
def __init__(self, rate_limit_s, max_sleep_chunk_s=5):
|
|
112
112
|
"""
|
|
113
|
-
:param rate_limit_s: rate limit in
|
|
113
|
+
:param rate_limit_s: rate limit in executions per second
|
|
114
114
|
:param max_sleep_chunk_s: maximum size of each sleep chunk while waiting for the next period
|
|
115
115
|
"""
|
|
116
116
|
self.rate_limit_s = max(rate_limit_s, 0)
|
|
@@ -305,7 +305,9 @@ class DBMAsyncJob(object):
|
|
|
305
305
|
):
|
|
306
306
|
self._check = check
|
|
307
307
|
self._config_host = config_host
|
|
308
|
+
# The min_collection_interval is the expected collection interval for the main check
|
|
308
309
|
self._min_collection_interval = min_collection_interval
|
|
310
|
+
self._expected_collection_interval = 1 / rate_limit if rate_limit > 0 else 0
|
|
309
311
|
# map[dbname -> psycopg connection]
|
|
310
312
|
self._log = get_check_logger()
|
|
311
313
|
self._job_loop_future = None
|
|
@@ -358,12 +360,12 @@ class DBMAsyncJob(object):
|
|
|
358
360
|
if (
|
|
359
361
|
hasattr(self._check, 'health')
|
|
360
362
|
and self._enable_missed_collection_event
|
|
361
|
-
and self.
|
|
363
|
+
and self._expected_collection_interval >= 1
|
|
362
364
|
and self._last_run_start
|
|
363
365
|
):
|
|
364
366
|
# Assume a collection interval of less than 1 second is an attempt to run the job in a loop
|
|
365
367
|
elapsed_time = time.time() - self._last_run_start
|
|
366
|
-
if elapsed_time > self.
|
|
368
|
+
if elapsed_time > self._expected_collection_interval:
|
|
367
369
|
# Missed a collection interval, submit a health event for each feature that depends on this job
|
|
368
370
|
for feature in self._features:
|
|
369
371
|
self._check.health.submit_health_event(
|
|
@@ -377,8 +379,10 @@ class DBMAsyncJob(object):
|
|
|
377
379
|
data={
|
|
378
380
|
"dbms": self._dbms,
|
|
379
381
|
"job_name": self._job_name,
|
|
380
|
-
|
|
381
|
-
"
|
|
382
|
+
# send in ms for consistency with other metrics
|
|
383
|
+
"last_run_start": self._last_run_start * 1000,
|
|
384
|
+
"elapsed_time": elapsed_time * 1000,
|
|
385
|
+
"expected_collection_interval": self._expected_collection_interval * 1000,
|
|
382
386
|
"feature": feature,
|
|
383
387
|
},
|
|
384
388
|
)
|
|
@@ -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=
|
|
6
|
+
datadog_checks/base/__about__.py,sha256=LHTbj6b1TjdvOrdvo82IsglGOmoTwkDhLPngNctW7FA,139
|
|
7
7
|
datadog_checks/base/__init__.py,sha256=yWegSLE-TZWIGSvAiJj9PSrUxzlOo_UVJLt2zORZ8Ek,363
|
|
8
8
|
datadog_checks/base/__init__.pyi,sha256=a4Y1JIcPJ8pz9tRkBAvjWdtvSQwZxbMZBuRmIiSs_4E,1031
|
|
9
9
|
datadog_checks/base/agent.py,sha256=nX9x_BYYizRKGNYfXq5z7S0FZ9xcX_wd2tuxpGe3_8k,350
|
|
@@ -149,7 +149,7 @@ datadog_checks/base/utils/db/statement_metrics.py,sha256=U7EtERkmFzfCtfyd3094fBa
|
|
|
149
149
|
datadog_checks/base/utils/db/timed_cache.py,sha256=a9Ks5KKUvExB6GOATXTSCLamVtLD919Dn6HpweGKtFw,2114
|
|
150
150
|
datadog_checks/base/utils/db/transform.py,sha256=H3JN8_MF0Pk0HaXvIZeX1A8iQrP8KBgS741MPeBiWDo,23969
|
|
151
151
|
datadog_checks/base/utils/db/types.py,sha256=OLX2Oq58JQPFBD4oqUpCLkAP7ovRGN_i1vFk1E0N8Lg,267
|
|
152
|
-
datadog_checks/base/utils/db/utils.py,sha256=
|
|
152
|
+
datadog_checks/base/utils/db/utils.py,sha256=fJZrf2YcAbWmX4IRqLf4r0Rt8tGLDwgdIVmSMSft1co,26464
|
|
153
153
|
datadog_checks/base/utils/discovery/__init__.py,sha256=vPCOdsThBcBjFJRPhDm6IsZGOwk8HlvciwCe_l8dKLk,211
|
|
154
154
|
datadog_checks/base/utils/discovery/__init__.pyi,sha256=ScVLU1Njj9ekZmewltb0cULI6BylssVHfn4CcPNeyr8,173
|
|
155
155
|
datadog_checks/base/utils/discovery/cache.py,sha256=f9L3A7YZpZ-mpZpFIwjsa5ab9cZMGkqdetdr9EpalbI,887
|
|
@@ -223,6 +223,6 @@ datadog_checks/utils/tracing.py,sha256=HQbQakKM-Lw75MDkItaYJYipS6YO24Z_ymDVxDsx5
|
|
|
223
223
|
datadog_checks/utils/prometheus/__init__.py,sha256=8WwXnM9g1sfS5267QYCJX_hd8MZl5kRgBgQ_SzdNdXs,161
|
|
224
224
|
datadog_checks/utils/prometheus/functions.py,sha256=4vWsTGLgujHwdYZo0tlAQkqDPHofqUJM3k9eItJqERQ,197
|
|
225
225
|
datadog_checks/utils/prometheus/metrics_pb2.py,sha256=xg3UdUHe4TjeR4s13LUKZ2U1WVSt6U6zjsVRG6lX6dc,173
|
|
226
|
-
datadog_checks_base-37.22.
|
|
227
|
-
datadog_checks_base-37.22.
|
|
228
|
-
datadog_checks_base-37.22.
|
|
226
|
+
datadog_checks_base-37.22.1.dist-info/METADATA,sha256=93hddxC1RfHZzTr2DIbxWE5_78AWLYmqasrpxbej7ng,4245
|
|
227
|
+
datadog_checks_base-37.22.1.dist-info/WHEEL,sha256=tkmg4JIqwd9H8mL30xA7crRmoStyCtGp0VWshokd1Jc,105
|
|
228
|
+
datadog_checks_base-37.22.1.dist-info/RECORD,,
|
|
File without changes
|