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

Add buildscripts/collect_resource_info.py script to collect system resource information in Evergreen

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 3.5.10
    • Affects Version/s: None
    • Component/s: Testing Infrastructure
    • Labels:
      None
    • Fully Compatible
    • TIG 2017-06-19, TIG 2017-07-10

      The gopsutil package has been integrated into the Evergreen agent (via grip) and system resource information about processes running on the machine are available by sending an HTTP GET request to localhost:2285/status. Since the data is not yet available through the Evergreen API, we should instead add a new background command/script to the etc/evergreen.yml project configuration file that periodically sends (e.g. every 5 seconds) an HTTP GET request to localhost:2285/status. The "ps_info" array in the Evergreen agent's response should be examined to determine the CPU, memory, I/O utilization of each individual process at/until the particular time instant the HTTP GET request was issued. The values extracted from the Evergreen agent's response should be written to a file as one line per process—including a timestamp—and uploaded to S3.

      Note: To avoid having the size of the file balloon with information about idle system processes, it may be useful to only include processes within resmoke.py's process subtree.

            Assignee:
            eddie.louie Eddie Louie
            Reporter:
            max.hirschhorn@mongodb.com Max Hirschhorn
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: