摘要: 阿里云CDN上线了实时日志功能,打通日志服务(SLS)的能力,将CDN采集的实时日志,在小于60秒的时间内投递至日志服务,进行实时、交互式分析和报表呈现。经过CDN日志的实时分析,能够快速的发现和定位问题,进而对日志数据的挖掘,提升数据的决策能力,将业务推向一个新的高度。html
CDN是很是重要的互联网基础设施,用户能够经过CDN,快速的访问网络中各类图片,视频等资源。在访问过程当中,CDN会产生大量的日志数据,而随着现在愈来愈复杂的网络环境变化,和业务的迅速增加,日志数据变得更大量、更多维度。这些数据一般都与用户的下一步业务决策息息相关。数据库
在与CDN用户的沟通中,咱们发现一般用户会面临如下困境:缓存
• 用户无数据 : CDN的访问日志,由各大CDN产商上产生,用户不可直接获取。现阶段,绝大部分的CDN产商都只提供离线日志下载,日志数据从产生,到用户可下载,须要几十分钟到数个小时不等。这样大的数据产生延时,大大削减了实时流处理、报警等高实时性要求场景的分析价值。网络
• 多种分析需求:为了解决各种定制化的分析需求,一般的作法是搭建和运维开源系统,如用于作数据通道的kafka、流式分析的storm或flink、作数据分析的spark、hadoop等。运维
• 可视化需求:对于最终的分析结果的展现,依赖数据库(结果集小)、HBase(结果集大)存储结果,再经过对接各可视化工具来完成。ide
综上所述,更实时地、详细地关注和分析日志的需求逐渐显露,可是普通用户对CDN日志进行实时、离线分析又并不容易,须要付出搭建、运维和管理成本,为了完成需求,有时还须要编写很多代码,但最终并不必定能获得很好的效果。整个CDN实时日志涉及的环节多,对服务质量也有严苛的要求,技术挑战比较大。那有没有更好的解决办法么?工具
近期,阿里云CDN上线了实时日志功能,打通日志服务(SLS)的能力,将CDN采集的实时日志,在小于60秒的时间内投递至日志服务,进行实时、交互式分析和报表呈现。经过CDN日志的实时分析,能够快速的发现和定位问题,进而对日志数据的挖掘,提升数据的决策能力,将业务推向一个新的高度。点击跳转CDN实时日志专题页,了解功能详情。oop
CDN实时日志为实时采集的日志数据,日志数据延迟平均不超过30秒。同时,CDN打通了日志服务分析的能力,为客户定制4张分析报表,可快速对日志进行分析,发现问题,及时决策。而CDN提供的离线日志下载,只能下载4小时前的每小时日志数据。性能
• 数据实时采集 : 在直播推流、播放期间,都会产生大量日志,须要在秒级延时内,实时采集这些日志到日志中心。大数据
• 数据清洗:日志采集后,对数据进行清洗,以知足不一样场景的处理需求(如,对不一样域名日志的定制化分析)。
• 数据处理和存储 : 对于不一样的应用场景,数据的处理和存储方式也不尽相同 。
传统的日志分析模式,须要您将日志下载后,从新上传至数据仓库,在数据仓库进行一系列的清洗和数据模型定义后,再进数据分析,这个过程须要维护的人力较多,时间较长。
CDN实时日志能够从全球多个区域、数万节点实时采集日志,一般延时不超过60秒,不然日志的实时价值大打折扣。同时,在开通服务后,CDN将日志数据自动投递到日志服务(SLS),免去繁琐的传统日志分析的流程,实时查看日志分析结果。
前面也提到,想要自行搭建日志系统,解决业务定制化的需求,开发、运维、管理的成本是比较高的,接入CDN实时日志系统,可让开发者回归业务的创新和性能自己,减小没必要要的投入。
CDN实时日志系统支持天天千亿、万亿的日志7*24小时不间断采集,并实时对海量日志进行多维度分析,流计算系统在毫秒级。让用户远离日志分析中的各种繁杂“杂事”,更加专一于和业务更紧密、更有价值的数据“分析”上。
同时,实时日志能够轻松应对数据处理组合维度大、计算复杂度大、各种流量高峰冲击等业务场景。保存日志供用户下载的对象存储系统(Oss)可提供数据高吞吐下载能力,复杂的分析场景,可由数仓系统来支持。
最终分析结果的展现也很是关键,CDN实时日志能够为用户提供基于业务的可视化报表服务,用户可轻松地掌控业务健康度、缓存命中率、平均下载速度、流量状况、网速、运营商、延时分布等数据。
在CDN场景下,对服务的可用性、性能要求苛刻,须要对于各种异常进行实时、准确的报警,这就须要依赖可靠的监控报警系统。CDN日志系统将来将和监控、告警、处理机制联动,自动化的解决常规问题,缩短业务故障的时间,避免用户损失。
在直播场景下,CDN日志实时投递至日志服务以后,能够作几个典型的实时分析。
直播推流数据很是重要,当有了直播推流的日志以后,可掌控推流端各类实时状态:
• 推流概览 : 实时知道当前的推流数量、各个推流的流量和速度、从各省、运营商维度统计
• 推流质量:多维度的推流质量统计、重点推流的实时质量监控
• 错误根源追踪:快速定位错误产生的源头(直播源、服务端、客户端、运营商)
下图是直播推流的各项监控统计,从总体的推流质量上来看,99%以上的推流都是正常的,说明推流的质量很是好。
下表统计了各种错误的产生缘由,能够看到最大的错误来源是客户端主动断开。
播放端(CDN下行)是用户直接接触,其质量直接决定用户观看体验,在下行日志中,我也能够从多个维度进行分析:
• 总体质量:
健康度 : 在全部的访问中,有多少请求是成功的
Cache命中率 : 命中率越高,用户访问延时越低,体验越好
下载速度 : 这也是关系到播放质量的重要因素
• 多维度分析:
top域名访问次数、流量 : 重点域名的访问质量
地域、运营商统计:各个链路的质量
下载量、速度、延时:多项关键指标
• 错误诊断:
实时错误QPS、比例 : 总体错误状况
错误Top 域名、URI : 错误是否和自身相关
错误Top 地域、运营商 : 错误是否和外部因素相关
错误客户端分别 : 是不是新发布版本引入的问题
在下图中,能够看到,绝大部分错误,都是发生在这个客户端版本,就须要怀疑是否是新的版本发布带来的呢?
用户的访问行为,最终可体如今日志上,经过日志的分析,了解到用户是如何进行访问的,哪些资源是热门资源,经过用户的来源,更清楚了解用户来源,之后的运营推广也能够更具备针对性,除此以外,对异常IP进行监控,可更早发现异常,如高频访问的IP,是否存在爬取数据的嫌疑。
Demo演示:
当系统出现报警或有用户投诉的状况下,通用的处理流程每每是类似的:
在这个过程当中能够发现,整个分析流程,是从上到下、从面到点、交互式的分析,涉及到Drill Down/Roll Up等多方面。所以,灵活和方即是系统必备的两项。在如下的视频中,展现如何在日志服务中,对CDN日志进行交互式的分析。
另外,咱们也提供了一个Demo,能够实际体验一下Mock的CDN日志分析:Demo链接
目前实时日志功能已经在CDN控制台上线,用户能够经过简单操做,快速的、无障碍的使用CDN实时日志的能力。主要步骤以下:
一般,实时日志按照推送成功条数,每万条0.06元进行付费,该费用已经包含日志服务分析的费用。所以,在必定使用边界内,您无需支付任何的日志服务费用。
可是在如下状况下,您还须要支付日志服务的费用:
1.日志存储超过7天的存储部分,由日志服务单独收费。
2.日志服务的外网读写费用。