-
Notifications
You must be signed in to change notification settings - Fork 12
Labels
Description
In scylladb/scylladb#24993 (or alternatively scylladb/scylladb#24988) I wanted to be able to learn exactly which SDK is being used by a user connecting to Alternator - by inspecting the User-Agent headers sent by the SDK. These user-agent headers are different for different SDKs, for example
- The Python AWS SDK (boto3) sends:
Boto3/1.38.46 md/Botocore#1.38.46 md/awscrt#0.24.2 ua/2.1 os/linux#6.15.4-100.fc41.x86_64 md/arch#x86_64 lang/python#3.13.5 md/pyimpl#CPython m/N,P,b,D,Z cfg/retry-mode#legacy Botocore/1.38.46 Resource - The Java SDK v1 sends:
aws-sdk-java/1.11.919 Linux/6.15.4-100.fc41.x86_64 OpenJDK_64-Bit_Server_VM/11.0.27+6 java/11.0.27 vendor/Red_Hat,_Inc. - The Java SDK v2 sends:
aws-sdk-java/2.25.31 Linux/6.15.4-100.fc41.x86_64 OpenJDK_64-Bit_Server_VM/11.0.27+6 Java/11.0.27 vendor/Red_Hat__Inc. io/sync http/Apache cfg/retry-mode/legacy cfg/auth-source#stat
Currently, I believe that our own load-balancing wrappers tracked in this repository do not modify the User-Agent header, so we can't know if the original AWS SDK is being used or our own wrapper - and which version of the wrapper.
I'm asking in this issue to add the fact that Scylla's wrapper is being used, its language and version, to the User-Agent header - in addition to the information that the AWS SDK puts there (which also remains useful).