阿里云DDoS高防 - 访问与攻击日志实时分析(四)
概述
本文介绍了DDoS日志的费用计量细节与案例。
费用概述
DDoS日志分析与报表功能依赖日志服务提供日志数据的实时查询与分析功能。当您开通DDoS访问与攻击日志实时分析功能时, 需要您根据界面提示开通日志服务和授权。
日志服务日志服务计费方式为按量计费,费用与打开日志分析的网站所产生的访问和防护日志数量有关,开通日志服务但没有为任何网站打开日志的情况下,是不会产生任何费用的。日志服务同时提供特定的免费额度,打开日志分析的网站的日志量在免费额度内的,也不会产生任何费用(具体参考后面内容)。
日志存放位置与周期
当您在DDoS控制台为特定DDoS的防护网站打开了日志分析的功能时, DDoS会实时将相关网站的访问和防护日志导入到您拥有的日志服务的专属日志库中。默认打开日志分析的网站的日志都会集中放到这一个日志库中,并配置默认3天的存储周期(超过3天的日志会自动被删除)。
专属的日志库名字是ddos-pro-logstore
,存放于日志服务的项目ddos-pro-project-阿里云账户ID
中。
免费额度
DDoS的日志分析服务的费用主要由导入的日志量以及存储的时间两个主要因素有关,并提供100GB/天的日志一次性导入量和3天的免费存储时间。另外,基于日志的查询分析、统计报表和报警等功能是免费的。
例子
每天有6千万条日志,存储周期3天,总日志量约为 96 GB/天(估计平均每条日志1600字节左右),符合免费额度。
超过免费额度的日志导入的收费标准
当开启日志分析的网站的总日志量超过免费额度时,将对超出部分按照日志量收取费用。具体按照索引与传输的数据量收费。
日志导入量 | 索引:100GB/天 传输:30GB/天 |
索引:0.35 元/GB 传输:0.18 元/GB |
索引:0.665 元/GB 传输:0.342 元/GB |
说明
1) 索引:索引根据实际索引字段进行计算,在写入时一次性收取存储费用。DDoS的日志默认是全索引开启。
示例1:日志量为 150 GB/天,则以 50 GB (= 150GB - 100GB) 计费,为 0.35 x 50 = 17.5 元/天
2) 传输:传输是指因为写入而产生的流量,传输流量为压缩后的大小。DDoS的日志传输是压缩的. 一般有5~10的倍压缩率。注意:通过控制台进行的查询、统计、报表和报警等功能所产生的读取流量不收取任何费用。
示例2:日志量为 300GB/天,实际压缩大小约为 50GB(按照6压缩比算),则以 20GB (=50GB - 30GB) 计费,为 0.18 x 20 = 3.6 元/天
3) 扣费周期为天; DDoS专属Logstore的免费额度的清零周期为天.
超过免费额度的日志存储的收费标准
当用户主动修改日志库的存储周期从3天改为更长时间时,超出部分需要收取额外的费用。
存储空间 | 3天 | 0.0115 元/GB*天 | 0.01725 元/GB*天 |
说明
1) 存储空间大小:存储空间为压缩后原始数据量与索引数据量之和
示例3:每天 1GB 数据,压缩后为 200MB,全文和字段索引(大小为 1GB)。存储周期为 30 天,则30 天后累计 最大存储量为 30 ×(1000+200)= 36GB,去掉3天免费额度后 为 27 * (1000+200)= 32.4 GB, 一天存储最大收费为 0.0115 × 32.4 = 0.3726 元。
示例4:每天 10GB 数据,压缩后为 2GB,全文和字段索引(大小为 10GB)。存储周期为 30 天,则30 天后累计 最大存储量为 30 ×(10+2)= 360GB,去掉3天免费额度后 为 27 * (10+2)= 324 GB, 一天存储最大收费为 0.0115 × 324 = 3.726 元。
超标准情况下的其他额外费用
为了防止资源被滥用,日志服务也对超标准的活跃分区数、读写次数和外网读取等进行了约束。对异常超额的资源收取因的费用,但价格非常低廉。
活跃 Shard 租用 | 4 个*天/月 | 0.04 元/天 | 0.04 元/天 |
读写次数 | 1百万次/天 | 0.12 元/百万次 | 0.12 元/百万次 |
外网读取流量 | 0 | 0.8 元/GB | 0.8 元/GB |
说明
1) 活跃Shard租用:Shard指日志库的分区,默认是2个,并支持自动扩展。一般每个Shard可以支持430 GB/天的数据写入量,租用只统计当前读写 Shard 的数量。已经被 合并/分裂 的 Shard 不收取租用费。用户可以在
示例5:目前有 10 个 Shard,7 个 Shard 的状态为读写,另外 3 个 Shard 已经被合并为只读,DDoS专属的Logstore总体每天只收取 3个 (7个-4个) Shard的租赁费 0.12 元/天。
2) DDoS默认的Logstore的Shard数量是2个, 并且开启自动Split功能.
3) 读写次数:日志读取和写入日志服务的次数,由您的日志产生速度决定。后台实现机制会尽量减少写入次数(最多可批量4000条/次)。
示例6:每天网站日志为100亿条,写入次数约为50W次(平均2000条/次),免费。
4) 外网流量:被外网程序读取消费所产生的数据流量。
示例:2GB日志服务数据被投递至非阿里云产品,产生外网读取流量1.6元。
常见问题
1. 如何将网站日志存储更长时间?
在DDoS的日志分析与报表的控制台,选择高级管理
,在跳转的连接中,选择专属的DDoS的日志库,选择修改
,在弹出框中修改存储周期。
2. 如何查看当前日志量并预估费用?
可以在阿里云的费用管理中心中查看每天定时刷新的费用计量数据。
也可以在DDoS的日志分析与报表的控制台中,选择日志分析
,在查询框中,输入如下SQL:
__topic__: ddos_access_log | select count(1) as PV
并用时间选择器选择整点时间 > 昨天
,就可以得到过去一天的日志条数,再结合当前日志库配置的的存储周期,预估费用状况:
示例7:假设每天1亿条日志,存储时间为7天。
总日志量约为 160 GB/天(假设每条日志 1600 Bytes),传输为26.7 GB/天(按照压缩比为6算)在免费额度内,额外流量导入费用为:索引 0.35 元/GB x (160 GB - 100GB免费额度) = 21 元/天。
存储时间改为7天,那么7天后,额外收费的最大存储量为:192 GB(160 GB 索引 + 32 GB原始压缩)* 4天(7天 - 3天免费) = 768 GB,那么每天的额外存储费用为:0.0115 元/GB × 768 = 8.832 元。
那么每天的费用约为:29.832 元
3. 如何在大量日志量产生时获得报警?
如果希望在日志量过大,且可能超过特定数据量(例如免费额度的100GB/天)的情况下获得通知,可以进行如下操作。
在DDoS的日志分析与报表的控制台中,选择日志分析
,在查询框中,输入如下SQL:
__topic__: ddos_access_log | select count(1) as PV
并点击另存为快速查询
,保存并给与一个名字,例如ddos-metering-pv
,点击确定。
然后点击另存为告警
,并按照如下配置一个每5分钟跑检查一次过去1小时的日志量是否超过了560万条。
注意:这里假设每天100GB免费导入量的情况下,推算每小时平均导入量为:100GB / 1600 字节/条 / 24小时 ~= 280 万条。这里在560万条(2倍每小时日志量)的情况下报警,可以根据实际情况和需要做适当调节。