示例:ReportViewer 的 Web 日志分析器

Download sample

Web 日志分析器示例是一个 Windows 窗体应用程序,用于分析 Web 服务器 [如 Microsoft Internet Information Server (IIS)] 创建的日志文件,包含显示有关页点击次数、服务器活动和其他网站推荐的统计信息的报表。

Web 日志分析器具有允许配置分析中包含文件的功能。您可以选择 Web 服务器生成的日志文件并筛选出特定的文件类型。

可以在 Visual Basic 中获得此示例。若要将所有示例文件都复制到计算机上,请单击页面顶部的**“磁盘”按钮。若要查看单个文件,请选择文件名并单击“查看”**按钮。并非所有示例文件都可以直接从此页进行查看。位于文件夹中的示例文件不显示在列表中。

本主题解释如何运行和修改示例,还介绍用于修改报告中的表的可选指令。表由多个部分组成。每个部分都有自己的属性和操作(例如,若要添加列,则必须选择相邻的列)。若要了解有关表的更多信息,请参见添加表数据区域(Visual Studio 报表设计器)。有关其他示例和开发人员演练的更多信息,请参见示例和演练

Note注意

在打开“MainForm”.vb 之前,请务必先生成应用程序。

运行示例

  1. 在 Visual Studio 2008 中打开 WebLogAnalyzer.sln。

  2. F5 键编译并运行示例。应用程序启动后,将分析项目中包含的示例日志文件,并以表和图表的形式显示结果。您可以使用计算机中的不同日志文件来查看实际数据。

  3. 在 Web 日志分析器的**“文件”菜单中选择“打开日志文件”**。默认情况下,Web 日志存储在 C:\Windows\System32\LogFiles\W3SVC1 目录下。

  4. 选择包含日志文件的文件夹,然后单击**“确定”**。应用程序将读取所选文件夹中的所有日志文件、分析数据并显示结果。

  5. (可选)您可以筛选出不想进行分析的文件类型(例如图像文件和样式表)。若要执行此操作,请转到**“视图”菜单,然后选择“忽略文件”。在该对话框中,键入要忽略的文件扩展名列表(用逗号分隔)。单击“确定”。若要刷新报表,请选择“文件”菜单上的“打开日志文件”**,从而重新打开日志文件。

    尝试 ReportViewer 工具栏上的选项以查看如何进行打印、搜索和页面导航。主报表包含用于导航到报表特定部分的文档结构图。可以通过 ReportViewer 工具栏打开文档结构图。

更改标题栏中显示的文本

  1. 在**“解决方案资源管理器”中,右击“MainForm.vb”,然后选择“视图设计器”**。

  2. 在**“属性”窗口中,确保从下拉列表中选择“MainForm”,然后找到并更改“文本”**属性的值。例如,将“Web 日志分析器”更改为“<公司名称> Web 日志分析器”,以自定义该文本。

  3. 按**“Enter”后,窗体的“文本”**属性即会发生更改。请注意,窗体的标题栏将显示新文本。

向图表添加三维效果

  1. 在**“解决方案资源管理器”中,双击“MainReport.rdlc”**以打开该报表。

  2. 右击该图表,然后选择**“属性”**。

  3. 在**“图表属性”对话框中,切换到“三维效果”**选项卡。

  4. 选择**“以三维效果显示图表”**。

  5. 使用滑块来旋转三维图表。

  6. 单击**“确定”**关闭对话框。

更改图表中的条形的颜色

  1. 在**“解决方案资源管理器”中,双击“MainReport.rdlc”**以打开该报表。

  2. 右击该图表,然后选择**“属性”**。

  3. 切换到**“数据”选项卡,然后单击“值”列表旁边的“编辑”**按钮。

  4. 在**“编辑图表值”对话框中,切换到“外观”**选项卡。

  5. 单击**“序列样式”按钮,以打开“样式属性”**对话框。

  6. 切换到**“填充”**选项卡,然后选择新的颜色。

