class CollectJsonStats
Defined at line 71 of file fidling/gen/sdk/fidl/fuchsia.memory.inspection/fuchsia.memory.inspection/cpp/fidl/fuchsia.memory.inspection/cpp/markers.h
Writes to `socket` a JSON capture of the memory usage and the memory
bucket definition, as a well-formed UTF-8 string.
The socket is closed by the server after all the data is written into
it.
TODO(https://fxbug.dev/42073090): Document the schema of the JSON.
Sample output:
{"Capture":
{
"Time":28477260758625,
"Kernel":{
"total":1610612736,
"free":170565632,
"wired":67395584,
"total_heap":30904320,
"free_heap":1873728,
"vmo":1276194816,
"mmu":65294336,
"ipc":196608,
"other":61440
},
"Processes":[
["koid","name","vmos"],
[47325,"fonts.cm",[47353, ...]],
...
],
"VmoNames":["scudo:primary", ...],
"Vmos":[
["koid","name","parent_koid","committed_bytes","allocated_bytes"],
[47440,38,47437,4096,4096],
...
]
}
"Buckets":
[
{
"event_code": 29,
"name": "BlobfsInactive",
"process": "blobfs\\.cm",
"vmo": "inactive-blob-.*"
},
...
]
}
For size reasons:
- Processes and Vmos have an initial entry that contains the names of the the fields in
the rest of the entries.
- The names of the VMOs are an index into the VMONames array.
Public Members
static const bool kHasClientToServer
static const bool kHasClientToServerBody
static const bool kHasServerToClient
static const bool kHasServerToClientBody
static const bool kHasNonEmptyUserFacingResponse
static const bool kHasDomainError
static const bool kHasFrameworkError
static const uint64_t kOrdinal