更新时间:2025-03-21 GMT+08:00

创建消息模板

功能介绍

该接口用于创建通知模板,目前每个账户最多可以创建共100个通知模板,创建后名称不可修改。

URI

POST /v2/{project_id}/{domain_id}/lts/events/notification/templates

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID,获取方式请参见:获取项目ID,获取账号ID,日志组ID、日志流ID

最小长度:32

最大长度:32

domain_id

String

账号ID,获取方式请参见:获取项目ID,获取账号ID,日志组ID、日志流ID

最小长度:32

最大长度:32

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

从IAM服务获取的用户Token,获取方式请参见:获取用户Token

最小长度:1000

最大长度:2000

Content-Type

String

该字段填为:application/json;charset=UTF-8。

最小长度:30

最大长度:30

表3 请求Body参数

参数

是否必选

参数类型

描述

name

String

通知规则名称,必填,只含有汉字、数字、字母、下划线、中划线,不能以下划线等特殊符号开头和结尾,长度为 1 - 100,创建后不可修改

最小长度:1

最大长度:100

type

Array of strings

通知方式

desc

String

模板描述,必填,只含有汉字、数字、字母、下划线不能以下划线开头和结尾,长度为0--1024

最小长度:0

最大长度:1024

source

String

模板来源,目前必填为LTS,否则会筛选不出来

最小长度:3

最大长度:3

locale

String

语言类型,例如en-us

templates

Array of SubTemplate objects

模板正文,为一个数组

表4 SubTemplate

参数

是否必选

参数类型

描述

sub_type

String

模板子类型,例如sms,email

content

String

子模版正文,$符号后所跟变量仅支持以下变量,不同告警类型所支持的变量亦不相同。目前关键词告警类型的变量如下:

  • 告警级别:${event_severity};

  • 发生时间:${starts_at};

  • 告警源:$event.metadata.resource_provider;

  • 资源类型:$event.metadata.resource_type;

  • 资源标识:${resources};

  • 统计类型:关键词统计;

  • 表达式:$event.annotations.condition_expression;

  • 当前值: $event.annotations.current_value;

  • 统计周期:$event.annotations.frequency;

  • 查询时间:$event.annotations.results[0].time;

  • 查询日志:$event.annotations.results[0].raw_results;

说明:

变量后面的分号";"为英文符号,必须添加,否则模板会出现替换失败的情况

最小长度:2

最大长度:1024

topic

String

邮件主题,只有sub_type=email时生效

响应参数

状态码:200

表5 响应Body参数

参数

参数类型

描述

name

String

通知规则名称

type

Array of strings

通知方式

desc

String

模板描述

source

String

模板来源

locale

String

语言

templates

Array of SubTemplateResBody objects

模板正文,为一个数组

表6 SubTemplateResBody

参数

参数类型

描述

sub_type

String

模板子类型,例如sms,email

content

String

子模版正文,$符号后所跟变量仅支持以下变量,根据不同告警类型(关键词告警和sql告警),所支持的变量亦不相同。

topic

String

邮件主题,只有sub_type=email时生效

状态码:400

表7 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

调用失败响应信息描述。

状态码:500

表8 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

调用失败响应信息描述。

请求示例

创建消息模板

POST https://{endpoint}/v2/{project_id}/{domain_id}/lts/events/notification/templates

{
  "name" : "alarm-template",
  "desc" : "test",
  "source" : "LTS",
  "locale" : "en-us",
  "templates" : [ {
    "sub_type" : "sms",
    "content" : "告警级别:${event_severity};\n发生时间:${starts_at};\n资源标识:${resources};\n统计类型:关键词统计;\n表达式:$event.annotations.condition_expression;\n当前值: $event.annotations.current_value;\n统计周期:$event.annotations.frequency;"
  }, {
    "sub_type" : "email",
    "content" : "告警级别:${event_severity};\n发生时间:${starts_at};\n告警源:$event.metadata.resource_provider;\n资源类型:$event.metadata.resource_type;\n资源标识:${resources};\n统计类型:关键词统计;\n表达式:$event.annotations.condition_expression;\n当前值: $event.annotations.current_value;\n统计周期:$event.annotations.frequency;\n查询时间:$event.annotations.results[0].time;\n查询日志:$event.annotations.results[0].raw_results;"
  } ]
}

响应示例

状态码:200

请求响应成功。

{
  "desc" : "description",
  "locale" : "en-us",
  "name" : "postman-test",
  "source" : "LTS",
  "templates" : [ {
    "content" : "告警级别:${event_severity};\n发生时间:${starts_at};\n资源标识:${resources};\n统计类型:关键词统计;\n表达式:$event.annotations.condition_expression;\n当前值: $event.annotations.current_value;\n统计周期:$event.annotations.frequency;",
    "sub_type" : "sms"
  }, {
    "content" : "告警级别:${event_severity};\n发生时间:${starts_at};\n告警源:$event.metadata.resource_provider;\n资源类型:$event.metadata.resource_type;\n资源标识:${resources};\n统计类型:关键词统计;\n表达式:$event.annotations.condition_expression;\n当前值: $event.annotations.current_value;\n统计周期:$event.annotations.frequency;\n查询时间:$event.annotations.results[0].time;\n查询日志:$event.annotations.results[0].raw_results;",
    "sub_type" : "email"
  } ]
}

状态码:400

BadRequest 非法请求 建议根据error_msg直接修改该请求。

{
  "error_code" : "LTS.2014",
  "error_msg" : "desc is invalid!"
}

状态码:500

表明服务端能被请求访问到,但是服务内部出错。

{
  "error_code" : "LTS.2014",
  "error_msg" : "Failed to create notification template."
}

状态码

状态码

描述

200

请求响应成功。

400

BadRequest 非法请求 建议根据error_msg直接修改该请求。

500

表明服务端能被请求访问到,但是服务内部出错。

错误码

请参见错误码