ASP.NET Core应用程序在Windows 10的IIS上不断崩溃

nhaq1z21  于 2023-10-19  发布在  .NET
关注(0)|答案(3)|浏览(288)

我们正在运行一个使用ASP CORE的Web应用程序。不幸的是,在检查事件查看器管理器时,我注意到应用程序的奇怪崩溃和重新启动。
错误日志如下所示:

Faulting application name: dotnet.exe, version: 1.1.0.1179, time stamp: 0x58224b03
Faulting module name: KERNELBASE.dll, version: 10.0.14393.1770, time stamp: 0x59bf2ba6
Exception code: 0xe0434352
Fault offset: 0x0000000000033c58
Faulting process id: 0x3ec4
Faulting application start time: 0x01d3885e41a55d69
Faulting application path: C:\Program Files\dotnet\dotnet.exe
Faulting module path: C:\Windows\System32\KERNELBASE.dll
Report Id: 20b0cbe4-423e-4adf-ba0f-848a38ea967b
Faulting package full name:
Faulting package-relative application ID:

我调查的是dotnet.exe进程的内存泄漏。但这似乎不是问题,因为私有字节参数没有上升。在这里我附上了20分钟的应用程序运行时间的图表。崩溃和重新启动是恒定的,每2分钟发生一次。

你有什么想法我可以调查我的问题吗?

ilmyapht

ilmyapht1#

好了,我找到了问题的根源。深入研究应用程序的标准输出日志,我注意到:

Unhandled Exception: System.UnauthorizedAccessException: Access to the path 'C:\...\wwwroot\...\...\XYZ-v.json' is denied.
at System.IO.Win32FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, FileStream parent)
at System.IO.Win32FileSystem.Open(String fullPath, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, FileStream parent)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
at XYZ.Utils.Dashboard.DashboardController.SaveToFile()
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.TimerQueueTimer.CallCallback()
at System.Threading.TimerQueueTimer.Fire()
at System.Threading.TimerQueue.FireNextTimers()

解决方案是将IIS用户的完全权限添加到此文件。
我真傻:)

b1payxdu

b1payxdu2#

您可以尝试在应用程序池上启用32位应用程序

js81xvg6

js81xvg63#

确保IIS应用程序池用户对应用程序的文件夹具有读取和执行权限。如果您的应用正在向文件系统写入内容,也要给予它写入权限。

相关问题