修改SQL限流任务
功能介绍
根据具体范围和类型,进行限流任务的修改。
调试
您可以在API Explorer中调试该接口。
URI
PUT https://{
Endpoint
}/v3/{project_id}/instances/{instance_id}/limit-task/{task_id}
表1 参数说明
名称
是否必选
说明
project_id
是
参数解释:
租户在某一Region下的项目ID。
获取方法请参见获取项目ID。
约束限制:
不涉及。
取值范围:
只能由英文字母、数字组成,且长度为32个字符。
默认取值:
不涉及。
instance_id
是
实例ID。
task_id
是
限流任务ID。
请求参数
表2 请求Header参数
参数
是否必选
参数类型
描述
X-Auth-Token
是
String
用户Token。
通过调用IAM服务获取用户Token接口获取。
请求响应成功后在响应消息头中包含的“X-Subject-Token”的值即为Token值。
X-Language
否
String
语言。
缺省值:en-us
枚举值:
- zh-cn
- en-us
表3 请求Body参数
参数
是否必选
参数类型
描述
start_time
否
String
任务开始时间,当“task_scope”为SQL时必传。
取值范围:大于等于当前时间(UTC时间)的前两分钟。
格式必须为yyyy-mm-ddThh:mm:ss+0000。
end_time
否
String
任务结束时间,当“task_scope”为SQL时必传。
取值范围:大于任务开始时间。
格式必须为yyyy-mm-ddThh:mm:ss+0000。
key_words
否
String
关键词,当“limit_type”为SQL_TYPE时,必传。
多个关键词以逗号隔开,数量范围为[2,100]个,每个关键词长度范围[2,64]位,关键词不允许包含 " 或 \ 或 {} 或 null值以及非首尾的空格符。
task_name
否
String
限流任务名称,只能为英文字母大小写,下划线,数字和$符,最大长度为100个字符。
parallel_size
否
Integer
并发数,大于等于零的正整数,取值范围[0, 2147483647]。
cpu_utilization
否
Integer
CPU利用率阈值,整数,取值范围[0,100)。
如果“limit_type”为SESSION_ACTIVE_MAX_COUNT,则“cpu_utilization”必选。
不支持和内存利用率阈值同时为0,如果选择只限制CPU、内存中的其中一个,则另一个必须传值0。
memory_utilization
否
Integer
内存利用率阈值,整数,取值范围[0,100)。
如果“limit_type”为SESSION_ACTIVE_MAX_COUNT,则“memory_utilization”必选。
不支持和CPU利用率阈值同时为0,如果选择只限制CPU、内存中的其中一个,则另一个必须传值0。
databases
否
String
实例的数据库列表,每个数据库以英文逗号形式隔。
如果“limit_type”为SQL_TYPE,则“databases”必选。
响应参数
表4 响应Body参数
参数
参数类型
描述
task_id
String
限流任务ID。
databases
String
实例的数据库列表,每个数据库以英文逗号形式隔开。
task_name
String
限流任务名。
key_words
String
关键词,仅当任务类型为SQL_TYPE时,返回该值。
parallel_size
Integer
并发数。
cpu_utilization
Integer
CPU利用率阈值,仅当任务类型为SESSION_ACTIVE_MAX_COUNT时,返回该值且只保留整数部分。
memory_utilization
Integer
内存利用率阈值,仅当任务类型为SESSION_ACTIVE_MAX_COUNT时,返回该值且只保留整数部分。
start_time
String
限流任务开始时间,格式为yyyy-mm-ddThh:mm:ssZ。当“task_scope”为SQL时会返回该参数。
end_time
String
限流任务结束时间,格式为yyyy-mm-ddThh:mm:ssZ。当“task_scope”为SQL时会返回该参数。
rule_name
String
规则名。
job_id
String
工作流ID。
请求示例
-
修改限流类型是SQL_ID的限流任务。
https://gaussdb-opengauss.cn-north-1.myhuaweicloud.com/v3/0611f1bd8b00d5d32f17c017f15b599f/instances/3d39c18788b54a919bab633874c159dfin14/limit-task/96854ba7-8d50-4a3c-8fd8-210a7390e9d1 { "start_time" : "2024-08-20T06:54:42+0800", "end_time" : "2024-08-20T07:54:42+0800", "task_name" : "SOLIdLimit", "parallel_size" : 10 } -
修改限流类型是SQL_TYPE的限流任务。
https://gaussdb-opengauss.cn-north-1.myhuaweicloud.com/v3/0611f1bd8b00d5d32f17c017f15b599f/instances/3d39c18788b54a919bab633874c159dfin14/limit-task/96854ba7-8d50-4a3c-8fd8-210a7390e9d1 { "start_time" : "2024-08-20T06:54:42+0800", "end_time" : "2024-08-20T07:54:42+0800", "key_words" : "version,type", "task_name" : "KeywordLimit", "parallel_size" : 10, "databases" : "gaussdb_test3" } -
修改限流类型是SESSION_ACTIVE_MAX_COUNT的限流任务。
https://gaussdb-opengauss.cn-north-1.myhuaweicloud.com/v3/0611f1bd8b00d5d32f17c017f15b599f/instances/3d39c18788b54a919bab633874c159dfin14/limit-task/96854ba7-8d50-4a3c-8fd8-210a7390e9d1 { "task_name": "ThresholdLimit", "parallel_size": 10, "cpu_utilization": 20, "memory_utilization": 20 }
响应示例
-
修改限流类型是SQL_ID的限流任务。
{ "task_id": "bca08a79-8557-42c2-ab73-09a14d178c57", "task_name": "SOLIdLimit", "parallel_size": 10, "start_time": "2024-08-19T22:54:42Z", "end_time": "2024-08-19T23:54:42Z", "job_id": "d44bbbc3-4465-4079-ac71-d8e7ab0643a4" } -
修改限流类型是SQL_TYPE的限流任务。
{ "task_id": "ef8575c7-0133-43b4-8ab2-b950b9a6daaf", "databases": "gaussdb_test3", "task_name": "KeywordLimit", "key_words": "type,version", "parallel_size": 10, "start_time": "2024-08-19T22:54:42Z", "end_time": "2024-08-19T23:54:42Z", "job_id": "40e2e10f-6f4c-4883-9db7-5422f42187cc" } -
修改限流类型是SESSION_ACTIVE_MAX_COUNT的限流任务。
{ "task_id": "37b6232c-58ea-4d62-a5b5-54fc215c2115", "task_name": "ThresholdLimit", "parallel_size": 10, "cpu_utilization": 20, "memory_utilization": 20, "job_id": "0ec7109d-bc8f-41f6-9a78-a70f966739fc" }
状态码
-
正常
200
-
异常
请参见状态码。
错误码
请参见错误码。