Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions api/include/opentelemetry/common/macros.h
Original file line number Diff line number Diff line change
Expand Up @@ -244,6 +244,27 @@
# define OPENTELEMETRY_DEPRECATED_MESSAGE(msg)
#endif

// Suppress -Wdeprecated-declarations within a region.
// Used by generated semconv headers to wrap deprecated helper bodies
// that reference deprecated constants.
#if defined(__clang__)
# define OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN \
_Pragma("clang diagnostic push") \
_Pragma("clang diagnostic ignored \"-Wdeprecated-declarations\"")
# define OPENTELEMETRY_SUPPRESS_DEPRECATED_END _Pragma("clang diagnostic pop")
#elif defined(__GNUC__)
# define OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN \
_Pragma("GCC diagnostic push") _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
# define OPENTELEMETRY_SUPPRESS_DEPRECATED_END _Pragma("GCC diagnostic pop")
#elif defined(_MSC_VER)
# define OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN \
__pragma(warning(push)) __pragma(warning(disable : 4996))
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Optional nit: if clang-format allows it, could we keep one pragma per macro line for readability in the GCC and MSVC branches, similar to the Clang branch? The current formatting is correct, but th push/disable sequence is a little harder to scan when it gets collapsed onto one line.

# define OPENTELEMETRY_SUPPRESS_DEPRECATED_END __pragma(warning(pop))
#else
# define OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN
# define OPENTELEMETRY_SUPPRESS_DEPRECATED_END
#endif

// Regex support
#if (__GNUC__ == 4 && (__GNUC_MINOR__ == 8 || __GNUC_MINOR__ == 9))
// NOLINTNEXTLINE(cppcoreguidelines-macro-to-enum)
Expand Down
24 changes: 24 additions & 0 deletions api/include/opentelemetry/semconv/incubating/cpu_metrics.h
Original file line number Diff line number Diff line change
Expand Up @@ -37,30 +37,38 @@ OPENTELEMETRY_DEPRECATED static constexpr const char *unitMetricCpuFrequency = "
OPENTELEMETRY_DEPRECATED static inline nostd::unique_ptr<metrics::Gauge<int64_t>>
CreateSyncInt64MetricCpuFrequency(metrics::Meter *meter)
{
OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN
return meter->CreateInt64Gauge(kMetricCpuFrequency, descrMetricCpuFrequency,
unitMetricCpuFrequency);
OPENTELEMETRY_SUPPRESS_DEPRECATED_END
}

OPENTELEMETRY_DEPRECATED static inline nostd::unique_ptr<metrics::Gauge<double>>
CreateSyncDoubleMetricCpuFrequency(metrics::Meter *meter)
{
OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN
return meter->CreateDoubleGauge(kMetricCpuFrequency, descrMetricCpuFrequency,
unitMetricCpuFrequency);
OPENTELEMETRY_SUPPRESS_DEPRECATED_END
}
#endif /* OPENTELEMETRY_ABI_VERSION_NO */

OPENTELEMETRY_DEPRECATED static inline nostd::shared_ptr<metrics::ObservableInstrument>
CreateAsyncInt64MetricCpuFrequency(metrics::Meter *meter)
{
OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN
return meter->CreateInt64ObservableGauge(kMetricCpuFrequency, descrMetricCpuFrequency,
unitMetricCpuFrequency);
OPENTELEMETRY_SUPPRESS_DEPRECATED_END
}

OPENTELEMETRY_DEPRECATED static inline nostd::shared_ptr<metrics::ObservableInstrument>
CreateAsyncDoubleMetricCpuFrequency(metrics::Meter *meter)
{
OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN
return meter->CreateDoubleObservableGauge(kMetricCpuFrequency, descrMetricCpuFrequency,
unitMetricCpuFrequency);
OPENTELEMETRY_SUPPRESS_DEPRECATED_END
}

