View a markdown version of this page

Usando EventBridge com AWS HealthOmics - AWS HealthOmics

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 EventBridge com AWS HealthOmics

HealthOmics envia eventos para a Amazon EventBridge quando os recursos mudam de status. Os recursos incluem trabalhos de importação, trabalhos de exportação, compartilhamentos de recursos, fluxos de trabalho, tarefas e execuções. Para cada tipo de recurso, há uma lista de mudanças de status que geram um evento.

Um barramento de eventos é um roteador que recebe eventos e os entrega aos destinos. Sua conta inclui um barramento de eventos padrão que recebe automaticamente eventos dos AWS serviços. Você pode criar ônibus de eventos personalizados adicionais.

Você cria EventBridge regras para especificar as ações a serem tomadas quando o barramento de eventos recebe eventos. Por exemplo, você pode criar uma regra que notifica você sobre mudanças de status em um recurso.

Os cenários comuns de uso de eventos incluem:

  • Para monitorar quando um usuário compartilha um recurso com você ou revoga o compartilhamento.

  • Para monitorar se uma execução falha ou é concluída com êxito.

Para obter mais informações sobre o uso EventBridge, consulte O que é a Amazon EventBridge?

Configurado EventBridge para HealthOmics

Antes de monitorar EventBridge eventos, crie um EventBridge ônibus e crie regras para os eventos de interesse.

Configurar um EventBridge barramento

Você pode usar o barramento de eventos padrão para você Conta da AWS ou configurar um barramento de eventos personalizado. Para configurar um barramento de eventos personalizado, siga estas etapas:

  1. Abra o EventBridge console: https://console.aws.amazon.com/events/.

  2. Na navegação à esquerda, escolha Ônibus de eventos.

  3. Selecione Create event bus (Criar barramento de eventos).

  4. No formulário Criar barramento de eventos, insira um nome para o barramento.

  5. Escolha Criar para criar o barramento.

Crie uma EventBridge regra

O procedimento a seguir mostra como criar uma regra simples. Para obter mais informações sobre regras, consulte Regras em EventBridge.

  1. Abra o EventBridge console: https://console.aws.amazon.com/events/.

  2. Na barra de navegação à esquerda, selecione Rules (Regras).

  3. Escolha Criar regra. O console abre o formulário Criar regra.

  4. Em Definir detalhes da regra, forneça um nome para a regra.

    • Em Nome, insira um nome para o ônibus.

    • Para Barramento de eventos, selecione o barramento para essa regra.

    • Escolha Próximo.

  5. Em Criar padrão de evento, em Origem do evento, selecione Eventos da AWS ou eventos de EventBridge parceiros.

  6. Role para baixo até Padrão de eventos.

    1. Em Origem do evento, selecione Serviços da AWS.

    2. Para o serviço da AWS, insira ômicos no filtro de texto e selecione AWS HealthOmics como serviço.

    3. Em Tipo de evento, selecione o evento de interesse (ou Todos os eventos).

    4. Escolha Próximo.

  7. Em Selecionar alvo (s), selecione um alvo para o evento. Por exemplo, escolha o serviço da AWS, o grupo de CloudWatch log escolhido e configure um grupo de logs.

    Para muitos tipos de destino, o EventBridge precisa de permissão para enviar eventos ao destino. O console cria essas permissões para você.

  8. (Opcional) Em Configurar tags, associe tags à regra.

  9. Em Revisar e atualizar, revise a configuração e escolha Criar regra.

EventBridge eventos em HealthOmics

A tabela a seguir lista os eventos que são HealthOmics enviados para EventBridge e a lista de valores de status possíveis para o evento.

Nome do evento Valores de status possíveis
Alteração do status do trabalho de importação de anotações Enviado, em andamento, cancelado, concluído, com falha ou concluído com falhas
Alteração do status do compartilhamento do Annotation Store Pendente, ativando, ativo, excluindo, excluído, falhou
Alteração do status do Annotation Store A criação, a criação, a atualização, a atualização, a exclusão, a exclusão ou a criação falhou
Leia: Defina a alteração do status do trabalho de ativação Enviado, em andamento, concluído, falhado ou concluído com falhas
Ler Definir alteração do status do trabalho de exportação Enviado, em andamento, concluído, falhado ou concluído com falhas
Ler Definir alteração do status do trabalho de importação Enviado, em andamento, concluído, falhado ou concluído com falhas
Alteração de status do conjunto de leitura Processamento de upload, carregamento falhado, ativo, arquivado, ativado ou excluído
Alteração do status do trabalho de importação de referência Enviado, em andamento, concluído, falhado ou concluído com falhas
Alteração do status de referência Ativo ou excluído
Alteração do status da loja de referência Criado, atualizado, ativo ou excluído
Executar alteração de status Pendente, iniciando, executando, parando, concluído, excluído, falhado ou cancelado
Alteração do status do armazenamento de sequências Criado, atualizado, ativo ou excluído
Alteração do status da tarefa Pendente, iniciando, executando, parando, concluído, excluído, falhado ou cancelado
Alteração do status do trabalho de importação de variantes Enviado, em andamento, cancelado, concluído, com falha ou concluído com falhas
Alteração do status do compartilhamento da Variant Store Pendente, ativando, ativo, excluindo, excluído, falhou
Alteração do status da loja de variantes A criação, a criação, a atualização, a atualização, a exclusão, a exclusão ou a criação falhou
Alteração do status do compartilhamento de fluxo de Pendente, ativando, ativo, excluindo, excluído, falhou
Alteração do status do fluxo de Sucesso na criação, falha na criação, sucesso na exclusão ou falha na exclusão

