From 0dc97060fad18eecc3239ed4d1303070299431b4 Mon Sep 17 00:00:00 2001 From: nvasiu Date: Tue, 14 Apr 2026 22:24:49 +0000 Subject: [PATCH] feat: add sdk name/version to user agent header - 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. --- src/aws_durable_execution_sdk_python/lambda_service.py | 2 ++ tests/lambda_service_test.py | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/src/aws_durable_execution_sdk_python/lambda_service.py b/src/aws_durable_execution_sdk_python/lambda_service.py index b11f950..20cf5f1 100644 --- a/src/aws_durable_execution_sdk_python/lambda_service.py +++ b/src/aws_durable_execution_sdk_python/lambda_service.py @@ -11,6 +11,7 @@ import boto3 from botocore.config import Config +from aws_durable_execution_sdk_python.__about__ import __version__ from aws_durable_execution_sdk_python.exceptions import ( CallableRuntimeError, CheckpointError, @@ -1059,6 +1060,7 @@ def initialize_client(cls) -> LambdaClient: config=Config( connect_timeout=5, read_timeout=50, + user_agent_extra=f"@aws/durable-execution-sdk-python/{__version__}", ), ) return cls(client=cls._cached_boto_client) diff --git a/tests/lambda_service_test.py b/tests/lambda_service_test.py index e8757cc..5451fc8 100644 --- a/tests/lambda_service_test.py +++ b/tests/lambda_service_test.py @@ -6,6 +6,7 @@ import pytest +from aws_durable_execution_sdk_python.__about__ import __version__ from aws_durable_execution_sdk_python.exceptions import ( CallableRuntimeError, CheckpointError, @@ -1940,6 +1941,7 @@ def test_lambda_client_initialize_client_default( config = call_args[1]["config"] assert config.connect_timeout == 5 assert config.read_timeout == 50 + assert config.user_agent_extra == f"@aws/durable-execution-sdk-python/{__version__}" assert isinstance(client, LambdaClient) @@ -1963,6 +1965,7 @@ def test_lambda_client_initialize_client_with_endpoint( config = call_args[1]["config"] assert config.connect_timeout == 5 assert config.read_timeout == 50 + assert config.user_agent_extra == f"@aws/durable-execution-sdk-python/{__version__}" assert isinstance(client, LambdaClient) @@ -2038,6 +2041,8 @@ def test_lambda_client_initialize_client_no_endpoint( call_args = mock_boto_client.call_args assert call_args[0] == ("lambda",) assert "config" in call_args[1] + config = call_args[1]["config"] + assert config.user_agent_extra == f"@aws/durable-execution-sdk-python/{__version__}" assert isinstance(client, LambdaClient)