mutex_stats.proto 1.4 KB

12345678910111213141516171819202122232425262728293031323334
  1. syntax = "proto3";
  2. package envoy.admin.v3;
  3. import "udpa/annotations/status.proto";
  4. import "udpa/annotations/versioning.proto";
  5. option java_package = "io.envoyproxy.envoy.admin.v3";
  6. option java_outer_classname = "MutexStatsProto";
  7. option java_multiple_files = true;
  8. option go_package = "github.com/envoyproxy/go-control-plane/envoy/admin/v3;adminv3";
  9. option (udpa.annotations.file_status).package_version_status = ACTIVE;
  10. // [#protodoc-title: MutexStats]
  11. // Proto representation of the statistics collected upon absl::Mutex contention, if Envoy is run
  12. // under :option:`--enable-mutex-tracing`. For more information, see the `absl::Mutex`
  13. // [docs](https://abseil.io/about/design/mutex#extra-features).
  14. //
  15. // *NB*: The wait cycles below are measured by `absl::base_internal::CycleClock`, and may not
  16. // correspond to core clock frequency. For more information, see the `CycleClock`
  17. // [docs](https://github.com/abseil/abseil-cpp/blob/master/absl/base/internal/cycleclock.h).
  18. message MutexStats {
  19. option (udpa.annotations.versioning).previous_message_type = "envoy.admin.v2alpha.MutexStats";
  20. // The number of individual mutex contentions which have occurred since startup.
  21. uint64 num_contentions = 1;
  22. // The length of the current contention wait cycle.
  23. uint64 current_wait_cycles = 2;
  24. // The lifetime total of all contention wait cycles.
  25. uint64 lifetime_wait_cycles = 3;
  26. }