内容简介:StoreFront Troubleshooting and Logging
本文主要介绍StoreFront的各种日志以及开启方法。
在StoreFront的问题拍错(Troubleshooting)过程中,主要涉及到下面的一些日志:
- 安装日志(Installation Logs)
- 控制台/PoSH日志(MMC Console / PoSH Logs)
- 详细的Service日志(Services Verbose Tracing)
- 系统事件日志(Windows Event Logs)
- 网络包(Network tracing)
Installation Logs
整个安装过程主要涉及到两个步骤:
- MSI解包部分,主要涉及到各feature packages解包安装
C:\Windows\Temp\StoreFront\
- feature deployment主要涉及控制台以及PoSH部分脚本日志
MMC Console / PoSH Logs
每个命令以及脚本执行都会生成对应的日志,而管理控制台的操作基本都会触发对应的PoSH脚本命令,相关日志保存在如下路径中:
C:\Program Files\Citrix\Receiver StoreFront\Admin\logs\
大部分的操作都会涉及到脚本的执行以及相关实际服务的处理,所以这部分日志也建议同时收集和检查。在大部分时候可能会被忽略。
Services Verbose Tracing
由于大部分服务都是IIS integrated apps/Services,所以相关的tracing都使用微软的service tracing方式,所以,都可以通过修改web.config中system.diagnostics节的相关设置来调整。
微软也提供了图形化的配置工具Microsoft Service Configuration Editor Tools (SvcConfigEditor.exe),但是由于不单独提供,需要下载Windows SDK才能获得,所以相对比较麻烦。
提示:以下文件从.Net 4.6.1 SDK中提取,经过测试可以单独运行,并在.Net 4.5及以上版本测试通过.
SvcConfigEditor.exe (2.3 MB, 0 次)
针对这种情况,Citrix提供了一个Powershell命令来方便的开启所有服务的日志:
Add-PSSnapin Citrix.DeliveryServices.Framework.Commands Set-DSTraceLevel -All -TraceLevel Off -FileSizeKb 10240
由于默认情况下每个Trace Log文件的大小最大为1MB,最多保留3个,在大多数情况下都是无法完整覆盖测试和排错场景的。所以,建议增加-FileSizeKb 10240来调整每个日志文件大小到10MB
执行上述命令会自动重启服务,并立即生效,不需要手动重启服务或者服务器。
注意:相关日志会自动回滚,所以在非特大型环境或者可见性能影响情况下,可以考虑常开来更好的排错。
相关日志保存路径如下:
C:\Program Files\Citrix\Receiver StoreFront\Admin\trace\
另外,由于抓取到的日志格式为.svclog,需要使用Microsoft Service Trace Viewer 才可以打开并查看,对应的 工具 微软也没有单独提供,同样需要通过Windows SDK安装获得。
提示:以下文件从.Net 4.6.1 SDK中提取,经过测试可以单独运行,并在.Net 4.5及以上版本测试通过.
SvcTraceViewer.exe (665.2 KB, 0 次)
Windows Event Logs
相关事件日志写入位置为Applications and Services Log / Citrix Delivery Services下,并不在常规的Windows Logs / Application或者Windows Logs / System下。
Network tracing
由于涉及到网络通信, 所以网络包也是比较常见的排错手段。一般采用wireshark或者Fiddler来进行抓包分析。
Fiddler的好处是可以作为代理的方式直接解包https流量,相对于wireshark来说要方便很多,毕竟在某些场景让客户提供private key是不可能完成的任务。而且,可以通过Fiddler来抓取store proxy的部分流量。
这部分可以通过修改对应store的web.config来实现:
<proxy enabled="true" processName="Fiddler" port="8888" />
但是Fiddler也不是万能,对于非HTTP/HTTPS协议,DNS/LDAP等请求就无能为力了,此时wireshark是更好的选择。
对于https部分,使用wireshark抓取的时候,建议检查使用的SSL/TLS协议的版本以及cipher suite。
由于目前较新的系统很多会优先使用更安全的ECDHE/DHE等非RSA密钥进行key change的话,即使有private key的情况下也无法解密https流量。所以
- 可以参考 https://jimshaver.net/2015/02/11/decrypting-tls-browser-traffic-with-wireshark-the-easy-way/ 保存session key,或者其他工具自带类似功能,如netscaler可以勾选保存pre-master key
- 可以尝试通过修改注册表的方式对SSL/TLS降级或者限制相关的cipher suite的使用,从而强制使用RSA cipher suite并抓包
以上基本涵盖了常用的StoreFront troubleshooting工具以及相关日志的开启方法。
以上所述就是小编给大家介绍的《StoreFront Troubleshooting and Logging》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。