32-разрядные процессы не могут получить доступ к модулям 64-разрядных процессов в журналах приложений Azure. - PullRequest
0 голосов
/ 15 марта 2019

Мы работаем над сайтом ASP.NET 4.7.2 в 32-битной службе приложений Azure. Сайт разворачивается с использованием Visual Studio 2017 (15.9.9) с использованием профиля «Любой процессор».

При использовании потока журналов приложений через интерфейс Azure мы видим множество ошибок, которые подразумевают наличие 64-битных модулей, но к которым невозможно получить доступ.

Вот пример ошибок:

2019-03-14T21:04:19      Error occurred, type: error, text: A 32 bit processes cannot access modules of a 64 bit process., stackTrace:    at System.Diagnostics.NtProcessManager.GetModuleInfos(Int32 processId, Boolean firstModuleOnly)
   at System.Diagnostics.ProcessManager.GetModuleInfos(Int32 processId)
   at System.Diagnostics.Process.get_Modules()
   at Kudu.Services.Performance.ProcessController.<>c__DisplayClass23_0.<GetProcessInfo>b__2() in C:\Kudu Files\Private\src\master\Kudu.Services\Diagnostics\ProcessController.cs:line 446
   at Kudu.Services.Performance.ProcessController.SafeGetValue[T](Func`1 func, T defaultValue) in C:\Kudu Files\Private\src\master\Kudu.Services\Diagnostics\ProcessController.cs:line 531
2019-03-14T21:04:19      Error occurred, type: error, text: A 32 bit processes cannot access modules of a 64 bit process., stackTrace:    at System.Diagnostics.NtProcessManager.GetModuleInfos(Int32 processId, Boolean firstModuleOnly)
   at System.Diagnostics.NtProcessManager.GetFirstModuleInfo(Int32 processId)
   at System.Diagnostics.Process.get_MainModule()
   at Kudu.Services.Performance.ProcessController.<>c__DisplayClass23_0.<GetProcessInfo>b__3() in C:\Kudu Files\Private\src\master\Kudu.Services\Diagnostics\ProcessController.cs:line 447
   at Kudu.Services.Performance.ProcessController.SafeGetValue[T](Func`1 func, T defaultValue) in C:\Kudu Files\Private\src\master\Kudu.Services\Diagnostics\ProcessController.cs:line 531
2019-03-14T21:04:19      Error occurred, type: error, text: D:\local\LocalAppData\SnapshotUploader\SnapshotUploader.exe, stackTrace:    at System.Diagnostics.FileVersionInfo.GetVersionInfo(String fileName)
   at System.Diagnostics.ProcessModule.get_FileVersionInfo()
   at Kudu.Services.Performance.ProcessController.GetProcessModuleInfo(ProcessModule module, String href, Boolean details) in C:\Kudu Files\Private\src\master\Kudu.Services\Diagnostics\ProcessController.cs:line 401
   at Kudu.Services.Performance.ProcessController.GetModules(Process process, String href) in C:\Kudu Files\Private\src\master\Kudu.Services\Diagnostics\ProcessController.cs:line 345
   at Kudu.Services.Performance.ProcessController.<>c__DisplayClass23_0.<GetProcessInfo>b__22() in C:\Kudu Files\Private\src\master\Kudu.Services\Diagnostics\ProcessController.cs:line 472
   at Kudu.Services.Performance.ProcessController.SafeGetValue[T](Func`1 func, T defaultValue) in C:\Kudu Files\Private\src\master\Kudu.Services\Diagnostics\ProcessController.cs:line 531

Мы не сталкиваемся с какими-либо локальными проблемами, но наблюдаем чрезвычайно высокую загрузку ЦП в Azure (которая может быть или не быть связана).

Сборка / запуск локально ничего не сообщает о 64-битных процессах.

Это проблема с нашим сайтом или с платформой? Если с нами проблема, как мы можем отсеять мошеннический 64-битный код? Или мы просто перейдем на 64-битный процесс и покончим с этим?

Нашим предпочтением будет продолжение в 32-битной установке. Я понимаю, что эта ошибка возникала на SO раньше, но всегда (насколько я вижу) по отношению к Windows dev. Заранее спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...