6

I'm trying to diagnose an issue where a complicated process does not run inside of my Windows Core container. I really need to figure out why it is failing. If this was a VM, I would just pop up the procmon GUI and easily diagnose what files it's looking for but aren't there, but in docker, how can I achieve this?

2 Answers 2

3

Process Monitor can be run without GUI to a log file.

Use the parameter backingfile, and do not forget on first usage to also include the accepteula parameter.

You may use the Docker parameter of -v (-volume) to share a host folder, where you may store the Process Monitor release files and the resulting log file.

6
  • 1
    I marked your answer as correct because is answer on my question. But it seems not work in the docker for windows. If anyone come across this post, look here. I still have not found a solution to the problem. Commented Jan 31, 2018 at 10:35
  • 1
    Another post says it might work for containers using Hyper-V isolation. You could also try to add the switches /Quiet /Minimized.
    – harrymc
    Commented Jan 31, 2018 at 11:16
  • I did this: procmon.exe /AcceptEula /Quiet /Minimized /BackingFile c:\temp\log.pml Commented Jan 31, 2018 at 11:23
  • I saw the post about Hyper-V. I don't know for sure if it using Hyper-V but I'm pretty sure that it has a separate kernel. Thanks anyway and if you will find something I'd love to know. Commented Jan 31, 2018 at 11:24
  • 1
    It should be using Hyper-V by default, unless you changed it by right-click on the docker icon and then on "Switch to Windows containers". You may also ask on the sysinternals forums.
    – harrymc
    Commented Jan 31, 2018 at 11:58
1

procmon doesn't work on servercore Docker image. You should simply run it on the Host and it will be able to see what you need.

2

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .