Guia de início rápido: exportar dados de um aplicativo do IoT Central

Neste início rápido, você configura seu aplicativo IoT Central para exportar dados do Azure Data Explorer. O Azure Data Explorer permite-lhe armazenar, consultar e processar a telemetria a partir de dispositivos como a aplicação de smartphone IoT Plug and Play .

Neste início rápido, irá:

  • Use o recurso de exportação de dados no IoT Central para a telemetria do aplicativo de smartphone para um banco de dados do Azure Data Explorer.
  • Use o Azure Data Explorer para executar consultas na telemetria.

A conclusão deste início rápido incorre em um pequeno custo em sua conta do Azure para a instância do Azure Data Explorer. Os dois primeiros dispositivos em seu aplicativo IoT Central são gratuitos.

Pré-requisitos

  • Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, consulte Guia de início rápido para Bash no Azure Cloud Shell.

  • Se preferir executar comandos de referência da CLI localmente, instale a CLI do Azure. Se estiver a utilizar o Windows ou macOS, considere executar a CLI do Azure num contentor Docker. Para obter mais informações, consulte Como executar a CLI do Azure em um contêiner do Docker.

    • Se estiver a utilizar uma instalação local, inicie sessão no CLI do Azure ao utilizar o comando az login. Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Para outras opções de entrada, consulte Entrar com a CLI do Azure.

    • Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre as extensões, veja Utilizar extensões com o CLI do Azure.

    • Execute o comando az version para localizar a versão e as bibliotecas dependentes instaladas. Para atualizar para a versão mais recente, execute o comando az upgrade.

Instalar os serviços do Azure

Antes de exportar dados do seu aplicativo IoT Central, você precisa de um cluster e banco de dados do Azure Data Explorer. Neste início rápido, você executa um script bash no Azure Cloud Shell para criá-los e configurá-los.

O script executa os passos seguintes:

  • Solicita que você entre em sua assinatura do Azure para que ela possa gerar um token de portador para autenticar as chamadas da API REST.
  • Cria um cluster e um banco de dados do Azure Data Explorer.
  • Cria uma identidade gerenciada para seu aplicativo IoT Central.
  • Configura a identidade gerenciada com permissão para acessar o banco de dados do Azure Data Explorer.
  • Adiciona uma tabela ao banco de dados para armazenar a telemetria de entrada do IoT Central.

Execute os seguintes comandos para baixar o script para seu ambiente do Azure Cloud Shell:

wget https://raw.githubusercontent.com/Azure-Samples/iot-central-docs-samples/main/quickstart-cde/createADX.sh
chmod u+x createADX.sh

Use o seguinte comando para executar o script:

  • Substitua CLUSTER_NAME por um nome exclusivo para seu cluster do Azure Data Explorer. O nome do cluster pode conter apenas letras minúsculas e números. O comprimento do nome do cluster deve ter entre 4 e 22 caracteres.
  • Substitua CENTRAL_URL_PREFIX pelo prefixo de URL escolhido no primeiro início rápido para seu aplicativo IoT Central.
  • Quando solicitado, siga as instruções para iniciar sessão na sua conta. É necessário que o script entre porque ele gera um token de portador para autenticar uma chamada de API REST.
./createADX.sh CLUSTER_NAME CENTRAL_URL_PREFIX

Importante

Esse script pode levar de 20 a 30 minutos para ser executado.

Anote a saída da URL do Azure Data Explorer pelo script. Irá utilizar este valor mais adiante no guia de início rápido.

Configurar exportação de dados

Para configurar o destino de exportação de dados do IoT Central:

  1. Navegue até a página Exportação de dados em seu aplicativo IoT Central.
  2. Selecione a guia Destinos e, em seguida, Adicionar um destino.
  3. Insira o Azure Data Explorer como o nome de destino. Selecione Azure Data Explorer como o tipo de destino.
  4. Em URL de Cluster, insira a URL do Azure Data Explorer que você anotou anteriormente.
  5. Em Nome do banco de dados, insira phonedata.
  6. Em Nome da tabela, insira aceleração.
  7. Em Autorização, selecione Identidade gerenciada atribuída ao sistema.
  8. Selecione Guardar.

