NetEco服务器创建定时任务获取modbus日志

发布时间:  2015-11-06 浏览次数:  268 下载次数:  0
问题描述
xx客户凌晨1点30分NetEco出现设备通讯中断告警,早上8点工程师到达客户现场取服务器modbus日志分析断链原因。查询到服务器相关的存储日志只有4点以后的日志,告警产生时间段的日志已被覆盖。工程师无法通过日志分析断链告警。需要等告警复现,获取日志后再次分析。但是告警产生的时间不确定,不能保证告警产生后2小时内能够到达现场导出日志。
告警信息
系统与设备通讯异常
处理过程

创建定时任务,把系统告警日志存到新建的文件夹内,避免系统自动覆盖
一、使用BMC方式远程登录服务器或者putty登录服务器,创建目录 ;
cd /export/home
mkdir modbusLog
cd modbusLog
mkdir log
二、创建脚本文件;
方法一:
1、使用BMC方式远程登录服务器:在linux图形化界面/export/home/modbusLog文件夹下创建一个文本文件copyLogToAnotherFolder.sh 
 
2、打开copyLogToAnotherFolder.sh在里面输入如下内容
#!/bin/sh
cp opt/neteco/var/runtime.center/log/ifos/med/modbus_*.zip   /export/home/modbusLog/log/


   然后保存。

方法二:
1、putty登录服务器,命名行输入
cd /export/home/modbusLog
vi copyLogToAnotherFolder.sh
2、进入如下界面,输入“i”


显示插入,用方向键和回车键把光标定位于新行,输入如下内容
#!/bin/sh
cp opt/neteco/var/runtime.center/log/ifos/med/modbus_*.zip   /export/home/modbusLog/log/
三、文件赋权
cd /export/home/modbusLog
chmod +x copyLogToAnotherFolder.sh
四、创建定时任务
1、执行crontab -e  会出来一个窗口,

 
2、按字母“i”键,有insert标示,表示处于可编辑状态;
3、用方向键和回车键把光标定位于新行,输入如下内容
0 */3 * * * /export/home/modbusLog/copyLogToAnotherFolder.sh   (注意有空格,可以直接拷贝这里,免得敲错;“3”表示文件复制保存的时间,可以根据现场实际确定)


按“esc”键,使窗口处于非编辑状态
按“:wq”保存并退出

五、删除定时任务
  后续等取到相关日志,用跟第四步相同的方法把添加的那一行“0 */3 * * * /export/home/modbusLog/copyLogToAnotherFolder.sh”删除然后保存

根因
日志覆盖原因:日志文件实时记录更新,但是占用服务器存储空间的大小固定的,日志保存采用溢出覆盖方式保存。NetEco接入设备多,单位时间打印的日志就多,文件保存的时间段相应的缩短。
解决方案
创建定时任务,把系统告警日志copy到新建的文件夹内,避免系统自动覆盖
建议与总结

创建定时任务,可避免服务器告警文件覆盖

END