trodo-python 2.10.5__tar.gz → 2.10.6__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.
- {trodo_python-2.10.5 → trodo_python-2.10.6}/PKG-INFO +1 -1
- {trodo_python-2.10.5 → trodo_python-2.10.6}/pyproject.toml +1 -1
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/__init__.py +1 -1
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/api/http_client.py +18 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo_python.egg-info/PKG-INFO +1 -1
- {trodo_python-2.10.5 → trodo_python-2.10.6}/README.md +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/setup.cfg +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/tests/test_anon_distinct_id 2.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/tests/test_anon_distinct_id.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/tests/test_auto_instrument_fixes.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/tests/test_cross_process_session.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/tests/test_end_run.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/tests/test_error_enrichment.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/tests/test_llm_usage_cost.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/tests/test_processor_methods.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/tests/test_register_otel.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/tests/test_start_run.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/tests/test_wrap_agent_unchanged.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/api/__init__.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/api/async_client.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/api/endpoints.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/auto/__init__.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/auto/auto_event_manager.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/client.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/managers/__init__.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/managers/group_manager.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/managers/people_manager.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/otel/__init__.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/otel/auto_instrument.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/otel/context.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/otel/helpers.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/otel/processor.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/otel/register.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/otel/transport.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/otel/wrap_agent.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/queue/__init__.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/queue/batch_flusher.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/queue/event_queue.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/session/__init__.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/session/server_session.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/session/session_manager.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/types.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo/user_context.py +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo_python.egg-info/SOURCES.txt +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo_python.egg-info/dependency_links.txt +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo_python.egg-info/requires.txt +0 -0
- {trodo_python-2.10.5 → trodo_python-2.10.6}/trodo_python.egg-info/top_level.txt +0 -0
|
@@ -47,6 +47,24 @@ class HttpClient:
|
|
|
47
47
|
self._log(f"Retry {attempt + 1} after {delay}s (status {resp.status_code})")
|
|
48
48
|
time.sleep(delay)
|
|
49
49
|
return self._request(path, body, attempt + 1)
|
|
50
|
+
if resp.status_code >= 400:
|
|
51
|
+
# Surface non-2xx responses to on_error — a 4xx means the
|
|
52
|
+
# payload was REJECTED and the data is gone; before this it
|
|
53
|
+
# was fully silent (on_error only saw network errors), which
|
|
54
|
+
# made ingest-schema bugs invisible to callers.
|
|
55
|
+
detail = ""
|
|
56
|
+
try:
|
|
57
|
+
detail = resp.text[:300]
|
|
58
|
+
except Exception:
|
|
59
|
+
pass
|
|
60
|
+
self._log(f"HTTP {resp.status_code} on {path}: {detail}")
|
|
61
|
+
if self.on_error:
|
|
62
|
+
try:
|
|
63
|
+
self.on_error(
|
|
64
|
+
RuntimeError(f"trodo-python: POST {path} -> HTTP {resp.status_code}: {detail}")
|
|
65
|
+
)
|
|
66
|
+
except Exception:
|
|
67
|
+
pass
|
|
50
68
|
try:
|
|
51
69
|
return resp.json()
|
|
52
70
|
except Exception:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|