aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/monitoring
diff options
context:
space:
mode:
authordakovalkov <dakovalkov@yandex-team.com>2023-12-03 13:33:55 +0300
committerdakovalkov <dakovalkov@yandex-team.com>2023-12-03 14:04:39 +0300
commit2a718325637e5302334b6d0a6430f63168f8dbb3 (patch)
tree64be81080b7df9ec1d86d053a0c394ae53fcf1fe /contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/monitoring
parente0d94a470142d95c3007e9c5d80380994940664a (diff)
downloadydb-2a718325637e5302334b6d0a6430f63168f8dbb3.tar.gz
Update contrib/libs/aws-sdk-cpp to 1.11.37
Diffstat (limited to 'contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/monitoring')
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/monitoring/MonitoringManager.cpp69
1 files changed, 38 insertions, 31 deletions
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/monitoring/MonitoringManager.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/monitoring/MonitoringManager.cpp
index 7a8d3adb41..d6891933c7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/monitoring/MonitoringManager.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/monitoring/MonitoringManager.cpp
@@ -25,16 +25,18 @@ namespace Aws
/**
* Global factory to create global metrics instance.
*/
- static Aws::UniquePtr<Monitors> s_monitors;
+ static Monitors* s_monitors(nullptr);
Aws::Vector<void*> OnRequestStarted(const Aws::String& serviceName, const Aws::String& requestName, const std::shared_ptr<const Aws::Http::HttpRequest>& request)
{
- assert(s_monitors);
Aws::Vector<void*> contexts;
- contexts.reserve(s_monitors->size());
- for (const auto& interface: *s_monitors)
+ if (s_monitors)
{
- contexts.emplace_back(interface->OnRequestStarted(serviceName, requestName, request));
+ contexts.reserve(s_monitors->size());
+ for (const auto& interface: *s_monitors)
+ {
+ contexts.emplace_back(interface->OnRequestStarted(serviceName, requestName, request));
+ }
}
return contexts;
}
@@ -42,48 +44,56 @@ namespace Aws
void OnRequestSucceeded(const Aws::String& serviceName, const Aws::String& requestName, const std::shared_ptr<const Aws::Http::HttpRequest>& request,
const Aws::Client::HttpResponseOutcome& outcome, const CoreMetricsCollection& metricsFromCore, const Aws::Vector<void*>& contexts)
{
- assert(s_monitors);
- assert(contexts.size() == s_monitors->size());
- size_t index = 0;
- for (const auto& interface: *s_monitors)
+ if (s_monitors)
{
- interface->OnRequestSucceeded(serviceName, requestName, request, outcome, metricsFromCore, contexts[index++]);
+ assert(contexts.size() == s_monitors->size());
+ size_t index = 0;
+ for (const auto& interface: *s_monitors)
+ {
+ interface->OnRequestSucceeded(serviceName, requestName, request, outcome, metricsFromCore, contexts[index++]);
+ }
}
}
void OnRequestFailed(const Aws::String& serviceName, const Aws::String& requestName, const std::shared_ptr<const Aws::Http::HttpRequest>& request,
const Aws::Client::HttpResponseOutcome& outcome, const CoreMetricsCollection& metricsFromCore, const Aws::Vector<void*>& contexts)
{
- assert(s_monitors);
- assert(contexts.size() == s_monitors->size());
- size_t index = 0;
- for (const auto& interface: *s_monitors)
+ if (s_monitors)
{
- interface->OnRequestFailed(serviceName, requestName, request, outcome, metricsFromCore, contexts[index++]);
+ assert(contexts.size() == s_monitors->size());
+ size_t index = 0;
+ for (const auto& interface: *s_monitors)
+ {
+ interface->OnRequestFailed(serviceName, requestName, request, outcome, metricsFromCore, contexts[index++]);
+ }
}
}
void OnRequestRetry(const Aws::String& serviceName, const Aws::String& requestName,
const std::shared_ptr<const Aws::Http::HttpRequest>& request, const Aws::Vector<void*>& contexts)
{
- assert(s_monitors);
- assert(contexts.size() == s_monitors->size());
- size_t index = 0;
- for (const auto& interface: *s_monitors)
+ if (s_monitors)
{
- interface->OnRequestRetry(serviceName, requestName, request, contexts[index++]);
+ assert(contexts.size() == s_monitors->size());
+ size_t index = 0;
+ for (const auto& interface: *s_monitors)
+ {
+ interface->OnRequestRetry(serviceName, requestName, request, contexts[index++]);
+ }
}
}
void OnFinish(const Aws::String& serviceName, const Aws::String& requestName,
const std::shared_ptr<const Aws::Http::HttpRequest>& request, const Aws::Vector<void*>& contexts)
{
- assert(s_monitors);
- assert(contexts.size() == s_monitors->size());
- size_t index = 0;
- for (const auto& interface: *s_monitors)
+ if (s_monitors)
{
- interface->OnFinish(serviceName, requestName, request, contexts[index++]);
+ assert(contexts.size() == s_monitors->size());
+ size_t index = 0;
+ for (const auto& interface: *s_monitors)
+ {
+ interface->OnFinish(serviceName, requestName, request, contexts[index++]);
+ }
}
}
@@ -93,7 +103,8 @@ namespace Aws
{
return;
}
- s_monitors = Aws::MakeUnique<Monitors>(MonitoringTag);
+ assert(Aws::get_aws_allocator() != nullptr);
+ s_monitors = Aws::New<Monitors>(MonitoringTag);
for (const auto& function: monitoringFactoryCreateFunctions)
{
auto factory = function();
@@ -117,11 +128,7 @@ namespace Aws
void CleanupMonitoring()
{
- if (!s_monitors)
- {
- return;
- }
-
+ Aws::Delete(s_monitors);
s_monitors = nullptr;
}
} // namespace Monitoring