• EasyDSS视频平台DASH版本发现日志打印panic排查及解决方式


    之前我们和大家分享过EasyDSS开发的Dash版本,EasyDSS新增Dash版本后,可允许客户端根据网络带宽情况自动选择合适的码流进行播放,便于适应网络带宽抖动,同时最大程度上为终端用户提供最好的服务质量,此外,拥有Dash技术的EasyDSS还在CDN分发方面有着更大的优势。

    当我们测试EasyDSS_DASH版本时,运行程序后发现日志打印panic,如下图:

    一般该问题出现的原因大部分都是Linux kernel不知道如何走了,它会尽可能把它此时能获取的全部信息都打印出来,程序中出现panic会导致程序不稳定、宕机。当发生panic之后,当前函数使用了recover,则捕获了这个错误,如上图,可以看到发生错误的位置。

    经查询,发现问题出现panic,是程序代码逻辑有问题,问题出现在查找录像快照的方法中,FindAllString()返回一个数组,再取值下标未做判断越界,导致程序报panic。如下图:

    此处我们优化代码,当再次获取到string数组时,系统会根据其长度大小判断所取值下标是否越界,以此来避免该类报错内容的出现。

  • 相关阅读:
    xp系统
    如何进去bios设置
    MySQL快捷键
    显示数据库中的所有表和所有数据库
    Codeforces Round #375 (Div. 2) B
    Codeforces Round #375 (Div. 2) A
    2015 AlBaath Collegiate Programming Contest B
    2015 AlBaath Collegiate Programming Contest A
    AIM Tech Round 3 (Div. 2) B
    AIM Tech Round 3 (Div. 2) A
  • 原文地址:https://www.cnblogs.com/easydss/p/14867954.html
Copyright © 2020-2023  润新知