NGINX作为HLS直播流的wowza前的热缓存-获得每个流的数据持续时间和传输的数据



我已经在Wowza>HTTP Origin应用程序前面将NGINX设置为热缓存服务器,以充当边缘服务器。该配置在HTTPS上运行良好,具有nDVR和自适应流媒体支持。我在互联网上搜索了配置NGINX和/或其他解决方案的示例和帮助,以提供实时统计数据(每个流名称的观看者数量),并解析日志,为我提供每个流名称/会话的流持续时间和每个流名称-会话的数据传输。HLS流的NGINX日志记录每个视频块。使用Wowza,当流被破坏时,通过从日志中读取持续时间或传输的字节值来获得这些数据会更容易。。。在这个问题上的任何帮助都将不胜感激。非常感谢。

Nginx不知道块是什么。它只是通过HTTP向客户端提供资源,并不知道或关心它们之间的相互关联。因此,您必须从日志中获得所需的数据。

要将客户端请求关联为一个请求,您需要某种方法来跟踪请求之间的状态,然后记录该状态。Cookie是一种常见的方法。或者,您可以在请求URI中放入某种会话标识符,但这会损害您的缓存能力,因为每个客户端都在有效地请求不同的资源。

一旦您记录了某种会话ID,您就可以使用Elastic Stack等工具处理这些日志,将您要查找的报告拼凑在一起。

根据您的目标,您可能会发现从客户端获取数据更好。在那里,您可以更好地了解会话的实际内容,然后可以记录客户端项目,如缓冲区级别和延迟等。HTTP请求并不能真正告诉你最终用户所获得的体验。如果这是您想要知道的,那么您应该使用来自客户端的日志,而不是来自HTTP服务器的日志。您的HTTP服务器日志对于调试底层技术基础设施问题非常有用。

最新更新