...
1syntax = "proto3";
2
3package envoy.admin.v2alpha;
4
5import "udpa/annotations/status.proto";
6
7option java_package = "io.envoyproxy.envoy.admin.v2alpha";
8option java_outer_classname = "MemoryProto";
9option java_multiple_files = true;
10option (udpa.annotations.file_status).package_version_status = FROZEN;
11
12// [#protodoc-title: Memory]
13
14// Proto representation of the internal memory consumption of an Envoy instance. These represent
15// values extracted from an internal TCMalloc instance. For more information, see the section of the
16// docs entitled ["Generic Tcmalloc Status"](https://gperftools.github.io/gperftools/tcmalloc.html).
17// [#next-free-field: 7]
18message Memory {
19 // The number of bytes allocated by the heap for Envoy. This is an alias for
20 // `generic.current_allocated_bytes`.
21 uint64 allocated = 1;
22
23 // The number of bytes reserved by the heap but not necessarily allocated. This is an alias for
24 // `generic.heap_size`.
25 uint64 heap_size = 2;
26
27 // The number of bytes in free, unmapped pages in the page heap. These bytes always count towards
28 // virtual memory usage, and depending on the OS, typically do not count towards physical memory
29 // usage. This is an alias for `tcmalloc.pageheap_unmapped_bytes`.
30 uint64 pageheap_unmapped = 3;
31
32 // The number of bytes in free, mapped pages in the page heap. These bytes always count towards
33 // virtual memory usage, and unless the underlying memory is swapped out by the OS, they also
34 // count towards physical memory usage. This is an alias for `tcmalloc.pageheap_free_bytes`.
35 uint64 pageheap_free = 4;
36
37 // The amount of memory used by the TCMalloc thread caches (for small objects). This is an alias
38 // for `tcmalloc.current_total_thread_cache_bytes`.
39 uint64 total_thread_cache = 5;
40
41 // The number of bytes of the physical memory usage by the allocator. This is an alias for
42 // `generic.total_physical_bytes`.
43 uint64 total_physical_bytes = 6;
44}
View as plain text