This moves the initialization of `seccheck.Points` out of package-level
`init` and instead moves it to an explicit `seccheck.Initialize()` function.
On AMD64, this saves about 614KiB of heap memory that would otherwise always
be live.
PiperOrigin-RevId: 514813332
When writing a trace point fails, the remote checker can retry with
configurable exponential backoff. After the number of retries is
exceeded, the point is dropped. The number of dropped events are
reported in the message header and also in `runsc trace list`
command.
Updates #4805
PiperOrigin-RevId: 456662539
As convenience allow a pod init config file to be used to create
a trace session. It's common to want to use the same configuration
for pod init and trace create, but the config file formats are
different. This change allows both formats to be used with
`runsc trace create`.
Updates #4805
PiperOrigin-RevId: 454075022
`runsc trace procfs` should dump a lot of relevant procfs information about
all the processes in the container. Falco will consume this.
For now the only procfs entry that the procfs dump returns is /proc/[pid]/exe.
Will incrementally add support for the remaining in separate changes.
Updates #4805
PiperOrigin-RevId: 449783478
The trace commands allows a user to manipulate trace sessions.
`runsc trace create <name> --config <file>` => creates a new trace session
`runsc trace delete <name>` => deletes an existing trace session
`runsc trace list` => lists all running trace sessions
`runsc trace metadata` => lists all point with their respective optional and
context fields
This allows trace sessions to be created/deleted on a running sandbox. Note
that the system currently only allows a single trace session to exist, named
'Default'. Attempts to manipulate other sessions will error out.
Updates #4805
PiperOrigin-RevId: 447815153