ストレージ タスクの条件と操作を定義する
ビジュアル エディターを使用して、ストレージ タスクの条件と操作を定義できます。
重要
Azure Storage Actions は現在プレビュー段階であり、こちらのリージョンで使用できます。 ベータ版、プレビュー版、または一般提供としてまだリリースされていない Azure の機能に適用される法律条項については、「Microsoft Azure プレビューの追加使用条件」を参照してください。
操作は、タスクで定義されている条件を満たす各オブジェクトに対して実行されるアクションです。 条件には、1 つ以上の条件付きの句含まれています。 各句は、プロパティと値の間のリレーションシップを定義します。 ストレージ タスクで定義されている操作を実行するには、そのリレーションシップの条件が各オブジェクトによって満たされる必要があります。
条件エディターを開く
Azure portal でストレージ タスクに移動し、[ストレージ タスク管理] で [条件] を選択します。
[条件] ペインの [ビジュアル ビルダー] タブが表示されます。
条件を定義する
句を追加して条件を定義します。 句は、プロパティと値の間のリレーションシップを定義します。 ストレージ タスクで定義されている操作を実行するには、そのリレーションシップの条件が各オブジェクトによって満たされる必要があります。
句を追加および削除する
句を追加するには、[新しい句の追加] を選択し、句を削除するには、その横に表示される削除アイコン () を選択します。
句の条件を指定する
句を定義するには、プロパティを選択し、そのプロパティの値を指定し、これらを関連付ける演算子を選択します。
プロパティを選択する
[BLOB プロパティ] ドロップダウン リストで、プロパティを選択します。 「サポートされている BLOB のプロパティ」を参照してください。
次の例では、[BLOB 名] プロパティを選択しています。
値と演算子を選択する
[プロパティ値] ボックスで値を入力し、[演算子] ドロップダウン リストで演算子を選択します。 「サポートされている演算子」を参照してください。
次の例では、.log
の値と共に [次で終わる] 演算子を指定しています。 この条件により、このストレージ タスクで定義されている操作は、.log
ファイル拡張子を持つ BLOB でのみ実行できるようになります。
文字列値でワイルドカードを使用する
文字列プロパティの値には、*
および ?
ワイルドカード文字を使用できます。 *
文字は 0 個以上の文字を表し、?
文字は正確に 1 文字を表します。
たとえば、Word 文書である BLOB に対してのみ句が true に評価されるようにする場合は、文字列 *.docx
使用します。 ただし、1.docx
や 2.docx
などのように 1 文字で名前が付けられたドキュメントのみが必要な場合は、文字列 ?.docx
を使用します。
*
と ?
は文字列内の任意の位置で使用できます。 これらの文字は、文字の直前に \
を追加することでエスケープできます。
オブジェクト メタデータから値を参照する
日時プロパティを含む句は、コンテナーのメタデータまたは BLOB のインデックス タグから値を参照できます。 これらの値は、タスクの実行時に動的に取得されます。
ストレージ アカウントでは、コンテナーのメタデータまたは BLOB のインデックス タグにキーを追加できます。 そのキーの値は、ISO 8601 形式の時間間隔である必要があります。 たとえば、retainfor
という名前のキーと共に、5 分間の間隔を表す文字列値 PT5M
を追加できます。
キーを参照するには、[プロパティ値] 列に表示される [編集] リンクを選択します。 次に、[値の選択] ダイアログ ボックスで、[コンテナー メタデータ] または [BLOB インデックス タグ] を選択します。
次の例では、[作成時刻] プロパティと [次より前] 演算子を追加し、評価される各 BLOB のインデックス タグで retainFor
という名前のキーを参照しています。
この条件は、BLOB が今 (現在の日時) を基準にした一定時間より前に作成されたかどうかをテストします。 たとえば、retainFor
タグから取得した値が 5 分である場合、この条件では、BLOB が 5 分以上前に作成されたかどうかを確認します。
Note
[コード] タブには、少し異なる方法で表されたこの例のロジックが表示されます。 生成されたコードは、作成時刻に時間間隔を加算した時刻より現在時刻が後であるかどうかをテストします。 どちらの表現も同じ結果になります。
評価されたオブジェクト内にキーが存在しない場合、条件は false に評価されます。 キー値が、ISO 8601 標準に準拠していない文字列である場合、実行レポートでエラーが報告されます。
句に AND または OR を適用する
句に AND または OR を追加します。 条件の現在の句と前の句の両方の抽出条件を満たすオブジェクトを対象にする場合は、AND を指定します。 現在の句か前の句のいずれかの抽出条件を満たすオブジェクトを対象にする場合は、OR を指定します。
次の例は、AND を使用する句を示しています。 この例では、ストレージ タスクは、.log
拡張機能を持ち、Archive-Status
という名前のタグが Ready
に設定されているオブジェクトを対象にしています。
属性の順序を変更する
句は、タスク実行のパフォーマンスが向上すると思われる順序で並べ替えることができます。 たとえば、アカウント内のすべての BLOB を名前フィルターに対して最初にテストする代わりに、特定のコンテナーを対象とする句を昇格させることができます。 この小さな調整により、タスクが不要な評価を実行するのを防ぐことができる可能性があります。
最初に、句を選択します。 次に、[句を上に移動] または [句を下に移動] を選択して、リスト内の位置を変更します。
次の例は、句を選択した後に [句を上に移動] を選択した結果を示しています。
句をグループ化およびグループ化解除する
グループ化された句は、句の残りの部分とは別の 1 つのユニットとして動作します。 句のグループ化は、数学の方程式や論理式の一部をかっこで囲むのと似ています。 グループ内の最初の句に対する AND または OR 演算子が、グループ全体に適用されます。
グループ化する各句の横に表示されるチェック ボックスをオンにします。 次に、[グループ化] を選択します。
次の例は、グループ化された 2 つの条件を示しています。 この例では、BLOB に .log
拡張子があり、Archive-Status
という名前のタグが Ready
の値に設定されているか、ファイルが 120 日間アクセスされていない場合に、操作が実行されます。
句のグループ化を解除するには、グループ化解除 () を選択するか、グループ内の各句を選択して [グループ化解除] を選択します。
条件の効果をプレビューする
定義した条件の影響を受ける BLOB のリストを表示できます。 条件エディターで、[プレビュー条件] を選択します。
[プレビュー条件] では、ターゲット サブスクリプション、ストレージ アカウント、コンテナーを指定できます。 プレビューには最大 5,000 個の BLOB しか表示できないため、プレフィックスを指定してリストを絞り込むこともできます。
操作を定義する
操作は、タスクで定義されている条件を満たす各オブジェクトに対して実行されるアクションです。
操作を追加および削除する
操作を追加するには、[新しい操作の追加] を選択し、操作を削除するには、その横に表示される削除アイコン () を選択します。
操作を選択する
[操作] ドロップダウン リストで、操作を選択します。 「サポートされている操作」を参照してください。
次の例では、[BLOB タグの設定] プロパティを選択しています。
パラメーターを選択する
操作に適したパラメーターを入力または選択します。
次の例では、値 Archived
に Archive-Status
タグを設定しています。
操作の順序を変更する
操作は、任意の順序で並べ替えることができます。
この例では、既存の順序が理にかなっています。 BLOB が最初にアーカイブされ、タグが設定されます。 BLOB のレベルを変更しようとして成功しなかった場合に備えて、レベルを変更する前にタグを設定することには意味がありません。 リスト内に BLOB タグの設定操作が最初に表示された場合は、その操作を BLOB レベルの設定操作の下に移動することを検討してください。
操作を移動するには、その横に表示されるチェック ボックスをオンにします。 次に、[操作を上に移動] または [操作を下に移動] を選択して、リスト内の位置を変更します。