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á.
Atualizar configurações do componente
As configurações de componentes são JSON objetos que definem os parâmetros de cada componente. A fórmula de cada componente define sua configuração padrão, que você modifica ao implantar componentes em dispositivos principais.
Ao criar uma implantação, você pode especificar a atualização de configuração que será aplicada a cada componente. As atualizações de configuração são operações de patch, ou seja, a atualização modifica a configuração do componente que existe no dispositivo principal. Se o dispositivo principal não tiver o componente, a atualização de configuração modificará e aplicará a configuração padrão a essa implantação.
A atualização de configuração define atualizações de redefinição e de mesclagem. As atualizações de redefinição determinam os valores de configuração que devem ser redefinidos aos padrões ou removidos. As atualizações de mesclagem determinam os novos valores de configuração que serão definidos no componente. Quando você implanta uma atualização de configuração, o software AWS IoT Greengrass Core executa a atualização de redefinição antes da atualização de mesclagem.
Os componentes podem validar as atualizações de configuração que você implanta. O componente faz a assinatura para receber uma notificação quando a implantação altera sua configuração e pode rejeitar uma configuração à qual não ofereça suporte. Para obter mais informações, consulte Interagir com a configuração do componente.
Atualizações de redefinição
As atualizações de redefinição determinam os valores que devem ser redefinidos aos padrões no dispositivo principal. Se um valor de configuração não tiver um padrão, a atualização de redefinição o removerá da configuração do componente. Isso pode ajudar você a corrigir um componente com falha por causa de uma configuração inválida.
Use uma lista de JSON ponteiros para definir quais valores de configuração devem ser redefinidos. JSONos ponteiros começam com uma barra /
para frente. Para identificar um valor em uma configuração de componente aninhado, use barras (/
) para separar as chaves de cada nível na configuração. Para obter mais informações, consulte a especificação do JSON ponteiro
nota
Você pode redefinir somente uma lista inteira aos valores padrão. Você não pode usar as atualizações de redefinição para redefinir apenas um elemento de uma lista.
Para redefinir toda a configuração de um componente aos valores padrão, especifique uma única string vazia como a atualização de redefinição.
"reset": [""]
Atualizações de mesclagem
As atualizações de mesclagem definem os valores de configuração que serão inseridos na configuração do componente no núcleo. A atualização de mesclagem é um JSON objeto que o software AWS IoT Greengrass Core mescla depois de redefinir os valores nos caminhos que você especifica na atualização de redefinição. Ao usar o AWS CLI ou AWS SDKs, você deve serializar esse JSON objeto como uma string.
Você pode mesclar um par de chave/valor que não existe na configuração padrão do componente. Você também pode mesclar um par de chave/valor que tenha um tipo diferente do valor com a mesma chave. O novo valor substitui o valor antigo. Isso significa que você pode alterar a estrutura do objeto de configuração.
Você pode mesclar valores nulos e strings, listas e objetos vazios.
nota
Você não pode usar atualizações de mesclagem com a finalidade de inserir ou anexar um elemento a uma lista. Você pode substituir uma lista inteira ou definir um objeto em que cada elemento tenha uma chave exclusiva.
AWS IoT Greengrass usa JSON para valores de configuração. JSONespecifica um tipo de número, mas não diferencia entre números inteiros e flutuantes. Como resultado, os valores de configuração podem ser convertidos em flutuantes no AWS IoT Greengrass. Para garantir que seu componente use o tipo de dados correto, recomendamos que você defina valores de configuração numéricos como strings. Em seguida, faça com que seu componente os analise como números inteiros ou flutuantes. Isso garante que seus valores de configuração tenham o mesmo tipo na configuração e no seu dispositivo principal.
Usar variáveis de fórmula em atualizações de mesclagem
Esse recurso está disponível para a versão 2.6.0 e posterior do componente de núcleo do Greengrass.
Se você definir a opção de interpolateComponentConfigurationconfiguração do núcleo do Greengrass comotrue
, poderá usar variáveis de receita, além da variável de
receita, em atualizações de mesclagem. Por exemplo, você pode usar a variável de component_dependency_name
:configuration:json_pointer
{iot:thingName}
receita em uma atualização de mesclagem para incluir o nome do item do AWS IoT dispositivo principal em um valor de configuração do componente, como uma política de autorização de comunicação entre processos (IPC).
Exemplos
O exemplo a seguir demonstra as atualizações de configuração para um componente do painel que tem a configuração padrão abaixo. Este componente de exemplo exibe informações sobre equipamentos industriais.
{ "name": null, "mode": "REQUEST", "network": { "useHttps": true, "port": { "http": 80, "https": 443 }, }, "tags": [] }
exemplo Exemplo 1: atualização de mesclagem
Você cria uma implantação que aplica a atualização de configuração a seguir, que especifica uma atualização de mesclagem, mas não uma atualização de redefinição. Essa atualização de configuração faz com que o componente exiba o painel na HTTP porta 8080 com dados de duas caldeiras.
Após essa atualização, o componente do painel terá a configuração abaixo.
{ "name": "Factory 2A", "mode": "REQUEST", "network": { "useHttps": false, "port": { "http": 8080, "https": 443 } }, "tags": [ "/boiler/1/temperature", "/boiler/1/pressure", "/boiler/2/temperature", "/boiler/2/pressure" ] }
exemplo Exemplo 2: redefinir e mesclar atualizações
Em seguida, você cria uma implantação que aplica a atualização de configuração a seguir, que especifica uma atualização de redefinição e uma de mesclagem. Essas atualizações especificam a exibição do painel na HTTPS porta padrão com dados de diferentes caldeiras. Essas atualizações modificam a configuração resultante das atualizações de configuração no exemplo anterior.
Após essa atualização, o componente do painel terá a configuração abaixo.
{ "name": "Factory 2A", "mode": "REQUEST", "network": { "useHttps": true, "port": { "http": 8080, "https": 443 } }, "tags": [ "/boiler/3/temperature", "/boiler/3/pressure", "/boiler/4/temperature", "/boiler/4/pressure", ] }