@@ -667,6 +667,7 @@ StreamOutcome AWSClient::MakeRequestWithUnparsedResponse(const Aws::Http::URI& u
667667 const char * signerRegionOverride,
668668 const char * signerServiceNameOverride) const
669669{
670+ m_featureLogger.LogFeature (this , __func__);
670671 HttpResponseOutcome httpResponseOutcome = AttemptExhaustively (uri, request, method, signerName, signerRegionOverride, signerServiceNameOverride);
671672 if (httpResponseOutcome.IsSuccess ())
672673 {
@@ -685,6 +686,7 @@ StreamOutcome AWSClient::MakeRequestWithUnparsedResponse(const Aws::Http::URI& u
685686 const char * signerRegionOverride,
686687 const char * signerServiceNameOverride) const
687688{
689+ m_featureLogger.LogFeature (this , __func__);
688690 HttpResponseOutcome httpResponseOutcome = AttemptExhaustively (uri, method, signerName, requestName, signerRegionOverride, signerServiceNameOverride);
689691 if (httpResponseOutcome.IsSuccess ())
690692 {
@@ -703,6 +705,7 @@ StreamOutcome AWSClient::MakeRequestWithUnparsedResponse(const Aws::AmazonWebSer
703705 const char * signerRegionOverride,
704706 const char * signerServiceNameOverride) const
705707{
708+ m_featureLogger.LogFeature (this , __func__);
706709 const Aws::Http::URI& uri = endpoint.GetURI ();
707710 if (endpoint.GetAttributes ()) {
708711 signerName = endpoint.GetAttributes ()->authScheme .GetName ().c_str ();
@@ -727,6 +730,7 @@ XmlOutcome AWSXMLClient::MakeRequestWithEventStream(const Aws::AmazonWebServiceR
727730 const char * signerRegionOverride,
728731 const char * signerServiceNameOverride) const
729732{
733+ m_featureLogger.LogFeature (this , __func__);
730734 const Aws::Http::URI& uri = endpoint.GetURI ();
731735 if (endpoint.GetAttributes ()) {
732736 signerName = endpoint.GetAttributes ()->authScheme .GetName ().c_str ();
@@ -751,6 +755,7 @@ XmlOutcome AWSXMLClient::MakeRequestWithEventStream(const Aws::Http::URI& uri,
751755 const char * signerRegionOverride,
752756 const char * signerServiceNameOverride) const
753757{
758+ m_featureLogger.LogFeature (this , __func__);
754759 HttpResponseOutcome httpOutcome = AttemptExhaustively (uri, request, method, signerName, signerRegionOverride, signerServiceNameOverride);
755760 if (httpOutcome.IsSuccess ())
756761 {
@@ -767,6 +772,7 @@ XmlOutcome AWSXMLClient::MakeRequestWithEventStream(const Aws::Http::URI& uri,
767772 const char * signerRegionOverride,
768773 const char * signerServiceNameOverride) const
769774{
775+ m_featureLogger.LogFeature (this , __func__);
770776 HttpResponseOutcome httpOutcome = AttemptExhaustively (uri, method, signerName, requestName, signerRegionOverride, signerServiceNameOverride);
771777 if (httpOutcome.IsSuccess ())
772778 {
@@ -925,31 +931,37 @@ void AWSClient::BuildHttpRequest(const Aws::AmazonWebServiceRequest& request, co
925931
926932Aws::String AWSClient::GeneratePresignedUrl (const Aws::Http::URI& uri, Aws::Http::HttpMethod method, long long expirationInSeconds, const std::shared_ptr<Aws::Http::ServiceSpecificParameters> serviceSpecificParameter)
927933{
934+ m_featureLogger.LogFeature (this , __func__);
928935 return AWSUrlPresigner (*this ).GeneratePresignedUrl (uri, method, expirationInSeconds, serviceSpecificParameter);
929936}
930937
931938Aws::String AWSClient::GeneratePresignedUrl (const Aws::Http::URI& uri, Aws::Http::HttpMethod method, const Aws::Http::HeaderValueCollection& customizedHeaders, long long expirationInSeconds, const std::shared_ptr<Aws::Http::ServiceSpecificParameters> serviceSpecificParameter)
932939{
940+ m_featureLogger.LogFeature (this , __func__);
933941 return AWSUrlPresigner (*this ).GeneratePresignedUrl (uri, method, customizedHeaders, expirationInSeconds, serviceSpecificParameter);
934942}
935943
936944Aws::String AWSClient::GeneratePresignedUrl (const Aws::Http::URI& uri, Aws::Http::HttpMethod method, const char * region, long long expirationInSeconds, const std::shared_ptr<Aws::Http::ServiceSpecificParameters> serviceSpecificParameter) const
937945{
946+ m_featureLogger.LogFeature (this , __func__);
938947 return AWSUrlPresigner (*this ).GeneratePresignedUrl (uri, method, region, expirationInSeconds, serviceSpecificParameter);
939948}
940949
941950Aws::String AWSClient::GeneratePresignedUrl (const Aws::Http::URI& uri, Aws::Http::HttpMethod method, const char * region, const Aws::Http::HeaderValueCollection& customizedHeaders, long long expirationInSeconds, const std::shared_ptr<Aws::Http::ServiceSpecificParameters> serviceSpecificParameter)
942951{
952+ m_featureLogger.LogFeature (this , __func__);
943953 return AWSUrlPresigner (*this ).GeneratePresignedUrl (uri, method, region, customizedHeaders, expirationInSeconds, serviceSpecificParameter);
944954}
945955
946956Aws::String AWSClient::GeneratePresignedUrl (const Aws::Http::URI& uri, Aws::Http::HttpMethod method, const char * region, const char * serviceName, long long expirationInSeconds, const std::shared_ptr<Aws::Http::ServiceSpecificParameters> serviceSpecificParameter) const
947957{
958+ m_featureLogger.LogFeature (this , __func__);
948959 return AWSUrlPresigner (*this ).GeneratePresignedUrl (uri, method, region, serviceName, expirationInSeconds, serviceSpecificParameter);
949960}
950961
951962Aws::String AWSClient::GeneratePresignedUrl (const Aws::Http::URI& uri, Aws::Http::HttpMethod method, const char * region, const char * serviceName, const Aws::Http::HeaderValueCollection& customizedHeaders, long long expirationInSeconds, const std::shared_ptr<Aws::Http::ServiceSpecificParameters> serviceSpecificParameter)
952963{
964+ m_featureLogger.LogFeature (this , __func__);
953965 return AWSUrlPresigner (*this ).GeneratePresignedUrl (uri, method, region, serviceName, customizedHeaders, expirationInSeconds, serviceSpecificParameter);
954966}
955967
@@ -960,6 +972,7 @@ Aws::String AWSClient::GeneratePresignedUrl(const Aws::Http::URI& uri, Aws::Http
960972
961973Aws::String AWSClient::GeneratePresignedUrl (const Aws::Http::URI& uri, Aws::Http::HttpMethod method, const char * region, const char * serviceName, const char * signerName, const Aws::Http::HeaderValueCollection& customizedHeaders, long long expirationInSeconds, const std::shared_ptr<Aws::Http::ServiceSpecificParameters> serviceSpecificParameter)
962974{
975+ m_featureLogger.LogFeature (this , __func__);
963976 return AWSUrlPresigner (*this ).GeneratePresignedUrl (uri, method, region, serviceName, signerName, customizedHeaders, expirationInSeconds, serviceSpecificParameter);
964977}
965978
@@ -972,18 +985,21 @@ Aws::String AWSClient::GeneratePresignedUrl(const Aws::Endpoint::AWSEndpoint& en
972985 const char * signerServiceNameOverride /* = nullptr */ ,
973986 const std::shared_ptr<Aws::Http::ServiceSpecificParameters> serviceSpecificParameter)
974987{
988+ m_featureLogger.LogFeature (this , __func__);
975989 return AWSUrlPresigner (*this ).GeneratePresignedUrl (endpoint, method, customizedHeaders, expirationInSeconds, signerName, signerRegionOverride, signerServiceNameOverride, serviceSpecificParameter);
976990}
977991
978992Aws::String AWSClient::GeneratePresignedUrl (const Aws::AmazonWebServiceRequest& request, const Aws::Http::URI& uri, Aws::Http::HttpMethod method, const char * region,
979993 const Aws::Http::QueryStringParameterCollection& extraParams, long long expirationInSeconds, const std::shared_ptr<Aws::Http::ServiceSpecificParameters> serviceSpecificParameter) const
980994{
995+ m_featureLogger.LogFeature (this , __func__);
981996 return AWSUrlPresigner (*this ).GeneratePresignedUrl (request, uri, method, region, extraParams, expirationInSeconds, serviceSpecificParameter);
982997}
983998
984999Aws::String AWSClient::GeneratePresignedUrl (const Aws::AmazonWebServiceRequest& request, const Aws::Http::URI& uri, Aws::Http::HttpMethod method, const char * region, const char * serviceName,
9851000 const Aws::Http::QueryStringParameterCollection& extraParams, long long expirationInSeconds, const std::shared_ptr<Aws::Http::ServiceSpecificParameters> serviceSpecificParameter) const
9861001{
1002+ m_featureLogger.LogFeature (this , __func__);
9871003 return AWSUrlPresigner (*this ).GeneratePresignedUrl (request, uri, method, region, serviceName, extraParams, expirationInSeconds, serviceSpecificParameter);
9881004}
9891005
@@ -997,17 +1013,20 @@ Aws::String AWSClient::GeneratePresignedUrl(const Aws::AmazonWebServiceRequest&
9971013 long long expirationInSeconds,
9981014 const std::shared_ptr<Aws::Http::ServiceSpecificParameters> serviceSpecificParameter) const
9991015{
1016+ m_featureLogger.LogFeature (this , __func__);
10001017 return AWSUrlPresigner (*this ).GeneratePresignedUrl (request, uri, method, region, serviceName, signerName, extraParams, expirationInSeconds, serviceSpecificParameter);
10011018}
10021019
10031020Aws::String AWSClient::GeneratePresignedUrl (const Aws::AmazonWebServiceRequest& request, const Aws::Http::URI& uri, Aws::Http::HttpMethod method,
10041021 const Aws::Http::QueryStringParameterCollection& extraParams, long long expirationInSeconds, const std::shared_ptr<Aws::Http::ServiceSpecificParameters> serviceSpecificParameter) const
10051022{
1023+ m_featureLogger.LogFeature (this , __func__);
10061024 return AWSUrlPresigner (*this ).GeneratePresignedUrl (request, uri, method, extraParams, expirationInSeconds, serviceSpecificParameter);
10071025}
10081026
10091027std::shared_ptr<Aws::Http::HttpResponse> AWSClient::MakeHttpRequest (std::shared_ptr<Aws::Http::HttpRequest>& request) const
10101028{
1029+ m_featureLogger.LogFeature (this , __func__);
10111030 return m_httpClient->MakeRequest (request, m_readRateLimiter.get (), m_writeRateLimiter.get ());
10121031}
10131032
@@ -1045,4 +1064,12 @@ void AWSClient::AppendRecursionDetectionHeader(std::shared_ptr<Aws::Http::HttpRe
10451064 xAmznTraceIdVal = xAmznTraceIdValEncodedStr.str ();
10461065
10471066 ioRequest->SetHeaderValue (Aws::Http::X_AMZN_TRACE_ID_HEADER, xAmznTraceIdVal);
1048- }
1067+ }
1068+
1069+ void FeatureLogger::LogFeature (const AWSClient* clientPtr, const std::string& featureMetadata) const
1070+ {
1071+ if (clientPtr)
1072+ {
1073+ clientPtr->m_userAgentInterceptor ->SetFeatureMetadataIfNotSet (featureMetadata);
1074+ }
1075+ }
0 commit comments