mutex_stats.proto 1.2 KB

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