调用CLI命令查询目标Project下的日志,该命令是Project级别的SQL查询命令。
注意事项
在使用CLI命令之前,您需要注意以下事项:
已创建日志服务Project、Logstore并完成日志采集。具体操作,请参见创建项目Project、创建Logstore和数据采集概述。
已创建并获取AccessKey。更多信息,请参见访问密钥。
阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维。RAM用户需具备操作日志服务资源的权限。具体操作,请参见创建RAM用户及授权。
已明确您查询日志所属的Project名称、所属地域、Logstore名称等。如何查询,请参见管理Project和管理Logstore。
日志服务查询日志时存在使用限制。请设计合理查询与分析语句、设置合理查询区间等。更多信息,请参见查询日志使用限制和分析日志使用限制。
查询日志前,已配置索引。具体操作,请参见创建索引。
命令格式
aliyunlog log get_project_logs --request=<value> [--access-id=<value>] [--access-key=<value>] [--sts-token=<value>] [--region-endpoint=<value>] [--client-name=<value>] [--jmes-filter=<value>] [--format-output=<value>] [--decode-output=<value>] [--profile=<value>]
命令参数
该命令的必选和特有参数描述如下。
参数名称 | 数值类型 | 是否必选 | 示例值 | 描述 |
--request | String | 是 | file://./get_project_logs_config.json | 查询日志的配置文件路径。您需要在执行该命令前,创建该文件,指定Project名称、查询分析语句等信息。 您可以参考命令示例中说明创建该文件。
|
关于该命令的全局参数,请参见全局参数。
命令示例
创建get_project_logs_config.json文件,用于指定查询的Project、查询分析语句等。该query用于查询一小时内每10分钟的PV数量,其中ali-test-project为Project名称,nginx-moni为Logstore名称,query为标准的SQL查询语句。其内容示例如下:
{ "project": "ali-test-project", "query": "select date_format(__time__-__time__%600, '%H:%i:%s') as time, COUNT(*) as pv from nginx-moni where __time__ > 1683252000 and __time__ < 1683255600 group by time order by time", "power_sql": false }
查询目标Project下小时内每10分钟的日志数量分布。
命令示例
aliyunlog log get_project_logs --request="file://./get_project_logs_config.json" --format-output=json,no_escape
返回示例
{ "data": [ { "__source__": "", "__time__": "1", "pv": "110", "time": "09:30:00" } ], "meta": { "aggQuery": "select date_format(__time__-__time__%600, '%H:%i:%s') as time, COUNT(*) as pv from gs-api where __time__ > 1718933444 and __time__ < 1718933864 group by time order by time", "count": 1, "cpuCores": 26, "cpuSec": 0.076, "elapsedMillisecond": 29, "hasSQL": true, "mode": 0, "processedRows": 110, "progress": "Complete", "whereQuery": "" } }
相关文档
在调用API接口过程中,若服务端返回结果中包含错误信息,则表示调用API接口失败。您可以参考API错误码对照表查找对应的解决方法。更多信息,请参见API错误处理对照表。
阿里云OpenAPI开发者门户提供调试、SDK、示例和配套文档。通过OpenAPI,您无需手动封装请求和签名操作,就可以快速对日志服务API进行调试。更多信息,请参见OpenAPI开发者门户。
关于该API接口的详细信息,请参见GetProjectLogs - 获取目标Project下的日志。