オブジェクトをOSSにアップロードするときにObject Storage Service (OSS) トリガーが複数回トリガーされた場合、trigger Eventパラメーターが正しく設定されているかどうかを確認する必要があります。
発生原因
OSSトリガーの繰り返しトリガーの考えられる原因は、ファイルアップロード中に複数の指定されたトリガーイベントがトリガーされることです。
たとえば、マルチパートアップロード機能を使用してオブジェクトをOSSにアップロードすると、oss:ObjectCreated:InitiateMultipartUpload
、oss:ObjectCreated:UploadPart
、およびoss:ObjectCreated:CompleteMultipartUpload
イベントが順番にトリガーされます。 OSSトリガーのトリガーイベントをoss:ObjectCreated:*
に設定した場合、OSSブラウザーを使用して12 MBのオブジェクトをアップロードし、パーツサイズを5 MBに設定すると、関数は5回トリガーされます。 次の項目は、トリガーイベントの一覧です。
oss:ObjectCreated:InitiateMultipartUpload
oss:ObjectCreated:UploadPart
oss:ObjectCreated:UploadPart
oss:ObjectCreated:UploadPart
oss:ObjectCreated:CompleteMultipartUpload
したがって、トリガーが1回だけトリガーされるように、マルチパートアップロードの場合、トリガーイベントをoss:ObjectCreated:CompleteMultipartUpload
に設定する必要があります。
ソリューション
トリガーのトリガーイベントパラメーターをoss:ObjectCreated:PutObject
、oss:ObjectCreated:PostObject
、またはoss:ObjectCreated:CompleteMultipartUpload
に設定できます。 これらのイベントの詳細は次の項目に記載されています。
oss:ObjectCreated:PutObject
: 単純なアップロードを使用してオブジェクトを作成または上書きします。oss:ObjectCreated:PostObject
: フォームのアップロードを使用してオブジェクトを作成または上書きします。oss:ObjectCreated:CompleteMultipartUpload
: マルチパートアップロードを完了します。