CLI使用案例6:使用CLI的灵活时间格式来执行查询、报警和下载等

本文涉及的产品
对象存储 OSS,20GB 3个月
文件存储 NAS,50GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
简介: 在查询、统计、拉取时需要传入时间范围,经常需要传入更灵活的参数,如:"今天凌晨","昨天","3天前","现在"等参数时。现在CLI也支持了!

使用CLI的灵活时间格式来执行查询、报警和下载等

介绍

在查询、统计、拉取时需要传入时间范围,但是经常我们需要传入更灵活的参数,如:"今天凌晨","昨天","3天前","现在"等参数时,大脑需要费力的换算成对应的时间格式,如"2018-8-1 10:10:00"等。
另一方面,用脚本定期跑的时候,需要相对这样的相对值,例如,每5分钟查询,过去60分钟的范围的数据是否有异常等。每次执行希望有一个时间范围是:过去60分钟到现在。

现在这样的方式CLI支持了!

支持的方法

以下方法的参数,如from_timeto_time等目前也接受相对时间了。

方法 作用
get_log 查询统计数据(参数放在文件中),未完成时自动重试。
get_logs 查询统计数据(参数放在命令行中),未完成时自动重试。
get_log_all 迭代式查询更大量的数据,未完成时自动重试。
pull_log 基于服务器接受时间范围,批量拉取特定shard的数据。
pull_log_dump 并发批量下载logstore所有shard的数据到本地。
get_cursor 获取特定服务器时间特定shard的游标(以便基于游标拉取数据)
copy_data 基于服务器时间复制数据到目标logstore
transform_data 基于服务器时间转换数据到目标logstore

支持的时间格式

除了常规的格式,例如:"%Y-%m-%d %H:%M:%S+8:00"的例子"2018-01-02 12:12:10+8:00";
也支持"1 hour ago", "now", "yesterday 0:0:0"等格式了。更多格式也可以参考https://dateparser.readthedocs.io/en/latest/

范围 时间例子
相对1分钟 -1min ~ now, 或 1 min ago ~ now
相对4小时 -4h ~ now,或 4 hours ago ~ now 或 4 hour ago
相对1天(24小时) -1d ~ now,或 1 day ago ~ now
相对1周(7*24小时) -1week ~ now, 或 1 week ago ~ now
今天 today 0:0:0 ~ now
昨天 yesterday 0:0:0 ~ yesterday 23:59:59,或 1 day ago 0:0:0 ~ -1d 23:59:59
前天 the day before yesterday 0:0:0 ~ 2 day ago 23:59:59

例子

实时显示当前网站UV

如下命令

aliyunlog log get_log --project=pdata1 --logstore=log1 --from_time="today 00:00:00" --to_time="now" --query="host: www.dcd.mock-domain.com | select count(distinct remote_addr) as uv" --jmes-filter="join('\n', map(&to_string(uv), @))"

每次运行时都会显示今天的独立访问客户的数量

定期导出客户端IP列表

aliyunlog log get_log --project=pdata1 --logstore=log1 --from_time="yesterday 00:00:00" --to_time="yesterday 23:59:59" --query="host: www.dcd.mock-domain.com | select distinct remote_addr" --jmes-filter="join('\n', map(&to_string(remote_addr), @))"

以上命令可以在每天0:0:1运行,导出昨天的独立访问客户的列表

进一步参考

  • 扫码加入官方钉钉群 (11775223):
    image
目录
相关文章
|
22天前
|
测试技术 API 数据安全/隐私保护
Python连接到Jira实例、登录、查询、修改和创建bug
通过使用Python和Jira的REST API,可以方便地连接到Jira实例并进行各种操作,包括查询、修改和创建Bug。`jira`库提供了简洁的接口,使得这些操作变得简单易行。无论是自动化测试还是开发工作流的集成,这些方法都可以极大地提高效率和准确性。希望通过本文的介绍,您能够更好地理解和应用这些技术。
70 0
|
6月前
|
运维 监控 Serverless
函数计算产品使用问题之如何配置YAML以自动打开日志功能
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
7月前
|
前端开发 Serverless Shell
Serverless 应用引擎操作报错合集之在阿里云函数计算中,laravel zip包使用示例的start.sh脚本启动时出现错误代码如何解决
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
7月前
|
弹性计算 运维 Shell
设置 Python 支持自动命令补齐功能
【4月更文挑战第29天】
31 1
|
7月前
|
前端开发 JavaScript 开发者
探索npm的高级特性:自定义脚本与包的发布与维护
探索npm的高级特性:自定义脚本与包的发布与维护
|
监控 Shell Linux
使用Python和Bash编写内网监控工具:自动巡检脚本示例
为了确保内网的顺畅运行,自动化监控工具变得不可或缺。本文将介绍如何使用Python和Bash编写一个简单而强大的内网监控工具,它可以帮助您自动巡检网络和系统状态,及时发现问题并采取措施。
382 0
|
监控 JavaScript 前端开发
一种基于日志服务CLI工具实现的多区域发布方案
一种基于日志服务CLI工具实现的多区域发布方案
427 2
|
运维 监控 关系型数据库
【运维知识进阶篇】zabbix5.0稳定版详解4(用脚本自定义监控项+监控MySQL状态信息)(二)
【运维知识进阶篇】zabbix5.0稳定版详解4(用脚本自定义监控项+监控MySQL状态信息)(二)
103 0
|
运维 监控 关系型数据库
【运维知识进阶篇】zabbix5.0稳定版详解4(用脚本自定义监控项+监控MySQL状态信息)(一)
【运维知识进阶篇】zabbix5.0稳定版详解4(用脚本自定义监控项+监控MySQL状态信息)
161 0
|
关系型数据库 MySQL API
PHP定时任务:轮询多个API接口并将内容自动录入mysql数据库的解决方案
PHP定时任务:轮询多个API接口并将内容自动录入mysql数据库的解决方案
111 0
下一篇
无影云桌面