CS飞行日志分析
1. 简介
在某些异常情况或者特定场合下需要现场技术人员查看飞行日志来协助解决或解决问题问题。
2. 操作流程
2.1机器人上插入U盘,u盘格式是应为FAT32,内存大小在32G以内

2.2拷贝飞行日志并且解压:
支持文件拷贝:

飞行日志拷贝:



2.3电脑端查看:
解压:

解压完成:

2.4注释:
EliRobot (上位机以及X86系统相关日志)
controller (上位机相关日志,记录上位机软件相关日志、任务文件等)
Program (当前系统所有配置、任务、脚本文件)
default.configuration (报警时的当前配置文件)
default.configuration.variables (报警时的当前配置变量文件)
test.task (报警时的当前任务文件)
audit.csv (审计日志:记录用户的重要操作)
elibot.log (软件运行日志:记录软件运行信息,如软件运行异常信息,记录较为全面,主要问题定位文件)
gui.properties (当前界面相关配置,主要用于记录系统设置->通用配置中的相关参数)
log_history.csv (用于记录软件的运行->日志页面的所有日志条目)
remoteControl.properties (当前远程控制配置)
histogram.properties (统计数据:统计数据的频率,主要内部使用)
system (X86系统相关日志,该部分日志主要用于研发深度排查问题使用)
df (系统硬盘挂载状态,用于排查是否存在系统硬盘占满等情况)
dmesg (系统状态日志,用于排查定位一些系统级的问题)
messages (系统状态日志,用于排查定位一些系统级的问题)
messages.0 (系统状态日志,用于排查定位一些系统级的问题)
ps (系统线程以及进程状态)
Runtime.txt (JAVA虚拟机的运行时状态)
top (系统线程以及进程状态)
version (系统ROOTFS版本号)
x11vnc.log (系统x11日志)
Xorg.0.log (系统Xrog日志)
Service
metadata.conf (上位机软件的版本信息,如版本号、编译时间等)
EliServer (下位机以及A9系统相关日志)
controller (下位机相关日志,该部分日志用于记录下位机软件相关日志状态等)
eli_log
elisafety.log (安全控制器日志,主要用于排查 E6S99 报警使用)
eliserver_d.06.log (下位机DEBUG日志文件备份)
eliserver_d.log (下位机DEBUG日志文件,记录统报警日志,执行的脚本等)
eliserver.02.log (下位机日志文件历史备份)
eliserver.log (下位机日志文件,记录操作日志、报警日志等)
eli_snapshot.log (快照文件,记录报警之前40ms的状态数据,如CPU使用率、 温度、电压等)
reboot.log (内部日志文件,一般不需关注)
simulation_robot.conf (仿真IO输入控制配置文件用于实现软件仿真的IO输入功能)
time.log (内部日志文件,一般不需关注)
motion_task.log (运动节点执行日志,用于记录运动节点数据(2.12.0版本添加))
motion_task.0.log (运动节点执行历史日志,用于记录运动节点数据(2.12.0版本添加))
eli_resource (系统相关资源文件,一般不需关注)
eli_robot_data (机器人相关配置文件,如绑定信息、传感器出厂配置等,一般不需关注)
eli_user_data (系统相关用户配置文件,一般不需关注)
eli_controller.conf (当前使用的机器人配置)
eli_robot_bind_config.ini (机器人绑定的数据信息,如零位脉冲等)
eli_robot_bind_config.ini.backup (机器人绑定的数据信息备份文件)
eli_robot_config.ini (机器人关机位置数据)
eli_safety.conf (当前使用的安全配置)
eli_system_config.ini (用户系统配置数据,如产测模式配置、关机时间等)
eli_user_config.conf (用户系统配置数据,如碰撞开关是否打开、碰撞百分比)
fc_params.xml (用户相关的力传感器相关配置)
start_eliserver.sh (控制脚本,一般不需关注)
stop_eliserver.sh (控制脚本,一般不需关注)
metadata.conf (下位机软件的版本信息,如版本号、编译时间等)
realtime_data
realtime_data.csv (飞行记录的实时数据,记录报警前25秒左右以及报警后5秒左右所有实时数据,如位置速度电流电压等)
system (A9系统相关日志,该部分日志主要用于研发深度排查问题使用)
dh (系统硬盘挂载状态,用于排查是否存在系统硬盘占满等情况)
dmesg (系统状态日志,用于排查定位一些系统级的问题)
ps (系统线程以及进程状态)
top (系统线程以及进程状态)
version (系统AB版本,内部使用,一般不需关注)
3. 示例
3.1使用支持文件查看30001端口接收的脚本:
如下图使用sockettool通过30001端口发送脚本给机器人:movel([0.1,0.12,0.123,0.1234,0.54321,0.54321],a=1,v=2,t=3,r=4)

发送后机器人应该会按照脚本指令运动,无论是否运动,我们都可以导出支持文件查看:




电脑端查看:

解压并打开,查找最新记录:

找到该eliserver文件:

使用快捷键ctrl+f搜索脚本关键词或全部,可查看已发送的脚本:

3.2查看历史报警信息程序变更记录
路径:CS_BACKUP\EliRobot\log\log_history.scv
可以查看报警信息和程序变更记录


3.3查看系统磁盘挂载情况
路径:recording/ELIRobot/system/df
一般占用率超过80%则需着重注意
CPU占用超过80%就属于超负荷,机器人系统可能或报警主任务无限循环,线程里高速执行逻辑等都可能导致CPU超负荷,导致死机抖动等问题和风险。

3.4查看报警瞬间的IO状态
路径:recording/ELIServe/controller/eli_log/eli_snapshot_log
可以查看机器人报警瞬间的io状态,可用于排查入碰撞报警瞬间是否由io误触发导致的末端工具撞击
