32位进程无法访问azure应用程序日志上64位进程的模块

0vvn1miw  于 2021-06-24  发布在  Kudu
关注(0)|答案(0)|浏览(270)

我们正在32位azure应用程序服务上运行asp.net 4.7.2站点。该站点使用visual studio 2017(15.9.9)部署,使用“任意cpu”配置文件。
当通过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上看到了非常高的cpu使用率(这可能与此相关,也可能与此无关)。
本地生成/运行不会报告任何与64位进程相关的内容。
这是我们网站的问题,还是平台的问题?如果这是我们的问题,我们如何剔除64位流氓代码?或者,我们只是切换到一个64位的进程并完成它吗?
我们的首选是继续在32位设置。我意识到这个错误以前就出现过,但总是(据我所知)与windows开发有关。提前谢谢!

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题