microsoft / dumpling

Source code for dumpling.web a web service for collecting and indexing mini dumps, core dumps and macho dumps, along with related files and diagnostic information
MIT License
8 stars 14 forks source link

ImportError: No module named psutil #33

Open danmoseley opened 6 years ago

danmoseley commented 6 years ago

OSX dumps fail on both OSX12 and OSX13:

2017-12-11 21:07:20,329: INFO: proc(54): run_and_log_output: Output: /Users/dotnet-bot/dotnetbuild/work/de4c4352-a7e5-442b-8594-bda4af6f7551/Work/788f33cf-7855-4704-b595-584097167a0e/Unzip/RunTests.sh: line 87: 82229 Segmentation fault: 11  (core dumped) $RUNTIME_PATH/dotnet xunit.console.netcore.exe System.ComponentModel.Composition.Tests.dll -xml testResults.xml -notrait Benchmark=true -notrait category=nonnetcoreapptests -notrait category=nonosxtests -notrait category=OuterLoop -notrait category=failing
2017-12-11 21:07:20,546: INFO: proc(54): run_and_log_output: Output: Traceback (most recent call last):
2017-12-11 21:07:20,546: INFO: proc(54): run_and_log_output: Output:   File "/Users/dotnet-bot/.dumpling/dumpling.py", line 33, in <module>
2017-12-11 21:07:20,546: INFO: proc(54): run_and_log_output: Output:     import psutil
2017-12-11 21:07:20,546: INFO: proc(54): run_and_log_output: Output: ImportError: No module named psutil

eg https://mc.dot.net/#/user/maryamariyan/pr~2Fjenkins~2Fdotnet~2Fcorefx~2Fmaster~2F/test~2Ffunctional~2Fcli~2F/12cbeed85897de05d63181974602cd977ea30966/workItem/System.ComponentModel.Composition.Tests/wilogs

Should dumpling install this or do we need to update images?

@Anipik @DrewScoggins

Anipik commented 6 years ago

On windows it is installed while setting up the machine. I am not sure about how we install the python dependencies on OsX but it should be there as we use the psutil in helix jobs

danmoseley commented 6 years ago

Borrow an OSX machine to see?

Anipik commented 6 years ago

OSX machine is not available on devtestlabs. from where I could borrow the machine ?

danmoseley commented 6 years ago

Ask someone on engineering. Ideally you should SSH into an actual machine in the pool. If not maybe there is a coworker you could walk over to.

DrewScoggins commented 6 years ago

This is something that we will need to fix at the image level. We need to ensure that this package is installed before we start executing the script because by that time it is too late to deal with this. I have added the engineering team alias here so that they can help us update these images.

CC @dotnet/dnceng

MattGal commented 6 years ago

On windows it is installed while setting up the machine. I am not sure about how we install the python dependencies on OsX but it should be there as we use the psutil in helix jobs

I think there may be some confusion here as there are some OSX machines which are not Helix clients and almost all Windows CI machines are currently not Helix Clients. Further, some systems may not have python libraries on the path for non-Helix execution scenarios.

DrewScoggins commented 6 years ago

This needs to happen for the images that we use for Jenkins. I believe that @mmitche should be able to help us here.

MattGal commented 6 years ago

@DrewScoggins it's an explicit non-goal to not have to modify Jenkins images. What's the objection to doing something like pip install psutil or python -m pip install psutil before doing other dumplingly stuff?

DrewScoggins commented 6 years ago

I have zero objection to that. I will just make that change in the dumpling target file in buildtools

MattGal commented 6 years ago

cool. Note if you have a big list you can also put them in a text file and do pip install -r textfilelist.txt