GlobalStatistics.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  1. /*
  2. * Copyright (c) Contributors to the Open 3D Engine Project.
  3. * For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. *
  5. * SPDX-License-Identifier: Apache-2.0 OR MIT
  6. *
  7. */
  8. #pragma once
  9. #include <stdint.h>
  10. #include <AzCore/std/parallel/atomic.h>
  11. namespace AWSMetrics
  12. {
  13. //! GlobalStatistics is used to store the statistics for sending metrics to the backend or local file.
  14. struct GlobalStatistics
  15. {
  16. //! Returns the total number of bytes sent to the backend or local file.
  17. AZStd::atomic<uint32_t> m_sendSizeInBytes = 0;
  18. //! Returns the total number of metrics events to the backend or local file.
  19. AZStd::atomic<uint32_t> m_numEvents = 0;
  20. //! Return the total number of metrics events failed to be sent to the backend or local file.
  21. AZStd::atomic<uint32_t> m_numErrors = 0;
  22. //! Returns the total number of metrics events sent successfully to the backend or local file.
  23. AZStd::atomic<uint32_t> m_numSuccesses = 0;
  24. //! Returns the total number of metrics events which failed the JSON schema validation or reached the maximum number of retries.
  25. AZStd::atomic<uint32_t> m_numDropped = 0;
  26. };
  27. }