报警文本模板(Text Template)
创建报警消息模板(CreateSNSTextTemplate)
API请求
URLs
POST zstack/v1/zwatch/alarms/sns/text-templatesHeaders
Authorization: OAuth the-session-uuidBody
{
"params": {
"name": "email template",
"applicationPlatformType": "Email",
"template": "Alarm ${ALARM_NAME} changes status to ${ALARM_CURRENT_STATUS}",
"recoveryTemplate": "Alarm ${ALARM_NAME} Resource ${ALARM_RESOURCE_NAME} changes status to ${ALARM_CURRENT_STATUS}",
"defaultTemplate": true
},
"systemTags": [],
"userTags": []
}Note: 上述示例中systemTags、userTags字段可以省略。列出是为了表示body中可以包含这两个字段。
Curl示例
curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X POST -d '{"params":{"name":"email template","applicationPlatformType":"Email","template":"Alarm ${ALARM_NAME} changes status to ${ALARM_CURRENT_STATUS}","recoveryTemplate":"Alarm ${ALARM_NAME} Resource ${ALARM_RESOURCE_NAME} changes status to ${ALARM_CURRENT_STATUS}","defaultTemplate":true}}' http://localhost:8080/zstack/v1/zwatch/alarms/sns/text-templates参数列表
| 名字 | 类型 | 位置 | 描述 | 可选值 | 起始版本 |
|---|---|---|---|---|---|
| name | String | body(包含在params结构中) | 资源名称 | 2.3 | |
| description (可选) | String | body(包含在params结构中) | 资源的详细描述 | 2.3 | |
| applicationPlatformType | String | body(包含在params结构中) | SNS应用平台类型 | 2.3 | |
| template | String | body(包含在params结构中) | 报警消息模板文本 | 2.3 | |
| recoveryTemplate | String | body(包含在params结构中) | 恢复报警模板文本 | 3.4.0 | |
| defaultTemplate (可选) | Boolean | body(包含在params结构中) | 是否作为默认模板 | 2.3 | |
| resourceUuid (可选) | String | body(包含在params结构中) | 2.3 | ||
| systemTags (可选) | List | body | 系统标签 | 2.3 | |
| userTags (可选) | List | body | 用户标签 | 2.3 |
API返回
返回示例
{
"inventory": {
"uuid": "0b13c60e86c44fc08829f40ff73923f7",
"name": "email template",
"applicationPlatformType": "Email",
"template": "Alarm ${ALARM_NAME} changes status to ${ALARM_CURRENT_STATUS}",
"recoveryTemplate": "Alarm ${ALARM_NAME} Resource ${ALARM_RESOURCE_NAME} changes status to ${ALARM_CURRENT_STATUS}",
"defaultTemplate": false,
"createDate": "Jul 6, 2018 1:51:04 PM",
"lastOpDate": "Jul 6, 2018 1:51:04 PM"
}
}#error
| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| code | String | 错误码号,错误的全局唯一标识,例如SYS.1000, HOST.1001 | 0.6 |
| description | String | 错误的概要描述 | 0.6 |
| details | String | 错误的详细信息 | 0.6 |
| elaboration | String | 保留字段,默认为null | 0.6 |
| opaque | LinkedHashMap | 保留字段,默认为null | 0.6 |
| cause | ErrorCode | 根错误,引发当前错误的源错误,若无原错误,该字段为null | 0.6 |
#inventory
| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| uuid | String | 资源的UUID,唯一标示该资源 | 2.3 |
| name | String | 资源名称 | 2.3 |
| description | String | 资源的详细描述 | 2.3 |
| applicationPlatformType | String | 应用平台类型 | 2.3 |
| template | String | 模板文本 | 2.3 |
| defaultTemplate | Boolean | 是否为默认模板 | 2.3 |
| createDate | Timestamp | 创建时间 | 2.3 |
| lastOpDate | Timestamp | 最后一次修改时间 | 2.3 |
SDK示例
Java
SDK
CreateSNSTextTemplateAction action = new CreateSNSTextTemplateAction();
action.name = "email template";
action.applicationPlatformType = "Email";
action.template = "Alarm ${ALARM_NAME} changes status to ${ALARM_CURRENT_STATUS}";
action.recoveryTemplate = "Alarm ${ALARM_NAME} Resource ${ALARM_RESOURCE_NAME} changes status to ${ALARM_CURRENT_STATUS}";
action.defaultTemplate = true;
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
CreateSNSTextTemplateAction.Result res = action.call();Python
SDK
CreateSNSTextTemplateAction action = CreateSNSTextTemplateAction()
action.name = "email template"
action.applicationPlatformType = "Email"
action.template = "Alarm ${ALARM_NAME} changes status to ${ALARM_CURRENT_STATUS}"
action.recoveryTemplate = "Alarm ${ALARM_NAME} Resource ${ALARM_RESOURCE_NAME} changes status to ${ALARM_CURRENT_STATUS}"
action.defaultTemplate = true
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
CreateSNSTextTemplateAction.Result res = action.call()删除报警消息模板(DeleteSNSTextTemplate)
删除报警消息模板。
API请求
URLs
DELETE zstack/v1/zwatch/alarms/sns/text-templates/{uuid}?deleteMode={deleteMode}Headers
Authorization: OAuth the-session-uuidCurl示例
curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X DELETE http://localhost:8080/zstack/v1/zwatch/alarms/sns/text-templates/a4ce47e628303c4fa55743f1b84c61b4?deleteMode=Permissive参数列表
| 名字 | 类型 | 位置 | 描述 | 可选值 | 起始版本 |
|---|---|---|---|---|---|
| uuid | String | url | 资源的UUID,唯一标示该资源 | 2.3 | |
| deleteMode (可选) | String | url | 2.3 | ||
| systemTags (可选) | List | body | 系统标签 | 2.3 | |
| userTags (可选) | List | body | 用户标签 | 2.3 |
API返回
该API成功时返回一个空的JSON结构
{},出错时返回的JSON结构包含一个error字段,例如:{
"error": {
"code": "SYS.1001",
"description": "A message or a operation timeout",
"details": "Create VM on KVM timeout after 300s"
}
}SDK示例
Java
SDK
DeleteSNSTextTemplateAction action = new DeleteSNSTextTemplateAction();
action.uuid = "a4ce47e628303c4fa55743f1b84c61b4";
action.deleteMode = "Permissive";
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
DeleteSNSTextTemplateAction.Result res = action.call();Python
SDK
DeleteSNSTextTemplateAction action = DeleteSNSTextTemplateAction()
action.uuid = "a4ce47e628303c4fa55743f1b84c61b4"
action.deleteMode = "Permissive"
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
DeleteSNSTextTemplateAction.Result res = action.call()查询报警消息模板(QuerySNSTextTemplate)
查询报警消息模板。
API请求
URLs
GET zstack/v1/zwatch/alarms/sns/text-templates
GET zstack/v1/zwatch/alarms/sns/text-templates/{uuid}Headers
Authorization: OAuth the-session-uuidCurl示例
可查询字段curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X GET http://localhost:8080/zstack/v1/zwatch/alarms/sns/text-templates?q=name=testcurl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X GET http://localhost:8080/zstack/v1/zwatch/alarms/sns/text-templates/1dc97bd699e739c6968fb3e702ab4cb6运行CLI命令行工具,输入QuerySNSTextTemplate并按Tab键查看所有可查询字段以及可跨表查询的资源名。
API返回
返回示例
{
"inventories": [
{
"uuid": "c275ce35fae13a09bcd4c54a7406bd3e",
"name": "Test-SNS-Template",
"description": "sns text template",
"applicationPlatformType": "Email",
"template": "报警器 ${ALARM_NAME} 状态改变成 ${ALARM_CURRENT_STATUS}",
"defaultTemplate": false,
"createDate": "Nov 14, 2017 10:20:57 PM",
"lastOpDate": "Nov 14, 2017 10:20:57 PM"
}
]
}| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| error | ErrorCode | 错误码,若不为null,则表示操作失败, 操作成功时该字段为null。 详情参考error | 2.3 |
| inventories | List | 详情参考inventories | 2.3 |
#error
| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| code | String | 错误码号,错误的全局唯一标识,例如SYS.1000, HOST.1001 | 2.3 |
| description | String | 错误的概要描述 | 2.3 |
| details | String | 错误的详细信息 | 2.3 |
| elaboration | String | 保留字段,默认为null | 2.3 |
| opaque | LinkedHashMap | 保留字段,默认为null | 2.3 |
| cause | ErrorCode | 根错误,引发当前错误的源错误,若无原错误,该字段为null | 2.3 |
#inventories
| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| uuid | String | 资源的UUID,唯一标示该资源 | 2.3 |
| name | String | 资源名称 | 2.3 |
| description | String | 资源的详细描述 | 2.3 |
| applicationPlatformType | String | 应用平台类型 | 2.3 |
| template | String | 模板文本 | 2.3 |
| defaultTemplate | Boolean | 是否为默认模板 | 2.3 |
| createDate | Timestamp | 创建时间 | 2.3 |
| lastOpDate | Timestamp | 最后一次修改时间 | 2.3 |
SDK示例
Java
SDK
QuerySNSTextTemplateAction action = new QuerySNSTextTemplateAction();
action.conditions = asList("name=test");
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
QuerySNSTextTemplateAction.Result res = action.call();Python
SDK
QuerySNSTextTemplateAction action = QuerySNSTextTemplateAction()
action.conditions = ["name=test"]
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
QuerySNSTextTemplateAction.Result res = action.call()查询文本模板支持的参数(GetTextTemplateArg)
API请求
URLs
GET zstack/v1/zwatch/textTemplateArgHeaders
Authorization: OAuth the-session-uuidCurl示例
curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X GET http://localhost:8080/zstack/v1/zwatch/textTemplateArg参数列表
| 名字 | 类型 | 位置 | 描述 | 可选值 | 起始版本 |
|---|---|---|---|---|---|
| systemTags (可选) | List | query | 系统标签 | 4.2.0 | |
| userTags (可选) | List | query | 用户标签 | 4.2.0 |
API返回
返回示例
{
"defaultSupportedParams": {
"alarm": [
"ALARM_NAME",
"ALARM_UUID",
"ALARM_COMPARISON_OPERATOR",
"ALARM_COMPARISON_OPERATOR_REVERSE",
"ALARM_METRIC",
"ALARM_NAMESPACE",
"ALARM_THRESHOLD",
"ALARM_LABELS",
"ALARM_DURATION",
"ALARM_PREVIOUS_STATUS",
"ALARM_CURRENT_STATUS",
"ALARM_CURRENT_VALUE",
"ALARM_TIME",
"ALARM_RESOURCE_TYPE",
"ALARM_RESOURCE_ID",
"ALARM_RESOURCE_NAME",
"TITLE_ALARM_RESOURCE_NAME",
"ALARM_ACCOUNT_UUID",
"ALARM_DATA_UUID",
"ALARM_EMERGENCY_LEVEL",
"ALARM_RESOURCE_IP",
"ALARM_RESOURCE_CLUSTER_UUID",
"ALARM_RESOURCE_CLUSTER_NAME"
],
"event": [
"EVENT_NAMESPACE",
"EVENT_NAME",
"EVENT_LABELS",
"EVENT_EMERGENCY_LEVEL",
"EVENT_RESOURCE_ID",
"EVENT_RESOURCE_NAME",
"EVENT_ERROR",
"EVENT_TIME",
"EVENT_SUBSCRIPTION_UUID",
"EVENT_ACCOUNT_UUID",
"EVENT_DATA_UUID",
"EVENT_RESOURCE_IP",
"EVENT_RESOURCE_CLUSTER_UUID",
"EVENT_RESOURCE_CLUSTER_NAME"
]
}
}| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| defaultSupportedParams | Map | 默认支持参数列表 | 4.2.0 |
| success | boolean | 4.2.0 | |
| error | ErrorCode | 错误码,若不为null,则表示操作失败, 操作成功时该字段为null。 详情参考error | 4.2.0 |
#error
| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| code | String | 错误码号,错误的全局唯一标识,例如SYS.1000, HOST.1001 | 2.3 |
| description | String | 错误的概要描述 | 2.3 |
| details | String | 错误的详细信息 | 2.3 |
| elaboration | String | 保留字段,默认为null | 2.3 |
| opaque | LinkedHashMap | 保留字段,默认为null | 2.3 |
| cause | ErrorCode | 根错误,引发当前错误的源错误,若无原错误,该字段为null | 2.3 |
SDK示例
Java
SDK
GetTextTemplateArgAction action = new GetTextTemplateArgAction();
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
GetTextTemplateArgAction.Result res = action.call();Python
SDK
GetTextTemplateArgAction action = GetTextTemplateArgAction()
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
GetTextTemplateArgAction.Result res = action.call()更新报警消息模板(UpdateSNSTextTemplate)
更新报警消息模板。
API请求
URLs
PUT zstack/v1/zwatch/alarms/sns/text-templates/{uuid}/actionsHeaders
Authorization: OAuth the-session-uuidBody
{
"updateSNSTextTemplate": {
"name": "email template",
"template": "Alarm ${ALARM_NAME} changes status to ${ALARM_CURRENT_STATUS}",
"recoveryTemplate": "Alarm ${ALARM_NAME} Resource ${ALARM_RESOURCE_NAME} changes status to ${ALARM_CURRENT_STATUS}",
"defaultTemplate": true
},
"systemTags": [],
"userTags": []
}Note: 上述示例中systemTags、userTags字段可以省略。列出是为了表示body中可以包含这两个字段。
Curl示例
curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X PUT -d '{"updateSNSTextTemplate":{"name":"email template","template":"Alarm ${ALARM_NAME} changes status to ${ALARM_CURRENT_STATUS}","recoveryTemplate":"Alarm ${ALARM_NAME} Resource ${ALARM_RESOURCE_NAME} changes status to ${ALARM_CURRENT_STATUS}","defaultTemplate":true}}' http://localhost:8080/zstack/v1/zwatch/alarms/sns/text-templates/108482a9d3153463abd49712701ad937/actions参数列表
| 名字 | 类型 | 位置 | 描述 | 可选值 | 起始版本 |
|---|---|---|---|---|---|
| uuid | String | url | 资源的UUID,唯一标示该资源 | 2.3 | |
| name (可选) | String | body(包含在updateSNSTextTemplate结构中) | 资源名称 | 2.3 | |
| description (可选) | String | body(包含在updateSNSTextTemplate结构中) | 资源的详细描述 | 2.3 | |
| template (可选) | String | body(包含在updateSNSTextTemplate结构中) | 报警消息模板文本 | 2.3 | |
| recoveryTemplate (可选) | String | body(包含在updateSNSTextTemplate结构中) | 恢复报警消息模板文本 | 3.4.0 | |
| defaultTemplate (可选) | Boolean | body(包含在updateSNSTextTemplate结构中) | 是否为默认模板 | 2.3 | |
| systemTags (可选) | List | body | 系统标签 | 2.3 | |
| userTags (可选) | List | body | 用户标签 | 2.3 |
API返回
返回示例
{
"inventory": {
"uuid": "cc881c03f4c04ea9a0e0dda61f4c2f00",
"name": "email template",
"applicationPlatformType": "Email",
"template": "Alarm ${ALARM_NAME} changes status to ${ALARM_CURRENT_STATUS}",
"recoveryTemplate": "Alarm ${ALARM_NAME} Resource ${ALARM_RESOURCE_NAME} changes status to ${ALARM_CURRENT_STATUS}",
"defaultTemplate": false,
"createDate": "Jul 6, 2018 1:51:22 PM",
"lastOpDate": "Jul 6, 2018 1:51:22 PM"
}
}| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| error | ErrorCode | 错误码,若不为null,则表示操作失败, 操作成功时该字段为null。 详情参考error | 2.3 |
| inventory | SNSTextTemplateInventory | 详情参考inventory | 2.3 |
#error
| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| code | String | 错误码号,错误的全局唯一标识,例如SYS.1000, HOST.1001 | 2.3 |
| description | String | 错误的概要描述 | 2.3 |
| details | String | 错误的详细信息 | 2.3 |
| elaboration | String | 保留字段,默认为null | 2.3 |
| opaque | LinkedHashMap | 保留字段,默认为null | 2.3 |
| cause | ErrorCode | 根错误,引发当前错误的源错误,若无原错误,该字段为null | 2.3 |
#inventory
| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| uuid | String | 资源的UUID,唯一标示该资源 | 2.3 |
| name | String | 资源名称 | 2.3 |
| description | String | 资源的详细描述 | 2.3 |
| applicationPlatformType | String | 应用平台类型 | 2.3 |
| template | String | 模板文本 | 2.3 |
| recoveryTemplate | String | 模板文本 | 3.4.0 |
| defaultTemplate | Boolean | 是否为默认模板 | 2.3 |
| createDate | Timestamp | 创建时间 | 2.3 |
| lastOpDate | Timestamp | 最后一次修改时间 | 2.3 |
SDK示例
Java
SDK
UpdateSNSTextTemplateAction action = new UpdateSNSTextTemplateAction();
action.uuid = "108482a9d3153463abd49712701ad937";
action.name = "email template";
action.template = "Alarm ${ALARM_NAME} changes status to ${ALARM_CURRENT_STATUS}";
action.recoveryTemplate = "Alarm ${ALARM_NAME} Resource ${ALARM_RESOURCE_NAME} changes status to ${ALARM_CURRENT_STATUS}";
action.defaultTemplate = true;
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
UpdateSNSTextTemplateAction.Result res = action.call();Python
SDK
UpdateSNSTextTemplateAction action = UpdateSNSTextTemplateAction()
action.uuid = "108482a9d3153463abd49712701ad937"
action.name = "email template"
action.template = "Alarm ${ALARM_NAME} changes status to ${ALARM_CURRENT_STATUS}"
action.recoveryTemplate = "Alarm ${ALARM_NAME} Resource ${ALARM_RESOURCE_NAME} changes status to ${ALARM_CURRENT_STATUS}"
action.defaultTemplate = true
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
UpdateSNSTextTemplateAction.Result res = action.call()