Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-67044

Create build metrics CLI interface and generic output

    • Type: Icon: New Feature New Feature
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 6.1.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Fully Compatible
    • Dev Platform 2022-06-27

      The command line interface has two options. Implement the add options and generate an output json file with just the meta data present:

       

       --build-metrics=[filepath]
      Enables build metrics gathering and sets the desired output location. Default output location is build_metrics.json. Using a dash character (‘-’) will output to stdout.
      
      

       
      The build metrics will output a final json data set. The data set will include sections described below. The meta data for the json data will be in this format for tracking this particular set of data. Any reference to type <datetime timestamp> is UTC nanoseconds since epoch.

      The JSON format will be documented with the jsonschema python module and a validation check will be done in effort to make sure modifications to the format maintain documentation in the schema. A bad validation should fail the evergreen task but still report the data.

      The metrics level can be functionally ignored for now. But the output should generate the generic meta data:

      {
       evg_id: <str>,
       variant: <str>,
       scons_command: <str>,
       start_time: <datetime timestamp>,
       end_time: <datetime timestamp>,
      }
      

      For local builds, the evg_id and variant fields should just be "UNKNOWN".

      This should be tested and verified in stdout in evergreen patch build using the parameters UI to a compile option.

            Assignee:
            daniel.moody@mongodb.com Daniel Moody
            Reporter:
            daniel.moody@mongodb.com Daniel Moody
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: