背景
阿里云日志服务(SLS)支持将日志或查询分析结果下载到本地,并提供了控制台、Cloud Shell、SLS CLI以及SLS SDK四种下载方式下载日志。控制台下载的方式无需用户进行额外的配置或部署,只需一些简单的控制台操作便可完成下载,相较于另外三种方式更加便捷、易用,也更受大部分用户的青睐。
在本次功能升级前,控制台一次最多只能下载100条日志,更大量的日志下载场景只能选择其他三种方式。控制台下载的易用性使其成为大部分用户下载日志的首选,然而100条日志的单次下载限制又让大部分用户不得不选择其他的下载方式。基于以上问题,本次发布对控制台下载功能进行了升级,期望控制台下载的方式可以满足绝大部分用户的日志下载需求。
下载方式对比
日志服务目前提供控制台、Cloud Shell、SLS CLI以及SLS SDK这四种方式下载日志。这四种方式的对比如下
控制台下载 |
CloudShell下载 |
SLS CLI下载 |
SLS SDK下载 |
|
最大下载量 |
查询:20 GB 分析:2 GB |
100万条 |
无数量限制 |
无数量限制 |
部署 |
无 |
自动部署 |
需手工安装CLI |
手工部署 |
密钥 |
无 |
自动配置 |
需要手动配置 |
需要手动配置 |
局域网下载(不产生公网流量费用) |
无 |
仅支持上海地域 |
支持(需要部署在对应地域的ECS上) |
支持(需要部署在对应地域的ECS上) |
NAS集成 |
无 |
自动 |
手动配置 |
手动配置 |
注:Cloud Shell、SLS CLI或SDK下载方式无数量限制,但可能由于网络等不确定因素,出现下载中断问题。
通过控制台下载
日志服务支持通过控制台直接将日志或查询分析结果下载到本地,两者的下载操作类似。如果您要下载查询分析结果,可在执行查询分析操作后,在统计图表页签中,单击下载日志。
1. 直接下载日志
登陆日志服务控制台,在Project列表区域,单击目标Project进入。进入目标Project之后,在日志存储 > 日志库页签中,单击目标Logstore进入。在原始日志页签中,点击下载logo,并选择下载日志。
在弹出的日志下载对话框中,完成如下配置,然后单击确认
其中各个配置项的说明如下
参数 |
说明 |
参数类型 |
时间范围 |
下载日志的时间范围 |
自动填充 |
查询语句 |
直接下载日志时,查询语句为空;下载查询分析结果时,展示对应的查询分析语句。 |
自动填充 |
任务名 |
下载任务的名称 |
选填,不填时系统会给一个随机的名称 |
日志数量 |
展示当前下载的日志数量 |
自动填充 |
数据格式 |
支持CSV格式和JSON格式。
|
必填,默认CSV |
压缩方式 |
支持gzip、lz4、zstd等压缩方式,也支持不压缩。 当下载的日志数量比较多时,强烈建议采用压缩方式,可显著降低下载量,减少文件的下载时间。 |
必填,默认gzip |
排序规则 |
日志的排序规则,按时间升序还是降序排列。 |
必填,默认按时间升序排列 |
quote字符 |
使用单引号还是双引号作为quote |
必填,默认使用双引号作为quote |
是否下载不精确的结果 |
下载查询分析结果时,如果查询分析结果不精确,是否继续下载。 |
必填,默认否 |
完成上述配置后,单击确认,系统将弹出日志导出历史对话框,展示直接下载的任务列表。等待任务状态为任务成功后,您可以单击下载,下载日志到本地。
您后续也可以在原始日志页签中,点击下载logo,并选择日志导出历史,打开日志导出历史对话框(目前控制台支持保存最近1天内的导出记录,超过1天的导出记录被自动清除)。
2. 下载查询分析结果
日志服务除了支持通过控制台直接将日志下载到本地外,也支持下载查询分析结果。两者的下载操作类似。如果您要下载查询分析结果,可在执行查询分析操作后,在返回结果的统计图表页签中,单击下载日志。
后续的配置以及下载步骤与直接下载日志的完全一致,可参考上一节的内容。
3. 限制说明
下面列出了控制台下载功能的一些使用限制以及注意事项:
- 单次最多下载100万条日志。超出时,仅下载前100万条,如果需要下载全量日志,可缩小查询的时间范围,分多次下载。
- 单次最多下载10万行分析结果。超出时,仅下载前10万条,如果需要下载全量的分析结果,可缩小查询的时间范围,分多次下载。
- 单个阿里云账号最多支持3个并发下载操作(总下载次数无限制)。超出3个并发下载操作或多个RAM账号同时操作时,可能报错,此时您可等待其他操作完成后,再重试。
- 支持保存最近1天内的导出记录,超过1天的导出记录被自动清除。
- 在遇到网络错误或者查询不精确时,系统会自动重试下载任务。如果重试3次后,仍无法完成下载,则下载任务为失败状态。
其他下载方式
1. 通过Cloud Shell下载
您也可以通过Cloud Shell下载日志。更多信息,请参见使用Cloud Shell下载日志数据。
注意:目前Cloud Shell位于上海地域,如果当前Logstore不在上海地域,下载日志会产生一定的公网流量费用。价格详情请参见产品定价。
2. 通过SLS CLI下载
当您需要下载更大数量的日志时,可通过SLS的命令行工具下载。 更多信息,请参见使用日志服务CLI。
注意:
- 通过命令行工具下载日志时,需替换命令中的AK信息。请登录用户信息管理控制台获取阿里云账号AK。如果使用RAM用户进行下载,请登录RAM 控制台创建RAM用户并用RAM用户的AK信息。
- 如果用于安装命令行工具的机器的所在地域与当前Project所在地域相同,建议切换为内网endpoint,下载速度更快且不会产生额外的外网带宽费用。
3. 通过SLS SDK下载
当您需要下载更大数量的日志时,可通过SDK下载。 更多信息,请参见SDK参考概述。
结语
下面是 SLS 团队的技术博客,我们会不定期推出技术文章分享和产品更新介绍,欢迎大家订阅,有任何问题也欢迎与我们反馈。