日志工具使用说明:
日志工具下载地址
https://atrustcdn.sangfor.com/tools/aTrustLogTool.zip
解压日志工具后,双击对应平台二进制,目前只编译了windows 32位/64位的aTrust_tools.exe。
运行后会自动打开浏览器,目前日志工具包括流程日志、短隧道访问日志、长隧道访问日志、DNS解析日志、HttpServer日志功能
10.3.1 流程日志工具使用说明
- 导出的日志就直接拖拽到下面位置,会自动进行解压
解压完成会将目录自动输入到文本框中,再点击提交
实时日志分析暂时只支持windows,先打开文件资源管理器,输入
%appdata%\sangfor\atrust\logs
,然后将地址栏的地址输入到已解压好的目录
后面,点击提交可以在表格中对级别、模块、事件、标签做进一步的筛选分析
10.3.2 短隧道访问日志工具使用说明
- 导出的日志就直接拖拽到下面位置,会自动进行解压
- 解压完成会将目录自动输入到文本框中,再点击提交
- 实时日志分析暂时只支持windows,先打开文件资源管理器,输入
%appdata%\sangfor\atrust\logs
,然后将地址栏的地址输入到已解压好的目录
后面,点击提交 - 可在”please input find“中输入想查询的内容,可查找任意包含此内容的访问,如果未输入则默认为全部展示
- spa日志太复杂,可以在右面的按钮开启过滤spa访问日志功能(注意:spa日志的代理网关栏表示的不是代理网关地址,而是敲门的真实地址)
- 时间范围默认为:当前时间-一个月前,点击删除可展示任意时间的访问日志
数据表格部分介绍
版本栏展示
- 如果输入目录正确且解析正确,会展示日志的客户端版本、系统、电脑品牌、username、displayname、address(username、displayname、address以最后一次登录的用户为准)
筛选功能展示
- 可以在表格中对应用名、进程、资源、代理网关、访问状态做进一步的筛选分析
短隧道访问日志展示
- 一个短隧道应用访问点击+号可展开,展开后展示为上图所示
- 最下面五个耗时的关系为:TCP连接耗时+SSL握手耗时+协商耗时+代理网关到应用=访问完成耗时,具体耗时分析可在时延分析中进行分析
切换视图——切为时延视图展示
在成功获取数据后会增加切换视图按钮,点击按钮后可切换为时延视图
时延视图部分介绍
数据部分
- 按搜查资源与时间将各隧道访问时间进行统计,并使用柱状图进行显示。将数据按照访问时间分成0-50、50-100、100-150、150-200、200-300、>300几档进行颜色分类(如果耗时超过1000ms的将会在图表中转化为1000ms,点击具体数据可查看其真实耗时)。
组件功能
1 、颜色筛选
- 点击右上角颜色可将对应的数据灰掉,方便查看
2、时间选择
- 可以通过拖动这个栏目和鼠标滑轮滑动进行对显示的时间修改
3、时延对应具体信息
柱状图数据可以点击,在选择好自己想查看的数据后,点击柱状图,在下方会显示出已选择的柱状图对应的数据。
表格中数据使用方法与表格部分大致相同,但是在切换到其他界面(如dns解析界面)后会被全部清除,不会保留(时延视图与数据表格界面之间切换不会清楚)
数据可以手动删除,展开界面可以点击Delete进行删除
4、下载图像
点击右上角下载按钮可将图表下载为png格式
10.3.3 长隧道访问日志使用说明
拖放导出的zip格式的日志或选择已解压的日志目录
实时日志分析暂时只支持windows,先打开文件资源管理器,输入
%appdata%\sangfor\atrust\logs
,然后将地址栏的地址输入到已解压好的目录
后面,点击提交可在”please input find“中输入想查询的内容,可查找任意包含此内容的访问,如果未输入则默认为全部展示
时间范围默认为:当前时间-一个月前,点击删除可展示任意时间的访问日志
在流程日志,短隧道访问日志,长隧道访问日志,DNS解析日志,HttpServer日志之间进行切换时,日志目录、查询资源、时间范围会自动保存与填充
数据表格部分介绍
版本栏展示
- 如果输入目录正确且解析正确,会展示日志的客户端版本、系统、电脑品牌、username、displayname、address(username、displayname、address以最后一次登录的用户为准)
筛选功能展示
- 可以在表格中对连接时间、进程ID/线程ID、程序名、认证状态、虚拟IP、耗时(ms)、隧道参数做进一步的筛选分析,耗时可使用区间过滤符~,如过滤出100至2000毫秒的耗时:100~2000
长隧道访问日志展示
- 一个长隧道应用访问点击+号可展开,展开后展示为上图所示
切换视图——切为时延视图展示
在成功获取数据后会增加切换视图按钮,点击按钮后可切换为时延视图
10.3.4 DNS解析日志工具使用说明
- 导出的日志就直接拖拽到下面位置,会自动进行解压
- 解压完成会将目录自动输入到文本框中,再点击提交
- 实时日志分析暂时只支持windows,先打开文件资源管理器,输入
%appdata%\sangfor\atrust\logs
,然后将地址栏的地址输入到已解压好的目录
后面,点击提交 - 可在”please input find“中输入想查询的内容,可查找任意包含此内容的访问,如果未输入则默认为全部展示
- spa日志太复杂,可以在右面的按钮开启过滤spa访问日志功能
- 时间范围默认为:当前时间-一个月前,点击删除可展示任意时间的访问日志
- 在流程日志,短隧道访问日志,长隧道访问日志,DNS解析日志,HttpServer日志之间进行切换时,日志目录、查询资源、时间范围会自动保存与填充
数据表格部分介绍
版本栏展示
- 如果输入目录正确且解析正确,会展示日志的客户端版本、系统、电脑品牌、username、displayname、address(username、displayname、address以最后一次登录的用户为准)
筛选功能展示
- 可以在表格中对域名、域名类型、DNS服务器地址、解析类型、结果做进一步的筛选分析
DNS解析日志展示
- 注意:不同版本之间展示内容可能存在差异,展示内容为格式化后日志原文
切换视图——切为时延视图展示
在成功获取数据后会增加切换视图按钮,点击按钮后可切换为时延视图
时延视图部分介绍
数据部分
- 按搜查资源与时间将各隧道访问时间进行统计,并使用柱状图进行显示。将数据按照访问时间分成0-50、50-100、100-150、150-200、200-300、>300几档进行颜色分类(如果耗时超过1000ms的将会在图表中转化为1000ms,点击具体数据可查看其真实耗时)。
组件功能
1 、颜色筛选
- 点击右上角颜色可将对应的数据灰掉,方便查看
2、时间选择
- 可以通过拖动这个栏目和鼠标滑轮滑动进行对显示的时间修改
3、时延对应具体信息
柱状图数据可以点击,在选择好自己想查看的数据后,点击柱状图,在下方会显示出已选择的柱状图对应的数据。
表格中数据使用方法与表格部分大致相同,但是在切换到其他界面(如短隧道解析界面)后会被全部清除,不会保留(时延视图与数据表格界面之间切换不会清楚)
数据可以手动删除,展开界面可以点击Delete进行删除
4、下载图像
点击右上角下载按钮可将图表下载为png格式
10.3.5 HttpServer日志工具使用说明
- 导出的日志就直接拖拽到下面位置,会自动进行解压
- 解压完成会将目录自动输入到文本框中,再点击提交
- 实时日志分析暂时只支持windows,先打开文件资源管理器,输入
%appdata%\sangfor\atrust\logs
,然后将地址栏的地址输入到已解压好的目录
后面,点击提交 - 可在”please input find“中输入想查询的内容,可查找任意包含此内容的访问,如果未输入则默认为全部展示
- spa日志太复杂,可以在右面的按钮开启过滤spa访问日志功能
- 时间范围默认为:当前时间-一个月前,点击删除可展示任意时间的访问日志
- 在流程日志,短隧道访问日志,DNS解析日志,HttpServer日志之间进行切换时,日志目录、查询资源、时间范围会自动保存与填充
数据表格部分介绍
版本栏展示
- 如果输入目录正确且解析正确,会展示日志的客户端版本、系统、电脑品牌、username、displayname、address(username、displayname、address以最后一次登录的用户为准)
筛选功能展示
- 可以在表格中对sdpTraecId、访问地址、URL、返回结果做进一步的筛选分析
HttpServer日志展示
- 注意:不同接口之间展示内容存在差异,展示内容为格式化后日志原文,具体可看附2接口
切换视图——切为时延视图展示
在成功获取数据后会增加切换视图按钮,点击按钮后可切换为时延视图
时延视图部分介绍
数据部分
- 按搜查资源与时间将各隧道访问时间进行统计,并使用柱状图进行显示。将数据按照访问时间分成0-50、50-100、100-150、150-200、200-300、>300几档进行颜色分类(如果耗时超过1000ms的将会在图表中转化为1000ms,点击具体数据可查看其真实耗时)。
组件功能
1 、颜色筛选
- 点击右上角颜色可将对应的数据灰掉,方便查看
2、时间选择
- 可以通过拖动这个栏目和鼠标滑轮滑动进行对显示的时间修改
3、时延对应具体信息
柱状图数据可以点击,在选择好自己想查看的数据后,点击柱状图,在下方会显示出已选择的柱状图对应的数据。
表格中数据使用方法与表格部分大致相同,但是在切换到其他界面(如短隧道解析界面)后会被全部清除,不会保留(时延视图与数据表格界面之间切换不会清楚)
数据可以手动删除,展开界面可以点击Delete进行删除
4、下载图像
点击右上角下载按钮可将图表下载为png格式
10.3.6 常用场景示例
短隧道资源访问失败
1、场景说明:
在配置短隧道资源后,客户端访问资源失败
2、结合工具的使用方式:
首先使用短隧道访问日志工具进行查找,筛选对应时间段的资源,看访问是否走了隧道(以邮箱访问失败为例),如果存在访问日志,可进一步排查查看是在那一部分存在问题,如图,这个访问是代理网关到资源访问超时,观察错误号为3,则对应错误为表示 SOCKS5 代理服务器无法连接到目标主机,因为目标主机所在的网络不可达或不存在。这可能是由于网络故障、目标主机关闭或其他网络问题引起的。此时检查这个资源是否存在问题。
未在隧道访问日志中找到目标资源,则检查DNS是否解析成功,再在日志中检查路由状态
3.如果此时在本段时间内未找到这个资源的访问日志,可能是资源下发问题,此时使用httpserver来检查是否有此资源。在URL中筛选base/setinfo,然后找到与资源访问最近的一个,点击展开。使用浏览器中的搜索功能查找是否存在此资源。
图一:筛选功能
图二:查找是否存在资源
如果资源存在,则检查隧道状态,此时使用httpserver来检查是否有此资源。在URL中筛选base/setinfo,然后找到与资源访问最近的一个,查看tunnelStatus,查看隧道状态
升级场景
1、场景说明:
通过点击升级提示进行升级的流程
2、结合工具的使用方式:
使用httpserver工具,筛选/update/start,如果code为0,则说明成功开启升级流程。反之如果没有出现start可能代表更新失败
使用httpserver工具,筛选/update/status,可以看见状态转换。
登陆、注销流程
1、场景说明
使用流程日志分析功能,查看登录、注销过程中是否存在异常情况
2、结合工具的使用方式
- 在流程日志分析界面在Tags里面筛选
登陆/注销
关键字,正常登陆会看到下面的流程
顺序可能不完全准确,主要流程是
- 托盘更新online状态,托盘上线
- 请求applist完成,core拉取应用列表
- core广播resourceChanged事件
- tunnel接受resourceChanged事件
- 选路配置更新
- 虚拟网卡路由添加
- dns配置更新,可能启用转发也可能关闭
- tunnel准备完成
还可以在httpserver工具中使用接口筛选信息,接口在附2
注销流程
在Tags里面筛选
登陆/注销
关键字,正常注销会看到下面的流程
- 和登陆差不多,主要是关闭选路、清理路由和关闭dns
- 还可以在httpserver工具中使用接口筛选信息,接口在附2
线程卡死
1、场景说明
- 版本2215200之前可能出现tunnel消息处理线程卡死,现象是点击应用提示安全环境准备中
2、结合工具的使用方式
- 异常截图
- 出现大量收到resourceChanged事件,没有更新选路、添加路由和dns等
- 解决方案,升级到最新版本客户端即可
资源冲突
1、场景说明
- 资源访问失败,如果资源全部冲突而没有加路由,同样可能会导致应用提示安全环境准备中或准备失败
2、结合工具的使用方式
- 使用流程日志分析工具,Tags筛选资源冲突,可以看到下面的异常截图
- 说明这些资源存在部分地址和网卡ip地址、dns、proxy接入地址冲突,需要检查是否存在问题
applist请求失败
1、场景说明
- applist请求失败会导致点击应用提示安全环境准备中
2、结合工具使用方式
- Tags筛选applist或
登陆/注销
,看到下面异常截图
- 此类问题需要在登陆前开始抓包(物理网卡),登陆后停止抓包,分析一下到接入地址的包,是否中间存在连接不上或中间无响应重传等。
- 也可以同时在客户端和服务端抓包,服务端抓客户端的公网ip。如果两边包不一致,有可能是中间设备拦截了
- 一般都是网络问题,根据客户网络拓扑排查即可。
198.18.0.1的dns服务器残留
1、场景说明
2、结合工具使用方式
- Tags筛选
登陆/注销
和进程一起
- dns启用了转发之后,tunnel进程重启了,刚起来其实不知道198存在,所以就不会清理
- 一般是登陆状态下重启了电脑,atrust不在而198还在的情况
- 解决就是登陆再注销或升级到2.2.16以上版本,此版本没有198存在不会有此问题
进程状态问题
1、场景说明
- 进程状态出现问题
2、结合工具使用方式
- Tags筛选进程
- trayProccess重启,代表托盘重启
- 电脑重启,所有进程都会重启,可以大致分析电脑重启时间
- core和tunnel在非正常时间重启,可能是崩溃,需要收集日志到研发进行崩溃堆栈分析
spa问题
1、场景说明
- 查看是否进行了敲门
2、结合工具使用方式
- Tags筛选
spaUdpKnock
可以看到什么时间进行了udp的spa敲门,敲门的是哪个地址
一般没有这个日志可以说明没有开启spa
抓包也可以对照是否真的发送了dtls的包
在DNS解析工具中,筛选解析类型为spa,可以观察到敲门的fakeip及对应的真实ip
可以在短隧道访问日志看到敲门情况,在不过滤spa的情况下请求数据,结果中应用名为空的就是spa数据
附1、错误码
- 0 //没有错误,一切正常。
- -1 //内存不足错误。
- -2 //缓冲区错误。
- -3 //超时错误。
- -4 //路由问题错误。
- -5 //操作正在进行中。
- -6 //非法值错误。
- -7 //操作将会阻塞错误。
- -8 //地址已被使用错误。
- -9 //已经在连接中错误。
- -10 //连接已经建立错误。
- -11 //未连接错误。
- -12 //底层网络接口错误。
- -13 //连接中止错误。
- -14 //连接重置错误。
- -15 //连接关闭错误。
-16 //非法参数错误。
1
错误信息:"socks5 response general failure
意义:表示 SOCKS5 代理服务器在连接到目标主机时发生了一般性错误,但具体的错误原因无法确定。这可能是由于代理服务器配置错误、网络故障或其他未知问题引起的。
3
错误信息:socks5 response network unreachable
意义:表示 SOCKS5 代理服务器无法连接到目标主机,因为目标主机所在的网络不可达或不存在。这可能是由于网络故障、目标主机关闭或其他网络问题引起的
5
错误信息:socks5 response connection refused
意义:表示 SOCKS5 代理服务器无法连接到目标主机,因为目标主机拒绝了连接请求。这可能是由于目标主机上没有运行所需的服务、目标主机上的服务未启动或目标主机上的防火墙阻止了连接请求等原因引起的。
121
错误信息:The semaphore timeout period has expired.
意义:表示操作无法在指定的时间内完成,因为等待信号量的时间超过了系统允许的最大时间。这可能是由于网络连接问题、硬件故障或其他系统问题引起的。
997
错误信息:Overlapped I/O operation is in progress.
意义:表示当前的 I/O 操作正在进行中,因此无法启动新的 I/O 操作。这通常是由于应用程序在进行异步 I/O 操作时没有正确处理回调函数或等待 I/O 操作完成而导致的。如果应用程序需要启动新的 I/O 操作,它需要等待当前的 I/O 操作完成或取消当前的 I/O 操作。
10053
错误信息:An established connection was aborted by the software in your h
意义:表示已经建立的网络连接被本地计算机上的软件中止,可能是由于防火墙、杀毒软件或其他网络安全软件的干预引起的。此外,也可能是由于网络故障、对端主机崩溃或重启等原因引起
附2:httpserver常用接口
/update/
其中update包括:
"/v1/update/version" :查询版本、能力信息 "/v1/update/skip" :跳过升级 "/v1/update/start" :启动升级 "/v1/update/status" :查询状态 "/v1/update/check" :检测升级
在遇到用户升级出现问题可使用上述接口来排查出现问题部分
/service/
service包括:
"/v1/service/init" :初始化 "/v1/service/status" :查询状态 "/v1/service/events" :事件通知 "/v1/service/start" :启动服务(登录) "/v1/service/logout" :注销 ”/v1/service/online" :上线 "/v1/service/offline" :离线
status可以查询当前状态、隧道状态和当前线路
events是事件通知,可以通知当前时间段发生什么
start与logout对应,分别是登录与注销。
online与offline对应,分别对应上线与离线。如果是异常离线在offline中找不到对应日志,可在events中查找对应的离线
- /base/
"/v1/base/setinfo" :检查applist等是否有变化
setinfo可以检查applist是否有变化,可以检测applist里的资源情况