Estrutura de mensagens de evento

HealthOmics fornece o melhor esforço para enviar mensagens de eventos de mudança de estado para EventBridge o. O evento é um objeto com estrutura JSON que também contém detalhes de metadados. Você pode usar os metadados como entrada para recriar o evento ou para obter mais informações. Os eventos incluem os seguintes campos:

  • version— Atualmente 0 (zero) para todos os eventos.

  • id— Um UUID da versão 4 gerado para cada evento.

  • detail-type— O tipo de evento que está sendo enviado.

  • account— O Conta da AWS ID de 12 dígitos do proprietário do bucket.

  • source— Identifica o serviço que gerou o evento.

  • time— A hora em que o evento ocorreu.

  • region— Identifica o Região da AWS do balde.

  • resources— Uma matriz JSON que contém o nome de recurso da Amazon (ARN) do bucket.

  • detail— Um objeto JSON que contém informações sobre o evento.

Os eventos de execução incluem os seguintes campos:

  • uuid— O identificador universalmente exclusivo para a corrida.

  • workflowId— Identificador do fluxo de trabalho associado a essa execução.

  • workflowName— Nome do fluxo de trabalho associado a essa execução.

  • runId— Execute o identificador.

  • runName— Nome da execução.

  • runOutputUri— O URI para o qual a execução gravará seus dados de saída.

Exemplos de mensagens de eventos

O exemplo a seguir é um evento para uma alteração no status da execução, mostrando os campos adicionais.

{ "version":"0", "id":"c0e540f4-df38-b986-86c1-3e3730f971fe", "detail-type":"Run Status Change", "source":"aws.omics", "account":"123456789012", "time":"2022-10-20T22:07:35Z", "region":"us-west-2", "resources":[ "arn:aws:omics:us-west-2:123456789012:run/2101313" ], "detail":{ "omicsVersion":"1.0.0", "arn":"arn:aws:omics:us-west-2:123456789012:run/2101313", "status":"COMPLETED", "uuid":"153893cd-097a-40ec-aec7-838a97cd2b21", "runId": "1234567", "runName": "run name", "runOutputUri": "s3://amzn-s3-demo-bucket/run-output/2101313", "workflowId": "1234567", "workflowName": "workflow name" } }

O exemplo a seguir é um evento para uma alteração no status da tarefa.

{ "version": "0", "id": "718d6817-c868-26d3-8ef0-0dc9b2ac73f4", "detail-type": "Task Status Change", "source": "aws.omics", "account": "123456789012", "time": "2024-10-30T09:05:44Z", "region": "us-west-2", "resources": ["arn:aws:omics:us-west-2:123456789012:task/8888888"], "detail": { "omicsVersion": "1.0.0", "arn": "arn:aws:omics:us-west-2:123456789012:task/8888888", "status": "COMPLETED", "runArn": "arn:aws:omics:us-west-2:123456789012:run/2101313", "runUuid": "153893cd-097a-40ec-aec7-838a97cd2b21", "runId": "1234567", "runName": "run name", "workflowId": "1234567", "workflowName": "workflow name" } }

Veja a seguir um exemplo de um evento para uma alteração do status do conjunto de leitura.

{ "version": "0", "id": "64ca0eda-9751-dc55-c41a-1bd50b4fc9b7", "detail-type": "Read Set Status Change", "source": "aws.omics", "account": "123456789012", "time": "2023-04-04T17:53:06Z", "region": "us-west-2", "resources": ["arn:aws:omics:us-west-2:123456789012:sequenceStore/1234567890/readSet/3456789012"], "detail": { "omicsVersion": "1.0.0", "arn": "arn:aws:omics:us-west-2:123456789012:sequenceStore/1234567890/readSet/3456789012", "sequenceStoreId" : "1234567890", "id": "3456789012", "status": "PROCESSING_UPLOAD" } }

Um evento semelhante é criado para um trabalho de importação de uma loja variante.

{ "version": "0", "id": "6a7e8feb-b491-4cf7-a9f1-bf3703467718", "detail-type": "Variant Store Status Change", "source": "aws.omics", "account": "123456789012", "time": "2015-12-22T18:43:48Z", "region": "us-east-1", "resources": ["arn:aws:omics:us-east-1:123456789012:myvariantstore2"], "detail": { "omicsVersion": "1.0.0", "arn": "arn:aws:omics:us-east-1:123456789012:myvariantstore2", "status": "CREATED", "storeId": "6710c5f02610", "storeName": "myvariantstore2" } }

A seguir está um evento para uma alteração no status do trabalho de importação.

{ "version": "0", "id": "6a7e8feb-b491-4cf7-a9f1-bf3703467718", "detail-type": "Variant Import Job Status Change", "source": "aws.omics", "account": "123456789012", "time": "2015-12-22T18:43:48Z", "region": "us-east-1", "resources": ["arn:aws:omics:us-east-1:123456789012:my_variant_store/b64ea9a3-459f-4b68-92c3-3ddb83209fe9"], "detail": { "omicsVersion": "1.0.0", "arn": "arn:aws:omics:us-east-1:123456789012:my_variant_store/b64ea9a3-459f-4b68-92c3-3ddb83209fe9", "status": "COMPLETED", "jobId": "b64ea9a3-459f-4b68-92c3-3ddb83209fe9", "storeId": "a74869f91e20", "storeName": "my_variant_store" } }