更改所显示的最常用页的数目

  1. 在**“解决方案资源管理器”中,双击“MainReport.rdlc”**。

  2. 单击“最常用页”标题下的表。将显示该表的各种选择器。

  3. 右击详细信息行的行选择器,然后选择**“编辑组”**。

  4. 在**“详细信息分组”对话框中,选择“筛选器”选项卡。在第一个筛选器的“值”列中,输入要显示的行数。请注意,值必须以等号 (=**) 开头才能被解释为数字而不是文本字符串。

显示引用您的网站最频繁的外部站点

  1. 在解决方案资源管理器中,双击 LogFileEntry.vb

  2. 查找 LogFileEntry 类并添加 Referrer 属性:

    Public ReadOnly Property Referrer() As String
        Get
            Return m_referrer
        End Get
    End Property
    
  3. 在**“生成”菜单中,单击“生成 WebLogAnalyzer”**,以确保不会出错。

  4. 在**“解决方案资源管理器”中,展开“报表”文件夹,然后双击“MainReport.rdlc”**。

  5. 滚动到报表底部,然后向上拖动表体的下边缘以为新表留出空间。

  6. 将表从**“工具箱”**中拖动到报表上。

  7. 默认情况下,表有三列。您可以删除最后一列,因为该列不是必需的。右击最后一列的列标题,然后单击**“删除”**。

  8. 将列调整为适合数据的大小。可以通过拖动列边框来调整列的大小。缩短第二列的宽度,该列只需容纳一个数字。可以加宽第一列的宽度,以利用表的剩余空间。

  9. 从**“数据”菜单中选择“显示数据源”“数据源”**窗口将显示 LogFileEntry 类的公共属性。请注意,新添加的 Referrer 属性也会显示。

  10. 从**“数据源”**窗口中将 Referrer 属性拖动到表中第一列的详细信息行上(详细信息行为中间行)。请注意,页眉行将自动填充为默认列标题。

  11. 右击详细信息行的行选择器,然后选择**“编辑组”**。

  12. 在**“详细信息分组”对话框中,单击表中“组”**的第一行。从下拉列表中选择 =Fields!Referrer.Value

  13. 在**“详细信息分组”对话框中,切换到“筛选器”选项卡。在“表达式”列中,键入“=CountRows()”。在“运算符”列中,选择“Top N”。在“值”列中,键入“=10”,然后单击“确定”**关闭对话框。

  14. 在表的第二列的页眉行中键入 Referrals,在详细信息行中键入 =CountRows()

  15. 右击表选择器,然后选择**“属性”**。

  16. 在**“表属性”对话框中,切换到“排序”选项卡。在“表达式”列中,键入“=CountRows()”,然后在“方向”列中选择“降序”**。

  17. 也可以筛选出特定的外部站点,如您自己的站点。在**“表属性”对话框中,切换到“筛选器”选项卡。在“表达式”列中,键入“=Fields!Referrer.Value.StartsWith("http://mysite")”。(请将“http://mysite”替换为您的站点 URL。)在“运算符”列中,选择 =。在“值”**列中,键入 =false

  18. 也可以在**“属性”**窗口中指定标题行、详细信息行和表的字体、颜色和边框。

  19. 生成应用程序以查看所做更改。

要求

您必须安装带 Visual Basic 编辑器的 Microsoft Visual Studio 2008。

IIS 中的 Web 日志提供报表中使用的数据。示例中包含静态数据文件,以便可以运行该示例。若要从 Web 服务器使用日志文件,则必须具有对 IIS 实例的访问权限。

演示

源代码阐释了下列内容:

  1. 创建包含图表、表、文档结构图等的客户端报表定义 (.rdlc) 文件。

  2. 创建可在 Windows 窗体中运行报表的 ReportViewer 控件。

  3. 使用 ReportViewer 类的 ReportRefreshDrillthrough 方法。

  4. 使用 ReportViewer 类的 LocalReportDocumentMapCollapsed 属性。

  5. 使用 LocalReport 类的 DataSources

  6. 使用 Report 类的 GetDocumentMap 方法。