Para configurar a exportação de dados:

  1. Na página Exportação de dados, selecione a guia Exportações e Adicionar uma exportação.

  2. Digite Acelerômetro de telefone como o nome de exportação.

  3. Selecione Telemetria como o tipo de dados a ser exportado.

  4. Use as informações na tabela a seguir para adicionar dois filtros:

    Nome Operador Value
    Modelo de dispositivo Igual a IoT Plug and Play móvel
    Sensores/Aceleração/X Exists N/A

    Certifique-se de que a opção para exportar os dados se todas as condições forem verdadeiras está definida.

  5. Adicione o Azure Data Explorer como destino.

  6. Adicione uma transformação de dados ao destino. Adicione a seguinte consulta no 2. Criar campo de consulta de transformação na página Transformação de dados:

    import "iotc" as iotc;
    {
        Device: .device.id,
        EnqueuedTime: .enqueuedTime,
        X: .telemetry | iotc::find(.name == "accelerometer").value.x,
        Y: .telemetry | iotc::find(.name == "accelerometer").value.y,
        Z: .telemetry | iotc::find(.name == "accelerometer").value.z
    }
    

    Screenshot that shows the data transformation query for the export.

    Para ver como a transformação funciona e experimentar a consulta, cole a seguinte mensagem de telemetria de exemplo em 1. Adicione a sua mensagem de entrada:

    {
      "messageProperties": {},
      "device": {
        "id": "8hltz8xa7n",
        "properties": {
          "reported": []
        },
        "approved": true,
        "types": [],
        "name": "8hltz8xa7n",
        "simulated": false,
        "provisioned": true,
        "modules": [],
        "templateId": "urn:modelDefinition:vlcd3zvzdm:y425jkkpqzeu",
        "templateName": "IoT Plug and Play mobile",
        "organizations": [],
        "cloudProperties": [],
        "blocked": false
      },
      "component": "sensors",
      "applicationId": "40a97c91-50cc-44f0-9f63-71386613facc",
      "messageSource": "telemetry",
      "telemetry": [
        {
          "id": "dtmi:azureiot:PhoneSensors:__accelerometer;1",
          "name": "accelerometer",
          "value": {
            "x": 0.09960123896598816,
            "y": 0.09541380405426025,
            "z": 9.907781600952148
          }
        }
      ],
      "enqueuedTime": "2021-11-12T10:01:30.588Z",
      "enrichments": {}
    }
    
  7. Salve a transformação. Em seguida, salve a definição de exportação de dados.

Aguarde até que o status de exportação mostre Íntegro:

Screenshot that shows a running data export with the healthy status.

Consultar dados exportados

Para consultar a telemetria exportada:

  1. Use a saída da URL do Azure Data Explorer pelo script executado anteriormente para navegar até seu ambiente do Azure Data Explorer.

  2. Expanda o nó do cluster e selecione o banco de dados phonedata . O escopo da janela de consulta muda para Scope:yourclustername.eastus/phonedata.

  3. No Azure Data Explorer, abra uma nova guia e cole na seguinte consulta Kusto e selecione Executar para plotar a telemetria do acelerômetro:

['acceleration'] 
    | project EnqueuedTime, Device, X, Y, Z
    | render timechart 

Pode ser necessário aguardar vários minutos para coletar dados suficientes. Para ver os valores de telemetria mudarem, tente segurar o telefone em diferentes orientações:

Screenshot of the query results for the accelerometer telemetry.

Clean up resources (Limpar recursos)

Se você não planeja concluir mais tutoriais ou inícios rápidos do IoT Central, pode excluir seu aplicativo do IoT Central:

  1. Em seu aplicativo IoT Central, navegue até Gerenciamento de Aplicativos>.
  2. Selecione Excluir e confirme sua ação.

Para remover a instância do Azure Data Explorer da sua assinatura e evitar ser cobrada desnecessariamente, exclua o grupo de recursos IoTCentralExportData-rg do portal do Azure ou execute o seguinte comando no Azure Cloud Shell:

az group delete --name IoTCentralExportData-rg

Próximo passo

Neste início rápido, você aprendeu como exportar dados continuamente do IoT Central para outro serviço do Azure.

Agora que você já sabe exportar seus dados, o próximo passo sugerido é: