-
Type: New Feature
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Fully Compatible
-
Dev Platform 2022-06-27, Dev Platform 2022-07-11
For Command line actions, we can take over the SPAWN construction variable, which will call our own spawn function and then we can tailor the command and process output before returning back to scons.
For function actions we can duck-type the FunctionAction calls to execute from our own function.
Memory
For Linux we can use procfs and the process spawn pid.
For function actions we can use https://pypi.org/project/memory-profiler/
CPU
for now we will leave the cpu field empty.
Duration
From python, we can measure the wall clock time of the subprocess. I plan on using https://docs.python.org/3/library/timeit.html#timeit.default_timer
Json Format: Note: for the action field, either the function name or command line will be used. { build_tasks: [{ array_index: <int>(2), outputs: [<str>](2), inputs: [<str>](2), action: <str>(2), cpu_time: <float>(2), mem_usage: <long>(2), start_time: <datetime timestamp>(2), end_time: <datetime timestamp>(2) }] }
- has to be done after
-
SERVER-67044 Create build metrics CLI interface and generic output
- Closed
-
SERVER-67109 create build metrics json validator
- Closed
- has to be done before
-
SERVER-67052 Create per action CPU metrics for linux
- Closed