

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Usando o cache de execução
<a name="workflow-cache-startrun"></a>

Por padrão, as execuções não usam um cache de execução. Para usar um cache para a execução, você especifica o cache de execução e o comportamento do cache de execução ao iniciar a execução.

Após a conclusão da execução, você pode usar o console, os CloudWatch registros ou as operações da API para rastrear os acessos ao cache ou solucionar problemas de cache. Para obter mais detalhes, consulte [Rastreamento de informações de cache de chamadas](#workflow-cache-track) e [Solução de problemas de cache de chamadas](troubleshooting.md#workflow-cache-troubleshooting).

Se uma ou mais tarefas em uma execução gerarem saídas não determinísticas, é altamente recomendável que você não use o cache de chamadas para a execução ou desative essas tarefas específicas do armazenamento em cache. Para obter mais informações, consulte [Modelo de responsabilidade compartilhada](how-run-cache.md#run-cache-srm).



**nota**  
Você fornece uma função de serviço do IAM ao iniciar uma execução. Para usar o cache de chamadas, a função de serviço precisa de permissão para acessar a localização do cache de execução do Amazon S3. Para obter mais informações, consulte [Funções de serviço para AWS HealthOmics](permissions-service.md).

Você pode usar o [Amazon Q CLI](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/what-is.html) para analisar e gerenciar seus dados de cache de execução. Para obter mais informações, consulte [Exemplos de solicitações para a Amazon Q CLI](getting-started.md#omics-q-prompts) e [HealthOmics o tutorial de IA generativa da Agentic](https://github.com/aws-samples/aws-healthomics-tutorials/tree/main/generative-ai) sobre. GitHub

**Topics**
+ [Configurando uma execução com cache de execução usando o console](#workflow-cache-startrun-console)
+ [Configurando uma execução com cache de execução usando a CLI](#workflow-cache-startrun-api)
+ [Casos de erro para executar caches](#workflow-cache-errors)
+ [Rastreamento de informações de cache de chamadas](#workflow-cache-track)

## Configurando uma execução com cache de execução usando o console
<a name="workflow-cache-startrun-console"></a>

No console, você configura o cache de execução para uma execução ao iniciar a execução.

1. Abra o [console do HealthOmics ](https://console.aws.amazon.com/omics/).

1.  Se necessário, abra o painel de navegação esquerdo (≡). Selecione **Execuções**.

1. Na página **Execuções**, escolha a execução a ser iniciada.

1. Escolha **Iniciar execução** e conclua as etapas 1 e 2 de **Iniciar execução** conforme descrito em[Iniciando uma execução usando o console](starting-a-run.md#starting-a-run-console). 

1. Na etapa 3 de **Iniciar execução**, escolha **Selecionar um cache de execução existente**. 

1. Selecione o cache na lista suspensa **Executar ID do cache**. 

1. Para substituir o comportamento padrão do cache de execução, escolha o **comportamento do cache** para a execução. Para obter mais informações, consulte [Comportamento do cache de execução](how-run-cache.md#run-cache-behavior).

1. Continue com a etapa 4 de **Iniciar execução**.

## Configurando uma execução com cache de execução usando a CLI
<a name="workflow-cache-startrun-api"></a>

**Para iniciar uma execução que usa um cache de execução, adicione o parâmetro cache-id ao comando da CLI start-run.** Opcionalmente, use o `cache-behavior` parâmetro para substituir o comportamento padrão que você configurou para o cache de execução. O exemplo a seguir mostra somente os campos de cache do comando:

```
aws omics start-run \
        ...  
      --cache-id "xxxxxx"    \
      --cache-behavior  CACHE_ALWAYS
```

Se a operação for bem-sucedida, você receberá uma resposta sem campos de dados. 

## Casos de erro para executar caches
<a name="workflow-cache-errors"></a>

Para os cenários a seguir, HealthOmics talvez não armazene em cache as saídas da tarefa, mesmo para uma execução com o comportamento de cache definido como **Cache always**.
+ Se a execução encontrar um erro antes que a primeira tarefa seja concluída com êxito, não há saídas de cache para exportar.
+ Se o processo de exportação falhar, HealthOmics não salva as saídas da tarefa no local do cache do Amazon S3.
+ Se a execução falhar devido a um **filesystem out of space** erro, o cache de chamadas não salvará nenhuma saída da tarefa.
+ Se você cancelar uma execução, o cache de chamadas não salvará nenhuma saída de tarefa.
+ Se a execução tiver um tempo limite de execução, o cache de chamadas não salvará nenhuma saída da tarefa, mesmo que você tenha configurado a execução para usar o cache em caso de falha.

## Rastreamento de informações de cache de chamadas
<a name="workflow-cache-track"></a>

Você pode acompanhar eventos de cache de chamadas (como executar ocorrências de cache) usando o console, a CLI ou os registros. CloudWatch 

**Topics**
+ [Rastreie os acessos ao cache usando o console](#workflow-cache-track-console)
+ [Rastreie o armazenamento em cache de chamadas usando a CLI](#workflow-cache-track-cli)
+ [Monitore o armazenamento em cache de chamadas usando o CloudWatch Logs](#workflow-cache-track-cwl)

### Rastreie os acessos ao cache usando o console
<a name="workflow-cache-track-console"></a>

Na página de detalhes da execução de uma execução, a tabela **Executar tarefas** exibe as informações de **ocorrência do Cache** para cada tarefa. A tabela também inclui um link para a entrada de cache associada. Use o procedimento a seguir para visualizar as informações de ocorrência do cache para uma execução.

1. Abra o [console do HealthOmics ](https://console.aws.amazon.com/omics/).

1.  Se necessário, abra o painel de navegação esquerdo (≡). Selecione **Execuções**.

1. Na página **Execuções**, escolha a execução a ser inspecionada.

1. Na página de detalhes da execução, escolha a guia **Executar tarefas** para exibir a tabela de tarefas.

1. Se uma tarefa tiver um cache hit, a coluna **Cache hit** conterá um link para o local de execução da entrada do cache no Amazon S3.

1. Escolha o link para inspecionar a entrada do cache de execução.

### Rastreie o armazenamento em cache de chamadas usando a CLI
<a name="workflow-cache-track-cli"></a>

Use o comando da **CLI get-run** para confirmar se a execução usou um cache de chamadas.

```
 aws omics get-run --id 1234567  
```

Na resposta, se o `cacheId` campo estiver definido, a execução usa esse cache.

Use o comando **list-run-tasks**CLI para recuperar o local dos dados do cache para cada tarefa em cache na execução.

```
 aws omics list-run-tasks --id 1234567  
```

Na resposta, se o campo CacheHit de uma tarefa for verdadeiro, o campo Cache3URI fornecerá a localização dos dados do cache para essa tarefa.

Você também pode usar o comando **get-run-task**CLI para recuperar o local dos dados do cache para uma tarefa específica:

```
 aws omics get-run-task --id 1234567 --task-id <task_id> 
```

### Monitore o armazenamento em cache de chamadas usando o CloudWatch Logs
<a name="workflow-cache-track-cwl"></a>

HealthOmics cria registros de atividades de cache no grupo de `/aws/omics/WorkflowLog` CloudWatch registros. <cache\$1id><cache\$1uuid>Há um fluxo de log para cada cache de execução: **runCache//**.

Para execuções que usam o cache de chamadas, HealthOmics gera entradas de CloudWatch registros para esses eventos: 
+  criando uma entrada de cache (CACHE\$1ENTRY\$1CREATED)
+  correspondendo a uma entrada de cache (CACHE\$1HIT) 
+  falha em corresponder a uma entrada de cache (CACHE\$1MISS)

Para obter mais informações sobre esses registros, consulte[Login CloudWatch](monitoring-cloudwatch-logs.md#cloudwatch-logs).

Use a seguinte consulta do CloudWatch Insights no grupo de `/aws/omics/WorkflowLog` registros para retornar o número de acessos ao cache por execução desse cache:

```
filter @logStream like 'runCache/<CACHE_ID>/'
 fields @timestamp, @message
 filter logMessage like 'CACHE_HIT'
 parse "run: *," as run
 stats count(*) as cacheHits by run
```

Use a consulta a seguir para retornar o número de entradas de cache criadas por cada execução:

```
filter @logStream like 'runCache/<CACHE_ID>/'
 fields @timestamp, @message
 filter logMessage like 'CACHE_ENTRY_CREATED'
 parse "run: *," as run
 stats count(*) as cacheEntries by run
```