开发者社区> 问答> 正文

如何实现配置事件通知?


OSS支持的事件通知功能,能够对您所关心的OSS资源上的相关操作及时进行消息通知。例如:

  • 有新数据从图片内容分享平台、音视频平台上传到OSS
  • OSS上的相关内容发生了更新
  • OSS上的重要文件被删除
  • OSS上数据同步已经完成

OSS事件通知是异步进行的,不影响正常的OSS操作。事件通知的配置包括[backcolor=transparent]规则和[backcolor=transparent]消息通知两部分。
  • 规则:用来描述什么情况下需要OSS进行消息通知。
  • 消息通知:基于阿里云消息服务MNS实现,提供多种通知方式。

OSS事件通知整体架构如下图:


创建方法


  1. 进入OSS 管理控制台界面。

  2. 在左侧存储空间列表中,单击目标存储空间名称,打开该存储空间概览页面。

  3. 单击[backcolor=transparent]事件通知页签,然后单击[backcolor=transparent]创建规则,打开[backcolor=transparent]创建规则页面。

  4. 在[backcolor=transparent]规则名称框中,输入规则名称。

    [backcolor=transparent]说明:
    • 您在同地区下的同产品中最多可以创建10条规则,新规则约10分钟后生效。
    • 任意两个规则不能有交集,单条规则任意两个资源描述不能有交集。

  • 在[backcolor=transparent]资源描述区域,单击[backcolor=transparent]添加,添加一个或多个资源描述。

    [backcolor=transparent]说明:
    • 资源描述:可以是全名、前缀、后缀以及前后缀,不同资源描述不能有交集。[backcolor=transparent]全名:输入某个Object的全名可以精确关注到此Object。
    • [backcolor=transparent]前后缀:设置Object的前后缀可以关注一个Bucket中的全部或者部分Object。例如对于名为nightbucket的Bucket:要关注其中所有的文件,则前缀、后缀都不填。
    • 要关注其中目录movie下的所有文件,则前缀填 [backcolor=transparent]moive/,后缀不填。
    • 要关注其中所有的.jpg的图片,则前缀不填,后缀填 [backcolor=transparent].jpg。
    • 要关注其中目录movie下的.mp3格式的影片,则前缀填 [backcolor=transparent]moive/,后缀填 [backcolor=transparent].mp3。
  • OSS资源包括Bucket和Object,通过“/”连接。以Bucket(movie)和Object(hello.avi)为例。
    • 全名:movie/hello.avi;
    • 前后缀:前movie/,后.avi,表示movie中所有以.avi为后缀的Object。

  • 在[backcolor=transparent]事件类型下拉列表中,选择一个或多个需要进行消息通知的事件。

    [backcolor=transparent]说明:
    • 事件类型对应OSS资源的不同操作,具体类型和含义请参见下文事件类型列表
    • 择您想要触发通知的事件,可以选择多个。同样的事件不可以多次配置在同一资源上。

  • 在[backcolor=transparent]接收终端区域,单击[backcolor=transparent]添加,添加一个或多个接收终端。

    [backcolor=transparent]说明:
    • OSS事件通知功能在某个操作规则匹配之后,会生成相关消息描述,并将该消息发布到MNS的Topic中,然后根据该Topic上的订阅,将消息推送到具体的接收终端上。
    • 对于如何处理MNS的Http推送消息以及从队列中消费消息,请参见消息服务产品概述


  • 事件类型列表

    事件类型含义
    ObjectCreated:PutObject创建/覆盖文件:简单上传
    ObjectCreated:PostObject创建/覆盖文件:表单上传
    ObjectCreated:CopyObject创建/覆盖文件:拷贝文件
    ObjectCreated:InitiateMultipartUpload创建/覆盖文件:初始化一个分片上传任务
    ObjectCreated:UploadPart创建/覆盖文件:上传分片
    ObjectCreated:UploadPartCopy创建/覆盖文件:从一个已存在的文件中拷贝数据来上传一个分片
    ObjectCreated:CompleteMultipartUpload创建/覆盖文件:完成分片上传
    ObjectCreated:AppendObject创建/覆盖文件:追加上传
    ObjectDownloaded:GetObject下载文件:简单下载
    ObjectRemoved:DeleteObject删除文件:一个
    ObjectRemoved:DeleteObjects删除文件:多个
    ObjectReplication:ObjectCreated同步文件:已生成
    [tr=rgb(239, 251, 255)][td]ObjectReplication:ObjectRemoved 同步文件:已删除 ObjectReplication:ObjectModified同步文件:已修改

    展开
    收起
    青衫无名 2017-10-23 10:36:52 2112 0
    0 条回答
    写回答
    取消 提交回答
    问答排行榜
    最热
    最新

    相关电子书

    更多
    fibjs 模块重构从回调到协程--陈垒 立即下载
    fibjs 模块重构从回调到协程 立即下载
    低代码开发师(初级)实战教程 立即下载