SSRS报表服务器重启后报HTTP 503错误求助
SSRS报表服务器重启后HTTP 503错误排查与解决
我们使用SSRS报表服务器发布财务报表,此前运行正常。服务器因安全更新重启后,出现HTTP Error 503. The service is unavailable错误,且Report Server配置工具加载异常缓慢。
报错日志
RSHostingService.log
INFO|4|Launching Process : Management Service INFO|4|Starting Process: C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\Management\RSManagement.exe WARN|12|Child Process [Management Service] Died. Check the log for further information INFO|12|Immediate restart of process Management Service
RSManagement.log
ERROR|1|Unhandled exception in Appdomain System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Net.HttpListenerException: The process cannot access the file because it is being used by another process at System.Net.HttpListener.AddAllPrefixes() at System.Net.HttpListener.Start() at Microsoft.Owin.Host.HttpListener.OwinHttpListener.Start(HttpListener listener, Func2 appFunc, IList1 addresses, IDictionary2 capabilities, Func2 loggerFactory) at Microsoft.Owin.Host.HttpListener.OwinServerFactory.Create(Func2 app, IDictionary2 properties) End of inner exception stack trace --- at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) at Microsoft.Owin.Hosting.ServerFactory.ServerFactoryAdapter.Create(IAppBuilder builder) at Microsoft.Owin.Hosting.Engine.HostingEngine.Start(StartContext context) at Microsoft.BIServer.Management.WebHost.Program.Main(), Exception RSManagement.exe: ERROR|1|Report server dump occurred: System.Reflection.TargetInvocationException at at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) at Microsoft.Owin.Hosting.ServerFactory.ServerFactoryAdapter.Create(IAppBuilder builder) at Microsoft.Owin.Hosting.Engine.HostingEngine.Start(StartContext context) at Microsoft.BIServer.Management.WebHost.Program.Main()
事件日志1
Application: RSManagement.exe Framework Version: v4.0.30319 Description: The process was terminated due to an unhandled exception. Exception Info: System.Net.HttpListenerException at System.Net.HttpListener.AddAllPrefixes() at System.Net.HttpListener.Start() at Microsoft.Owin.Host.HttpListener.OwinHttpListener.Start(System.Net.HttpListener, System.Func2<System.Collections.Generic.IDictionary2<System.String,System.Object>,System.Threading.Tasks.Task>, System.Collections.Generic.IList1<System.Collections.Generic.IDictionary2<System.String,System.Object>>, System.Collections.Generic.IDictionary2<System.String,System.Object>, System.Func2<System.String,System.Func`6<System.Diagnostics.TraceEventType,Int32,System.Object,System.Exception,System.Func3<System.Object,System.Exception,System.String>,Boolean>>) at Microsoft.Owin.Host.HttpListener.OwinServerFactory.Create(System.Func2<System.Collections.Generic.IDictionary2<System.String,System.Object>,System.Threading.Tasks.Task>, System.Collections.Generic.IDictionary`2<System.String,System.Object>) Exception Info: System.Reflection.TargetInvocationException at System.RuntimeMethodHandle.InvokeMethod(System.Object, System.Object[], System.Signature, Boolean) at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(System.Object, System.Object[], System.Object[]) at System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo) at Microsoft.Owin.Hosting.ServerFactory.ServerFactoryAdapter.Create(Owin.IAppBuilder) at Microsoft.Owin.Hosting.Engine.HostingEngine.Start(Microsoft.Owin.Hosting.Engine.StartContext) at Microsoft.BIServer.Management.WebHost.Program.Main()
事件日志2
Faulting application name: RSManagement.exe, version: 15.0.1102.1002, time stamp: 0x63055c58 Faulting module name: KERNELBASE.dll, version: 10.0.17763.3887, time stamp: 0x3e07c6b6 Exception code: 0xe0434352 Fault offset: 0x00000000000349b9 Faulting process id: 0x3b94 Faulting application start time: 0x01d92b0c60e4aa6c Faulting application path: C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\Management\RSManagement.exe Faulting module path: C:\Windows\System32\KERNELBASE.dll Report Id: 4b258278-3fbe-4e6c-bbc5-333482c6ba63 Faulting package full name: Faulting package-relative application ID:
手动执行RSManagement.exe日志
INFO|1|File Logger created: C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\Management\RSManagement_2023_01_18_08_20_54.log - level Info, will roll at 32 Mb, process id 14868 INFO|1|No flag is configured for the Dumper. Using Default settings. INFO|1|Do not dump on: ERROR|1|Unhandled exception in Appdomain System.Collections.Generic.KeyNotFoundException: Missing Configuration [listenerUrl] at Microsoft.BIServer.HostingEnvironment.StaticConfig.GetOrException(String key) at Microsoft.BIServer.Management.WebHost.Program.Main(), Exception RSManagement.exe: ERROR|1|Exception thrown while reading configuration: System.Collections.Generic.KeyNotFoundException: Missing Configuration [rsConfigFilePath] at Microsoft.BIServer.HostingEnvironment.StaticConfig.GetOrException(String key) at Microsoft.BIServer.Configuration.ConfigReader.get_Current()System.Collections.Generic.KeyNotFoundException: Missing Configuration [rsConfigFilePath] at Microsoft.BIServer.HostingEnvironment.StaticConfig.GetOrException(String key) at Microsoft.BIServer.Configuration.ConfigReader.get_Current() INFO|1|Logger shutting down
已尝试操作
- 多次重启Reporting Server服务,无效
- 完全卸载并重装SSRS,问题依旧
- 同一服务器上Power BI Report Server运行正常
解决方案
1. 排查端口占用,解决HTTPListener冲突
从日志System.Net.HttpListenerException: The process cannot access the file because it is being used by another process可知,SSRS管理服务端口被占用:
- 打开命令提示符,执行
netsh http show urlacl,查看SSRS配置的URL前缀(如http://+:80/ReportServer)的占用情况 - 执行
netstat -ano | findstr :<端口号>,找到占用端口的进程ID(PID),通过任务管理器结束该进程 - 若端口被Power BI Report Server占用,修改其中一个服务的端口:
- 打开Report Server配置管理器,进入Web服务URL,修改TCP端口后点击应用
- 重启SSRS服务
2. 修复配置文件缺失问题
手动执行RSManagement.exe时提示配置项缺失,说明配置加载异常:
- 检查
C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\Management目录下是否存在RSManagement.exe.config文件 - 若文件缺失,从正常SSRS服务器复制同名配置文件,或通过Report Server配置管理器重新生成配置:
- 打开配置管理器,连接报表服务器,依次检查服务账户、Web服务URL、数据库等配置项并重新保存
- 赋予SSRS服务账户对
C:\Program Files\Microsoft SQL Server Reporting Services\SSRS目录的完全控制权限
3. 修复.NET Framework运行环境
事件日志显示异常关联KERNELBASE.dll和.NET Framework,安全更新可能导致环境损坏:
- 打开控制面板程序和功能,卸载所有.NET Framework 4.x更新,重新安装最新版.NET Framework 4.8
- 执行
dotnet --repair命令修复.NET运行环境 - 重启服务器后重新启动SSRS服务
4. 分离SSRS与Power BI Report Server实例
若以上操作无效,考虑两个服务实例冲突:
- 先卸载Power BI Report Server,重启服务器后重装SSRS,确认正常运行后再重装Power BI Report Server,安装时选择不同的实例名称和端口
- 确保两个服务使用不同的服务账户,避免权限冲突
内容的提问来源于stack exchange,提问作者LiquidHibana
相关产品推荐
相关产品推荐

