通過OSS管理主控台配置事件通知規則,自訂關注的檔案(Object),當這些檔案發生指定事件時,可通過Message Service接收通知。
情境描述
某企業在華東1(杭州)地區建立了名為srcbucket的儲存空間(Bucket),其中包含以log為首碼的記錄檔和以destdir為首碼的客戶案例圖片檔案。
srcbucket
└── log/
├── date1.txt
├── date2.txt
├── date3.txt
├── .......
└── destdir/
├── photo1.jpg
├── photo2.jpg
├── ......該企業子公司需要將srcbucket內以上持續產生的日誌以及客戶案例圖片檔案、以及這些檔案在任意時間內產生的變化(例如檔案的增、刪、改操作)即時同步至母公司位於英國(倫敦)地區下名為destbucket的儲存空間,並希望公司全員能及時瞭解srcbucket以及destbucket內與首碼log以及destdir匹配的檔案的變化情況。
為實現以上需求,您需要為srcbucket配置跨地區複製規則,同時還需要為srcbucket以及destbucket配置事件通知。
步驟一:建立隊列
在左側導覽列,選擇。
在頂部導覽列,選擇華東1(杭州)地區。
在队列列表頁面,單擊创建队列。隊列名稱設定為myqueue1,其他參數保持預設配置。
單擊確定。
重複上述步驟在英國(倫敦)地區建立用於接收目標儲存空間destbucket事件通知的隊列myqueue2。
步驟二:為srcbucket配置跨地區複製
登入OSS管理主控台。
單擊Bucket列表,然後單擊srcbucket。
在左側導覽列,選擇。
在跨地區複製頁面,單擊跨地區複製。
在跨地區複製面板,配置以下參數,然後單擊確定。
參數
說明
目標Bucket
選擇英國(倫敦),然後選擇destbucket。
資料複製對象
選擇指定檔案名稱首碼進行同步,並添加首碼destdir/和log/。
資料複製策略
選擇增/刪/改同步。
複製歷史資料
選擇複製。
授權角色
選擇跨地區複製的授權角色。
步驟三:為srcbucket及destbucket配置事件通知
因步驟二中跨地區複製規則中指定了同步歷史資料,且需要同步的歷史資料較多,會觸發大量的訊息。如果您不希望同步歷史資料過程中觸發訊息,建議待歷史資料同步完成後再開啟事件通知。
登入OSS管理主控台。
單擊Bucket列表,然後分別選擇srcbucket和destbucket,按以下步驟配置事件通知:
在左側導覽列,選擇。
在事件通知頁面,單擊建立規則。
在建立規則面板,按如下說明配置各項參數,然後單擊確定。
參數
源儲存空間srcbucket
目標儲存空間destbucket
規則名稱
將事件通知規則名稱設定notification1。
將事件通知規則名稱設定notification2。
事件類型
選擇PutObject、CopyObject、DeleteObject和DeleteObjects。
選擇ObjectReplication:ObjectCreated、ObjectReplication:ObjectRemoved和ObjectReplication:ObjectModified。
資源描述
選擇前尾碼,並依次添加首碼log/以及destdir/。
選擇前尾碼,並依次添加首碼log/以及destdir/。
接收終端
選擇隊列,並填寫步驟一中建立的隊列名稱myqueue1。
選擇隊列,並填寫步驟一中建立的隊列名稱myqueue2。
以上步驟配置完成後,事件通知規則約10分鐘後生效。
步驟四:接收訊息
當觸發了事件匹配規則時,輕量訊息佇列將自動建立主題(Topic),Topic名稱格式為mns-en-topics-[Product]-[RuleName]-[Timestamp],例如mns-en-topics-oss-notification1-1700098799。此時,您需要為該Topic建立訂閱,並在訂閱規則中指定接收端地址。
登入和導航到訂閱頁面。
在左側導覽列,單擊主題列表。
在頂部導覽列,選擇華東1(杭州)地區。
在自動建立的Topic右側的操作欄下,單擊查看訂閱。
建立訂閱。
在目標Topic訂閱頁面,單擊訂閱列表,然後單擊建立訂閱。
在建立訂閱頁面,為源儲存空間srcbucket建立訂閱。訂閱名稱輸入mysubscription1,訂閱類型選擇隊列,接收端地址輸入myqueue1,其他參數保留預設配置。
單擊確定。
重複上述步驟在英國(倫敦)地區為目標儲存空間destbucket建立訂閱mysubscription2,推送類型選擇隊列,接收端地址指定為myqueue2,其他參數保留預設配置。
接收通知。
在左側導覽列,單擊隊列列表。
選擇目標隊列myqueue1右側操作欄下的。
在接收訊息地區,單擊右上方的接收訊息。
此時,您將接收到源儲存空間srcbucket內與首碼log以及destdir匹配的檔案的增、刪、改操作的事件通知。
重複上述步驟為目標儲存空間destbucket對應的隊列myqueue2配置接收通知。配置完成後,您將接收到destbucket內由於跨地區複製規則產生、覆蓋或者刪除檔案的事件通知。
當您不再需要接收相關事件通知時,請及時刪除相應的事件通知規則。但是,事件通知規則刪除後,不會同步刪除自動建立的Topic。為避免產生不必要的費用,請及時刪除不再使用的Topic。