#include "AsioHacksFwd.h"
#include "Define.h"
#include "Duration.h"
#include "Hash.h"
#include "MPSCQueue.h"
#include <functional>
#include <memory>
#include <string>
#include <unordered_map>
#include <utility>
#include <variant>
Go to the source code of this file.
|
| #define | sMetric Metric::instance() |
| |
| #define | TC_METRIC_TAG(name, value) std::pair<std::string_view, std::string_view>(name, value) |
| |
| #define | TC_METRIC_DO_CONCAT(a, b) a ## b |
| |
| #define | TC_METRIC_CONCAT(a, b) TC_METRIC_DO_CONCAT(a, b) |
| |
| #define | TC_METRIC_UNIQUE_NAME(name) TC_METRIC_CONCAT(name, __LINE__) |
| |
| #define | TC_METRIC_EVENT(category, title, description) |
| |
| #define | TC_METRIC_VALUE(category, value, ...) |
| |
| #define | TC_METRIC_TIMER_IMPL(variable, category, ...) |
| |
| #define | TC_METRIC_TIMER(category, ...) TC_METRIC_TIMER_IMPL(TC_METRIC_UNIQUE_NAME(tc_metric_stop_watch_), category, ## __VA_ARGS__) |
| |
| #define | TC_METRIC_DETAILED_EVENT(category, title, description) ((void)0) |
| |
| #define | TC_METRIC_DETAILED_TIMER(category, ...) ((void)0) |
| |
| #define | TC_METRIC_DETAILED_NO_THRESHOLD_TIMER(category, ...) ((void)0) |
| |
◆ sMetric
◆ TC_METRIC_CONCAT
◆ TC_METRIC_DETAILED_EVENT
| #define TC_METRIC_DETAILED_EVENT |
( |
|
category, |
|
|
|
title, |
|
|
|
description |
|
) |
| ((void)0) |
◆ TC_METRIC_DETAILED_NO_THRESHOLD_TIMER
| #define TC_METRIC_DETAILED_NO_THRESHOLD_TIMER |
( |
|
category, |
|
|
|
... |
|
) |
| ((void)0) |
◆ TC_METRIC_DETAILED_TIMER
| #define TC_METRIC_DETAILED_TIMER |
( |
|
category, |
|
|
|
... |
|
) |
| ((void)0) |
◆ TC_METRIC_DO_CONCAT
| #define TC_METRIC_DO_CONCAT |
( |
|
a, |
|
|
|
b |
|
) |
| a ## b |
◆ TC_METRIC_EVENT
| #define TC_METRIC_EVENT |
( |
|
category, |
|
|
|
title, |
|
|
|
description |
|
) |
| |
Value: do { \
metric->LogEvent(category, title, description); \
} while (false)
Definition at line 201 of file Metric.h.
◆ TC_METRIC_TAG
| #define TC_METRIC_TAG |
( |
|
name, |
|
|
|
value |
|
) |
| std::pair<std::string_view, std::string_view>(name, value) |
◆ TC_METRIC_TIMER
◆ TC_METRIC_TIMER_IMPL
| #define TC_METRIC_TIMER_IMPL |
( |
|
variable, |
|
|
|
category, |
|
|
|
... |
|
) |
| |
Value:
{ \
metric->
LogValue(category, std::chrono::steady_clock::now() - start, ## __VA_ARGS__); \
} }; \
do \
{ \
variable.Enable(metric); \
} while (false)
std::chrono::steady_clock::time_point TimePoint
time_point shorthand typedefs
void LogValue(std::string_view category, T value, TagsList &&... tags) noexcept
Definition at line 211 of file Metric.h.
◆ TC_METRIC_UNIQUE_NAME
◆ TC_METRIC_VALUE
| #define TC_METRIC_VALUE |
( |
|
category, |
|
|
|
value, |
|
|
|
... |
|
) |
| |
Value: do { \
metric->LogValue(category, value, ## __VA_ARGS__); \
} while (false)
Definition at line 206 of file Metric.h.
◆ MetricTag
| using MetricTag = std::pair<std::string, std::string> |
◆ MetricTags
◆ MetricDataType
| Enumerator |
|---|
| METRIC_DATA_VALUE | |
| METRIC_DATA_EVENT | |
Definition at line 33 of file Metric.h.
◆ MetricStopWatch()
template<typename LoggerType >