Skip to content

Commit df108f6

Browse files
authored
feat: add sdk name/version to user agent header (#344)
- Add user_agent_extra field to the default Lambda client config, which appends the SDK name and version to the user agent header - Update tests to verify the new user_agent_extra field Include SDK name and version in the Lambda client's user agent header to provide better visibility for debugging.
1 parent 6d5fe84 commit df108f6

File tree

2 files changed

+7
-0
lines changed

2 files changed

+7
-0
lines changed

src/aws_durable_execution_sdk_python/lambda_service.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import boto3
1212
from botocore.config import Config
1313

14+
from aws_durable_execution_sdk_python.__about__ import __version__
1415
from aws_durable_execution_sdk_python.exceptions import (
1516
CallableRuntimeError,
1617
CheckpointError,
@@ -1059,6 +1060,7 @@ def initialize_client(cls) -> LambdaClient:
10591060
config=Config(
10601061
connect_timeout=5,
10611062
read_timeout=50,
1063+
user_agent_extra=f"@aws/durable-execution-sdk-python/{__version__}",
10621064
),
10631065
)
10641066
return cls(client=cls._cached_boto_client)

tests/lambda_service_test.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
import pytest
88

9+
from aws_durable_execution_sdk_python.__about__ import __version__
910
from aws_durable_execution_sdk_python.exceptions import (
1011
CallableRuntimeError,
1112
CheckpointError,
@@ -1940,6 +1941,7 @@ def test_lambda_client_initialize_client_default(
19401941
config = call_args[1]["config"]
19411942
assert config.connect_timeout == 5
19421943
assert config.read_timeout == 50
1944+
assert config.user_agent_extra == f"@aws/durable-execution-sdk-python/{__version__}"
19431945
assert isinstance(client, LambdaClient)
19441946

19451947

@@ -1963,6 +1965,7 @@ def test_lambda_client_initialize_client_with_endpoint(
19631965
config = call_args[1]["config"]
19641966
assert config.connect_timeout == 5
19651967
assert config.read_timeout == 50
1968+
assert config.user_agent_extra == f"@aws/durable-execution-sdk-python/{__version__}"
19661969
assert isinstance(client, LambdaClient)
19671970

19681971

@@ -2038,6 +2041,8 @@ def test_lambda_client_initialize_client_no_endpoint(
20382041
call_args = mock_boto_client.call_args
20392042
assert call_args[0] == ("lambda",)
20402043
assert "config" in call_args[1]
2044+
config = call_args[1]["config"]
2045+
assert config.user_agent_extra == f"@aws/durable-execution-sdk-python/{__version__}"
20412046
assert isinstance(client, LambdaClient)
20422047

20432048

0 commit comments

Comments
 (0)