Details
-
Task
-
Status: Closed
-
Major - P3
-
Resolution: Fixed
-
None
-
None
-
Fully Compatible
-
TIG 2017-06-19, TIG 2017-07-10
Description
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.
Attachments
Issue Links
- depends on
-
EVG-9342 CollectProcessInfoWithChildren needs to recursively collect process info of all children descendents
-
- Resolved
-
- is related to
-
EVG-9391 On Windows curator stat process-tree --pid <> does not return complete info
-
- Resolved
-
- related to
-
SERVER-30285 The buildscripts/collect_resource_info.py script may exit early if it encounters a KeyError exception
-
- Closed
-
-
EVG-1784 update vendored logging package
-
- Resolved
-