Skip to content

Commit 374528a

Browse files
devin-ai-integration[bot]bot_apk
andcommitted
refactor: switch sentry_sdk from soft import to required dependency
Address PR feedback from @pnilan: - Add sentry-sdk as a required dependency in pyproject.toml - Use standard top-level import instead of try/except ImportError - Remove sentry_sdk from deptry DEP001 ignore list - Drop the 'sentry_sdk is not None' guard (always available) - Deduplicate warning message format string (build once, reuse) - Replace graceful degradation test with message content test Co-Authored-By: bot_apk <apk@cognition.ai>
1 parent 5a8ff06 commit 374528a

4 files changed

Lines changed: 4262 additions & 3848 deletions

File tree

airbyte_cdk/utils/memory_monitor.py

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,7 @@
88
from pathlib import Path
99
from typing import Optional
1010

11-
try:
12-
import sentry_sdk
13-
except ImportError:
14-
sentry_sdk = None # type: ignore[assignment]
11+
import sentry_sdk
1512

1613
logger = logging.getLogger("airbyte")
1714

@@ -138,16 +135,11 @@ def check_memory_usage(self) -> None:
138135
limit_gb = limit_bytes / (1024**3)
139136

140137
if usage_ratio >= _MEMORY_THRESHOLD:
141-
logger.warning(
142-
"Source memory usage at %d%% of container limit (%.2f / %.2f GB).",
143-
usage_percent,
144-
usage_gb,
145-
limit_gb,
138+
message = (
139+
"Source memory usage at %d%% of container limit (%.2f / %.2f GB)."
140+
% (usage_percent, usage_gb, limit_gb)
146141
)
147-
if not self._sentry_alerted and sentry_sdk is not None:
142+
logger.warning(message)
143+
if not self._sentry_alerted:
148144
self._sentry_alerted = True
149-
sentry_sdk.capture_message(
150-
"Source memory usage at %d%% of container limit (%.2f / %.2f GB)."
151-
% (usage_percent, usage_gb, limit_gb),
152-
level="warning",
153-
)
145+
sentry_sdk.capture_message(message, level="warning")

0 commit comments

Comments
 (0)