华为云用户手册

  • URI PUT /v1/{project_id}/cms/workflow/{workflow_id}/trigger/action 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户从 IAM 申请到的projectid,一般为32位字符串。 最小长度:32 最大长度:32 workflow_id 是 String 任务id,待修改任务的id。 最小长度:1 最大长度:64 表2 Query参数 参数 是否必选 参数类型 描述 action 是 String 启动或暂停任务的定时执行。enable为开启定时任务,disable为关闭定时任务 最小长度:1 最大长度:10 枚举值: enable disable
  • 响应参数 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 响应码。 最小长度:1 最大长度:64 error_msg String 调用失败响应信息描述。 最小长度:1 最大长度:1024 http_code Integer http返回码 最小值:0 最大值:999 状态码: 401 表5 响应Body参数 参数 参数类型 描述 error_code String 响应码。 最小长度:1 最大长度:64 error_msg String 调用失败响应信息描述。 最小长度:1 最大长度:1024 http_code Integer http返回码 最小值:0 最大值:999 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 响应码。 最小长度:1 最大长度:64 error_msg String 调用失败响应信息描述。 最小长度:1 最大长度:1024 http_code Integer http返回码 最小值:0 最大值:999
  • 响应示例 状态码: 200 任务启停操作成功 {"success"} 状态码: 400 BadRequest。非法请求。建议直接修改该请求,不要重试该请求。 { "error_code" : " AOM .31001302", "error_msg" : "Invalid param", "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 }
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 从IAM服务获取的用户Token。 Content-Type 是 String 指定类型为application/json,有Body体的情况下必选,没有Body体则无需填写和校验。 表2 请求Body参数 参数 是否必选 参数类型 描述 component_id 是 String 环境关联组件id;id长度不能超过36位,由大小写字母、数字组成。创建环境必传,修改环境时非必选 description 否 String 描述 env_name 是 String 环境名称 env_type 是 String 环境类型,取值:DEV、TEST、PRE、ONLINE,不区分大小写 os_type 是 String OS类型,取值:LINUX、WINDOWS。创建环境必传,不可修改 region 否 String 环境关联region。创建环境必传,不可修改 register_type 否 String 注册类型,取值:API、SERVICE_DISCOVERY、CONSOLE,默认值:API
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 id String 对象id 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String AOM.30005001 error_msg String 参数错误 状态码: 403 表5 响应Body参数 参数 参数类型 描述 error_code String AOM.30001005 error_msg String 没有权限
  • 请求示例 创建环境 https://{Endpoint}/v1/environments { "component_id" : "28c600be47374b9697404b0f58263d1c", "description" : "环境描述", "env_name" : "environment1", "env_type" : "DEV", "os_type" : "LINUX", "region" : "xxx", "register_type" : "API" }
  • 支持的授权项 策略包含系统策略和自定义策略,如果系统策略不满足授权要求,管理员可以创建自定义策略,并通过给用户组授予自定义策略来进行精细的访问控制。策略支持的操作与API相对应,授权项列表说明如下: 权限:自定义策略中授权项定义的内容即为权限。 对应API接口:自定义策略实际调用的API接口。 授权项:自定义策略中支持的Action,在自定义策略中的Action中写入授权项,可以实现授权项对应的权限功能。 IAM项目(Project)/企业项目(Enterprise Project):自定义策略的授权范围,包括IAM项目与企业项目。授权范围如果同时支持IAM项目和企业项目,表示此授权项对应的自定义策略,可以在IAM和企业管理两个服务中给用户组授权并生效。如果仅支持IAM项目,不支持企业项目,表示仅能在IAM中给用户组授权并生效,如果在企业管理中授权,则该自定义策略不生效。关于IAM项目与企业项目的区别,详情请参见IAM与企业管理的区别。 AOM支持自定义策略授权项如下所示: 告警:包括所有告警相关接口对应的授权项,例如查询事件告警信息接口。 监控:包括所有监控相关接口对应的授权项,例如查询指标接口。 prometheus监控:包括所有prometheus监控相关接口对应的授权项,例如区间数据查询接口。 日志:包括所有日志相关接口对应的授权项,例如查询日志接口。 应用资源管理:包括所有应用资源相关接口对应的授权项,例如新增应用接口。 自动化运维:包括所有自动化运维相关接口对应的授权项,例如创建任务接口。
  • 状态码 状态码 描述 200 OK 请求响应成功。 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 403 Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 404 NotFound 所请求的资源不存在。建议直接修改该请求,不要重试该请求。 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 503 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。
  • 响应示例 状态码: 200 OK 请求响应成功。 { "errorCode" : "SV CS TG.INV.2000000", "errorMessage" : null, "id" : [ ] } 状态码: 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 { "errorCode" : "SVCSTG.INV.4000118", "errorMessage" : "Request param is invalid", "id" : [ ] } 状态码: 404 NotFound 所请求的资源不存在。建议直接修改该请求,不要重试该请求。 { "errorCode" : "SVCSTG.INV.4040000", "errorMessage" : "Inventory does not exists", "id" : [ ] } 状态码: 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 { "error_code" : " APM .00000500", "error_msg" : "Internal Server Error", "trace_id" : "" }
  • 状态码 状态码 描述 200 OK 添加成功 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 403 Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。
  • 响应参数 状态码: 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
  • 请求示例 新增一条行动规则名称为"66666"、用户名称为"kxxxxxxxt"、用户id为"21axxxxxxxxxxxxxxxxx47c"且采用"aom.built-in.template.zh"通知模板的告警行动规则。 https://{Endpoint}/v2/{project_id}/alert/action-rules { "desc" : "1111", "notification_template" : "aom.built-in.template.zh", "project_id" : "21axxxxxxxxxxxxxxxxx47c", "rule_name" : "66666", "smn_topics" : [ { "display_name" : "", "name" : "xiaohama", "push_policy" : 0, "status" : 0, "topic_urn" : "urn:smn:xxx:21axxxxxxxxxxxxxxxxx47c:xiaohama" } ], "type" : "1", "user_name" : "kxxxxxxxt", "time_zone" : "xxx" }
  • 响应示例 状态码: 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 { "error_code" : "AOM.08002001", "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.08002500", "error_msg" : "SC_INTERNAL_SERVER_ERROR", "trace_id" : "" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 从IAM服务获取的用户Token。 最小长度:1 最大长度:40960 Content-Type 是 String 指定类型为application/json。 枚举值: application/json 表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
  • 响应示例 状态码: 200 OK 请求响应成功。 { "status" : "success", "data" : { "resultType" : "vector", "result" : [ { "metric" : { "__name__" : "amm_node_status", "clusterId" : "00000000-0000-0000-0000-00000000", "hostID" : "g947xcxh-2xcxc-xxx-xxcd-f6xxx85", "nameSpace" : "default", "nodeIP" : "1x6.1xx.0.xxx", "nodeName" : "sdxx-jxxxgksi-axx" }, "value" : [ 16303810036, "0" ] }, { "metric" : { "__name__" : "amm_node_status", "clusterId" : "00000000-0000-0000-0000-00000000", "hostID" : "dc1xxxf7e-b095-4e77-bxx-914dhlxxxbf7", "nameSpace" : "default", "nodeIP" : "1xx.1xx.0.xxx", "nodeName" : "sds-jixxxsi-texxt" }, "value" : [ 1630381536, "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 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户从IAM申请到的projectid,一般为32位字符串。 表2 Query参数 参数 是否必选 参数类型 描述 query 是 String PromQL表达式(参考https://prometheus.io/docs/prometheus/latest/querying/basics/)。 time 否 String 指定用于计算 PromQL 的时间戳,(Unix时间戳格式,单位:秒)。
  • 状态码 状态码 描述 200 OK 请求响应成功。 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 403 Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 503 ServiceUnavailable 被请求的服务无效。建议直接修改该请求,不要重试该请求。
  • 查询时间序列 接口相关信息 URI格式:POST /v2/{project_id}/series 请求示例 POST https://{aom_endpoint}/v2/{project_id}/series {aom_endpoint}信息请从终端节点获取。 Body: { "series": [ { "namespace": "PAAS.NODE", "metric_name": "cpuUsage", "dimensions":[ { "name":"clusterId", "value":"4fae3587-0202-11eb-9ba9-0255ac100b02" }, { "name":"hostID", "value":"4100f512-c4e9-4b65-b0dd-2b94ea5e1a84" } ] } ] } 响应示例 { "meta_data": { "count": 0, "offset": 0, "total": 1, "nextToken": 9007148492074133276 }, "series": [{ "namespace": "PAAS.NODE", "metric_name": "cpuUsage", "unit": "Percent", "dimensions": [{ "name": "clusterId", "value": "4fae3587-0202-11eb-9ba9-0255ac100b02" }, { "name": "clusterName", "value": "testdiskrate" }, { "name": "hostID", "value": "4100f512-c4e9-4b65-b0dd-2b94ea5e1a84" }, { "name": "nameSpace", "value": "default" }, { "name": "nodeIP", "value": "192.168.0.123" }, { "name": "nodeName", "value": "192.168.0.123" }] }] }
  • 状态码 状态码 描述 200 OK 请求响应成功。 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 403 Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 503 ServiceUnavailable 被请求的服务无效。建议直接修改该请求,不要重试该请求。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 从IAM服务获取的用户Token。 Content-Type 是 String 指定类型为application/json。 枚举值: application/json 表3 请求Body参数 参数 是否必选 参数类型 描述 alarm_rules 是 Array of strings 要删除的规则名称
  • 响应示例 状态码: 200 OK 请求响应成功。 { "status" : "success", "data" : [ "__name__", "call", "code", "config", "dialer_name", "endpoint", "event", "goversion", "handler", "instance", "slice", "version" ] } 状态码: 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 OK 请求响应成功。 400 BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 403 Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 422 Unprocessable 表达式无法执行。 503 ServiceUnavailable 被请求的服务无效。建议直接修改该请求,不要重试该请求。
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 status String 响应状态。 data Array of objects 标签值信息。 状态码: 400 表4 响应Body参数 参数 参数类型 描述 status String 响应状态。 errorType String 错误类型。 error String 错误信息。 状态码: 403 表5 响应Body参数 参数 参数类型 描述 status String 响应状态。 errorType String 错误类型。 error String 错误信息。 状态码: 422 表6 响应Body参数 参数 参数类型 描述 status String 响应状态。 errorType String 错误类型。 error String 错误信息。 状态码: 503 表7 响应Body参数 参数 参数类型 描述 status String 响应状态。 errorType String 错误类型。 error String 错误信息。
  • 状态码 正常 状态码如表11所示。 表11 状态码 状态码 编码 描述 200 OK 请求响应成功。 异常 状态码如表12所示。更多状态码请见状态码。 表12 状态码 状态码 编码 描述 400 BadRequest 非法请求。 建议直接修改该请求,不要重试该请求。 401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 403 Forbidden 请求被拒绝访问。 返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 503 ServiceUnavailable 被请求的服务无效。 建议直接修改该请求,不要重试该请求。
  • 错误码 表13 错误码 错误码 错误信息 处理措施 SVCSTG.INV.4030000 Forbidden 请更换有权限的账号。 SVCSTG.INV.4000115 Invalid request parameter. 请检查参数。 SVCSTG.INV.5000002 The Elasticsearch execution is abnormal. 请联系技术支持工程师解决。 SVCSTG.INV.5000003 The call ICMGR is abnormal. 请联系技术支持工程师解决。 SVCSTG.INV.5000001 The Elasticsearch session is null. 请联系技术支持工程师解决。 SVCSTG.INV.5000006 The apprule name already exists. 请修改规则名称。 SVCSTG.INV.5000007 The maximum number of rules has been reached. 请删除不需要的规则后重新添加规则。
  • 请求消息 请求参数 请求参数如表1所示。 表1 请求参数 参数 是否必选 参数类型 取值范围 描述 appRules 否 Array - 详见表2。 表2 appRules参数 参数 是否必选 参数类型 取值范围 描述 projectid 是 String - 租户从IAM申请到的projectid,一般为32位字符串。 id 是 String - 创建时填空,修改时填规则ID。 name 是 String 字符长度小于64位,以小写字母(a-z)开头,只能包含0-9/a-z/-,不能以-结尾。 规则名称。 createTime 否 String - 创建时间(创建时不传,修改时传查询返回的createTime) enable 是 Boolean true、false 规则是否启用。 hostid 否 Array - 主机ID(暂不使用,传空即可)。 eventName 是 String aom_inventory_rules_event 规则事件名称,对于应用发现固定为"aom_inventory_rules_event" spec 是 Object - 规则详情。详见表3。 表3 spec参数 参数 是否必选 参数类型 取值范围 描述 detectLog 是 String true、false 是否开启日志采集。 logFileFix 是 Array log、trace、out 日志文件的后缀。 discoveryRule 是 Array checkType为cmdLine时checkMode填contain,checkContent格式为[“xxx”]表示进程命令行参数中需要包含xxx。 checkType为env时checkMode填contain,checkContent格式为 ["k1","v1"]表示进程环境变量中需要包含名为k1值为v1的环境变量。 checkType为scope时checkMode填equals,checkContent格式为节点ID数组["hostId1”,”hostId2”],表示规则仅会在这些节点上生效(如果不指定节点范围,规则将下发到该项目所有的节点)。 规则发现部分,数组中有多个对象时表示需要同时满足所有条件的进程才会被匹配到。详见表4。 attrList 否 Array cmdLine、env 属性列表(暂不使用,可不传)。 isDetect 是 String true、false 是否为规则预探测场景(预探测场景不会保存规则,仅用于规则下发之前对规则正确性的检测)。 isDefaultRule 是 String true、false 是否为默认规则。 priority 是 Integer 1~9999的整数,默认取值为9999 规则优先级。 nameRule 是 Object - 应用发现规则命名部分。详见表5。 appType 是 String - 应用类型,用于标记应用的分类,仅用于规则分类和界面展示。可以填写任意字段,如按技术栈分类可填写Java,Python。按作用分类可填写collector(采集),database(数据库)等。 logPathRule 否 Array 当cmdLineHash为固定字符串时,指定日志路径或者日志文件。否则只采集进程当前打开的以.log和.trace结尾的文件。 nameType取值cmdLineHash时,args格式为["00001"],value格式为["/xxx/xx.log"],表示当启动命令是00001时,日志路径为/xxx/xx.log。 日志路径配置规则。详见表8。 表4 discoveryRule参数 参数 是否必选 参数类型 取值范围 描述 checkType 是 String cmdLine、env、scope 匹配类型。 checkMode 是 String contain、equals 匹配条件。 checkContent 是 Array - 匹配值。 表5 nameRule参数 参数 是否必选 参数类型 取值范围 描述 appNameRule 是 Array nameType取值cmdLine时args格式为["start","end"],表示抽取命令行中start、end之间的字符。 nameType取值cmdLine时args格式为 ["aa"],表示抽取环境变量名为aa对应的环境变量值。 nameType取值str时,args格式为["fix"],表示应用名称最后拼接固定文字fix。 nameType取值cmdLineHash时,args格式为["0001"],value格式为["ser"],表示当启动命令是0001时,应用名称为ser。 应用命名部分,数组中有多个对象时表示将每个对象抽取到的字符串拼接作为应用的名称。详见表6。 applicationNameRule 是 Array nameType取值cmdLine时args格式为["start","end"],表示抽取命令行中start、end之间的字符。 nameType取值cmdLine时args格式为 ["aa"],表示抽取环境变量名为aa对应的环境变量值。 nameType取值str时,args格式为["fix"],表示应用名称最后拼接固定文字fix。 nameType取值cmdLineHash时,args格式为["0001"],value格式为["ser"],表示当启动命令是0001时,应用名称为ser。 应用命名部分。详见表7。 表6 appNameRule参数 参数 是否必选 参数类型 取值范围 描述 nameType 是 String cmdLineHash、cmdLine、env、str 取值类型。 args 是 Array - 输入值。 value 否 Array - 应用名(仅nameType为cmdLineHash时填写)。 表7 applicationNameRule参数 参数 是否必选 参数类型 取值范围 描述 nameType 是 String cmdLineHash、cmdLine、env、str 取值类型。 args 是 Array - 输入值。 value 否 Array - 应用名(仅nameType为cmdLineHash时填写)。 表8 logPathRule参数 参数 是否必选 参数类型 取值范围 描述 nameType 是 String cmdLineHash 取值类型。 args 是 Array - 命令行。 value 是 Array - 日志路径。 Header说明 请求消息头(Header)如表9所示。 表9 Header说明 名称 是否必选 说明 X-Auth-Token 是 从IAM服务获取的用户Token。 Content-Type 是 指定类型为application/json。 请求示例 { "appRules": [ { "id": "", "name": "bytest", "createTime": "", "projectid": "5a6036f48e954fcd84d198cb28db311a", "enable": true, "hostid": [], "eventName": "aom_inventory_rules_event", "spec": { "detectLog": "true", "logFileFix": ["log","trace"], "discoveryRule": [ { "checkType": "cmdLine", "checkMode": "contain", "checkContent": ["default"] },{ "checkType": "scope", "checkMode": "equals", "checkContent": [ "44d6c4bb-f673-4bf4-8d33-313832f37b28" ] } ], "attrList": ["cmdLine"], "isDetect": "false", "priority": "1", "nameRule": { "appNameRule": [ { "nameType":"cmdLineHash", "args":["00000000001"], "value":["serviceName1"] }, { "nameType": "cmdLine", "args": [ "/var/paas/kubernetes/","/kubeconfig" ] }, { "nameType": "env", "args": ["APP_NAME"] }, { "nameType": "str", "args": ["kube"] } ], "applicationNameRule": [ { "nameType":"cmdLineHash", "agrs":["00000000001"], "value":["applicationName1"] }, { "nameType": "str", "args": ["kubeproxy"] } ] }, "appType": "", "isDefaultRule":"false", "logPathRule": [ { "nameType":"cmdLineHash", "agrs":["00000000001"], "value":["/xx/xxx/xx.log","/xx/xxx/xx"] } ] } } ] }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 从IAM服务获取的用户Token。 Content-Type 是 String 指定类型为application/json,有Body体的情况下必选,没有Body体则无需填写和校验。 表3 请求Body参数 参数 是否必选 参数类型 描述 description 否 String 组件描述 name 是 String 组件名称
  • 响应示例 状态码: 200 请求响应成功,任务状态已改变。 { "result" : "success" } 状态码: 401 Unauthorized。在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 { "error_code" : "AOM.31009004", "error_msg" : "auth failed.", "http_code" : "401" } 状态码: 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 { "error_code" : "AOM.31001405", "error_msg" : "internal server error.", "http_code" : "500" }
共100000条