排查 Web Insight 问题
在 Web Insight 控制板中,您可以可视化您的应用程序使用情况并监控 NetScaler 提供的所有应用程序。使用 Web Insight,NetScaler 将 HTTP 和 SSL 事务数据发送到配置为 AppFlow 收集器的 NetScaler Console。AppFlow 是用于识别和收集网络基础设施中应用程序和事务数据的流导出标准。
本文档可帮助您排查常见的 Web Insight 部署问题。
无数据诊断
如果 Web Insight 未显示任何数据,请确保已为虚拟服务器启用 Web Insight。有关详细信息,请参阅管理许可并在虚拟服务器上启用分析。
如果 Web Insight 中没有数据,还会显示一个包含 无数据诊断 的通知。您可以单击以查看详细信息进行故障排除。
与 Web Insight 控制板报告相关的问题
如果 NetScaler Console Web Insight 控制板 (应用程序> Web Insight) 未能显示报告,问题可能属于以下情况之一:
配置问题
完成以下步骤以解决此问题:
-
确保在 NetScaler 实例中启用了 AppFlow 功能。有关详细信息,请参阅启用 AppFlow。
-
检查 NetScaler 中的 Web Insight 配置:
-
运行
show running | grep -i <appflow_policy>命令以检查策略上的 Web Insight 配置。确保绑定类型为REQUEST。例如:bind lb vserver afsanity -policy afp -priority 100 -type REQUEST -
运行
show appflow action命令以检查操作上的 Web Insight 配置。确保启用了-webinsight选项 -
检查 LB/CS/CR 虚拟服务器中的
appflowlog参数,以及绑定的服务和服务组。确保在虚拟服务器以及绑定的服务和服务组中都启用了此参数。
-
NetScaler 与 NetScaler Console 之间的连接问题
完成以下步骤以解决此问题:
-
检查 NetScaler 中的 AppFlow 收集器状态。有关详细信息,请参阅如何检查 NetScaler 与 AppFlow 收集器之间的连接状态。
-
在 NetScaler GUI 上,检查 AppFlow 策略是否收到命中。运行命令
show appflow policy <policy_name>以检查 AppFlow 策略命中。您还可以导航到 GUI 中的 Settings > AppFlow > Policies(设置 > AppFlow > 策略)以检查 AppFlow 策略命中。 -
确保防火墙未阻止从 NetScaler 到 NetScaler Console 的 AppFlow 数据。
未从 NetScaler® 接收到 AppFlow 数据
完成以下步骤以解决此问题:
-
确保没有 AppFlow 配置和连接问题。有关详细信息,请参阅本主题中关于配置问题 和NetScaler 与 NetScaler Console 之间的连接问题 的解决方案部分。
-
在 NetScaler 上,在 shell 提示符下,运行
nsconmsg -g appflow_tmpl -d current命令并检查以下计数器:-
appflow_tmpl_v4_l7_clt2ns_complete -
appflow_tmpl_v4_l7_srvr2ns_complete -
appflow_tmpl_v46_ulfd_client_eot -
appflow_tmpl_v46_ulfd_server_eot
如果缺少任何计数器,请在 NetScaler 上进行跟踪。接下来,确认事务已完成且响应正从源服务器提供。如果事务已完成但缺少某些计数器,请联系支持团队。 -
许可证问题
出现此问题时,您要查看 Web Insight 报告的特定虚拟服务器的许可证在 Settings > Licensing & Analytics Configuration > Configure License 下显示为“否”。
完成以下步骤以解决此问题:
-
在 NetScaler 中,确保 AppFlow 策略命中数正在增加,并且实例正在将 AppFlow 记录发送到 NetScaler Console。
-
检查相应的虚拟服务器是否已获得许可。如果虚拟服务器未获得许可,NetScaler Console 将丢弃 AppFlow 记录。因此,Web Insight 报告不会显示。
观察点 ID 问题
出现此问题是因为观察点 ID 不唯一。
注意
观察点 ID 是导出 AppFlow 记录的 NetScaler 的标识符。默认情况下,NetScaler IP 是观察点 ID。
完成以下步骤以排查此问题:
-
在 NetScaler 中,确保 AppFlow 策略命中数正在增加,并且实例正在将 AppFlow 记录发送到 NetScaler Console。
-
检查相应的虚拟服务器是否已获得许可。
-
确保配置未从一个 NetScaler 复制到另一个。复制时,配置可能会导致导出器 ID 问题,从而导致 NetScaler Console 无法处理 AppFlow 记录。
-
登录到 NetScaler 并运行
unset appflow param -observationpointId命令。
AppFlow 参数缺失问题
出现此问题是因为 NetScaler Console 由于数据缺失而丢弃了 AppFlow 记录。
完成以下步骤以排查此问题:
-
确保在 NetScaler 中,AppFlow 策略命中数正在增加,并且实例正在将 AppFlow 记录发送到 NetScaler Console。
-
检查相应的虚拟服务器是否已获得许可。
-
确保配置未从一个 NetScaler 复制到另一个。复制时,配置可能会导致导出器 ID 问题,从而导致 NetScaler Console 无法处理 AppFlow 记录。
-
确保在 NetScaler 上启用了以下 AppFlow 参数:
-
HTTP method logging -
HTTP domain name logging -
HTTP URL logging -
HTTP host logging -
HTTP Content-Type header logging
-
使用计数器进行故障排除
检查以下 AppFlow 计数器,以查找任何 AppFlow 或 Web Insight 相关问题。
| 计数器 | 描述 |
|---|---|
appflow_tot_record_drop |
由于收集器无效而丢弃的 AppFlow 记录。通常发生在收集器配置更改,并且现有连接使用旧收集器配置时。 |
lstream_tot_trans_written |
此计数器必须针对每个要记录的事务递增。 |
lstream_sent |
此计数器针对每个发送的事务日志递增。 |