云服务器内容精选

  • 修改事件源 登录事件网格控制台。 在左侧导航栏选择“事件订阅”,进入“事件订阅”页面。 单击待修改事件源参数的订阅名称,进入订阅详情页。 单击已有事件源模块,弹出“事件源”对话框。 修改事件源配置参数。 已创建的订阅,无法修改事件源提供方。 当提供方为“华为云”时,设置如表1所示参数。 表1 云服务事件源参数说明 参数名称 说明 事件源 选择云服务事件源。 事件类型(可选) 选择事件网格预定义的事件类型。 过滤规则 输入事件过滤规则。 事件源产生的事件与过滤规则进行匹配,匹配成功后事件才会被路由到与过滤规则关联的事件目标。如果需要了解更多过滤规则的信息,请参考过滤规则参数说明和过滤规则示例。 图1 云服务事件源配置参数 当提供方为“自定义”时,设置如表2所示参数。 已创建的订阅,无法修改已绑定的自定义事件通道。 表2 自定义事件源参数说明 参数名称 说明 事件源配置 配置类型 支持以下两种类型: 选择:选择一个已关联自定义事件通道的自定义事件源。 新建:创建一个新的自定义事件源。 事件源 “配置类型”为“选择”时,在下拉列表中选择一个已关联自定义事件通道的自定义事件源,此自定义事件通道为订阅绑定的自定义事件通道(即“通道配置”中“通道”的参数值)。 “配置类型”为“新建”时,输入自定义事件源名称。 描述 仅在“配置类型”为“新建”时,需要设置此参数。 输入自定义事件源的描述信息。 过滤规则 输入事件过滤规则。 事件源产生的事件与过滤规则进行匹配,匹配成功后事件才会被路由到与过滤规则关联的事件目标。如果需要了解更多过滤规则的信息,请参考过滤规则参数说明和过滤规则示例。 图2 自定义事件源参数配置 单击“确定”。 单击“保存”,完成事件源的修改。
  • 资源和成本规划 本实践涉及到的资源和成本规划,如下表所示。 表1 资源和成本规划 资源 资源说明 数量 费用(元) 虚拟私有云VPC 创建一个虚拟私有云VPC。 1 00.00 虚拟私有云子网 创建一个虚拟私有云子网。 1 00.00 安全组 创建一个安全组。 1 00.00 对象存储服务 OBS 创建一个OBS桶。 说明: 创建OBS桶免费,使用阶段请参考OBS计费说明。 1 00.00 分布式消息服务 Kafka版 购买一个Kafka实例,按需计费。 1 例如:kafka.2u4g.cluster 4.35元/小时 事件网格EventGrid 创建一个事件订阅,事件源为OBS应用事件源,事件目标为分布式消息服务Kafka版。 创建一个目标连接,类型为“分布式消息服务 Kafka版”。 1 00.00 本文提供的成本预估费用仅供参考,资源的实际费用以华为云管理控制台显示为准。 父主题: 基于事件订阅将OBS应用事件源消息路由至分布式消息服务Kafka版
  • 响应示例 状态码: 400 { "error_code" : "EG.00014000", "error_msg" : "Bad request" } 状态码: 401 { "error_code" : "EG.00014010", "error_msg" : "Incorrect token or token resolution failed" } 状态码: 403 { "error_code" : "EG.00014030", "error_msg" : "No permissions to request this method" } 状态码: 404 { "error_code" : "EG.00014040", "error_msg" : "Not request resource found" } 状态码: 500 { "error_code" : "EG.00015000", "error_msg" : "Internal Server Error" }
  • 响应参数 状态码: 200 表15 响应Header参数 参数 参数类型 描述 X-Request-Id String This field is the request ID number for task tracking. Format is request_uuid-timestamp-hostname. 表16 响应Body参数 参数 参数类型 描述 id String 订阅ID name String 订阅名称 description String 订阅描述 type String 类型 枚举值: EVENT SCHEDULED status String 状态 枚举值: CREATED ENABLED DISABLED FROZEN ERROR channel_id String 通道ID channel_name String 通道名称 used Array of SubscriptionUsedInfo objects 标签信息 sources Array of SubscriptionSourceInfo objects 订阅源列表 targets Array of SubscriptionTargetInfo objects 订阅目标列表 created_time String 创建时间 updated_time String 更新时间 表17 SubscriptionUsedInfo 参数 参数类型 描述 resource_id String 关联资源ID owner String 管理租户账号 description String 描述 表18 SubscriptionSourceInfo 参数 参数类型 描述 id String 订阅源ID name String 订阅的事件源名称 provider_type String 订阅的事件源的提供方类型 detail Object 订阅的事件源参数列表 filter Object 订阅事件源的匹配过滤规则 created_time String 创建时间 updated_time String 更新时间 表19 SubscriptionTargetInfo 参数 参数类型 描述 id String 订阅目标ID name String 订阅的事件目标名称 provider_type String 订阅的事件目标的提供方类型 connection_id String 订阅的事件目标使用的目标链接ID 最大长度:64 detail Object 订阅的事件目标参数列表 transform TransForm object 订阅的事件目标转换规则 dead_letter_queue DeadLetterQueue object 订阅的死信参数列表 created_time String 创建时间 updated_time String 更新时间 表20 TransForm 参数 参数类型 描述 type String 转换规则类型 枚举值: ORIGINAL CONSTANT VARIABLE value String 常量类型规则时,字段为常量内容定义; 变量类型规则时,为变量定义,内容必须为JsonObject字符串。 变量最多支持100个,且不支持嵌套结构定义; 变量名由字母、数字、点、下划线和中划线组成,必须字母或数字开头不能以HC.开头,长度不超过64个字符; 变量值表达式支持常量或JsonPath表达式,字符串长度不超过1024个字符。 最大长度:1024 template String 变量类型规则时,规则内容的模板定义,支持对已定义变量的引用。 最大长度:2048 表21 DeadLetterQueue 参数 参数类型 描述 type String 队列类型 枚举值: KAFKA instance_id String 实例id 最小长度:1 最大长度:128 connection_id String 目标连接id 最小长度:1 最大长度:128 topic String 主题 最小长度:1 最大长度:128 状态码: 400 表22 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:1 最大长度:128 error_msg String 错误消息 最小长度:1 最大长度:512 error_details String 具体错误消息 最小长度:1 最大长度:1024 request_id String 请求处理ID 最小长度:1 最大长度:128 状态码: 401 表23 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:1 最大长度:128 error_msg String 错误消息 最小长度:1 最大长度:512 error_details String 具体错误消息 最小长度:1 最大长度:1024 request_id String 请求处理ID 最小长度:1 最大长度:128 状态码: 403 表24 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:1 最大长度:128 error_msg String 错误消息 最小长度:1 最大长度:512 error_details String 具体错误消息 最小长度:1 最大长度:1024 request_id String 请求处理ID 最小长度:1 最大长度:128 状态码: 404 表25 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:1 最大长度:128 error_msg String 错误消息 最小长度:1 最大长度:512 error_details String 具体错误消息 最小长度:1 最大长度:1024 request_id String 请求处理ID 最小长度:1 最大长度:128 状态码: 500 表26 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:1 最大长度:128 error_msg String 错误消息 最小长度:1 最大长度:512 error_details String 具体错误消息 最小长度:1 最大长度:1024 request_id String 请求处理ID 最小长度:1 最大长度:128
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用 IAM 服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:1 最大长度:16384 表3 请求Body参数 参数 是否必选 参数类型 描述 name 是 String 订阅名称,租户下唯一,由字母、数字、点、下划线和中划线组成,必须字母或数字开头 最小长度:1 最大长度:128 description 否 String 订阅描述 最大长度:255 channel_id 是 String 所属事件通道ID sources 是 Array of SubscriptionSource objects 订阅的事件源列表, 当前仅支持订阅一个事件源 数组长度:1 - 1 targets 是 Array of SubscriptionTarget objects 事件目标列表,至少订阅一个事件目标 表4 SubscriptionSource 参数 是否必选 参数类型 描述 id 否 String 订阅源ID,需保证全局唯一。指定ID的订阅源存在时则进行更新,否则进行创建;未指定时由系统自动生成。由小写字母、数字、中划线组成,必须字母或数字开头。 最小长度:32 最大长度:64 name 是 String 订阅的事件源名称 最大长度:128 provider_type 是 String 订阅的事件源的提供方类型 枚举值: CUSTOM OFFICIAL PARTNER detail 否 Object 订阅的事件源参数列表, 该字段序列化后总长度不超过1024字节 filter 是 Object 订阅事件源的匹配过滤规则, 该字段序列化后总长度不超过2048字节 表5 SubscriptionTarget 参数 是否必选 参数类型 描述 id 否 String 订阅目标ID,需保证全局唯一,由小写字母、数字、中划线组成,必须字母或数字开头。 更新订阅场景时,指定ID的订阅目标存在时则进行更新,否则进行创建; 创建订阅目标场景时,指定ID作为待创建的订阅目标对象ID,未指定时由系统自动生成。 更新订阅目标时,此字段忽略; 最小长度:32 最大长度:64 name 是 String 订阅的事件目标名称 最大长度:128 provider_type 是 String 订阅的事件目标的提供方类型 枚举值: CUSTOM OFFICIAL connection_id 否 String 订阅的事件目标使用的目标链接ID 最大长度:64 detail 否 Detail object 订阅的事件目标参数列表,该字段序列化后总长度不超过1024字节,函数、函数流、webhook订阅目标必填,其中函数、函数流委托名称必填 kafka_detail 否 KafkaTargetDetail object 订阅的事件kafka目标参数列表,该字段序列化后总长度不超过1024字节,kafka订阅目标必填 smn_detail 否 SmnTargetDetail object 订阅的事件smn目标参数列表,该字段序列化后总长度不超过1024字节,smn订阅目标必填 transform 是 TransForm object 订阅的事件目标转换规则 dead_letter_queue 否 DeadLetterQueue object 订阅的死信参数列表 表6 Detail 参数 是否必选 参数类型 描述 url 否 String 自定义目标url agency_name 否 String 委托名称 invocation_http_parameters 否 InvocationHttpParameters object invoke_type 否 String 函数调用方式,异步/同步 枚举值: SYNC,ASYNC 表7 InvocationHttpParameters 参数 是否必选 参数类型 描述 header_parameters 否 Array of HeaderParameter objects 对象列表 数组长度:0 - 5 表8 HeaderParameter 参数 是否必选 参数类型 描述 is_value_secret 否 Boolean 是否加密 key 否 String header的key值 最小长度:1 最大长度:256 value 否 String header的value值 最小长度:1 最大长度:1024 表9 KafkaTargetDetail 参数 是否必选 参数类型 描述 topic 是 String 主题 keyTransform 否 keyTransform object 键值规则 表10 keyTransform 参数 是否必选 参数类型 描述 type 否 String 键值规则类型 枚举值: NONE VARIABLE CONSTANT value 否 String 键值规则,键值规则为VARIABLE,CONSTANT时必填 template 否 String 键值规则模板,键值规则为VARIABLE时必填 表11 SmnTargetDetail 参数 是否必选 参数类型 描述 urn 是 String 主题urn agency_name 是 String 委托名称 subject_transform 否 subject_transform object 标题规则 表12 subject_transform 参数 是否必选 参数类型 描述 type 是 String 标题规则类型 枚举值: VARIABLE CONSTANT value 是 String 标题规则 template 否 String 标题规则模板,键值规则为VARIABLE时必填 表13 TransForm 参数 是否必选 参数类型 描述 type 是 String 转换规则类型 枚举值: ORIGINAL CONSTANT VARIABLE value 否 String 常量类型规则时,字段为常量内容定义; 变量类型规则时,为变量定义,内容必须为JsonObject字符串。 变量最多支持100个,且不支持嵌套结构定义; 变量名由字母、数字、点、下划线和中划线组成,必须字母或数字开头不能以HC.开头,长度不超过64个字符; 变量值表达式支持常量或JsonPath表达式,字符串长度不超过1024个字符。 最大长度:1024 template 否 String 变量类型规则时,规则内容的模板定义,支持对已定义变量的引用。 最大长度:2048 表14 DeadLetterQueue 参数 是否必选 参数类型 描述 type 是 String 队列类型 枚举值: KAFKA instance_id 是 String 实例id 最小长度:1 最大长度:128 connection_id 是 String 目标连接id 最小长度:1 最大长度:128 topic 是 String 主题 最小长度:1 最大长度:128
  • 修改事件目标 登录事件网格控制台。 在左侧导航栏选择“事件订阅”,进入“事件订阅”页面。 单击待修改事件目标参数的订阅名称,进入订阅详情页。 修改已有事件目标,或者新增事件目标。 单击已有事件目标模块,修改事件目标。 单击,新增事件目标。 单击,删除已有事件目标。 设置事件目标提供方及其参数。 当提供方为“华为云”时,设置如下参数。 事件目标:选择事件目标。 当事件目标配置为“FunctionGraph(函数计算)”时: 函数:选择需要触发的函数。如果还未创建函数,请先创建函数。 版本/别名:配置版本/别名,当选择其一时,则另外一个参数无需配置。 版本:选择函数的版本。当前默认选择“latest”。 别名:选择函数的别名。 当事件目标选择“分布式消息服务 Kafka版”时: 目标连接:选择目标连接,需要提前创建分布式消息服务Kafka版目标连接。 Topic:选择消息Topic,需要提前创建。 启用消息Key:是否启用消息key。 类型:消息Key的转换类型。支持以下两种转换类型: 变量:从CloudEvents标准事件中获取变量值,将变量值作为Key值。 常量:将指定的常量作为key值。若选择常量,所有消息将发送至同一分区。 如果需要了解更多转换类型的信息,请参考事件内容转换。 当事件目标选择“ 消息通知 SMN”时: 主题:选择消息通知主题,需要提前创建。 委托:选择委托。如无委托,请先创建委托,将会创建名为“EG_ SMN _PUBLISHER_AGENCY”委托。 只会查询出被委托方是事件网格服务的委托。 请确保您选择的委托已被授权的权限包含“smn:topic:publish”。 类型:消息标题的类型。支持以下两种类型。 常量:将指定的常量作为消息标题。若选择常量,所有消息的消息标题都是相同的。 变量:从CloudEvents标准事件中获取变量值,将变量值代入模板中作为消息标题,如果生成的消息标题超长则会截取前512个字符。 消息标题配置:“类型”配置为“常量”或“变量”。 消息标题配置非必填项,可选择填写。 规则配置: 类型:事件网格将CloudEvents标准事件转换成事件目标可以接受的事件类型。支持以下三种转换类型: 透传:事件网格不对事件进行转换,将CloudEvents标准事件直接路由到事件目标。 变量:从CloudEvents标准事件中获取变量值,将变量值路由到事件目标。 常量:事件只能触发事件目标,但是不会传送事件内容到事件目标,事件网格将您设置的常量路由到事件目标。 如果需要了解更多转换类型的信息,请参考事件内容转换。 图3 华为云事件目标配置参数 当提供方为“自定义”时,设置如下参数。 URL配置:输入事件目标的URL。 目标连接:选择已创建好的目标连接或默认连接。 类型:事件网格将CloudEvents标准事件转换成事件目标可以接受的事件类型。支持以下三种转换类型: 透传:事件网格不对事件进行转换,将CloudEvents标准事件直接路由到事件目标。 变量:从CloudEvents标准事件中获取变量值,将变量值路由到事件目标。 常量:事件只能触发事件目标,但是不会传送事件内容到事件目标,事件网格将您设置的常量路由到事件目标。 如果需要了解更多转换类型的信息,请参考事件内容转换。 图4 自定义事件目标配置参数 单击“确定”。 单击“保存”,完成事件目标的修改。
  • 响应示例 状态码: 400 { "error_code" : "EG.00014000", "error_msg" : "Bad request"} 状态码: 401 { "error_code" : "EG.00014010", "error_msg" : "Incorrect token or token resolution failed"} 状态码: 403 { "error_code" : "EG.00014030", "error_msg" : "No permissions to request this method"} 状态码: 404 { "error_code" : "EG.00014040", "error_msg" : "Not request resource found"} 状态码: 500 { "error_code" : "EG.00015000", "error_msg" : "Internal Server Error"}