0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

OCIイベント経由でオブジェクト・ストレージにファイルをアップロード時にFunctionsを起動

Posted at

今回やりたいこと

タイトルの通りOCIイベント経由でオブジェクト・ストレージにファイルをアップロード時にFunctionsを起動できるか検証を行います。
スクリーンショット 2025-03-20 15.13.20.png

事前準備

  • オブジェクト・ストレージの作成許可
    Allow group fn-group to manage buckets in tenancy
    Allow group fn-group to manage objects in tenancy
  • ファンクションの使用許可
    Allow group fn-group to manage functions-family in tenancy
  • VCN等のネットワーク系リソースの管理許可
    Allow group fn-group to manage virtual-network-family in tenancy
  • サービス・ログの作成許可
    Allow group fn-group to manage logging-family in tenancy
  • イベント・サービスの作成許可
    Allow group fn-group to manage cloudevents-rules in tenancy

1.オブジェクト・ストレージの作成

最初にオブジェクト・ストレージの作成を行います。
OCIコンソール画面左上のナビゲーションメニューから「ストレージ」→「バケット」をそれぞれ選択します。
スクリーンショット 2025-03-20 15.36.36.png

バケットの作成」から任意のバケット名(ここでは「fn-bucket」)を入力、「オブジェクト・イベントの出力」を有効にして「作成」を選択します。
スクリーンショット 2025-03-20 15.38.29.png

バケットが作成されます。
スクリーンショット 2025-03-20 16.33.24.png

2.Functionsのサービス・ログの有効化

続いて、Functionsのサービス・ログの有効化を行います。
任意のFunctionsのアプリケーション(ここでは「helloworld-app」)の「Logs」から「Function Invocation Logs」の有効化を行います。
スクリーンショット 2025-03-20 16.02.28.png

全て任意の内容を入力、「ログの有効化」を選択します。
スクリーンショット 2025-03-20 16.03.21.png

ステータスが「作成中」→「アクティブ」に遷移、有効化は完了となります。
スクリーンショット 2025-03-20 16.11.21.png

3.イベント・サービスの作成

最後にイベント・サービスの作成を行います。
OCIコンソール画面左上のナビゲーションメニューから「監視および管理」→「ルール」をそれぞれ選択します。
スクリーンショット 2025-03-20 16.14.21.png

ルールの作成」を選択します。
スクリーンショット 2025-03-20 16.16.04.png

以下の項目を入力、「ルールの作成」を選択します。

  • 表示名、説明:任意
  • ルール条件
    • 条件:イベント・タイプ
    • サービス名:Object Storage
    • イベント・タイプ:Object - Create
    • 条件:属性
    • 属性名:bucketName
    • 属性値:fn-bucket(バケット名)
  • アクション
    • アクション・タイプ:ファンクション
    • ファンクション・コンパートメント、アプリケーション、ファンクション:任意
      スクリーンショット 2025-03-20 16.23.28.png

イベントが作成されます。
スクリーンショット 2025-03-20 16.25.30.png

作成は以上となります。

4.動作確認

ここではサンプルファイルをオブジェクト・ストレージにアップロードして、サービス・ログからFunctionが起動できるか確認を行います。

サンプルファイル(test.txt)をアップロードしました。
スクリーンショット 2025-03-20 16.28.54.png

サービス・ログを確認すると、ほぼリアルタイムで連携、Functionsが起動されていることがわかります。
スクリーンショット 2025-03-20 16.30.21.png

またイベント・サービスもログの取得が可能のため、こちらも有効化します。
スクリーンショット 2025-03-20 16.32.09.png

再度別のサンプルファイル(test2.txt)をアップロードしてみます。
スクリーンショット 2025-03-20 16.37.51.png

イベント・サービスのにもsuccessfullyが含まれているログを確認できます。
スクリーンショット 2025-03-20 16.38.32.png

本検証の手順は以上となります。

引用ドキュメント等

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?