您可以登錄將根據特定準則接收通知的監看程式。
若要登錄監看程式,您可以叫用以下 API。
POST /api/v1/notification-watcher
新增監看程式後,您必須在 watcher_id 中登錄一個 notification_id (feature_name.notification_name),並指定監看程式應接收的通知。請注意,如果不進行此登錄,監看程式將不會接收任何通知。使用所需的要求參數叫用以下 API,以登錄 notification_id 並指定通知。如需 NSX 通知 API 的詳細資訊,請參閱《NSX API 指南》。
PUT /api/v1/notification-watchers/<watcher-id>
POST /api/v1/notification-watchers/<watcher-id>/notifications?action=add_uri_filters
,搭配使用以下要求參數:- notification_id:這是用來識別 feature_name.notification_name 的字串,指出監看程式希望接收由 feature_name.notification_name 識別的 URI 的通知。
- uri_filters:這是一份可選的 URI 清單,用於根據其原則路徑來篩選通知。指定 uri_filters 時,還可以使用 * 作為萬用字元,而不使用特定值。
例如,如果 notification_id 為 group.change_name,uri_filter 模式為 /policy/api/v1/infra/domains/<domain>/groups/<group>。您可以將該模式指定為 /policy/api/v1/infra/domains/domain1/groups/group2,以取得 domain1 和 group2 特定的通知。或者,您也可以將該模式指定為 /policy/api/v1/infra/domains/domain2/groups/*,以取得有關 domain2 中所有群組的通知,或將其指定為 /policy/api/v1/infra/domains/*/groups/*,以取得有關所有網域中所有群組的通知。
下表列出功能名稱及其各自的 URI。
功能名稱 | 功能說明 | 通知名稱 | 通知說明 | URI |
---|---|---|---|---|
群組 | NS 群組功能支援的通知。 | change_notification | 群組通知,<domain> 可識別網域名稱,<group> 可識別群組名稱。 | /policy/api/v1/infra/domains/<domain>/groups/<group> |
監控 | 監控功能支援的通知。 | alarm | 警示通知。<alarm-id> 可識別警示執行個體。每當建立或刪除警示執行個體以及更新警示執行個體時,便會傳送通知。 | /api/v1/alarms/<alarm-id> |
alarm_status_change_notification | 警示通知。<alarm-id> 可識別警示執行個體。每當建立警示執行個體以及更新警示執行個體的狀態內容值時,便會傳送通知。 | /api/v1/alarms/<alarm-id> | ||
notification | 通知架構支援的通知。 |
watcher | 平台通知,用於傳達對監看程式組態所做的更新。<watcher-id> 可識別監看程式。 | /api/v1/notification-watchers/<watcher-id> |
watcher_notification | 平台通知,用於傳達對通知所做的更新。<watcher-id> 可識別監看程式。 | /api/v1/notification-watchers/<watcher-id>/notifications | ||
service_config | 服務組態功能支援的通知。 | change_notification | 服務組態通知。<domain> 可識別網域名稱,<policy> 可識別端點原則,<rule> 可識別端點規則。當更新端點規則中使用的服務組態或更新 UPM 設定檔時,將產生此通知。 | /policy/api/v1/infra/domains/<domain>/endpoint-policies/<policy>/endpoint-rules/<rule> |
service_insertion | 服務插入模組支援的通知。 目前服務插入模組支援有關服務設定檔、服務執行個體執行階段和原則群組的通知。 |
instance_runtime_notification | 服務執行個體執行階段通知。<service-id> 可識別服務,<service-instance-id> 可識別服務執行個體。將針對已部署和已取消部署的作業傳送通知。 | /api/v1/serviceinsertion/services/<service-id>/service-instances/<service-instance-id>/instance-runtimes |
profile_notification | 服務設定檔變更通知。<service-reference> 可識別服務名稱,<service-profile> 可識別設定檔名稱。將傳送有關設定檔建立、更新和刪除的通知。 | /policy/api/v1/infra/service-references/<service-reference>/service-profiles/<service-profile> | ||
profile_chain_mapping_notification | 服務設定檔鏈結對應通知。<service-reference> 可識別服務名稱,<service-profile> 可識別設定檔名稱。當在服務鏈結中新增或移除設定檔時,將會傳送通知。 | /policy/api/v1/infra/service-references/<service-reference>/service-profiles/<service-profile>/service-chain-mappings | ||
profile_nsgroups_notification | 服務設定檔 NS 群組通知。<service-reference> 可識別服務名稱,<service-profile> 可識別設定檔名稱。每當使用特定設定檔新增或刪除包含 NS 群組的東西向規則時,便會觸發此通知。 | /policy/api/v1/infra/service-references/<service-reference>/service-profiles/<service-profile>/group-associations | ||
instance_nsgroups_notification | 服務執行個體 NS 群組通知。<service-id> 可識別服務名稱,<service-instance-id> 可識別服務執行個體。每當使用特定執行個體新增或刪除包含 NS 群組的南北向規則時,便會觸發此通知。 | /api/v1/serviceinsertion/services/<service-id>/service-instances/<service-instance-id>/group-associations |