【问题标题】:See HLS viewer number in Nginx + RTMP module查看 Nginx + RTMP 模块中的 HLS 查看器编号
【发布时间】:2020-05-17 11:29:14
【问题描述】:

我正在尝试使用RTMP module 获取 Nginx 中 HLS 查看器的实际数量。

我尝试了this 解决方案,但它没有给我真实的数字,我想可能是因为它没有计算以 HLS 格式拉流的观众。

有什么“好”的方法可以实现吗? 谢谢。

【问题讨论】:

    标签: nginx rtmp


    【解决方案1】:

    有一种方法是统计最近 10 到 20 分钟内请求 HLS/DASH 分片的 IP 数量:

    #!/bin/bash
    
    date_prefix=$(date +'%d/%b/%Y:%H')
    cur_min=$(date +'%M')
    cur_min_decimal=${cur_min:0:1}
    if [[ $cur_min_decimal == '0' ]]
    then
        prev_min_decimal=5
    else
        prev_min_decimal=$(($cur_min_decimal - 1))
    fi
    cur_minuted_date="${date_prefix}:${cur_min_decimal}"
    prev_minuted_date="${date_prefix}:${prev_min_decimal}"
    
    tail -n 10000 /var/log/nginx/access.log \
        | grep -E 'GET /(hls|dash)/key-' \
        | grep -E "${cur_minuted_date}|${prev_minuted_date}" \
        | awk '{print $1}' \
        | sort \
        | uniq \
        | wc -l
    

    如果你想在网站上展示它,你可以每分钟 CRON 该脚本并输出到/var/www/html 文件夹中

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-06
      • 2019-09-05
      • 2015-03-08
      • 2021-01-08
      • 1970-01-01
      • 1970-01-01
      • 2016-12-10
      • 1970-01-01
      相关资源
      最近更新 更多