更新时间:2025-09-12 GMT+08:00

使用对象存储服务(OBS)触发器

本节介绍如何通过函数工作流控制台创建OBS触发器,实现当OBS存储桶有文件更新时触发函数运行。

关于OBS触发器事件源的具体介绍,请参见支持的事件源

OBS触发器支持的事件类型

多个事件类型可以作用于同一个目标对象,即支持多选事件类型。

请参考表1选择需要使用的事件类型。

表1 OBS支持的事件类型

事件

说明

ObjectCreated

表示所有创建对象的操作,包含Put、Post、Copy以及CompleteMultipartUpload。

约束与限制:如果选择了该事件,则不能再选择Put、Post、Copy或CompleteMultipartUpload。

Put

使用Put方法上传对象。

Post

使用Post方法上传对象。

Copy

使用copy方法复制对象。

CompleteMultipartUpload

表示合并分段任务。

ObjectRemoved

表示所有删除对象的操作,包含Delete和DeleteMarkerCreated。

约束与限制:如果选择了该事件,则不能再选择Delete或DeleteMarkerCreated。

Delete

指定对象版本号删除对象。

DeleteMarkerCreated

不指定对象版本号删除对象。

操作视频

本视频介绍如何在函数中使用OBS触发器,实现当OBS存储桶有文件更新时触发函数运行。

约束与限制

  • OBS触发器当前支持“中国-香港”“亚太-曼谷”“亚太-新加坡”“亚太-雅加达”“拉美-墨西哥城二”“土耳其-伊斯坦布尔”区域使用。具体运行时函数是否支持使用请以控制台为准。
  • OBS触发器创建以后,不能停用,只能删除。
  • 请确保创建的函数与OBS桶在同一区域下,不同区域创建的桶不通用。

前提条件

  • 权限:

    使用OBS作为事件订阅的事件源时,需要用户具备Tenant Administrator权限。相关操作请参考给用户授权

  • 函数及其配置:
  • OBS桶:

    已创建OBS桶,此处以名称为eventbucket的OBS桶为例。创建过程请参见创建存储桶

创建OBS触发器

  1. 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
  2. 选择待配置的函数,单击进入函数详情页。
  3. 选择“设置 > 触发器”,单击“创建触发器”,弹出“创建触发器”对话框。

    图1 创建触发器

  4. 配置以下参数。

    表2 OBS触发器参数说明

    参数名称

    参数说明

    取值样例

    触发器类型

    必选参数。

    选择“对象存储服务(OBS)”。

    对象存储服务(OBS)

    必选参数。

    用作事件源的OBS存储桶,创建成功后不支持修改。

    obs-cff

    事件

    必选参数。

    选择触发函数的事件。支持选择的事件类型请参考表1

    “Put”、“Post”和“Delete”

    (当对OBS桶中的文件进行更新、上传和删除操作时触发函数运行)

    事件通知名称

    可选参数。

    自定义的事件通知名称。用于在事件发生时,SMN服务给您推送消息。

    obs-event-test

    前缀

    可选参数。

    用来限制以此关键字开头的对象的事件通知,该限制可以实现对OBS对象名的过滤。

    -

    后缀

    可选参数。

    用来限制以此关键字结尾的对象的事件通知,该限制可以实现对OBS对象名的过滤。

    -

触发函数

登录对象存储服务控制台,将文件上传至“obs-cff”OBS存储桶,具体步骤请参见上传文件

成功上传文件至“obs-cff”OBS存储桶后,会自动触发函数运行,可在函数执行日志查看执行结果。

查看函数运行结果

  1. 返回函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
  2. 选择函数,单击进入函数详情页。
  3. 选择“监控 > 日志”,查询函数运行日志。

相关文档

除使用控制台外,函数工作流支持通过API的方式使用函数触发器,详情请参见函数触发器API参考