Definir condições e operações de tarefa de armazenamento
Você pode usar um editor visual para definir as condições e as operações de uma tarefa de armazenamento.
Importante
As Ações de Armazenamento do Azure estão atualmente em VERSÃO PRÉVIA e estão disponíveis nestas regiões. Veja os Termos de Uso Complementares para Versões Prévias do Microsoft Azure para obter termos legais que se aplicam aos recursos do Azure que estão em versão beta, versão prévia ou que, de outra forma, ainda não foram lançados em disponibilidade geral.
Uma operação é uma ação executada em cada objeto que atende às condições definidas na tarefa. Uma condição contém uma ou mais cláusulas condicionais. Cada cláusula define a relação entre uma propriedade e um valor. Para executar uma operação definida na tarefa de armazenamento, os termos dessa relação devem ser atendidos por cada objeto.
Abrir o editor de condições
Navegue até a tarefa de armazenamento no portal do Azure e, em Gerenciamento de tarefas de armazenamento, selecione Condições.
A guia Construtor visual do painel Condições é exibida.
Definir condições
Defina uma condição adicionando cláusulas. Uma cláusula define a relação entre uma propriedade e um valor. Para executar uma operação definida na tarefa de armazenamento, os termos dessa relação devem ser atendidos por cada objeto.
Adicionar e remover cláusulas
Para adicionar uma cláusula, selecione Adicionar nova cláusula e para remover uma cláusula, selecione o ícone de exclusão() que aparece ao lado dela.
Especificar os termos de uma cláusula
Para definir uma cláusula, escolha uma propriedade, especifique um valor para essa propriedade e escolha um operador que as relacione.
Escolha uma propriedade
Na lista suspensa da propriedade Blob, escolha uma propriedade. Consulte Propriedades de blob com suporte.
O exemplo a seguir seleciona a propriedade Nome blob.
Escolher um valor e um operador
Na caixa Valor da propriedade, insira um valor e na lista suspensa Operador, escolha um operador. Confira Operadores com suporte.
O exemplo a seguir especifica um valor de .log
juntamente com o operador Termina com. Essa condição permite que a operação definida nesta tarefa de armazenamento seja executada somente em blobs que tenham uma extensão de arquivo .log
.
Usar um curinga em valores de cadeia de caracteres
Você pode usar os caracteres curinga *
e ?
no valor de uma propriedade de cadeia de caracteres. O caractere *
representa zero ou mais caracteres, enquanto um caractere ?
representa exatamente um caractere.
Por exemplo, se você quiser que sua cláusula seja avaliada como verdadeira apenas para blobs que são documentos do Word, você usará a cadeia de caracteres *.docx
. No entanto, se você quiser que apenas documentos sejam nomeados com um único caractere, como 1.docx
ou 2.docx
, use a cadeia de caracteres ?.docx
.
Você pode usar o *
ou ?
em qualquer lugar em uma cadeia de caracteres. Você pode escapar desses caracteres adicionando um \
pouco antes do caractere.
Referenciar um valor de metadados de objeto
Cláusulas que incluem uma propriedade de data e hora podem referenciar um valor dos metadados de um contêiner ou de uma marca de índice de um blob. Esses valores são obtidos dinamicamente em runtime quando a tarefa é executada.
Em sua conta de armazenamento, você pode adicionar uma chave aos metadados de um contêiner ou às marcas de índice de um blob. O valor dessa chave deve ser um intervalo de tempo ISO 8601formatado. Por exemplo, você pode adicionar uma chave chamada retainfor
juntamente com um valor de cadeia de caracteres de PT5M
que representa um intervalo de cinco minutos.
Para fazer referência a uma chave, selecione o link Editar que aparece na coluna Valor da propriedade. Em seguida, na caixa de diálogo Selecionar um valor, selecione Metadados de contêiner ou Marcas de índice de blob.
O exemplo a seguir adiciona a propriedade Tempo de criação, o operador Anterior a e faz referência a uma chave chamada retainFor
nas marcas de índice de cada blob avaliado.
Essa condição testa se um blob foi criado anteriormente a uma determinada duração de tempo relativa a agora (a data e a hora atuais). Por exemplo, se o valor recuperado da marca de retainFor
for de cinco minutos, essa condição verificará se o blob foi criado há mais de 5 minutos.
Observação
Na guia Código, você verá a lógica deste exemplo representada de uma maneira ligeiramente diferente. O código gerado testa se o tempo atual é maior que o tempo de criação mais o intervalo de tempo. Ambas as representações produzem o mesmo resultado.
Se a chave não estiver presente para um objeto avaliado, a condição será avaliada como false. Se o valor da chave for uma cadeia de caracteres que não está em conformidade com o padrão ISO 8601, um erro será relatado no relatório de execução.
Aplicar e/ou a uma cláusula
Você adiciona E ou Ou a uma cláusula. Especifique E se quiser direcionar objetos que atendam aos critérios na cláusula atual e na cláusula anterior da condição. Especifique Ou para objetos de destino que atendam ao critério na cláusula atual ou na cláusula anterior.
O exemplo a seguir mostra cláusulas que usam E. Neste exemplo, a tarefa de armazenamento destina-se a objetos que têm uma extensão .log
e que têm uma marca chamada Archive-Status
definida como Ready
.
Alterar a ordem das cláusulas
Você pode organizar cláusulas em uma ordem que você acredita que melhorará o desempenho de uma execução de tarefa. Por exemplo, em vez de primeiro testar todos os blobs em uma conta em relação a um filtro de nome, você pode elevar uma cláusula direcionada a um contêiner específico. Esse pequeno ajuste pode impedir que a tarefa execute avaliações desnecessárias.
Primeiro, selecione a cláusula. Em seguida, selecione Mover cláusula para cima ou Mover cláusula para baixo para alterar sua posição na lista.
O exemplo a seguir mostra o resultado da seleção de uma cláusula e, em seguida, da seleção de Mover cláusula para cima.
Agrupar e desagrupar cláusulas
Orações agrupadas operam como uma unidade única separada do restante das orações. Agrupar cláusulas é como colocar parênteses em uma equação matemática ou instrução lógica. O operador E ou Ou da primeira cláusula no grupo se aplica ao grupo inteiro.
Marque a caixa de seleção que aparece ao lado de cada cláusula que você deseja agrupar. Em seguida, selecione Grupo.
O exemplo a seguir mostra duas condições agrupadas. Neste exemplo, a operação é executada se um blob tiver a extensão .log
e uma marca chamada Archive-Status
estiver definida como o valor de Ready
ou se o arquivo não tiver sido acessado em 120 dias.
Para desagrupar cláusulas, selecione o ícone de desagrupar ( ) ou selecione cada cláusula no grupo e selecione Desagrupar.
Visualizar o efeito das condições
Você pode exibir uma lista de blobs que seriam afetados pelas condições que você definiu. No editor de condições, selecione Condições de visualização.
No Condições de visualização, você pode especificar uma assinatura de destino, uma conta de armazenamento e um contêiner. Como uma visualização só pode mostrar até 5.000 blobs, você também pode especificar um prefixo para restringir a lista.
Definir operações
Uma operação é uma ação executada em cada objeto que atende às condições definidas na tarefa.
Adicionar e remover operações
Para adicionar uma operação, selecione Adicionar nova operação e para remover uma operação, selecione o ícone de exclusão( ) que aparece ao lado dele.
Escolher uma operação
Na lista suspensa Operação, escolha uma operação. Confira Operações com suporte.
O exemplo a seguir seleciona a propriedade Definir marcas de blob.
Escolher um parâmetro
Insira ou selecione os parâmetros apropriados para a operação.
O exemplo a seguir define a marca Archive-Status
como o valor Archived
.
Alterar a ordem das operações
Você pode organizar operações em qualquer ordem.
Neste exemplo, a ordem existente faz sentido. Os blobs são arquivados pela primeira vez e as marcas são definidas. Não faria sentido definir a marca antes de alterar a camada caso a tentativa de alterar a camada de um blob não tivesse êxito. Se a operação de marca de blob definida aparecer primeiro na lista, você poderá considerar mover essa operação abaixo da operação de camada de blob definida.
Para mover uma operação, marque a caixa de seleção que aparece ao lado dela. Em seguida, selecione Mover operação para cima ou Mover operação para baixo para alterar sua posição na lista.