Skip to content

Commit 244ea77

Browse files
.
1 parent 81e1d75 commit 244ea77

File tree

1 file changed

+36
-3
lines changed

1 file changed

+36
-3
lines changed

sentry_sdk/integrations/anthropic.py

Lines changed: 36 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -869,17 +869,50 @@ async def _sentry_patched_aenter(
869869
if not hasattr(self, "_max_tokens"):
870870
return stream
871871

872-
_sentry_patched_stream_common(
873-
stream=stream,
872+
integration = sentry_sdk.get_client().get_integration(AnthropicIntegration)
873+
874+
if integration is None:
875+
return stream
876+
877+
if self._messages is None:
878+
return stream
879+
880+
try:
881+
iter(self._messages)
882+
except TypeError:
883+
return stream
884+
885+
model = self._model
886+
if model is None:
887+
model = ""
888+
889+
span = get_start_span_function()(
890+
op=OP.GEN_AI_CHAT,
891+
name=f"chat {model}".strip(),
892+
origin=AnthropicIntegration.origin,
893+
)
894+
span.__enter__()
895+
896+
span.set_data(SPANDATA.GEN_AI_RESPONSE_STREAMING, True)
897+
_set_stream_input_data(
898+
span,
899+
integration,
874900
max_tokens=self._max_tokens,
875901
messages=self._messages,
876-
model=self._model,
902+
model=model,
877903
system=self._system,
878904
temperature=self._temperature,
879905
top_k=self._top_k,
880906
top_p=self._top_p,
881907
tools=self._tools,
882908
)
909+
910+
stream._iterator = _wrap_asynchronous_message_iterator(
911+
iterator=stream._iterator,
912+
span=span,
913+
integration=integration,
914+
)
915+
883916
return stream
884917

885918
return _sentry_patched_aenter

0 commit comments

Comments
 (0)