1111#pragma once
1212
1313#include " opentelemetry/common/macros.h"
14+ #include " opentelemetry/metrics/meter.h"
1415#include " opentelemetry/version.h"
1516
1617OPENTELEMETRY_BEGIN_NAMESPACE
@@ -30,20 +31,34 @@ static constexpr const char *kMetricContainerCpuTime = "metric.container.cpu
3031static constexpr const char *descrMetricContainerCpuTime = " Total CPU time consumed" ;
3132static constexpr const char *unitMetricContainerCpuTime = " s" ;
3233
33- static nostd::unique_ptr<metrics::Counter<uint64_t >> CreateSyncMetricContainerCpuTime (
34+ static inline nostd::unique_ptr<metrics::Counter<uint64_t >> CreateSyncInt64MetricContainerCpuTime (
3435 metrics::Meter *meter)
3536{
3637 return meter->CreateUInt64Counter (kMetricContainerCpuTime , descrMetricContainerCpuTime,
3738 unitMetricContainerCpuTime);
3839}
3940
40- static nostd::shared_ptr <metrics::ObservableInstrument> CreateAsyncMetricContainerCpuTime (
41+ static inline nostd::unique_ptr <metrics::Counter< double >> CreateSyncDoubleMetricContainerCpuTime (
4142 metrics::Meter *meter)
43+ {
44+ return meter->CreateDoubleCounter (kMetricContainerCpuTime , descrMetricContainerCpuTime,
45+ unitMetricContainerCpuTime);
46+ }
47+
48+ static inline nostd::shared_ptr<metrics::ObservableInstrument>
49+ CreateAsyncInt64MetricContainerCpuTime (metrics::Meter *meter)
4250{
4351 return meter->CreateInt64ObservableCounter (kMetricContainerCpuTime , descrMetricContainerCpuTime,
4452 unitMetricContainerCpuTime);
4553}
4654
55+ static inline nostd::shared_ptr<metrics::ObservableInstrument>
56+ CreateAsyncDoubleMetricContainerCpuTime (metrics::Meter *meter)
57+ {
58+ return meter->CreateDoubleObservableCounter (kMetricContainerCpuTime , descrMetricContainerCpuTime,
59+ unitMetricContainerCpuTime);
60+ }
61+
4762/* *
4863 * Disk bytes for the container.
4964 * <p>
@@ -55,20 +70,34 @@ static constexpr const char *kMetricContainerDiskIo = "metric.container.disk
5570static constexpr const char *descrMetricContainerDiskIo = " Disk bytes for the container." ;
5671static constexpr const char *unitMetricContainerDiskIo = " By" ;
5772
58- static nostd::unique_ptr<metrics::Counter<uint64_t >> CreateSyncMetricContainerDiskIo (
73+ static inline nostd::unique_ptr<metrics::Counter<uint64_t >> CreateSyncInt64MetricContainerDiskIo (
5974 metrics::Meter *meter)
6075{
6176 return meter->CreateUInt64Counter (kMetricContainerDiskIo , descrMetricContainerDiskIo,
6277 unitMetricContainerDiskIo);
6378}
6479
65- static nostd::shared_ptr <metrics::ObservableInstrument> CreateAsyncMetricContainerDiskIo (
80+ static inline nostd::unique_ptr <metrics::Counter< double >> CreateSyncDoubleMetricContainerDiskIo (
6681 metrics::Meter *meter)
82+ {
83+ return meter->CreateDoubleCounter (kMetricContainerDiskIo , descrMetricContainerDiskIo,
84+ unitMetricContainerDiskIo);
85+ }
86+
87+ static inline nostd::shared_ptr<metrics::ObservableInstrument>
88+ CreateAsyncInt64MetricContainerDiskIo (metrics::Meter *meter)
6789{
6890 return meter->CreateInt64ObservableCounter (kMetricContainerDiskIo , descrMetricContainerDiskIo,
6991 unitMetricContainerDiskIo);
7092}
7193
94+ static inline nostd::shared_ptr<metrics::ObservableInstrument>
95+ CreateAsyncDoubleMetricContainerDiskIo (metrics::Meter *meter)
96+ {
97+ return meter->CreateDoubleObservableCounter (kMetricContainerDiskIo , descrMetricContainerDiskIo,
98+ unitMetricContainerDiskIo);
99+ }
100+
72101/* *
73102 * Memory usage of the container.
74103 * <p>
@@ -80,20 +109,34 @@ static constexpr const char *kMetricContainerMemoryUsage = "metric.container
80109static constexpr const char *descrMetricContainerMemoryUsage = " Memory usage of the container." ;
81110static constexpr const char *unitMetricContainerMemoryUsage = " By" ;
82111
83- static nostd::unique_ptr<metrics::Counter<uint64_t >> CreateSyncMetricContainerMemoryUsage (
84- metrics::Meter *meter)
112+ static inline nostd::unique_ptr<metrics::Counter<uint64_t >>
113+ CreateSyncInt64MetricContainerMemoryUsage ( metrics::Meter *meter)
85114{
86115 return meter->CreateUInt64Counter (kMetricContainerMemoryUsage , descrMetricContainerMemoryUsage,
87116 unitMetricContainerMemoryUsage);
88117}
89118
90- static nostd::shared_ptr<metrics::ObservableInstrument> CreateAsyncMetricContainerMemoryUsage (
91- metrics::Meter *meter)
119+ static inline nostd::unique_ptr<metrics::Counter<double >>
120+ CreateSyncDoubleMetricContainerMemoryUsage (metrics::Meter *meter)
121+ {
122+ return meter->CreateDoubleCounter (kMetricContainerMemoryUsage , descrMetricContainerMemoryUsage,
123+ unitMetricContainerMemoryUsage);
124+ }
125+
126+ static inline nostd::shared_ptr<metrics::ObservableInstrument>
127+ CreateAsyncInt64MetricContainerMemoryUsage (metrics::Meter *meter)
92128{
93129 return meter->CreateInt64ObservableCounter (
94130 kMetricContainerMemoryUsage , descrMetricContainerMemoryUsage, unitMetricContainerMemoryUsage);
95131}
96132
133+ static inline nostd::shared_ptr<metrics::ObservableInstrument>
134+ CreateAsyncDoubleMetricContainerMemoryUsage (metrics::Meter *meter)
135+ {
136+ return meter->CreateDoubleObservableCounter (
137+ kMetricContainerMemoryUsage , descrMetricContainerMemoryUsage, unitMetricContainerMemoryUsage);
138+ }
139+
97140/* *
98141 * Network bytes for the container.
99142 * <p>
@@ -105,20 +148,34 @@ static constexpr const char *kMetricContainerNetworkIo = "metric.container.n
105148static constexpr const char *descrMetricContainerNetworkIo = " Network bytes for the container." ;
106149static constexpr const char *unitMetricContainerNetworkIo = " By" ;
107150
108- static nostd::unique_ptr<metrics::Counter<uint64_t >> CreateSyncMetricContainerNetworkIo (
151+ static inline nostd::unique_ptr<metrics::Counter<uint64_t >> CreateSyncInt64MetricContainerNetworkIo (
109152 metrics::Meter *meter)
110153{
111154 return meter->CreateUInt64Counter (kMetricContainerNetworkIo , descrMetricContainerNetworkIo,
112155 unitMetricContainerNetworkIo);
113156}
114157
115- static nostd::shared_ptr <metrics::ObservableInstrument> CreateAsyncMetricContainerNetworkIo (
158+ static inline nostd::unique_ptr <metrics::Counter< double >> CreateSyncDoubleMetricContainerNetworkIo (
116159 metrics::Meter *meter)
160+ {
161+ return meter->CreateDoubleCounter (kMetricContainerNetworkIo , descrMetricContainerNetworkIo,
162+ unitMetricContainerNetworkIo);
163+ }
164+
165+ static inline nostd::shared_ptr<metrics::ObservableInstrument>
166+ CreateAsyncInt64MetricContainerNetworkIo (metrics::Meter *meter)
117167{
118168 return meter->CreateInt64ObservableCounter (
119169 kMetricContainerNetworkIo , descrMetricContainerNetworkIo, unitMetricContainerNetworkIo);
120170}
121171
172+ static inline nostd::shared_ptr<metrics::ObservableInstrument>
173+ CreateAsyncDoubleMetricContainerNetworkIo (metrics::Meter *meter)
174+ {
175+ return meter->CreateDoubleObservableCounter (
176+ kMetricContainerNetworkIo , descrMetricContainerNetworkIo, unitMetricContainerNetworkIo);
177+ }
178+
122179} // namespace container
123180} // namespace semconv
124181OPENTELEMETRY_END_NAMESPACE
0 commit comments