报表服务器 HTTP 日志

报表服务器 HTTP 日志记录报表服务器所处理的所有 HTTP 请求和响应。 由于请求溢出和超时错误不会到达报表服务器,因此这些错误不会记录在日志文件中。

默认情况下,不启用 HTTP 日志记录。 若要在安装中使用此功能,必须修改 ReportingServicesService.exe 配置文件。

查看日志信息

该日志为 ASCII 文本文件。 可以使用任何文本编辑器查看该文件。 报表服务器 HTTP 日志文件等同于 IIS 中的 W3C 扩展日志文件,并且使用与其类似的字段,因此可以使用现有的 IIS 日志文件查看器来读取报表服务器 HTTP 日志文件。 下表提供有关 HTTP 日志文件的其他信息:

日志文件信息 说明
文件名 默认情况下,文件名称为 ReportServerService_HTTP_\<timestamp>.log。 修改 ReportingServicesService.exe.config 文件中的 HttpTraceFileName 属性即可自定义文件名称的前缀。 时间戳基于协调世界时 (UTC)。
文件位置 该文件位于 \Microsoft SQL Server\<SQL Server Instance>\Reporting Services\LogFiles
文件格式 该文件是 EN-US 格式。 该文件是 ASCII 文本文件。
创建和保留文件 当您在配置文件中启用了日志、重新启动服务以及报表服务器处理 HTTP 请求时,会创建 HTTP 日志。 如果配置了相应设置但没有看到日志文件,请打开报表或启动报表服务器应用程序(如 Web 门户)。 此操作将生成用于创建文件的 HTTP 请求。

在各服务重启并且随后发生对报表服务器的 HTTP 请求时,会创建日志文件的新实例。

默认情况下,跟踪日志大小限制为 32 MB,并在 14 天后删除。

报表服务器 HTTP 日志的配置设置

若要配置报表服务器 HTTP 日志,请使用记事本来修改 ReportingServicesService.exe.config 文件。 此配置文件位于 \Program Files\Microsoft SQL Server\MSSQL.n\Reporting Services\ReportServer\Bin 文件夹。

若要启用 HTTP 服务器,必须将 http:4 添加到 ReportingServicesService.exe 文件的 RStrace 部分。 所有其他 HTTP 日志文件项都是可选的。 下面的示例包括所有设置,因此可以将整个内容都粘贴到 RStrace 部分,然后删除不需要的设置。

   <RStrace>  
         <add name="FileName" value="ReportServerService_" />  
         <add name="FileSizeLimitMb" value="32" />  
         <add name="KeepFilesForDays" value="14" />  
         <add name="Prefix" value="tid, time" />  
         <add name="TraceListeners" value="debugwindow, file" />  
         <add name="TraceFileMode" value="unique" />  
         <add name="HttpTraceFileName" value="ReportServerService_HTTP_" />  
         <add name="HttpTraceSwitches" value="date,time,clientip,username,serverip,serverport,host,method,uristem,uriquery,protocolstatus,bytesreceived,timetaken,protocolversion,useragent,cookiereceived,cookiesent,referrer" />  
         <add name="Components" value="all:3,http:4" />  
   </RStrace>  

日志文件字段

下表对在日志中可用的字段进行了说明: 该字段列表是可配置的;您可以通过 HTTPTraceSwitches 配置设置来指定要包括哪些字段。 如果不指定 HTTPTraceSwitches,则“默认”列会指定日志文件是否自动包含某个字段。

字段 描述 默认
HttpTraceFileName 此值是可选的。 默认值为 ReportServerServiceHTTP_。 如果要使用不同的文件命名约定,可以指定不同的值。 例如,如果要将日志文件保存到中心位置,可以选择包含服务器名称。
HTTPTraceSwitches 此值是可选的。 如果指定该字段,则可以逗号分隔的格式配置要在日志文件中使用的字段。
日期 活动发生的日期。
时间 活动发生的时间。
ClientIp 访问报表服务器的客户端的 IP 地址。
UserName 访问报表服务器的用户的名称。
ServerIp 用于连接的 IP 地址。
ServerPort 连接使用的端口号。
主机 主机标头的内容。
方法 从客户端调用的操作或 SOAP 方法。
UriStem 访问的资源。
UriQuery 用于访问资源的查询。
ProtocolStatus HTTP 状态代码。
BytesReceived 服务器接收的字节数。
TimeTaken 从即时 HTTP.SYS 返回请求数据到服务器完成最后一次发送所用的时间(以毫秒计),不包括网络传输时间。
ProtocolVersion 客户端使用的协议版本。
UserAgent 客户端使用的浏览器类型。
CookieReceived 服务器接收的 cookie 的内容。
CookieSent 服务器发送的 cookie 的内容。
Referrer 客户端以前访问过的站点。