-
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, Dev Platform 2022-07-25
All files built will be recorded by name, type and size. Name will be the platform and variant independent path (without the ixes or variant dir, e.g. build/opt/mongo/db/libtest.so -> mongo/db/test ) similar to how SCons internally uniquely identifies nodes. The “type” will be a set of known classifiers, First coming from scons builder types if possible or otherwise something reasonable. For example such a list would include “Object”, “Library”, “Program”, “text”, “json” etc. If the type cannot be discerned, the term “unknown” will be used. Generally the extension will be used to discern the type of file, but parsing the file for other clues could also be an option in some cases. Object, Program, and Library types can have the elf data parsed on linux for additional information, otherwise the bin_metrics field will be empty. The bloaty tool can output csv for all the sections and be parsed to discover all the information needed. Some of the fields (like debug) will be the summation of similar fields (ex. .debug_info, .debug_str, .debug_*, etc).
Json Format: { artifact_metrics: { total_artifiact_size: <long>(1), num_artifacts: <long>(1), artifacts:[{ array_index: <int>(1), name: <str>(1), type: <str>(1), size: <long>(1), bin_metrics: { text_size: <long>(2), data_size: <long>(2), rodata_size: <long>(2), bss_size: <long>(2), debug_size: <long>(2), symtab_len: <long>(2), dyntab_len: <long>(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-67060 Create metrics evergreen task
- Closed