CVB++ 15.0
Loading...
Searching...
No Matches
telemetry.hpp
1#pragma once
2
3#include <array>
4
5#include "../_cexports/c_telemetry.h"
6
7#include "../global.hpp"
8
9namespace Cvb
10{
11
12 CVB_BEGIN_INLINE_NS
13
15
24 namespace Telemetry
25 {
27
30 enum class LogLevel
31 {
33 DEBUG = CExports::CVTLL_Debug,
35 INFO = CExports::CVTLL_Info,
37 WARN = CExports::CVTLL_Warning,
39 ERR = CExports::CVTLL_Error,
41 FATAL = CExports::CVTLL_Fatal
42 };
43
45
50 struct Context
51 {
54 };
55
57
61 inline void PropagateContext(const Context &context) noexcept
62 {
63 CExports::CVTPropagateContext(reinterpret_cast<const CExports::CVTContext &>(context));
64 }
65
66 } // namespace Telemetry
67
68 CVB_END_INLINE_NS
69} // namespace Cvb
Namespace for telemetry.
Definition attribute_map.hpp:16
void PropagateContext(const Context &context) noexcept
Propagates an external context to CVB telemetry.
Definition telemetry.hpp:61
LogLevel
Log level for telemetry.
Definition telemetry.hpp:31
@ FATAL
Logs indicating errors, that cannot be ignored.
Definition telemetry.hpp:41
@ WARN
Logs warning about the current state, as it is out of the ordinary.
Definition telemetry.hpp:37
@ INFO
Logs informing about the current state.
Definition telemetry.hpp:35
@ ERR
Logs indicating errors, that may be ignored.
Definition telemetry.hpp:39
@ DEBUG
Logs for debugging, these should be avoided especially in a critical code paths.
Definition telemetry.hpp:33
Root namespace for the Image Manager interface.
Definition version.hpp:11
The telemetry context.
Definition telemetry.hpp:51