8#include <aws/core/Core_EXPORTS.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/core/client/AWSClient.h>
12#include <aws/core/monitoring/CoreMetrics.h>
18 class MonitoringFactory;
23 const std::shared_ptr<const Aws::Http::HttpRequest>& request);
41 const std::shared_ptr<const Aws::Http::HttpRequest>& request,
const Aws::Vector<void*>& contexts);
47 const std::shared_ptr<const Aws::Http::HttpRequest>& request,
const Aws::Vector<void*>& contexts);
57 AWS_CORE_API
void InitMonitoring(
const std::vector<MonitoringFactoryCreateFunction>& monitoringFactoryCreateFunctions);
68 AWS_CORE_API
void AddMonitoring(
const std::vector<MonitoringFactoryCreateFunction>& monitoringFactoryCreateFunctions);
AWS_CORE_API void InitMonitoring(const std::vector< MonitoringFactoryCreateFunction > &monitoringFactoryCreateFunctions)
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)
Aws::Vector< void * > OnRequestStarted(const Aws::String &serviceName, const Aws::String &requestName, const std::shared_ptr< const Aws::Http::HttpRequest > &request)
void OnRequestRetry(const Aws::String &serviceName, const Aws::String &requestName, const std::shared_ptr< const Aws::Http::HttpRequest > &request, const Aws::Vector< void * > &contexts)
std::function< Aws::UniquePtr< MonitoringFactory >()> MonitoringFactoryCreateFunction
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)
AWS_CORE_API void CleanupMonitoring()
void OnFinish(const Aws::String &serviceName, const Aws::String &requestName, const std::shared_ptr< const Aws::Http::HttpRequest > &request, const Aws::Vector< void * > &contexts)
AWS_CORE_API void AddMonitoring(const std::vector< MonitoringFactoryCreateFunction > &monitoringFactoryCreateFunctions)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector