解决HDX Insight问题
如果HDX Insight解决方案的功能没有达到预期,则可能是下列问题之一。请参阅相应章节中的检查列表以进行故障排除。
HDX Insight配置。
- Citrix ADC和Citrix ADM之间的连接。
- 在Citrix ADC中生成HDX/ICA流量的记录。
- Citrix ADM中记录的人口。
HDX Insight配置清单
确保Citrix ADC中已启用AppFlow特性。有关详细信息,请参见使演示applow.
在Citrix ADC运行配置中检查HDX Insight配置。
跑过
执行命令| grep -i
命令检查HDX Insight配置。请确保绑定类型为ICA REQUEST。例如;绑定vpn vserver afsanity -policy afp -priority 100 -type REQUEST
对于透明模式,绑定类型必须是ICA_REQ_DEFAULT。例如;
bind appflow global afp 100结束类型ICA_REQ_DEFAULT
对于单跳/接入网关或双跳部署,请确保HDX Insight AppFlow策略与HDX/ICA流量所在的VPN虚拟服务器绑定。
- 对于透明模式或LAN用户模式,请确保设置了ICA端口1494和2598。
- 查看
appflowlog
“接入网关”或“双跳”部署时,已启用“Citrix网关”或“VPN虚拟服务器”参数。有关详细信息,请参见为虚拟服务器启用AppFlow. - 在双跳Citrix ADC中检查“连接链接”是否启用。详情见,配置Citrix Gateway设备以导出数据.
- HAFailover后,如果HDX Insight的详细信息为Skip parsed,请检查ICA参数“enableSRonHAFailover”是否启用。有关详细信息,请参见Citrix ADC高可用性对的会话可靠性.
Citrix ADC和Citrix ADM检查表之间的连接性
检查Citrix ADC中的AppFlow采集器状态。有关详细信息,请参见如何查看Citrix ADC与AppFlow Collector的连接状态.
检查HDX Insight AppFlow策略命中。
运行以下命令
显示appflow policy
检查AppFlow策略命中情况。您还可以导航到系统> AppFlow >策略,以检查AppFlow策略命中情况。
验证任何防火墙阻止appflow端口4739或5557。
在Citrix ADC检查表中为HDX/ICA流量生成记录
运行以下命令tail -f /var/log/ns.log | grep -i "default ICA Message"
登录验证。您可以根据产生的日志信息进行故障处理。
日志:跳过解析ICA连接-此主机不支持HDX Insight
导致:不支持的Citrix虚拟应用和桌面版本
解决方案:将Citrix虚拟应用程序和桌面服务器升级到支持的版本。
日志:客户端类型收到0x53,不支持
导致:不支持的Citrix工作区应用程序版本
解决方案:升级Citrix Workspace应用到支持的版本。有关详细信息,请参见Citrix工作区应用.
日志:展开数据包的错误 - 跳过此流程的所有HDX处理
导致: ICA流量解压缩问题
解决方案:在建立新会议之前,此ICA会议没有任何报告。
日志:Invalid transition: NS_ICA_ST_FLOW_INIT/NS_ICA_EVT_INVALID -> ns_ica_st_init "
导致:解析ICA握手有问题
解决方案:在建立新会议之前,此特定ICA会议没有任何报告。
日志:缺失EUEM ICA RTT
导致:无法解析终端用户体验监控通道数据
解决方案:确保在Citrix虚拟应用程序和桌面服务器上启动最终用户体验监控服务。确保您使用的是Citrix Workspace应用程序的支持版本。
日志:无效的通道头
导致:无法识别通道报头
解决方案:在建立新会议之前,此特定ICA会议没有任何报告。
日志:跳过代码
如果看到跳过代码的下列值,则跳过解析Insight的详细信息。
跳过码0表示从Citrix ADC导出成功。
跳过代码 | 错误信息 | 导致的错误 |
---|---|---|
One hundred. | NS_ICA_ERR_NULL_FRAG | 处理ICA片段错误,可能导致内存条件 |
101 | NS_ICA_ERR_INVALID_HS_CMD | 收到无效的握手命令 |
102 | NS_ICA_ERR_REDUC_PARAM_CNT | 为V3扩展器初始化指定的参数无效 |
103 | NS_ICA_ERR_REDUC_INIT | 无法正确初始化V3扩展器 |
104 | NS_ICA_ERR_REDUC_PARAM_BYTES | 将编码器分配给频道的字节不足 |
105 | NS_ICA_ERR_INVALID_CHANNEL | 无效的ICA通道号 |
106 | NS_ICA_ERR_INVALID_DECODER | 为通道指定的解码器无效 |
107 | NS_ICA_ERR_INVALID_TW_PARAM | 在ThinWire通道上指定的参数计数无效 |
108 | NS_ICA_ERR_INVALID_TW_DECODER | 纤线通道的解码器无效 |
109 | NS_ICA_ERR_REDUC_NO_DECODER | 没有为通道定义解码器 |
110 | NS_ICA_ERR_REDUC_V3_EXPANDER | 通道数据扩容失败。处理步骤 |
111 | NS_ICA_ERR_REDUC_BYTES_V3_OOR | 扩展器错误:字节消耗超过可用字节 |
112 | NS_ICA_ERR_REDUC_BYTES_OOR | 错误:未压缩的数据溢出 |
113 | NS_ICA_ERR_REDUC_INVALID_CMD | 未定义的扩展器命令 |
114 | NS_ICA_ERR_CGP_FILL_HOLE | 处理拆分CGP帧时出错 |
115 | NS_ICA_ERR_MEM_NSB_ALLOC | NSB分配错误-由于低内存条件 |
116 | NS_ICA_ERR_MEM_REDUC_CTX_ALLOC | 扩展器上下文内存分配错误 |
117 | NS_ICA_ERR_ICA_OLD_SERVER | 旧服务器,不支持能力块 |
118 | ns_ica_err_pir_many_frag. | 数据包初始化请求碎片化,无法处理 |
119 | NS_ICA_ERR_INIT_ICA_CAPS | ICA能力初始化错误 |
120 | NS_ICA_ERR_NO_MSI_SUPPORT | 主机不支持MSI特性。XenApp版本低于6.5或XenDesktop版本低于5.0 |
121 | NS_ICA_ERR_CGP_INVALID_CMD | 遇到无效的CGP命令 |
122 | NS_ICA_ERR_INSUFFICENT_CHANNEL_BYTES | 通道上的字节不足 |
123 | NS_ICA_ERR_CHANNEL_DATA | EUEM、CONTROL或SEAMLESS通道上的数据不正确 |
124 | NS_ICA_ERR_INVALID_PURE_CMD | 在处理纯ICA通道数据时接收到无效命令 |
125 | NS_ICA_ERR_INVALID_PURE_LEN0 | 处理纯ICA通道数据时遇到无效长度 |
126 | ns_ica_err_invalid_pure_len. | 处理PURE ICA通道数据时遇到无效长度 |
127 | NS_ICA_ERR_INVALID_CLNT_DATA | 从客户端接收到的数据长度无效 |
128 | NS_ICA_ERR_MSI_GUID_SZ | MSI GUID大小错误 |
129 | NS_ICA_ERR_INVALID_CHANNEL_HEADER | 检测到无效的通道报头 |
130 | NS_ICA_ERR_CGP_PARSE_RECONNECT_ID | 重新连接的会话检索失败 |
131 | NS_ICA_ERR_DISABLE_SR_NON_NS_RECONNECT | 禁用SR错误 |
132. | ns_ica_err_reduc_not_v3. | 不支持的ICA减速器版本 |
133. | NS_ICA_ERR_HS_COMPRESSION_DISABLED | 压缩禁用,主机不支持 |
134. | NS_ICA_ERR_IDENT_PROTO | 无法识别ICA或CGP协议,看到不正确的接收器 |
135. | NS_ICA_ERR_INVALID_SIGNATURE | 错误的ICA签名或魔术字符串 |
136. | ns_ica_err_parse_raw. | 日志含义解析ICA握手报文时出错 |
137. | NS_ICA_ERR_INCOMPLETE_PKT | 在握手中收到的不完整数据包 |
138. | NS_ICA_ERR_ICAFRAME_TOO_LARGE | ICA帧太大,超过1,460字节 |
139. | NS_ICA_ERR_FORWARD | 转发ICA数据时出错 |
140. | NS_ICA_ERR_MAX_HOLES | 无法处理CGP命令,因为它被分割超出了支持的限制 |
141. | ns_ica_err_assemble_frame. | 无法正确组装ICA框架 |
142. | NS_ICA_ERR_UNSUPPORTED_RECEIVER_VERSION | 跳过此接收器(客户端)的ICA解析,因为它不在允许列表中 |
143. | NS_ICA_ERR_LOOKUP_RECONNECT_ID | 无法检测客户端重新连接cookie的解析状态 |
144. | NS_ICA_ERR_SYNCUP_RECONNECT_ID | 客户端重新连接后检测到无效的重新连接cookie长度 |
145. | ns_ica_err_invalid_reconnect_id. | 客户端重新连接cookie时缺少所需的约束 |
146. | NS_ICA_ERR_INVALID_CLIENT_VERSION | 从客户端接收到的接收方版本字符串无效 |
147. | NS_ICA_ERR_UNKNOWN_CLIENT_PRODUCT_ID | 从客户端收到的产品ID无效 |
148. | NS_ICA_ERR_V3_HDR_CORRUPT_LEN | 扩展后通道长度无效 |
149. | ns_ica_err_special_thinwire. | 解压缩错误 |
150. | NS_ICA_ERR_SEAMLESS_INSUFFBYTE | 遇到无法执行无缝命令的字节不足 |
151. | NS_ICA_ERR_EUEM_INSUFFBYTE | 遇到EUEM命令的字节不足 |
152. | NS_ICA_ERR_SEAMLESS_INVALID_EVENT | 无缝通道解析的无效事件 |
153. | NS_ICA_ERR_CTRL_INVALID_EVENT | CTRL通道解析的无效事件 |
154. | NS_ICA_ERR_EUEM_INVALID_EVENT | EUEM通道解析的无效事件 |
155. | NS_ICA_ERR_USB_INVALID_EVENT | USB通道解析的活动无效 |
156. | NS_ICA_ERR_PURE_INVALID_EVENT | 纯通道解析的无效事件 |
157. | NS_ICA_ERR_VCP_INVALID_EVENT | 虚拟通道解析的无效事件 |
158. | NS_ICA_ERR_ICAP_INVALID_EVENT | ICA数据解析的无效事件 |
159. | ns_ica_err_cgpp_invalid_event. | CGP数据解析无效事件 |
160. | ns_ica_err_basiccrypt_invalidstate. | 基本加密中crypt命令的无效状态 |
161. | NS_ICA_ERR_BASICCRYPT_INVALIDCRYPTCMD | 基本加密中的Crypt命令无效 |
162. | NS_ICA_ERR_ADVCRYPT_INVALIDSTATE | 在RC5加密中crypt命令的无效状态 |
163. | NS_ICA_ERR_ADVCRYPT_INVALIDCRYPTCMD | RC5加密中的Crypt命令无效 |
164. | NS_ICA_ERR_ADVCRYPT_ENC | 在RC5加密/解密错误 |
165. | NS_ICA_ERR_ADVCRYPT_DEC | 在RC5加密/解密错误 |
166. | NS_ICA_ERR_SERVER_NOT_REDUCER_V3 | VDA不支持Reducer Version 3 |
167. | NS_ICA_ERR_CLIENT_NOT_REDUCER_V3 | Receiver不支持Reducer Version 3 |
168. | NS_ICA_ERR_ICAP_INSUFFBYTE | ICA握手中意外的字节数 |
169. | NS_ICA_ERR_HIGHER_RECONSEQ | 从对等后重新连接的CGP恢复序列号更高 |
170. | NS_ICA_ERR_DESCSRINFO_ABSENT | 无法恢复重新连接后的ICA解析状态 |
171. | NS_ICA_ERR_NSAP_PARSING | 解析Insight通道数据时出错 |
172. | ns_ica_err_nsap_app. | 解析Insight通道数据中的应用细节时出错 |
173. | NS_ICA_ERR_NSAP_ACR | 解析来自Insight通道数据的ACR细节时出错 |
174. | NS_ICA_ERR_NSAP_SESSION_END | 解析Insight通道数据的会话结束细节时出错 |
175. | NS_ICA_ERR_NON_NSAP_SN | 由于缺乏Insight通道支持,跳过业务节点ICA解析 |
176. | ns_ica_err_non_nsap_client. | 客户端不支持NSAP |
177. | NS_ICA_ERR_NON_NSAP_SERVER | VDA不支持NSAP |
178. | NS_ICA_ERR_NSAP_NEG_FAIL | NSAP数据协商时出错 |
179. | ns_ica_err_sn_reconnect_tkt_fetch. | 获取服务中的错误重新连接服务节点中的票证 |
180. | NS_ICA_ERR_SN_HIGHER_RECONSEQ | 在业务节点接收到更高的重新连接序列号时出错 |
181. | NS_ICA_ERR_DISABLE_HDXINSIGHT_NONNSAP | 禁用非NSAP连接的HDX Insight时出错 |
示例日志:
1月9日22:57:02
1月9日22:55:41
错误计数器
通过ICA解析捕获各种计数器。下表列出了用于ICA解析的各种计数器。运行以下命令Nsconmsg -g HDX -d statswt0
查看柜台详情。
HDX计数器名称 | 目的 | 类别(数据/错误/诊断) |
---|---|---|
hdx_tot_ica_conn | NS检测到的纯ICA连接总数。当检测到基于客户端PCB上ICA签名的ICA连接时递增。 | 统计数据 |
hdx_tot_cgp_conn | NS (Session Reliability ON)检测到的CGP连接总数。当检测到基于客户端PCB上的CGP签名的CGP连接时增加。 | 统计数据 |
hdx_dbg_tot_udt_conn | NS检测到的UDP ICA连接总数 | 统计数据 |
hdx_dbg_tot_nsap_conn | 表示NS检测到的NSAP支持连接的总数 | 统计数据 |
hdx_tot_skip_conn | 表示由于无效ICA或CGP签名,解析器跳过了多少ICA连接。 | 统计数据 |
hdx_dbg_active_conn | 该时刻的活跃EDT/CGP/ICA连接总数。 | 统计数据 |
hdx_dbg_active_nsap_conn | 此时活跃的EDT/CGP/ICA NSAP连接总数。 | 统计数据 |
hdx_dbg_skip_appflow_disabled | 由于禁用AppFlow而将AppFlow从会话中分离的实例总数 | 数据/诊断 |
hdx_dbg_transparent_user | 透明用户访问总数 | 数据/诊断 |
hdx_dbg_ag_user. | 接入网关用户接入总数 | 数据/诊断 |
hdx_dbg_lan_user | LAN用户模式访问总数 | 数据/诊断 |
hdx_basic_enc | 基本加密ICA连接数 | 数据/诊断 |
hdx_advanced_enc | 基于高级RC5加密的ICA连接数 | 数据/诊断 |
dx_dbg_wanscaler_on_clientside | 客户端使用Citrix SD-WAN的CGP/ICA连接总数 | 数据/诊断 |
hdx_dbg_wanscaler_on_serverside. | 使用Citrix SD-WAN服务器端的CGP/ICA连接总数 | 数据/诊断 |
hdx_dbg_reconnected_session | 没有任何Citrix ADC错误的客户端重新连接请求总数 | 数据/诊断 |
hdx_dbg_host_rejected_ns_reconnect | 客户端拒绝重连接请求的主机总数 | 数据/诊断 |
hdx_euem_available. | 表示终端用户体验监控通道可用的连接数。终端用户体验需要通过监控通道进行ICA RTT等统计信息的收集。 | 数据/诊断 |
hdx_err_disabled_sr. | 会话可靠性禁用使用nsapimgr 旋钮。Session不适用于此Session。 |
错误 |
hdx_err_skip_no_msi | XA/XD服务器缺少MSI功能。这表明是较旧的服务器版本,HDX Insight跳过此连接。 | 错误 |
hdx_err_skip_old_server | 旧的不支持的服务器版本 | 错误 |
hdx_err_clnt_not_whitelist | 客户端接收不在允许列表中,HDX Insight跳过此连接 | 错误 |
hdx_sm_ica_cam_channel_disabled. | 通过SmartAccess策略禁用NS_ICA_CAM_CHANNEL的总数 | 诊断 |
hdx_sm_ica_usb_channel_disabled | SmartAccess策略禁用NS_ICA_USB_CHANNEL的总数 | 诊断 |
hdx_sm_ica_clip_channel_disabled. | SmartAccess策略禁用NS_ICA_CLIP_CHANNEL的总数 | 诊断 |
hdx_sm_ica_ccm_channel_disabled | SmartAccess策略禁用NS_ICA_CCM_CHANNEL的总数 | 诊断 |
hdx_sm_ica_cdm_channel_disabled | SmartAccess策略禁用NS_ICA_CDM_CHANNEL的总数 | 诊断 |
hdx_sm_ica_com1_channel_disabled | SmartAccess策略禁用NS_ICA_COM1_CHANNEL的总数 | 诊断 |
hdx_sm_ica_com2_channel_disabled. | SmartAccess策略禁用NS_ICA_COM2_CHANNEL的总数 | 诊断 |
hdx_sm_ica_cpm_channel_disabled | SmartAccess策略禁用NS_ICA_CPM_CHANNEL的总数 | 诊断 |
hdx_sm_ica_lpt1_channel_disabled | SmartAccess策略禁用NS_ICA_LPT1_CHANNEL的总数 | 诊断 |
hdx_sm_ica_lpt2_channel_disabled | SmartAccess策略禁用NS_ICA_LPT2_CHANNEL的总数 | 诊断 |
dx_dbg_sm_ica_msi_disabled | 通过SmartAccess策略禁用MSI的案例总数 | 诊断 |
hdx_sm_ica_file_channel_disabled | SmartAccess策略禁用NS_ICA_FILE_CHANNEL总数 | 诊断 |
hdx_dbg_usb_accept_device | 接受的USB设备总数 | 诊断 |
hdx_dbg_usb_reject_device | 被拒绝的USB设备总数 | 诊断 |
hdx_dbg_usb_reset_endpoint. | USB终端复位总数 | 诊断 |
hdx_dbg_usb_reset_device | USB设备复位总数 | 诊断 |
hdx_dbg_usb_stop_device | 停止的USB设备总数 | 诊断 |
hdx_dbg_usb_stop_device_response | 已停止USB设备的响应总数 | 诊断 |
hdx_dbg_usb_device_gone. | 丢失的USB设备总数 | 诊断 |
hdx_dbg_usb_device_stopped | 停止的USB设备总数 | 诊断 |
nstrace验证
检查CFLOW协议以查看所有流出Citrix ADC的AppFlow记录。
在Citrix ADM检查表中填充记录
运行以下命令
tail -f /var/mp /log/mps_afdecoder.log | grep -i "Data Record: ica_"
并检查日志以确认Citrix ADM正在接收Appflow记录。- 确认已将Citrix ADC实例添加到Citrix ADM。
- Validate Citrix Gateway/VPN虚拟服务器是在Citrix ADM中授权的。
- 请确保双跳的多跳参数配置已启用。
- 在双跳部署中,确保Citrix网关为第二跳清除。
联系Citrix技术支持前
为了快速解决问题,请在联系Citrix技术支持前确保以下信息:
部署和网络拓扑的详细信息。
- Citrix ADC和Citrix Adm版本。
- Citrix虚拟应用和桌面服务器版本。
- 客户端接收器版本。
- 问题发生时的活跃ICA会话数。
- 的技术支持包
显示techsupport
命令,在Citrix ADC命令提示符。 - Citrix Adm的技术支持捆绑包捕获。
- 所有Citrix ADC上捕获的数据包痕迹。要启动数据包跟踪,请键入,
Start nstrace -size 0'
要停止数据包追踪,输入,停止nstrace
- 通过运行命令收集系统ARP表中的表项
显示arp
命令。
已知的问题
有关HDX Insight的已知问题,请参阅Citrix ADC发行说明。