db_metrics.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /*
  2. * Copyright The OpenTelemetry Authors
  3. * SPDX-License-Identifier: Apache-2.0
  4. */
  5. /*
  6. * DO NOT EDIT, this is an Auto-generated file from:
  7. * buildscripts/semantic-convention/templates/registry/semantic_metrics-h.j2
  8. */
  9. #pragma once
  10. #include "opentelemetry/common/macros.h"
  11. #include "opentelemetry/metrics/meter.h"
  12. #include "opentelemetry/version.h"
  13. OPENTELEMETRY_BEGIN_NAMESPACE
  14. namespace semconv
  15. {
  16. namespace db
  17. {
  18. /**
  19. Duration of database client operations.
  20. <p>
  21. Batch operations SHOULD be recorded as a single operation.
  22. <p>
  23. histogram
  24. */
  25. static constexpr const char *kMetricDbClientOperationDuration = "db.client.operation.duration";
  26. static constexpr const char *descrMetricDbClientOperationDuration =
  27. "Duration of database client operations.";
  28. static constexpr const char *unitMetricDbClientOperationDuration = "s";
  29. static inline nostd::unique_ptr<metrics::Histogram<uint64_t>>
  30. CreateSyncInt64MetricDbClientOperationDuration(metrics::Meter *meter)
  31. {
  32. return meter->CreateUInt64Histogram(kMetricDbClientOperationDuration,
  33. descrMetricDbClientOperationDuration,
  34. unitMetricDbClientOperationDuration);
  35. }
  36. static inline nostd::unique_ptr<metrics::Histogram<double>>
  37. CreateSyncDoubleMetricDbClientOperationDuration(metrics::Meter *meter)
  38. {
  39. return meter->CreateDoubleHistogram(kMetricDbClientOperationDuration,
  40. descrMetricDbClientOperationDuration,
  41. unitMetricDbClientOperationDuration);
  42. }
  43. } // namespace db
  44. } // namespace semconv
  45. OPENTELEMETRY_END_NAMESPACE