我有一个不断使用的asmx服务,但是它向用户随机返回500错误。没有返回错误数据,只有500。iis日志中没有任何有趣的内容,但是我发现通过查看事件查看器未处理异常。关于何时抛出异常,没有任何共通性,它可以每10分钟一次,也可以每5小时一次,并且可以在服务上的任何方法上发生。引发错误,然后该服务继续正常进行下一次调用。
这是事件日志,其中删除了某些服务名称等。
asmx服务不是我的服务,因此我无法以更现代的方式重写它,因此请不要将此作为解决方法。
<System>
<Provider Name="ASP.NET 4.0.30319.0" />
<EventID Qualifiers="32768">1309</EventID>
<Level>3</Level>
<Task>3</Task>
<Keywords>0x80000000000000</Keywords>
<TimeCreated SystemTime="2020-03-26T09:34:32.000000000Z" />
<EventRecordID>3460784</EventRecordID>
<Channel>Application</Channel>
<Computer>#####</Computer>
<Security />
</System>
<EventData>
<Data>3005</Data>
<Data>An unhandled exception has occurred.</Data>
<Data>3/26/2020 5:34:27 AM</Data>
<Data>3/26/2020 9:34:27 AM</Data>
<Data>353f04cafe3f4161824279e3093e4c99</Data>
<Data>19</Data>
<Data>1</Data>
<Data>0</Data>
<Data>/LM/W3SVC/1/ROOT-1-132296888229654534</Data>
<Data>Full</Data>
<Data>/</Data>
<Data>#####</Data>
<Data>#####</Data>
<Data />
<Data>10468</Data>
<Data>w3wp.exe</Data>
<Data>IIS APPPOOL\#####</Data>
<Data>HttpUnhandledException</Data>
<Data>Exception of type 'system.web.HttpUnhandledException' was thrown. at system.web.UI.Page.HandleError(Exception e) at system.web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint) at system.web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint) at system.web.UI.Page.ProcessRequest() at system.web.UI.Page.ProcessRequest(HttpContext context) at ASP.defaultwsdlhelpgenerator_aspx.ProcessRequest(HttpContext context) in c:\Windows\microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\f29e79a7\3cfe1b87\App_Web_defaultwsdlhelpgenerator.aspx.cdcab7d2.ptsha9ve.0.cs:line 0 at system.web.Services.Protocols.DocumentationServerProtocol.WriteReturns(Object[] returnValues,Stream outputStream) Object reference not set to an instance of an object. at system.xml.Schema.Preprocessor.BuildSchemaList(XmlSchema schema) at system.xml.Schema.Preprocessor.Execute(XmlSchema schema,String targetNamespace,Boolean loadExternals) at system.xml.Schema.XmlSchemaSet.PreprocessSchema(XmlSchema& schema,String targetNamespace) at system.xml.Schema.XmlSchemaSet.Add(String targetNamespace,XmlSchema schema) at system.xml.Schema.XmlSchemaSet.Add(XmlSchema schema) at system.xml.Serialization.XmlSchemas.Compile(ValidationEventHandler handler,Boolean fullCompile) at system.web.Services.Description.SchemaCompiler.Compile(XmlSchemas schemas) at system.web.Services.Description.WebServicesInteroperability.AnalyzeDescription(ServiceDescriptionCollection descriptions,BasicProfileViolationCollection violations) at system.web.Services.Description.WebServicesInteroperability.CheckConformance(WsiProfiles claims,ServiceDescriptionCollection descriptions,BasicProfileViolationCollection violations) at ASP.defaultwsdlhelpgenerator_aspx.Page_Load(Object sender,EventArgs e) in c:\Windows\microsoft.NET\Framework64\v4.0.30319\Config\DefaultWsdlHelpGenerator.aspx:line 1439 at system.web.UI.Control.OnLoad(EventArgs e) at system.web.UI.Control.LoadRecursive() at system.web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)</Data>
<Data>#####</Data>
<Data>#####.asmx</Data>
<Data>::1</Data>
<Data />
<Data>False</Data>
<Data />
<Data>IIS APPPOOL\#####</Data>
<Data>12</Data>
<Data>IIS APPPOOL\#####</Data>
<Data>False</Data>
<Data>at system.web.UI.Page.HandleError(Exception e) at system.web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint,Stream outputStream)</Data>
</EventData>
</Event>```
Any ideas as to what is causing this would be greatly appreciated.