Procedimento de migração para AWS IoT SiteWise alarmes em AWS IoT Events - AWS IoT Events

Aviso de fim do suporte: em 20 de maio de 2026, AWS encerrará o suporte para AWS IoT Events. Depois de 20 de maio de 2026, você não poderá mais acessar o AWS IoT Events console ou os AWS IoT Events recursos. Para obter mais informações, consulte AWS IoT Events Fim do suporte.

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á.

Procedimento de migração para AWS IoT SiteWise alarmes em AWS IoT Events

Esta seção descreve soluções alternativas que oferecem funcionalidade de alarme semelhante à da AWS IoT Events qual você migra.

Para AWS IoT SiteWise propriedades que usam AWS IoT Events alarmes, você pode migrar para uma solução usando CloudWatch alarmes. Essa abordagem fornece recursos robustos de monitoramento com recursos estabelecidos SLAs e adicionais, como detecção de anomalias e alarmes agrupados.

Comparando arquiteturas

A configuração atual de AWS IoT Events alarmes para AWS IoT SiteWise propriedades requer a criação AssetModelCompositeModels no modelo de ativos, conforme descrito em Definir alarmes externos AWS IoT SiteWise no Guia do AWS IoT SiteWise usuário. As modificações na nova solução geralmente são gerenciadas por meio do AWS IoT Events console.

A nova solução fornece gerenciamento de alarmes aproveitando os CloudWatch alarmes. Essa abordagem usa AWS IoT SiteWise notificações para publicar pontos de dados de propriedades em tópicos do AWS IoT Core MQTT, que são então processados por uma função Lambda. A função transforma essas notificações em CloudWatch métricas, permitindo o monitoramento de alarmes por meio CloudWatch da estrutura de alarmes.

Finalidade Solução Diferenças

Fonte de dados — dados de propriedades de AWS IoT SiteWise

AWS IoT SiteWise Notificações MQTT

Substitui a integração direta do IoT Events por notificações MQTT de propriedades AWS IoT SiteWise

Processamento de dados — transforma dados de propriedades

Função do Lambda

AWS IoT SiteWise Processa notificações de propriedades e as converte em CloudWatch métricas

Avaliação de alarmes — monitora métricas e aciona alarmes

CloudWatch Alarmes da Amazon

Substitui AWS IoT Events alarmes por alarmes, oferecendo recursos adicionais, como detecção de CloudWatch anomalias

Integração — Conexão com AWS IoT SiteWise

AWS IoT SiteWise alarmes externos

Capacidade opcional de importar CloudWatch alarmes de volta AWS IoT SiteWise como alarmes externos

Etapa 1: ativar as notificações do MQTT na propriedade do ativo

Se você estiver usando AWS IoT Events integrações para AWS IoT SiteWise alarmes, poderá ativar as notificações do MQTT para cada propriedade a ser monitorada.

  1. Siga o AWS IoT SiteWise procedimento Configurar alarmes em ativos até chegar à etapa de edição das propriedades do modelo de ativo.

  2. Para cada propriedade a ser migrada, altere o status da Notificação MQTT para ATIVO.

    Uma captura de tela mostrando o posicionamento da lista suspensa de status da notificação do MQTT no console. AWS IoT SiteWise
  3. Observe o caminho do tópico no qual o alarme é publicado para cada atributo de alarme modificado.

Para obter mais informações, consulte os seguintes recursos de documentação:

Etapa 2: criar uma função do AWS Lambda