/**
Expand All @@ -78,26 +86,34 @@ OPENTELEMETRY_DEPRECATED static constexpr const char *unitMetricCpuTime = "s";
OPENTELEMETRY_DEPRECATED static inline nostd::unique_ptr<metrics::Counter<uint64_t>>
CreateSyncInt64MetricCpuTime(metrics::Meter *meter)
{
OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN
return meter->CreateUInt64Counter(kMetricCpuTime, descrMetricCpuTime, unitMetricCpuTime);
OPENTELEMETRY_SUPPRESS_DEPRECATED_END
}

OPENTELEMETRY_DEPRECATED static inline nostd::unique_ptr<metrics::Counter<double>>
CreateSyncDoubleMetricCpuTime(metrics::Meter *meter)
{
OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN
return meter->CreateDoubleCounter(kMetricCpuTime, descrMetricCpuTime, unitMetricCpuTime);
OPENTELEMETRY_SUPPRESS_DEPRECATED_END
}

OPENTELEMETRY_DEPRECATED static inline nostd::shared_ptr<metrics::ObservableInstrument>
CreateAsyncInt64MetricCpuTime(metrics::Meter *meter)
{
OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN
return meter->CreateInt64ObservableCounter(kMetricCpuTime, descrMetricCpuTime, unitMetricCpuTime);
OPENTELEMETRY_SUPPRESS_DEPRECATED_END
}

OPENTELEMETRY_DEPRECATED static inline nostd::shared_ptr<metrics::ObservableInstrument>
CreateAsyncDoubleMetricCpuTime(metrics::Meter *meter)
{
OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN
return meter->CreateDoubleObservableCounter(kMetricCpuTime, descrMetricCpuTime,
unitMetricCpuTime);
OPENTELEMETRY_SUPPRESS_DEPRECATED_END
}

/**
Expand All @@ -117,30 +133,38 @@ OPENTELEMETRY_DEPRECATED static constexpr const char *unitMetricCpuUtilization =
OPENTELEMETRY_DEPRECATED static inline nostd::unique_ptr<metrics::Gauge<int64_t>>
CreateSyncInt64MetricCpuUtilization(metrics::Meter *meter)
{
OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN
return meter->CreateInt64Gauge(kMetricCpuUtilization, descrMetricCpuUtilization,
unitMetricCpuUtilization);
OPENTELEMETRY_SUPPRESS_DEPRECATED_END
}

OPENTELEMETRY_DEPRECATED static inline nostd::unique_ptr<metrics::Gauge<double>>
CreateSyncDoubleMetricCpuUtilization(metrics::Meter *meter)
{
OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN
return meter->CreateDoubleGauge(kMetricCpuUtilization, descrMetricCpuUtilization,
unitMetricCpuUtilization);
OPENTELEMETRY_SUPPRESS_DEPRECATED_END
}
#endif /* OPENTELEMETRY_ABI_VERSION_NO */

OPENTELEMETRY_DEPRECATED static inline nostd::shared_ptr<metrics::ObservableInstrument>
CreateAsyncInt64MetricCpuUtilization(metrics::Meter *meter)
{
OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN
return meter->CreateInt64ObservableGauge(kMetricCpuUtilization, descrMetricCpuUtilization,
unitMetricCpuUtilization);
OPENTELEMETRY_SUPPRESS_DEPRECATED_END
}

OPENTELEMETRY_DEPRECATED static inline nostd::shared_ptr<metrics::ObservableInstrument>
CreateAsyncDoubleMetricCpuUtilization(metrics::Meter *meter)
{
OPENTELEMETRY_SUPPRESS_DEPRECATED_BEGIN
return meter->CreateDoubleObservableGauge(kMetricCpuUtilization, descrMetricCpuUtilization,
unitMetricCpuUtilization);
OPENTELEMETRY_SUPPRESS_DEPRECATED_END
}

} // namespace cpu
Expand Down
Loading
Loading