Open
Description
This is a tracking issue for the implementation of tracing for Converse
and InvokeModel
APIs and their respective streaming version. Big difference between the two APIs is that converse is the same for every model while InvokeModel requests and response are different for each model.
- converse Basic instrumentation for Bedrock runtime Converse api #3161
- invokeModel botocore: add basic handling for bedrock invoke.model #3200
- converseStream botocore: add basic tracing for bedrock ConverseStream #3204
- InvokeModelWithStreamResponse botocore: add basic tracing for Bedrock InvokeModelWithStreamResponse #3206
- error handling for streaming botocore: handle exceptions when consuming streaming versions of bedrock APIs #3211
- close span also when closing stream by calling
__wrapped__.close()
Ensure spans complete on early stream closure for Bedrock Streaming APIs #3481 - server attributes (generic for botocore?), also in metrics Capture server attributes for botocore API calls #3448
- user events botocore: add bedrock genai user events and lazy initialize tracer #3258
- system events botocore: handle system messages events #3266
- choice events botocore: send choice events for bedrock chat completion #3275
- tool calls botocore: send tool events for bedrock #3302
- investigate amazon.nova not using tool calls with invokeModel botocore: handle tool calls with Amazon nova with Bedrock InvokeModel* APIs #3385
- metrics botocore: add genai metrics to bedrock extension #3326
- investigate passing models as parameters but use family as parameter id, see https://docs.pytest.org/en/stable/example/parametrize.html#set-marks-or-test-id-for-individual-parametrized-test
- proper semconv attribute for cloud region Use semantic convention attribute for cloud region for botocore API calls #3474
- http stable semconv opt-in support
- more models for InvokeModel* ? support InvokeModel GenAi instrumentation for additional Bedrock models #3419
- other bedrock runtime apis?