====================MSU修改记录===================
MSU(5.3.5.8) (未发布)2010-08-09
1,解决压力测试时MSU重启的问题
2,将MSU写成库的形式编译
MSU(5.3.5.8) (未发布)
1,增加群聊录音。
2,修正无空间停录后无法再重新录像的问题(BUG由5.3.5.7引入)
3,无空间停录后重启录像的磁盘空间阈值设置:
(in GB)
$restart_request_space=10
如果不设置,则根据当前要录像的路数,按1Mbps码流计算,删出的空间至少能让每路生成一个完整文件后重新向MDU请求重连。
MSU(5.3.5.7) 2010-3-10
将删除的文件记录在日志里
MSU(5.3.5.7) 2010-1-11
挂载动作失败跳过
MSU(5.3.5.6) 2009-12-16
告警小文件丢失的BUG。(流在缓冲块中还一次都没有刷磁盘就已经关闭)(BUG由V5.3.5.4版本改动引入)
MSU(5.3.5.6) 2009-12-03
MSU(5.3.5.5) 2009-11-12
删一个文件休眠20毫秒
MSU(5.3.5.5) 2009-11-11
删一个文件休眠1秒(以前20毫秒)
MSU(5.3.5.5) 2009-11-06
MSU(5.3.5.4) 2009-10-28
解决超时时可能产生没有类型的小文件的问题。(5.3.4.8引入)
MSU(5.3.5.3) 2009-09-28
MSU(5.3.5.2) 2009-09-24
加入可移植信息。
按空间和天删盘循环覆盖删当天的文件时可能引起误删。(V5.3.4.8 引入的BUG)
MSU(5.3.5.2) 2009-09-05
导出磁盘使用信息给网管显示。
在心跳包和注册包里加入时间信息。
增加手动抓拍图片。
MSU(5.3.5.2) 2009-08-29
支持子域告警联动抓拍。
修正删盘时不删图片的BUG。
MSU(5.3.5.1) 2009-08-22
MSU(5.3.5.0) 2009-08-14
MSU(5.3.4.9) 2009-08-05
MSU(5.3.4.8) 2009-07-31
每次删盘最多删一天的文件。(如果设置的删盘大小大于最老的一天的文件总大小,删掉那天的文件后停止删盘,如果设置的大小小于那天的文件总大小,按设置的删除后停止)
支持动态更换MDU
MSU(5.3.4.7) 2009-07-03
录像策略更新失败反复请求
MSU(5.3.4.7) 2009-06-29
修正了重新设置抓拍间隔不生效的问题.
MSU(5.3.4.7) 2009-06-24
根据请求视频的结果重新查询路由
修改http接收函数(为支持图片传送).
修改http格式检测函数.
支持中心快照(自动抓拍,告警抓拍)
MSU(5.3.4.6) 2009-06-19
系统磁盘空间不足自动停写日志。
MSU(5.3.4.5) 2009-06-11
更加及时的刷新文件类型(第一次写视频数据时无条件刷新)
SIP请求超时由60秒改为30秒。
设备不在线时重新请求时间间隔改为20秒。
CALL-ID冲突时重新请求的时间间隔5秒
发送SIGUSR1时生成策略调试信息中加上多域信息。
MSU(5.3.4.5) 2009-05-25
向网管模块输出运行时信息
切文件时I桢处理,复制前一个文件最后一个I桢及之后的数据到新文件的起始处。
MSU(5.3.4.4) 2009-05-25
打印出视频流格式出错时信息。
输出所请求到的策略的完整信息。
MSU(5.3.4.3) 2009-05-16
MSU(5.3.4.2) 2009-05-08
1,更改部分配置参数名以便于网管模块统一管理
2,生成core文件用于出错后调试
MSU(5.3.4.1) 2009-04-28
多域支持
MSU(5.3.1.3) 2009-04-22
MSU(5.3.1.2) 2009-04-15
MSU(5.3.1.1) 2009-03-27
以下修改:
1, 每块磁盘的保留空间可配置(0.05)
2, 修正磁盘满时创建文件失败后会将磁盘标记为错误并剔除的BUG
3, 日志目录可指定相对路径,重命名日志时选择与时间相关的友好的日志文件名。
MSU(5.3.1.0) 2009-03-17
设置磁盘保留空间为1%, 最大15G,最小1G。
MSU(5.3.0.9) 2009-03-12
忽略套接口(视频流接收)poll可读后读取产生EAGAIN的错误。
MSU(5.3.0.8) 2009-03-08
当MSU与MDU在同一台主机上时通过进程间通信方式直接获得视频流。
磁盘空间不足告警上传
MSU(5.3.0.7) 2009-02-27
修正单个磁盘出错时导致的“磁盘满”,“切盘”,“删盘”...逻辑。
RTP丢包统计修正:每秒丢XX个包,应接收XX个包,丢包率..%
MSU(5.3.0.6) 2009-02-24
2,在视频数据桢链式缓冲的基础上增加块缓冲,在不预录的情况下使用块缓冲优化内存使用。
(修正,文件头更新不及时,点播时显示“正在传送视频流。。。”)
MSU(5.3.0.6) 2009-02-18
1,ENVS EVOC Linux上struct dirent:d_type字段无效,通过struct stat:st_mode字段获得文件
类型
2,在视频数据桢链式缓冲的基础上增加块缓冲,在不预录的情况下使用块缓冲优化内存使用。
3,自动挂载/dev下的磁盘设备
MSU(5.3.0.5) 2009-01-16
增加停止手动,告警录像命令接口
完善域名机制
MSU(5.3.0.4) 2009-01-15
MSU(5.3.0.3) 2009-01-13
较时开关
MSU(5.3.0.2) 2009-01-05
支持TCP录像
更改端口规则
MSU(5.3.0.1) 2008-12-30
路由支持
MSU(5.2.0.5) 2008-12-5
MSU(5.2.0.4) 2008-11-26
rtp头增加扩展字段
更改切换文件时的I帧请求机制
MSU(5.2.0.1) 2008-11-15
删盘时跳过出错的磁盘
MSU(5.0.1.3) 2008-11-10
向MDU请求视频ambigous后重新发bye,解决MDU对SIP发起端记录残余时请求不了视频的问题。
解决时间设置倒退时产生的问题.
设置磁盘的保留空间为0.5%,最大5G, 最小500M
MSU(5.0.1.2) 2008-10-25
MSU(5.0.1.1) 2008-10-18
去掉告警联动模块,告警录像由CMU主动通知
增加较时功能
MSU(5.0.1.0) 2008-09-28
MSU(5.0.0.9) 2008-09-28
MSU(5.0.0.8) 2008-09-26
改变数据接收模块
MSU(5.0.0.8) 2008-09-24
由按帧数缓存改为按字节缓存
MSU(5.0.0.8) 2008-09-19
MSU(5.0.0.7) 2008-09-11
写盘线程数可调, 大块写入。
MSU(5.0.0.7) 2008-09-11
单线程写盘
MSU(5.0.0.7) 2008-09-10
1,数据就绪后发送给写线程(写盘).
2,减少写盘次数,由以前每帧一写改为组成尽可能大的数据块后再写。
3,增加内存池, 优化动态内存管理。
MSU(5.0.0.6) 2008-09-04
替换SIP解析库
MSU(5.0.0.5) 2008-08-29
增加告警联动录像功能(不预录)
MSU(5.0.0.4) 2008-08-23
MSU(5.0.0.3) 2008-08-15
MSU(5.0.0.2) 2008-08-06
去掉索引文件(.idx)
MSU(5.0.0.1) 2008-08-01
MSU 测试版(4.0.0.12) 2008-07-29
添加域名支持
MSU 测试版(4.0.0.11) 2008-07-15
即时请求mdu ip.
录像策略更新
MSU 测试版(4.0.0.10) 2008-06-27
优化poll集产生方法.
MSU 测试版(4.0.0.9) 2008-06-26
在msu.disk.log里面记录磁盘信息
MSU 测试版(4.0.0.8) 2008-06-25
MSU 测试版(4.0.0.7) 2008-06-20
修正某些版本Linux dirent->d_type为符号链接时可能引起的删盘bug
MSU 测试版(4.0.0.5) 2008-06-17
启用循环覆盖时正在录相的文件不受影响
MSU 测试版(4.0.0.4) 2008-06-16
修正自动删盘的部分bug
MSU 测试版(4.0.0.3) 2008-06-16
增加切换文件时I帧请求功能
MSU 测试版(4.0.0.1) 2008-06-06
=================================================================================
# 配置文件样式:example
# 配置文件:msu.conf
# "#"号用于注释无关行
$msu_id=这里写ID(从BSS获得)
$cmu_ip=这里写中央管理单元(CMU)的IP地址或域名
# 注意前面的$符号, 以上两项必填,否则注册不能成功
# 设置切文件的大小,单位为分钟,1~120分钟是合理的值。例如:
$change_file_minutes=10
# 循环覆盖参数
# 设置删盘时每次删的空间大小,单位GB,如:
$del_size=5
# 设置删盘的阀值大小(当剩余磁盘空间小于此值时开始删盘),单位GB,如:
$del_triggered_left_size=1
# 映射格式:
# 第一列: 分区映射到本地的挂载点名(格式hd0,hd1,hd2...),此将建立在以-D指定的目录下.
# 缺省为/record
# 第二列: 映射类型,为nfs(NFS)(对端必需开启NFS服务)或local(LOCAL)
# 第三列: 源路径,可为本地或网络(通过nfs可达)的路径
# 第四列: 指定大小(M,G),若为auto(AUTO)则自动获得分区大小(建议使用)
hd0 local /tmp 200G
hd1 nfs 192.168.6.5:/nfs/nas auto
===================================================================================
注意事项(Attentions):
0, 对于错误或恶搞的配置,MSU可能不会工作。
1, MSU将在MSU_CONFIG_PATH环境变量所指的目录下查找名为msu.conf的文件,如果没有则在/etc下查找msu.conf。若配置文件查找失败,则启动失败。
2, 运行时若不在命令行下以-D指定各分区挂载点之父目录(即录像文件结构树之根结点在本地文件系统中位置),那么录像将被保存在/record下。
3, 运行时请仔细核对磁盘映射之大小值(默认在/var/log/msu.disk.log中查看)是否与本地磁盘或对端之网络存贮设备大小符合,特别是手动配置映射大小时(自动默认为一个逻辑分区。手动指定大小会挂起磁盘大小同步检测机制,在无人工干预的情况下才能正常工作)。
4, MSU对每个映射留有保留空间(总空间的0.005, 最大5G,最小1G),所以“录不满”现象是可能的,欲知磁盘使用情况,请查看msu.disk.log(在-d 所指的目录下,默认为/var/log)
5, MSU允许在命令行指定参数,如:功换文件的大小(-f),取消屏幕输出-s,取消日志-S等等。对于既能在配置文件又能在命令行指定的参数,若同时出现则以配置文件为依据。
使用 ./msu --help 获得更多帮助
===================================================================================
录像服务器配置参数(示例):
基本配置:
$msu_id=000309 (录像服务器ID)
$cmu_address=santachi.com (CMU IP或域名)
$msu_file_minutes=10 (切换文件大小)
$msu_del_size=200 (每次删盘大小GB)
$msu_triggered_size=20 (触发删盘的剩余空间大小GB)
$log_dir=/var/log (日志目录)
$msu_log_size=10 (日志循环覆盖时的大小MB)
$msu_record_root_dir=/record (录像文件树根所在位置)
$msu_hd_res_percent = 0.05 (磁盘保留空间比例)
$disable_msu_screen_display=yes (是否禁止标准终端输出)
$disable_msu_log=no (是否