Ubuntu 如何使用crontab 定时检查srs进程
用了幾年srs,優秀 優秀 優秀的很?視頻服務,簡單易用,關鍵純國產免費還有一堆的技術人員開發改進。
1. srs的簡單介紹:
是一個簡單高效的實時視頻服務器,支持RTMP/WebRTC/HLS/HTTP-FLV/SRT。
http://www.ossrs.net/
2. 最近遇到點問題,偶爾srs 會異常退出,其實我已經用幾年了最近才出現重啟問題,我們需要實時24小時提供服務,可能不能掉鏈子。
作者 楊老大 提供了 WiKi:
https://github.com/ossrs/srs/wiki/v3_CN_LinuxService
3. 開始我沒找到作者提供的LinuxService, 我們搞了個簡單crontab,簡單能用,分享下給大家。
4. 運行環境:
? ? 操作系統:? Ubuntu 16.04.2 LTS
? ? srs 版本:?srs-3.0-r2
? ? 安裝目錄:/etc/srs/srs-3.0-r2
5. 在/etc/srs 目錄下新建 srsmonitor.sh, 復制下面的腳本,記得按自己的安裝目錄改下
proc_name 的變量,里面是你的需要查找的srs 進程名字,不能簡單的輸入 srs,因為我們可能我們正好在 tail -f srs.log ,自己也可以測試下 ps -ef | grep "objs/srs" 驗證下。
然后修改srs的啟動命令,記得先用cd 到你的根目錄,然后再啟動。
#! /bin/shhost_dir=`echo ~` proc_name="objs/srs" file_name="/etc/srs/srsmonitor.log" pid=0proc_num() {num=`ps -ef | grep $proc_name | grep -v grep | wc -l`return $num }proc_id() {pid=`ps -ef | grep $proc_name | grep -v grep | awk '{print $2}'` }proc_num number=$? echo "start" >> $file_name echo $number, `date` >> $file_name if [ $number -eq 0 ] then cd /etc/srs/srs-3.0-r2/trunk && ./objs/srs -c ./conf/srs.confproc_id echo "restart" >> $file_name echo ${pid}, `date` >> $file_name fi弄好了文件,接下來自己在命令行下運行下 sh?srsmonitor.sh 看看效果,分別在srs運行的時候和沒運行的時候執行測試下,是否能自動把 srs啟動起來,如果成功了 就下一步。
6. 添加定時任務
? ?crontab -e
*/1 * * * * sh /etc/srs/srsmonitor.sh直接復制過去,意思是1分鐘執行一次 srsmonitor.sh,如果你的目錄不同記得改下目錄。
7. 可以看下執行日志 tail -f /etc/srs/srsmonitor.log
8. 再有問題,翻閱 srs 的WiKi吧。
總結
以上是生活随笔為你收集整理的Ubuntu 如何使用crontab 定时检查srs进程的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: python 梦幻西游_GitHub -
- 下一篇: QOpenGLWidget 第二篇EBO