Crie uma função Lambda para ler a matriz TQV publicada pelo tópico MQTT e publique valores individuais em. CloudWatch Usaremos essa função Lambda como uma ação de destino a ser acionada nas Regras de AWS IoT Core Mensagens.

  1. Abra a AWS Lambda console.

  2. Escolha a opção Criar função.

  3. Insira um nome para o nome da função.

  4. Selecione NodeJS 22.x como Runtime.

  5. No menu suspenso Alterar função de execução padrão, escolha Usar função existente e selecione a função do IAM que você criou nas etapas anteriores.

    nota

    Esse procedimento pressupõe que você já migrou seu modelo de detector. Se você não tiver uma função do IAM, consulte.

  6. Escolha a opção Criar função.

  7. Cole o seguinte trecho de código depois de substituir as constantes codificadas.

    import json import boto3 from datetime import datetime # Initialize CloudWatch client cloudwatch = boto3.client('cloudwatch') def lambda_handler(message, context): try: # Parse the incoming IoT message # Extract relevant information asset_id = message['payload']['assetId'] property_id = message['payload']['propertyId'] # Process each value in the values array for value in message['payload']['values']: # Extract timestamp and value timestamp = datetime.fromtimestamp(value['timestamp']['timeInSeconds']) metric_value = value['value']['doubleValue'] quality = value.get('quality', 'UNKNOWN') # Publish to CloudWatch response = cloudwatch.put_metric_data( Namespace='IoTSiteWise/AssetMetrics', MetricData=[ { 'MetricName': f'Property_your-property-id', 'Value': metric_value, 'Timestamp': timestamp, 'Dimensions': [ { 'Name': 'AssetId', 'Value': 'your-asset-id' }, { 'Name': 'Quality', 'Value': quality } ] } ] ) return { 'statusCode': 200, 'body': json.dumps('Successfully published metrics to CloudWatch') } except Exception as e: print(f'Error processing message: {str(e)}') return { 'statusCode': 500, 'body': json.dumps(f'Error: {str(e)}') }

Etapa 3: criar uma regra de roteamento de AWS IoT Core mensagens

  • Siga o tutorial: Procedimento de republicação de uma mensagem MQTT inserindo as seguintes informações quando solicitado:

    1. Nomeie a regra SiteWiseToCloudwatchAlarms de roteamento de mensagens.

    2. Para a consulta, você pode usar o seguinte:

      SELECT * FROM '$aws/sitewise/asset-models/your-asset-model-id/assets/your-asset-id/properties/your-property-id'
    3. Em Ações de regra, selecione a ação Lambda para enviar os dados gerados de AWS IoT SiteWise para. CloudWatch Por exemplo:

      Uma captura de tela mostrando a ação da regra para a função Lambda.

Etapa 4: Exibir CloudWatch métricas

À medida que você ingere dados para AWS IoT SiteWise a propriedade selecionada anteriormenteEtapa 1: ativar as notificações do MQTT na propriedade do ativo, os dados são encaminhados para a função Lambda que criamos em. Etapa 2: criar uma função do AWS Lambda Nesta etapa, você pode conferir se o Lambda está enviando suas métricas para. CloudWatch

  1. Abra o CloudWatch do AWS Management Console.

  2. No painel de navegação à esquerda, escolha Métricas e, em seguida, Todas as métricas.

  3. Escolha o URL de um alarme para abri-lo.

  4. Na guia Fonte, a CloudWatch saída é semelhante a este exemplo. Essas informações de origem confirmam que os dados métricos estão sendo CloudWatch inseridos.

    { "view": "timeSeries", "stacked": false, "metrics": [ [ "IoTSiteWise/AssetMetrics", "Property_your-property-id-hash", "Quality", "GOOD", "AssetId", "your-asset-id-hash", { "id": "m1" } ] ], "region": "your-region" }

Etapa 5: criar CloudWatch alarmes

Siga o procedimento Criar um CloudWatch alarme com base em um limite estático no Guia do CloudWatch usuário da Amazon para criar alarmes para cada métrica relevante.

nota

Há muitas opções para configuração de alarmes na Amazon. CloudWatch Para obter mais informações sobre CloudWatch alarmes, consulte Usando CloudWatch alarmes da Amazon no Guia CloudWatch do usuário da Amazon.

Etapa 6: (opcional) importar o CloudWatch alarme para AWS IoT SiteWise

Você pode configurar CloudWatch alarmes para enviar dados de volta AWS IoT SiteWise usando ações de CloudWatch alarme e Lambda. Essa integração permite que você visualize os estados e propriedades do alarme no portal do SiteWise Monitor.

  1. Configure o alarme externo como uma propriedade em um modelo de ativo. Para obter mais informações, consulte Definir alarmes externos AWS IoT SiteWise no Guia do AWS IoT SiteWise usuário.

  2. Crie uma função Lambda que use a BatchPutAssetPropertyValueAPI encontrada no Guia do AWS IoT SiteWise usuário para enviar dados de alarme para o. AWS IoT SiteWise

  3. Configure ações de CloudWatch alarme para invocar sua função Lambda quando os estados do alarme mudarem. Para obter mais informações, consulte a seção Ações de alarme no Guia CloudWatch do usuário da Amazon.