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á.
Nesta seção, você implanta o componente no dispositivo principal para testar a funcionalidade dele. No dispositivo principal, você cria o arquivo virtual do nível da bateria para imitar uma bateria real. Em seguida, você cria implantações adicionais e observa os arquivos de log do componente no dispositivo principal para ver o componente adiar e confirmar as atualizações.
Para implantar e testar o componente Hello World que adia as atualizações
-
Use um editor de texto para criar um arquivo virtual do nível da bateria. Este arquivo imita uma bateria real.
-
Nos dispositivos principais do Linux, crie um arquivo chamado
/home/ggc_user/virtual_battery.json
. Execute o editor de texto com permissõessudo
. -
Nos dispositivos principais do Windows, crie um arquivo chamado
C:\Users\ggc_user\virtual_battery.json
. Execute o editor de texto como administrador.
Por exemplo, em um sistema baseado em Linux, você pode executar o comando a seguir para usar o GNU nano para criar o arquivo.
sudo nano /home/ggc_user/virtual_battery.json
Copie o JSON a seguir no arquivo.
{ "battery_level": 50 }
-
-
Implante o componente Hello World no dispositivo principal. Faça o seguinte:
-
No menu de navegação do console do AWS IoT Greengrass
, selecione Componentes. -
Na página Componentes, escolha a guia Meus componentes e depois com.example.BatteryAwareHelloWorld.
-
Na página com.example.BatteryAwareHelloWorld, escolha Implantar.
-
Em Adicionar à implantação, escolha uma implantação existente para revisar ou opte por criar uma nova e, em seguida, escolha Avançar.
-
Se você criar uma nova implantação, escolha o dispositivo principal ou grupo de objetos de destino para ela. Na página Especificar destino, em Destino de implantação, escolha um dispositivo principal ou grupo de objetos e, depois, Avançar.
-
Na página Selecionar componentes, verifique se o componente com.example.BatteryAwareHelloWorld está selecionado e escolha Avançar.
-
Na página Configurar componentes, selecione com.example.BatteryAwareHelloWorld e faça o seguinte:
-
Escolha Configurar componente.
-
No modal Configurar com.example.BatteryAwareHelloWorld, em Atualização de configuração, em Configuração para mesclar, insira a seguinte atualização de configuração.
{ "BatteryThreshold": 70 }
-
Selecione Confirmar para fechar o modal e, em seguida, Avançar.
-
-
Na página Confirmar configurações avançadas, na seção Políticas de implantação, em Política de atualização de componentes, confirme se a opção Notificar componentes está selecionada. A opção Notificar componentes é selecionada por padrão quando você cria uma nova implantação.
-
Na página Review, escolha Deploy.
A implantação pode levar até um minuto para ser concluída.
-
-
O software AWS IoT Greengrass Core salva o stdout dos processos do componente em arquivos de log na pasta
logs
. Execute o comando a seguir para verificar se o componente Hello World executa e imprime mensagens de status.sudo tail -f
/logs/com.example.BatteryAwareHelloWorld.log/greengrass/v2
Você verá mensagens semelhantes ao exemplo a seguir.
Hello, World! Battery level (50) is below threshold (70), so the component will defer updates.
nota
Se o arquivo não existir, talvez a implantação ainda não esteja concluída. Se o arquivo não existir em 30 segundos, a implantação provavelmente falhou. Isso pode ocorrer se o dispositivo principal não tiver permissão para baixar os artefatos do componente do bucket do S3, por exemplo. Execute o seguinte comando para visualizar o arquivo de log do software AWS IoT Greengrass Core. Esse arquivo inclui logs do serviço de implantação do dispositivo principal do Greengrass.
sudo tail -f
/logs/greengrass.log/greengrass/v2
-
Crie uma nova implantação no dispositivo principal para verificar se o componente adia a atualização. Faça o seguinte:
-
No menu de navegação do console do AWS IoT Greengrass
, selecione Implantações. -
Escolha a implantação que você criou ou revisou anteriormente.
-
Na página da implantação, escolha Revisar.
-
No modal Revisar implantação, selecione Revisar implantação.
-
Selecione Avançar em cada etapa e depois Implantar.
-
-
Execute o comando a seguir para visualizar os logs do componente novamente e verificar se ele adia a atualização.
sudo tail -f
/logs/com.example.BatteryAwareHelloWorld.log/greengrass/v2
Você verá mensagens semelhantes ao exemplo a seguir. O componente adia a atualização por 30 segundos, então o componente imprime essa mensagem repetidamente.
Deferred update for deployment 50722a95-a05f-4e2a-9414-da80103269aa.
-
Use um editor de texto para editar o arquivo virtual do nível da bateria e alterar o nível da bateria para um valor acima do limite, para que a implantação possa continuar.
-
Nos dispositivos principais do Linux, edite o arquivo chamado
/home/ggc_user/virtual_battery.json
. Execute o editor de texto com permissõessudo
. -
Nos dispositivos principais do Windows, edite o arquivo chamado
C:\Users\ggc_user\virtual_battery.json
. Execute o editor de texto como administrador.
Por exemplo, em um sistema baseado em Linux, você pode executar o comando a seguir para usar o GNU nano para criar o arquivo.
sudo nano /home/ggc_user/virtual_battery.json
Altere o nível da bateria para
80
.{ "battery_level": 80 }
-
-
Execute o seguinte comando para visualizar os logs do componente novamente e verificar se ele reconhece a atualização.
sudo tail -f
/logs/com.example.BatteryAwareHelloWorld.log/greengrass/v2
Você verá mensagens semelhantes aos exemplos a seguir.
Hello, World! Battery level (80) is above threshold (70), so the component will acknowledge updates. Acknowledged update for deployment f9499eb2-4a40-40a7-86c1-c89887d859f1.