华为云用户手册

  • API概览 应用运维管理 服务API为开发者、合作伙伴提供告警、监控、prometheus监控、日志、应用资源管理、自动化运维的开放接口,帮助您快速、低成本地实现应用运维。 AOM 2.0相关接口当前在华北-北京一、华北-北京四、华东-上海一、华东-上海二、华南-广州、拉美-圣保罗一、中国-香港、亚太-曼谷和亚太-新加坡区域开放。 表1 API概览 类别 API 告警 告警相关API,包括新增、更新、删除事件类告警规则等接口。 监控 监控相关API,包括查询指标,查询、添加监控数据等接口。 Prometheus监控 prometheus监控相关API,包括区间数据查询、瞬时数据查询等接口。 日志 日志相关API,包括查询日志接口。 Prometheus实例(仅适用AOM 2.0) Prometheus实例相关API,包括新增Prometheus实例数据源、获取所有正常实例等接口。 应用资源管理(仅适用AOM 2.0) 应用资源管理相关API,包括新增、修改、查询、删除应用等接口。 自动化运维(仅适用AOM 2.0) 自动化运维相关API,包括创建任务、快速创建执行脚本等接口。
  • 状态码 状态码 描述 200 OK 请求执行完成。 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 403 Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 503 ServiceUnavailable 被请求的服务无效。建议直接修改该请求,不要重试该请求。
  • 请求示例 通过namespace+appName+clusterName查询指标列表。 https://{Endpoint}/v1/{project_id}/ams/metrics { "metricItems" : [ { "namespace" : "PAAS.CONTAINER", "dimensions" : [ { "name" : "appName", "value" : "aomApp" }, { "name" : "clusterName", "value" : "aomCluster" } ] } ] } 通过inventoryId查询指标列表。 https://{Endpoint}/v1/{project_id}/ams/metrics?type=inventory { "inventoryId" : "application_xxxxxxxx-xxxx-xxxx-xxxx-xxxxx3fee10" }
  • 响应示例 状态码: 200 OK 请求执行完成。 { "errorCode" : "SV CS TG_AMS_2000000", "errorMessage" : "success", "metaData" : { "count" : 1, "nextToken" : null, "total" : 1 }, "metrics" : [ { "namespace" : "PAAS.CONTAINER", "metricName" : "aom_process_cpu_usage", "unit" : "Percent", "dimensions" : [ { "name" : "appName", "value" : "aomApp" } ] } ] }
  • 响应参数 状态码: 200 表7 响应Body参数 参数 参数类型 描述 metaData metaData object 查询结果元数据信息,包括分页信息等。 metrics Array of MetricItemResultAPI objects 指标对象列表。 表8 metaData 参数 参数类型 描述 count Integer 当前返回结果条数。 nextToken Long 下一个开始的标记,用于分页,null表示无更多数据。 total Integer 总条数。 表9 MetricItemResultAPI 参数 参数类型 描述 dimensions Array of Dimension objects 指标维度列表。 metricName String 指标名称。 namespace String 命名空间。 unit String 指标单位。 表10 Dimension 参数 参数类型 描述 name String 维度名称。 value String 维度取值。
  • 请求参数 表3 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 从 IAM 服务获取的用户Token。 Content-Type 是 String 指定类型为application/json。 枚举值: application/json 表4 请求Body参数 参数 是否必选 参数类型 描述 inventoryId 否 String 资源编号,格式为resType_resId。其中resType部分的枚举值为:host,application,instance, container,process,network,storage, volume。当URI参数中的type取值为“inventory”时,通过该参数查询关联的指标,不再使用metricItems数组中的信息。 metricItems 否 Array of QueryMetricItemOptionParam objects 当URI参数中的type取值不为“inventory”时,就通过该数组传递的参数信息进行指标查询。 表5 QueryMetricItemOptionParam 参数 是否必选 参数类型 描述 dimensions 否 Array of Dimension objects 指标维度列表。 metricName 否 String 指标名称。名称长度取值范围为1~255个字符。取值范围:AOM提供的基础指标,cpuUsage、cpuCoreUsed等。cpuUsage:cpu使用率;cpuCoreUsed:cpu内核占用;用户上报的自定义指标名称。 namespace 是 String 指标命名空间。取值范围:PAAS.CONTAINER:组件指标、实例指标、进程指标和容器指标的命名空间,PAAS.NODE: 主机指标、网络指标、磁盘指标和文件系统指标的命名空间,PAAS.SLA:SLA指标的命名空间,PAAS.AGGR:集群指标的命名空间,CUSTOMMETRICS:默认的自定义指标的命名空间。 枚举值: PAAS.CONTAINER PAAS.NODE PAAS.SLA PAAS.AGGR CUSTOMMETRICS 表6 Dimension 参数 是否必选 参数类型 描述 name 是 String 维度名称。 value 是 String 维度取值。
  • URI POST /v1/{project_id}/ams/metrics 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户从IAM申请到的projectid,一般为32位字符串。 表2 Query参数 参数 是否必选 参数类型 描述 type 否 String 指标查询方式。 limit 否 String 用于限制本次返回的结果数据条数。 取值范围(0,1000],默认值为1000。 最小长度:0 最大长度:4 start 否 String 分页查询起始位置,为非负整数。
  • 响应示例 状态码: 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 { "error_code" : "AOM.02021003", "error_msg" : "input alarm rule or description is invalid", "trace_id" : "" } 状态码: 401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 { "error_code" : "SVCSTG.AMS.2000051", "error_msg" : "auth failed.", "error_type" : "AUTH_FAILED" } 状态码: 403 Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 { "error_code" : "AOM.0403", "error_msg" : "auth failed.", "error_type" : "AUTH_FAILED" } 状态码: 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 { "error_code" : "AOM.02007500", "error_msg" : "the system has some problem", "error_type" : "SC_INTERNAL_SERVER_ERROR", "trace_id" : "8fb508e9e31b44279016f708e1c60e4c" }
  • 状态码 状态码 描述 204 OK 请求响应成功。 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 403 Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。
  • 响应参数 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:12 最大长度:12 error_msg String 错误信息 最小长度:0 最大长度:1024 error_type String 错误类型 最小长度:0 最大长度:128 trace_id String 请求id 最小长度:32 最大长度:32 状态码: 401 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:12 最大长度:12 error_msg String 错误信息 最小长度:0 最大长度:1024 error_type String 错误类型 最小长度:0 最大长度:128 trace_id String 请求id 最小长度:32 最大长度:32 状态码: 403 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:12 最大长度:12 error_msg String 错误信息 最小长度:0 最大长度:1024 error_type String 错误类型 最小长度:0 最大长度:128 trace_id String 请求id 最小长度:32 最大长度:32 状态码: 500 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:12 最大长度:12 error_msg String 错误信息 最小长度:0 最大长度:1024 error_type String 错误类型 最小长度:0 最大长度:128 trace_id String 请求id 最小长度:32 最大长度:32
  • 状态码 状态码 描述 200 OK 请求响应成功。 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 403 Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。
  • 响应示例 状态码: 200 OK 请求响应成功。 { "create_time" : 1665991889597, "notification_template" : "aom.built-in.template.zh", "project_id" : "2xxxxxxxxxxxxxxxxxxxxxxf", "rule_name" : "1112222", "smn_topics" : [ { "display_name" : "", "name" : "gxxxxxt", "push_policy" : 0, "status" : 0, "topic_urn" : "urn:smn:xxx:2xxxxxxxxxxxxxxxxxxxxxxf:gxxxxxt" } ], "time_zone" : "xxx", "type" : "1", "update_time" : 1665991889597, "user_name" : "kxxxxxxxt" } 状态码: 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 { "error_code": "AOM.08001001", "error_msg": "bad request", “trace_id”:"" } 状态码: 401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 { "error_code" : "SVCSTG.AMS.2000051", "error_msg" : "auth failed.", "error_type" : "AUTH_FAILED" } 状态码: 403 Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 { "error_code" : "AOM.0403", "error_msg" : "auth failed.", "error_type" : "AUTH_FAILED" } 状态码: 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 { "error_code" : "AOM.08001500", "error_msg" : "SC_INTERNAL_SERVER_ERROR", "trace_id" : "" }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 rule_name String 规则名称 只含有汉字数字、字母、下划线,不能以下划线等特殊符号开头和结尾,长度为 1 - 100 最小长度:1 最大长度:100 project_id String 项目ID 最小长度:32 最大长度:32 user_name String 子账号名称 最小长度:1 最大长度:100 desc String 规则描述。规则描述长度为0到1024个字符,并且只能是数字、字母、特殊字符(_*)、空格和中文组成,不能以下划线开头和结尾。 最小长度:0 最大长度:1024 type String 规则类型。"1":通知,"2":用户 最小长度:1 最大长度:1 枚举值: 1 2 notification_template String 消息模板 最小长度:1 最大长度:100 create_time Long 创建时间 最小值:0 最大值:9999999999999 update_time Long 修改时间 最小值:0 最大值:9999999999999 time_zone String 时区 最小长度:1 最大长度:100 smn_topics Array of smn_topics objects SMN 主题信息,不能大于5 数组长度:1 - 5 表4 smn_topics 参数 参数类型 描述 display_name String Topic的显示名,推送邮件消息时,作为邮件发件人显示。显示名的长度为192byte或64个中文。默认值为空。 最小长度:1 最大长度:64 name String 创建topic的名字。Topic名称只能包含大写字母、小写字母、数字、-和_,且必须由大写字母、小写字母或数字开头,长度为1到255个字符。 最小长度:1 最大长度:255 push_policy Integer SMN消息推送策略。取值为0或1 最小值:0 最大值:1 status Integer topic中订阅者的状态。0:主题已删除或主题下订阅列表为空。1:主题下的订阅列表存在状态为“已订阅”的订阅信息。2:主题下的订阅信息状态处于“未订阅”或“已取消”。 枚举值: 0 1 2 topic_urn String Topic的唯一的资源标识。 最小长度:1 最大长度:100 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 响应码。 最小长度:13 最大长度:13 error_msg String 响应信息描述。 最小长度:1 最大长度:100 trace_id String 响应id。 最小长度:12 最大长度:12 状态码: 401 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:12 最大长度:12 error_msg String 错误信息 最小长度:0 最大长度:1024 error_type String 错误类型 最小长度:0 最大长度:128 trace_id String 请求id 最小长度:32 最大长度:32 状态码: 403 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:12 最大长度:12 error_msg String 错误信息 最小长度:0 最大长度:1024 error_type String 错误类型 最小长度:0 最大长度:128 trace_id String 请求id 最小长度:32 最大长度:32 状态码: 500 表8 响应Body参数 参数 参数类型 描述 error_code String 响应码。 最小长度:13 最大长度:13 error_msg String 响应信息描述。 最小长度:1 最大长度:100 trace_id String 响应id。 最小长度:12 最大长度:12
  • 响应示例 状态码: 200 请求响应成功,返回工作流详情。 { "citation_urns" : [ ], "create_by" : "xxxx", "create_time" : 1670328762884, "description" : "", "edit_time" : 0, "enterprise_project_id" : "0", "execution_action_rules" : [ "ecs:cloudServers:start", "ecs:cloudServers:list" ], "execution_permission" : [ "CMS FullAccess", "ECS FullAccess", "AOM FullAccess" ], "id" : "c15a19ce-110b-4822-862a-a29677dbed6c", "input" : { "project_id" : "2axxxxa54xxx73bxxxbfxxcf", "approve" : { "need_approve" : "false", "group" : "approve" }, "region_id" : "cn-north-7", "get_instances" : { "selectedData" : "", "frontend_info" : "{\"cmdbApplicationId\":\"xxxxx627611xxxd\"}", "type" : "cmdb_dynamic_node", "group" : "ecs_instance" }, "rate_control" : { "max" : "1", "timeDelay" : "10", "group" : "rate_control" } }, "is_delete" : false, "last_execute_by" : "xxx", "last_execution_end_time" : 1670328823670, "last_execution_id" : "adxxxxb-4894-4xxc-80xx-7xxx3de24b", "last_execution_start_time" : 1670328772402, "name" : "快速任务执行xxxx0123xx9", "nodes" : [ { "category" : "service", "description" : "Start the ECS instances", "id" : "start-ecs-instances", "ignore_error" : true, "metadata" : { "configuration" : { "func_urn" : "urn:fss:cn-north-7:xxxxxec14exxxx79b44xxxx57:function:CMS:CMS_DEFAULT_JAVA_FUN_NAME", "dataOutputPath" : "", "func_app" : "CMS", "dataInputPath" : "", "validator" : true, "func_version" : "latest", "dataResultsPath" : "", "parameters" : [ { "default" : "", "showFormat" : false, "format" : "", "value" : "2a47xxxx487f837xxxxxfc1cf", "isEditor" : false, "key" : "properties.project_id" }, { "default" : "", "showFormat" : false, "format" : "", "value" : "cn-north-7", "isEditor" : false, "key" : "properties.region_id" }, { "default" : "", "showFormat" : false, "format" : "", "value" : "", "isEditor" : false, "key" : "properties.selectedData" }, { "default" : "", "showFormat" : false, "format" : "", "value" : "{\"cmdbApplicationId\":\"xxxxxxx96627xxxxxa3cd\"}", "isEditor" : false, "key" : "properties.frontend_info" }, { "default" : "", "showFormat" : false, "format" : "", "value" : "cmdb_dynamic_node", "isEditor" : false, "key" : "properties.type" }, { "default" : "", "showFormat" : false, "format" : "", "value" : "ecs_instance", "isEditor" : false, "key" : "properties.group" }, { "default" : "", "showFormat" : false, "format" : "", "value" : "1", "isEditor" : false, "key" : "properties.max" }, { "default" : "", "showFormat" : false, "format" : "", "value" : "10", "isEditor" : false, "key" : "properties.timeDelay" }, { "default" : "", "showFormat" : false, "format" : "", "value" : "rate_control", "isEditor" : false, "key" : "properties.group" }, { "default" : "", "showFormat" : false, "format" : "", "value" : "$.executionId", "isEditor" : false, "key" : "properties.executionId" }, { "default" : "", "showFormat" : false, "format" : "", "value" : "xxxx9ce-xxxx-4822-xxxx-a296xxxxxc", "isEditor" : false, "key" : "properties.workflowId" }, { "default" : "", "showFormat" : false, "format" : "", "value" : "CMS::ECS::StartECS", "isEditor" : false, "key" : "properties.cmsTaskName2Distribute" }, { "default" : "", "showFormat" : false, "format" : "", "value" : "0.0.0.0", "isEditor" : false, "key" : "properties.cmsAccessPodLb" }, { "default" : "", "showFormat" : false, "format" : "", "value" : "manual", "isEditor" : false, "key" : "properties.workflowType" }, { "default" : "", "showFormat" : false, "format" : "", "value" : "start-ecs-instances", "isEditor" : false, "key" : "properties.nodeId" } ] }, "type" : "operation" }, "name" : "startECSInstance", "task_name" : "CMS::ECS::StartECS" } ], "project_id" : "2axxxx5487f83xxxx891xxx1cf", "quote" : [ ], "status" : "success", "steps" : [ ], "tags" : { }, "task_type" : "cloud", "template_i18n" : { "en-us" : { "name" : "Starting an ECS Instance", "description" : "Starting a HUAWEI CLOUD ECS Instance" }, "zh-cn" : { "name" : "启动ECS实例", "description" : "启动华为云ECS实例" } }, "template_id" : "CMS::ECS::BulkyStartECSInstances", "template_name" : "CMS::ECS::BulkyStartECSInstances", "type" : "manual", "update_time" : 1670328823794 } 状态码: 400 BadRequest。非法请求。建议直接修改该请求,不要重试该请求。 { "error_code" : "AOM.31001302", "error_msg" : "Invalid input parameter.", "http_code" : 400 } 状态码: 401 Unauthorized。在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 { "error_code" : "AOM.31009003", "error_msg" : "auth failed.", "http_code" : 401 } 状态码: 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 { "error_code" : "AOM.31001305", "error_msg" : "workflow internal server error.", "http_code" : 500 }
  • 请求示例 使用任务名称为"xxx"、模板名称为"CMS::ECS::BulkyStartECSInstances"、输入参数为"input"来创建启动ECS任务。 https://{Endpoint}/v1/{project_id}/cms/workflow { "name" : "xxx", "template_name" : "CMS::ECS::BulkyStartECSInstances", "template_id" : "CMS::ECS::BulkyStartECSInstances", "tags" : { }, "input" : { "get_instances" : { "type" : "manual", "group" : "ecs_instance", "ecs_id_list" : "[\"xxx\"]", "ecs_instance_status" : null, "ecs_instance_tags" : null, "ecs_instance_enterprise_project_id" : null, "vpc_id" : null, "subnet_id" : null, "frontend_info" : null, "selectedData" : null }, "rate_control" : { "max" : "1", "timeDelay" : "10", "group" : "rate_control" }, "approve" : { "need_approve" : "false", "topic_selected" : null, "group" : "approve" }, "project_id" : "xxx", "region_id" : "cn-north-7" }, "type" : "manual", "description" : "", "task_type" : "cloud" } 使用任务名称为"xxx"、模板名称为"CMS::ECS::BulkyRunScript"、输入参数为"input"来创建定时执行脚本任务。 https://{Endpoint}/v1/{project_id}/cms/workflow { "name" : "xxxxxshced", "template_name" : "CMS::ECS::BulkyRunScript", "tags" : { }, "input" : { "project_id" : "2xxx487fxxxxxbffc1cf", "region_id" : "cn-north-7", "trigger" : { "scheduled_time" : "00:04:05", "time_zone" : "Asia/Riyadh", "policy" : "periodic", "cron" : null, "period" : "[\"0\",\"3\",\"4\",\"5\",\"6\"]", "group" : "trigger" }, "notice" : { "interval" : null, "before_notice" : null, "succeed_notice" : null, "fail_notice" : null, "group" : "notice", "before_topic_selected" : null, "success_topic_selected" : null, "fail_topic_selected" : null }, "get_instances" : { "type" : "manual", "group" : "ecs_instance", "ecs_id_list" : "[\"4bxxxxx-xxxx-4c92-xxxx-19469d40a51c\"]", "ecs_instance_status" : null, "ecs_instance_tags" : null, "ecs_instance_enterprise_project_id" : null, "vpc_id" : null, "subnet_id" : null, "frontend_info" : null, "selectedData" : null }, "approve" : { "need_approve" : "false", "topic_selected" : null, "group" : "approve" }, "rate_control" : { "max" : "0", "timeDelay" : "0", "group" : "rate_control" }, "script_param" : { "name" : "zzy", "script_content" : "cd /xxx/xxx", "script_type" : "SHELL", "version_number" : "1.0", "cmd_user" : "xxxxx", "script_id" : "xxxx-7e9e-4eed-8xxf-5f1fxx6ebb7d", "scriptSelected" : "null", "script_args" : null, "sensitive_param" : false, "time_out" : "7200", "script_version_id" : "e005xxx4-1fcf-40xx-b1x6-8dxxxcae7b021", "sourceId" : "script", "group" : "script" } }, "type" : "cron", "description" : "", "task_type" : "script", "template_id" : "CMS::ECS::BulkyRunScript" } 使用任务名称为"xxx"、模板名称为"CMS::ECS::BulkyRunScript"、输入参数为"input"来创建执行脚本任务。 https://{Endpoint}/v1/{project_id}/cms/workflow { "name" : "execute_task_demo", "template_name" : "CMS::ECS::BulkyRunScript", "template_id" : "CMS::ECS::BulkyRunScript", "tags" : { }, "input" : { "script_param" : { "script_content" : "date", "script_type" : "SHELL", "version_number" : "1.0", "cmd_user" : "root", "script_id" : "6xxxx097-a4x4-4dxx-axa2-fef5xxxxdd55", "scriptSelected" : "null", "script_args" : "arg1 agr2", "sensitive_param" : "false", "time_out" : "7200", "script_version_id" : "47xxxd67-bxx5-45x9-860x-cb3d6xxxx745", "sourceId" : "script", "group" : "script" }, "get_instances" : { "ecs_id_list" : "[\"4380xxx9-33xf-4xxe-axxx-7xxxxxx3fcd\"]", "type" : "manual", "group" : "ecs_instance", "vpc_id" : null, "subnet_id" : null }, "approve" : { "need_approve" : "false", "topic_selected" : null, "group" : "approve" }, "rate_control" : { "max" : "0", "timeDelay" : "0", "group" : "rate_control" }, "project_id" : "2xxxxxxca5xx8373xxx1bffxxcf", "region_id" : "cn-north-7" }, "type" : "manual", "description" : "", "task_type" : "script" } 使用任务名称为"xxx"、模板名称为"CMS::RDS::RestartRDSInstance、输入参数为"input"来创建重启RDS任务。 https://{Endpoint}/v1/{project_id}/cms/workflow { "name" : "xxx", "template_name" : "CMS::RDS::RestartRDSInstance", "template_id" : "CMS::RDS::RestartRDSInstance", "tags" : { }, "input" : { "get_instances" : { "type" : "manual", "group" : "rds_instance", "rds_id_list" : "[\"xxx\"]", "rds_instance_tags" : null, "rds_instance_type" : null, "rds_instance_datastore_type" : null, "frontend_info" : null, "selectedData" : null }, "rate_control" : { "max" : "0", "timeDelay" : "0", "group" : "rate_control" }, "approve" : { "need_approve" : "false", "topic_selected" : null, "group" : "approve" }, "project_id" : "xxx", "region_id" : "cn-north-7" }, "type" : "manual", "description" : "", "task_type" : "cloud" } 使用任务名称为"xxx"、模板名称为"CMS::ECS::Package"、输入参数为"input"来创建快速分发文件任务。 https://{Endpoint}/v1/{project_id}/cms/workflow { "name" : "xxx", "template_name" : "CMS::ECS::Package", "template_id" : "CMS::ECS::Package", "tags" : { }, "input" : { "project_id" : "xxx", "region_id" : "cn-north-7", "package" : { "package_version_id" : "xxx", "package_basic_id" : "xxx", "cmd_user" : "xxxxx", "install_file_dir" : "/", "package_name" : "77779956", "version_number" : "110", "operate_type" : "install", "group" : "package", "software_list" : "[{x}]", "time_out" : "7200", "pre_install_script" : "", "install_script" : "ls", "un_install_script" : "", "plat_form" : "Linux" }, "get_instances" : { "type" : "manual", "group" : "ecs_instance", "ecs_id_list" : "[\"xxx\"]", "ecs_instance_status" : null, "ecs_instance_tags" : null, "ecs_instance_enterprise_project_id" : null, "vpc_id" : null, "subnet_id" : null, "frontend_info" : null, "selectedData" : null }, "rate_control" : { "max" : "0", "timeDelay" : "0", "group" : "rate_control" }, "approve" : { "need_approve" : "false", "topic_selected" : null, "group" : "approve" } }, "type" : "manual", "description" : "", "task_type" : "package" } 使用任务名称为"xxx"、模板名称为"CMS::ECS::BulkyStopECSInstances"、输入参数为"input"来创建关闭ECS任务。 https://{Endpoint}/v1/{project_id}/cms/workflow { "name" : "xxx", "template_name" : "CMS::ECS::BulkyStopECSInstances", "template_id" : "CMS::ECS::BulkyStopECSInstances", "tags" : { }, "input" : { "get_instances" : { "type" : "manual", "group" : "ecs_instance", "ecs_id_list" : "[\"xxx\"]", "ecs_instance_status" : null, "ecs_instance_tags" : null, "ecs_instance_enterprise_project_id" : null, "vpc_id" : null, "subnet_id" : null, "frontend_info" : null, "selectedData" : null }, "stop_ecs_type" : { "group" : "stop_ecs_type", "stop_ecs_type" : "SOFT" }, "rate_control" : { "max" : "0", "timeDelay" : "0", "group" : "rate_control" }, "approve" : { "need_approve" : "false", "topic_selected" : null, "group" : "approve" }, "project_id" : "xxx", "region_id" : "cn-north-7" }, "type" : "manual", "description" : "", "task_type" : "cloud" } 使用任务名称为"xxx"、模板名称为"CMS::ECS::BulkyCleanDisks"、输入参数为"input"来创建清理磁盘任务。 https://{Endpoint}/v1/{project_id}/cms/workflow { "name" : "xxx", "template_name" : "CMS::ECS::BulkyCleanDisks", "template_id" : "CMS::ECS::BulkyCleanDisks", "tags" : { }, "input" : { "get_instances" : { "type" : "manual", "group" : "ecs_instance", "ecs_id_list" : "[\"xxx\"]", "ecs_instance_status" : null, "ecs_instance_tags" : null, "ecs_instance_enterprise_project_id" : null, "vpc_id" : null, "subnet_id" : null, "frontend_info" : null, "selectedData" : null }, "clean_disk" : { "path" : "[{\"path\":\"/xxx/\",\"fileName\":\"xxxx.xx\",\"date\":\"1\"}]", "group" : "clean_disk", "platform" : "linux" }, "rate_control" : { "max" : "0", "timeDelay" : "0", "group" : "rate_control" }, "approve" : { "need_approve" : "false", "topic_selected" : null, "group" : "approve" }, "project_id" : "xxxxx", "region_id" : "cn-north-7" }, "type" : "manual", "description" : "", "task_type" : "cloud" } 使用任务名称为"xxx"、模板名称为"CMS::ECS::BulkyChangeECSPassword"、输入参数为"input"来创建修改ECS密码任务。 https://{Endpoint}/v1/{project_id}/cms/workflow { "name" : "xxxxx", "template_name" : "CMS::ECS::BulkyChangeECSPassword", "template_id" : "CMS::ECS::BulkyChangeECSPassword", "tags" : { }, "input" : { "get_instances" : { "type" : "manual", "group" : "ecs_instance", "ecs_id_list" : "[\"xxxxx\"]", "ecs_instance_status" : null, "ecs_instance_tags" : null, "ecs_instance_enterprise_project_id" : null, "vpc_id" : null, "subnet_id" : null, "frontend_info" : null, "selectedData" : null }, "user_password" : { "username" : "xxx", "password" : "xxxxx", "group" : "user_password" }, "rate_control" : { "max" : "0", "timeDelay" : "0", "group" : "rate_control" }, "approve" : { "need_approve" : "false", "topic_selected" : null, "group" : "approve" }, "project_id" : "xxxxx", "region_id" : "cn-north-7" }, "type" : "manual", "description" : "", "task_type" : "cloud" } 使用任务名称为"xxx"、模板名称为"job_1"、输入参数为"input"来创建作业任务。 https://{Endpoint}/v1/{project_id}/cms/workflow { "name" : "xxx", "template_name" : "job_1", "template_id" : "xxx", "tags" : { }, "input" : { "project_id" : "xxx", "region_id" : "cn-north-7", "isExist" : "false", "rate_control" : { "max" : "0", "timeDelay" : "0", "group" : "rate_control" }, "approve" : { "need_approve" : "false", "topic_selected" : null, "reviewer_selected" : null, "group" : "approve" } }, "type" : "manual", "description" : "", "task_type" : "job" } 使用任务名称为"xxx"、模板名称为"CMS::CCE::RestartWorkloadInstance"、输入参数为"input"来创建重启工作负载任务。 https://{Endpoint}/v1/{project_id}/cms/workflow { "name" : "xxx", "template_name" : "CMS::CCE::RestartWorkloadInstance", "template_id" : "CMS::CCE::RestartWorkloadInstance", "tags" : { }, "input" : { "get_instances" : { "type" : "manual", "group" : "cce_workload_instance", "cce_workload_id_list" : "[\"xxx\"]", "cce_workload_type" : "deployments", "cce_workload_cluster" : "xxx", "cce_workload_namespace" : null, "frontend_info" : null, "selectedData" : null }, "cce_workload_restart_info" : { "group" : "cce_workload_restart_info", "time_interval" : "300" }, "rate_control" : { "max" : "2", "timeDelay" : "2", "group" : "rate_control" }, "approve" : { "need_approve" : "false", "topic_selected" : null, "group" : "approve" }, "project_id" : "xxx", "region_id" : "cn-north-7" }, "type" : "manual", "description" : "", "task_type" : "cloud" }
  • 响应示例 状态码: 200 OK 请求响应成功。 { "status" : "success", "data" : { "resultType" : "matrix", "result" : [ { "metric" : { "__name__" : "amm_node_status", "clusterId" : "000000-0000-0000-0000-0000000", "hostID" : "c9xxcb-2x6c-4h54-8fcd-f68xx85", "nameSpace" : "default", "nodeIP" : "1xx.1xx.0.1xx", "nodeName" : "sis-xxn-amm" }, "values" : [ [ 1630386780, "0" ], [ 1630388610, "0" ], [ 1630388625, "0" ] ] }, { "metric" : { "__name__" : "amm_node_status", "clusterId" : "00000000-0000-0000-0000-00000000", "hostID" : "ec5xxxb-0xx8-4xxx-bxx-9ecxxf", "nameSpace" : "default", "nodeIP" : "1xx.168.0.1x", "nodeName" : "fdx-ibxxst" }, "values" : [ [ 1630388265, "0" ], [ 1630388280, "0" ], [ 1630388295, "0" ] ] } ] } } 状态码: 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 { "status" : "error", "errorType" : "bad_param", "error" : "param is invalid." } 状态码: 403 Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 { "status" : "error", "errorType" : "auth", "error" : "auth project_id not pass." } 状态码: 422 Unprocessable 表达式无法执行。 { "status" : "error", "errorType" : "excution", "error" : "expression can't be executed." } 状态码: 503 ServiceUnavailable 被请求的服务无效。建议直接修改该请求,不要重试该请求。 { "status" : "error", "errorType" : "timeout", "error" : "query timed out in query execution." }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 status String 响应状态。 data Object 响应数据。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 status String 响应状态。 errorType String 错误类型。 error String 错误信息。 状态码: 403 表6 响应Body参数 参数 参数类型 描述 status String 响应状态。 errorType String 错误类型。 error String 错误信息。 状态码: 422 表7 响应Body参数 参数 参数类型 描述 status String 响应状态。 errorType String 错误类型。 error String 错误信息。 状态码: 503 表8 响应Body参数 参数 参数类型 描述 status String 响应状态。 errorType String 错误类型。 error String 错误信息。
  • 状态码 状态码 描述 200 OK 请求响应成功。 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 403 Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 422 Unprocessable 表达式无法执行。 503 ServiceUnavailable 被请求的服务无效。建议直接修改该请求,不要重试该请求。
  • URI POST /v1/{project_id}/aom/api/v1/query_range 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户从IAM申请到的projectid,一般为32位字符串。 表2 Query参数 参数 是否必选 参数类型 描述 query 是 String PromQL表达式(参考https://prometheus.io/docs/prometheus/latest/querying/basics/)。 start 是 String 起始时间戳(Unix时间戳格式,单位:秒)。 end 是 String 结束时间戳(Unix时间戳格式,单位:秒)。 step 是 String 查询时间步长,时间区内每step秒执行一次。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 从IAM服务获取的用户Token。 最小长度:1 最大长度:40960 Content-Type 是 String 指定类型为application/json。 最小长度:1 最大长度:32 表3 请求Body参数 参数 是否必选 参数类型 描述 name 否 String 方案名称 最小长度:1 最大长度:64 page_num 否 Integer page_num为正整数 最小值:1 最大值:9999999 page_size 否 Integer 每页显示的条数 最小值:1 最大值:100 order_by_column 是 String 需要排序的字段(默认为更新时间),支持字段有name,create_time,update_time。 最小长度:1 最大长度:16 sort_order 否 String 排序规则(默认降序) 传入升序或降序,升序:ASC,降序:DESC。 最小长度:1 最大长度:16
  • 请求示例 根据作业id和作业name查询作业的执行方案列表。 POST https://{Endpoint}/v1/{project_id}/cms/template-list/{job_id} { "name" : "xxxxxx", "page_num" : 0, "page_size" : 10, "order_by_column" : "create_time", "sort_order" : "DESC" }
  • 响应示例 状态码: 200 请求响应成功,返回执行方案列表。 { "elements" : [ { "approve_info" : { "need_approve" : false }, "create_by" : "xxxxx", "create_time" : 1600073877378, "enterprise_project_id" : "0", "id" : "xxxxxx", "is_collect" : false, "is_publish" : false, "job_id" : "xxxxx", "job_version" : 1, "name" : "t1", "need_synchronize" : false, "nodes" : [ { "category" : "service", "description" : "", "id" : "xxxxx", "ignore_error" : false, "metadata" : { "configuration" : { "parameters" : { "project_id" : "{{project_id}}", "script_param" : "{xxxx}", "region_id" : "{{region_id}}", "get_instances" : "{xxxxx}" } }, "type" : "operation" }, "name" : "1", "task_name" : "CMS::ECS::runScript" }, { "category" : "service", "description" : "", "id" : "xxxxx", "ignore_error" : false, "metadata" : { "configuration" : { "parameters" : { "package" : "{xxxxxx}", "project_id" : "{{project_id}}", "region_id" : "{{region_id}}", "get_instances" : "{xxxxx}" } }, "type" : "operation" }, "name" : "xxx", "task_name" : "CMS::ECS::Package" } ], "parameters" : [ ], "project_id" : "xxxxx", "quote" : [ ], "rate_control" : { "have_rate_control" : false, "max" : 0, "time_delay" : 0 }, "share_type" : "private", "steps" : [ { "description" : "", "id" : "xxxxx", "ignore_error" : false, "input" : { "script_param" : "{xxxxx}", "get_instances" : "{xxxxx}" }, "name" : "xxxx", "type" : "script" }, { "description" : "", "id" : "xxxxx", "ignore_error" : false, "input" : { "package" : "{xxxxx}", "get_instances" : "{xxxxx}" }, "name" : "2", "type" : "package" } ], "update_by" : "xxxxx", "update_time" : 1600073877378, "version" : "v1" } ], "total_elements" : 1 } 状态码: 400 BadRequest。非法请求。建议直接修改该请求,不要重试该请求。 { "error_code" : "AOM.31001202", "error_msg" : " parameter invalid.", "http_code" : 400 } 状态码: 401 Unauthorized。在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 { "error_code" : "AOM.31009002", "error_message" : "auth failed.", "http_code" : "401" }
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 alarm_rule_id Long 阈值规则id。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误信息描述。 error_type String 错误类型。 trace_id String 跟踪编号。主要用于开发人员快速搜索日志,定位问题。当返回的状态码为2xx时,trace_id为空;当返回4xx的状态码时,trace_id不为空。
  • 响应示例 状态码: 200 OK 请求响应成功。 { "alarm_rule_id" : 91307490000416600 } 状态码: 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 { "error_code" : "AOM.04003001", "error_msg" : "please check request param", "error_type" : "BAD_REQUEST" }
  • 状态码 状态码 描述 200 OK 请求响应成功。 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 403 Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 503 ServiceUnavailable 被请求的服务无效。建议直接修改该请求,不要重试该请求。
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 从IAM服务获取的用户Token。 Content-Type 是 String 指定类型为application/json,有Body体的情况下必选,没有Body体则无需填写和校验。 表2 请求Body参数 参数 是否必选 参数类型 描述 name 是 String 子应用唯一标识 display_name 否 String 子应用节点显示名称 model_id 是 String 应用Id、子应用Id model_type 是 String 应用、子应用,取值:APPLICATION、SUB_APPLICATION 枚举值: APPLICATION SUB_APPLICATION description 否 String 子应用描述 最小长度:0 最大长度:255
  • 请求示例 创建sub-app https://{Endpoint}/v1/sub-applications { "name" : "example1", "display_name" : "example1", "model_id" : "8fd93d051a1447dd8f8fa28b5d68841f", "model_type" : "APPLICATION", "description" : "子应用信息" }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 access_codes Array of AccessCodeModel objects accessCodes 数组长度:0 - 2 表4 AccessCodeModel 参数 参数类型 描述 access_code String access_code 最小长度:64 最大长度:64 access_code_id String access_code_id 最小长度:32 最大长度:32 create_at Long 创建时间 最小值:0 最大值:9999999999999 status String 状态 enable:开启 unenable:关闭 枚举值: enable unenable
  • 响应示例 状态码: 200 OK 请求响应成功。 { "prometheus" : [ { "deleted_time" : 0, "enterprise_project_id" : "xx", "project_id" : "xxx", "prom_create_timestamp" : 0, "prom_id" : "xx", "prom_name" : "xx", "prom_type" : "xx", "prom_update_timestamp" : 0, "prom_version" : "xx" } ] }
  • URI GET /v1/{project_id}/aom/prometheus 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户从IAM申请到的projectid,一般为32位字符串。 最小长度:32 最大长度:32 表2 Query参数 参数 是否必选 参数类型 描述 prom_id 否 String 普罗实例ID 最小长度:36 最大长度:36 prom_type 否 String 普罗实例类型,DEFAULT,ECS,VPC,CCE,REMOTE_WRITE,KUBERNETES,CLOUD_SERVICE,ACROSS_ACCOUNT 枚举值: DEFAULT ECS VPC CCE REMOTE_WRITE KUBERNETES CLOUD_SERVICE ACROSS_ACCOUNT cce_cluster_enable 否 String cce集群开关 true/false 枚举值: true false prom_status 否 String 普罗实例状态 true/false 枚举值: true false
共100000条