本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
將事件搜尋和分析管道部署和訂閱至 Amazon SNS
對於事件封存和分析,Amazon SNS 現在建議使用其與 Amazon Data Firehose 的原生整合。您可以將 Firehose 交付串流訂閱SNS主題,這可讓您將通知傳送至封存和分析端點,例如 Amazon Simple Storage Service (Amazon S3) 儲存貯體、Amazon Redshift 資料表、Amazon OpenSearch Service (OpenSearch Service) 等。將 Amazon SNS與 Firehose 交付串流搭配使用是完全受管且無程式碼的解決方案,不需要您使用 AWS Lambda 函數。如需詳細資訊,請參閱Fanout to Firehose 交付串流。 |
此頁面說明如何部署事件搜尋和分析管道,並將其訂閱至 Amazon SNS主題。此程序會自動將與管道相關聯的 AWS SAM 範本轉換為 AWS CloudFormation 堆疊,然後將堆疊部署到您的 AWS 帳戶。此程序還會建立和設定一組資源 (構成事件搜尋和分析管道),包括下列項目:
-
Amazon SQS佇列
-
Lambda 函數
-
Firehose 交付串流
-
Amazon OpenSearch Service 網域
-
Amazon S3 無法投遞儲存貯體
如需以索引作為目的地的串流設定詳細資訊,請參閱 Amazon Data Firehose 參考 ElasticsearchDestinationConfiguration
中的 。 API
如需有關轉換事件和設定事件緩衝、事件壓縮和事件加密的詳細資訊,請參閱 Amazon Data Firehose 開發人員指南 中的建立 Amazon Data Firehose 交付串流。
如需有關篩選事件的詳細資訊,請參閱本指南中的Amazon SNS訂閱篩選條件政策。
-
登入 AWS Lambda 主控台
。 -
在導覽面板上,選擇 Functions (函數),然後選擇 Create function (建立函數)。
-
在 Create function (建立函數) 頁面上,執行下列動作:
-
選擇瀏覽無伺服器應用程式儲存庫 、公有應用程式 、顯示建立自訂IAM角色或資源政策的應用程式 。
-
搜尋
fork-event-search-analytics-pipeline
,然後選擇應用程式。
-
-
在 fork-event-search-analytics-pipeline 頁面上,執行下列動作:
-
在 Application settings (應用程式設定) 區段中,輸入 Application name (應用程式名稱) (例如,
my-app-search
)。注意
對於每個部署,應用程式名稱必須是唯一的。如果您重複使用應用程式名稱,部署只會更新先前部署的 AWS CloudFormation 堆疊 (而不是建立新的堆疊)。
-
(選用) 對於 DataTransformationFunctionArn,輸入用於轉換傳入事件ARN的 Lambda 函數的 。如果您不輸入值,資料轉換會停用。
-
(選用) 輸入下列其中一個LogLevel設定,以執行應用程式的 Lambda 函數:
-
DEBUG
-
ERROR
-
INFO
(default) -
WARNING
-
-
(選用) 對於 SearchDomainArn,輸入 OpenSearch Service 網域ARN的 ,這是設定所需運算和儲存功能的叢集。如果您不輸入值,將會以預設組態建立新網域。
-
對於 TopicArn,輸入要訂閱叉管道此執行個體ARN的 Amazon SNS主題的 。
-
針對 SearchIndexName,輸入事件搜尋和分析 OpenSearch 的服務索引名稱。
注意
索引名稱有下列配額:
-
不得包含大寫字母
-
不得包含下列字元:
\ / * ? " < > | ` , #
-
開頭不得為下列字元:
- + _
-
不得為下列字元:
. ..
-
長度不得超過 80 個字元
-
長度不得超過 255 個位元組
-
不能包含冒號 (從 OpenSearch Service 7.0)
-
-
(選用) 在 OpenSearch 服務索引的輪換期間輸入下列其中一項SearchIndexRotationPeriod設定:
-
NoRotation
(default) -
OneDay
-
OneHour
-
OneMonth
-
OneWeek
索引輪換會將時間戳記附加到索引名稱,方便看出舊資料已過期。
-
-
對於 SearchTypeName,輸入用於在索引中組織事件 OpenSearch 的服務類型名稱。
注意
-
OpenSearch 服務類型名稱可以包含任何字元 ( null 位元組除外),但不能以 開頭
_
。 -
對於 OpenSearch Service 6.x,每個索引只能有一個類型。如果您為已有其他類型的現有索引指定新類型,Firehose 會傳回執行期錯誤。
-
-
(選用) 對於 StreamBufferingIntervalInSeconds和 StreamBufferingSizeInMBs,輸入用於設定傳入事件緩衝的值。如果您不輸入任何值,則會使用 300 秒和 5 MB。
-
(選用) 輸入下列其中一個StreamCompressionFormat設定來壓縮傳入事件:
-
GZIP
-
SNAPPY
-
UNCOMPRESSED
(default) -
ZIP
-
-
(選用) 對於 StreamPrefix,輸入字串字首以命名存放在 S3 無效字母儲存貯體中的檔案。如果您不輸入值,則不會使用字首。
-
(選用) 針對 StreamRetryDurationInSecons,輸入 Firehose 無法在 OpenSearch 服務索引中索引事件的案例重試持續時間。如果您不輸入值,則會使用 300 秒。
-
(選用) 對於 SubscriptionFilterPolicy,輸入要用於篩選傳入事件的JSON格式 Amazon SNS訂閱篩選條件政策。篩選條件政策會決定哪些事件在 OpenSearch 服務索引中編製索引。如果您不輸入值,則不會使用篩選 (所有事件都編製索引)。
-
選擇 我確認此應用程式會建立自訂IAM角色、資源政策並部署巢狀應用程式。 然後選擇部署 。
-
在 部署狀態上 my-app-search
頁面,Lambda 會顯示您的應用程式正在部署的狀態。
在資源區段中, AWS CloudFormation 開始建立堆疊並顯示每個資源的 CREATE_IN_PROGRESS 狀態。程序完成時, AWS CloudFormation 會顯示 CREATE_COMPLETE 狀態。
當部署完成時,Lambda 會顯示 Your application has been deployed (您的應用程式已經完成部署) 狀態。
發佈至 Amazon SNS主題的訊息會在事件搜尋和分析管道自動佈建 OpenSearch 的服務索引中編製索引。如果管道無法將事件編製索引,則會將事件存放在 S3 無法投遞儲存貯體中。