diff options
Diffstat (limited to 'src/common/Metric/Metric.cpp')
-rw-r--r-- | src/common/Metric/Metric.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/common/Metric/Metric.cpp b/src/common/Metric/Metric.cpp index 455bdce039a..c924c233e02 100644 --- a/src/common/Metric/Metric.cpp +++ b/src/common/Metric/Metric.cpp @@ -152,8 +152,14 @@ void Metric::SendBatch() if (!_realmName.empty()) batchedData << ",realm=" << _realmName; - for (MetricTag const& tag : data->Tags) - batchedData << "," << tag.first << "=" << FormatInfluxDBTagValue(tag.second); + if (data->Tags) + { + auto begin = std::visit([](auto&& value) { return value.data(); }, *data->Tags); + auto end = std::visit([](auto&& value) { return value.data() + value.size(); }, *data->Tags); + for (auto itr = begin; itr != end; ++itr) + if (!itr->first.empty()) + batchedData << "," << itr->first << "=" << FormatInfluxDBTagValue(itr->second); + } batchedData << " "; |