

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

# Gerenciador de sombras
<a name="shadow-manager-component"></a>

O componente Gerenciador de sombras (`aws.greengrass.ShadowManager`) habilita o serviço de sombra local no dispositivo principal. O serviço de sombra local permite que os componentes usem a comunicação entre processos para [interagir com as sombras locais](ipc-local-shadows.md). O componente shadow manager gerencia o armazenamento de documentos paralelos locais e também gerencia a sincronização dos estados de sombra locais com o serviço AWS IoT Device Shadow.

Para obter mais informações sobre como os dispositivos principais do Greengrass podem interagir com as sombras, consulte [Interaja com as sombras do dispositivo](interact-with-shadows.md).

**Topics**
+ [Versões](#shadow-manager-component-versions)
+ [Tipo](#shadow-manager-component-type)
+ [Sistema operacional](#shadow-manager-component-os-support)
+ [Requisitos](#shadow-manager-component-requirements)
+ [Dependências](#shadow-manager-component-dependencies)
+ [Configuração](#shadow-manager-component-configuration)
+ [Arquivo de log local](#shadow-manager-component-log-file)
+ [Changelog](#shadow-manager-component-changelog)

## Versões
<a name="shadow-manager-component-versions"></a>

Esse componente tem as seguintes versões:
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Tipo
<a name="shadow-manager-component-type"></a>

<a name="public-component-type-plugin-para1"></a>Este componente é um componente de plug-in (`aws.greengrass.plugin`). O [Greengrass nucleus](greengrass-nucleus-component.md) executa esse componente na mesma Java Virtual Machine (JVM) do núcleo. O núcleo é reiniciado quando você altera a versão desse componente no dispositivo principal.

<a name="public-component-type-plugin-para2"></a>Esse componente usa o mesmo arquivo de log do Greengrass nucleus. Para obter mais informações, consulte [Monitore AWS IoT Greengrass logs](monitor-logs.md).

<a name="public-component-type-more-information"></a>Para obter mais informações, consulte [Tipos de componentes](develop-greengrass-components.md#component-types).

## Sistema operacional
<a name="shadow-manager-component-os-support"></a>

Esse componente pode ser instalado em dispositivos principais que executam os seguintes sistemas operacionais:
+ Linux
+ Windows

## Requisitos
<a name="shadow-manager-component-requirements"></a>

Esse componente tem os seguintes requisitos:
+ (Opcional) Para sincronizar sombras com o serviço AWS IoT Device Shadow, a política do dispositivo principal AWS IoT do Greengrass deve permitir as AWS IoT Core seguintes ações de política paralela:
  + `iot:GetThingShadow`
  + `iot:UpdateThingShadow`
  + `iot:DeleteThingShadow`

  Para obter mais informações sobre essas AWS IoT Core políticas, consulte [as ações AWS IoT Core políticas](https://docs.aws.amazon.com/iot/latest/developerguide/iot-policy-actions.html) no *Guia do AWS IoT desenvolvedor*.

  Para obter mais informações sobre a AWS IoT política mínima, consulte [AWS IoT Política mínima para dispositivos AWS IoT Greengrass V2 principais](device-auth.md#greengrass-core-minimal-iot-policy)
+ O componente Gerenciador de sombras é compatível para execução em uma VPC.

## Dependências
<a name="shadow-manager-component-dependencies"></a>

Quando você implanta um componente, AWS IoT Greengrass também implanta versões compatíveis de suas dependências. Isso significa que é preciso atender aos requisitos do componente e de todas as dependências dele para implantá-lo com êxito. Nesta seção, há uma lista de todas as dependências das [versões lançadas](#shadow-manager-component-changelog) desse componente e as restrições de versão semântica que definem as versões dos componentes para cada dependência. Também é possível visualizar as dependências de cada versão do componente no [console do AWS IoT Greengrass](https://console.aws.amazon.com//greengrass). Na página de detalhes do componente, procure a lista de **dependências**.

------
#### [ 2.3.13 ]

A tabela a seguir lista as dependências da versão 2.3.13 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2,5.0 <2,17,0 | Flexível | 

------
#### [ 2.3.12 ]

A tabela a seguir lista as dependências da versão 2.3.12 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2,5.0 <2,17,0 | Flexível | 

------
#### [ 2.3.11 ]

A tabela a seguir lista as dependências da versão 2.3.11 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2,5.0 <2,16,0 | Flexível | 

------
#### [ 2.3.10 ]

A tabela a seguir lista as dependências da versão 2.3.10 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2,5.0 <2,15.0 | Flexível | 

------
#### [ 2.3.9 ]

A tabela a seguir lista as dependências da versão 2.3.9 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.5.0 <2.14.0 | Flexível | 

------
#### [ 2.3.5 – 2.3.8 ]

A tabela a seguir lista as dependências das versões 2.3.5 a 2.3.8 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.5.0 <2.13.0 | Flexível | 

------
#### [ 2.3.3 and 2.3.4 ]

A tabela a seguir lista as dependências das versões 2.3.3 e 2.3.4 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.5.0 <2.12.0 | Flexível | 

------
#### [ 2.3.2 ]

A tabela a seguir lista as dependências da versão 2.3.2 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.5.0 <2.11.0 | Flexível | 

------
#### [ 2.3.0 and 2.3.1 ]

A tabela a seguir lista as dependências das versões 2.3.0 e 2.3.1 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.5.0 <2.10.0 | Flexível | 

------
#### [ 2.2.3 and 2.2.4 ]

A tabela a seguir lista as dependências das versões 2.2.3 e 2.2.4 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.2.0 <3.0.0 | Flexível | 

------
#### [ 2.2.2 ]

A tabela a seguir lista as dependências da versão 2.2.2 deste componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.2.0 <2.9.0 | Flexível | 

------
#### [ 2.2.1 ]

A tabela a seguir lista as dependências da versão 2.2.1 deste componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.2.0 <2.8.0 | Flexível | 

------
#### [ 2.1.1 and 2.2.0 ]

A tabela a seguir lista as dependências das versões 2.1.1 e 2.2.0 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.2.0 <2.7.0 | Flexível | 

------
#### [ 2.0.5 - 2.1.0 ]

A tabela a seguir lista as dependências das versões 2.0.5 a 2.1.0 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.2.0 <2.6.0 | Flexível | 

------
#### [ 2.0.3 and 2.0.4 ]

A tabela a seguir lista as dependências das versões 2.0.3 e 2.0.4 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.2.0 <2.5.0 | Flexível | 

------
#### [ 2.0.1 and 2.0.2 ]

A tabela a seguir lista as dependências das versões 2.0.1 e 2.0.2 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.2.0 <2.4.0 | Flexível | 

------
#### [ 2.0.0 ]

A seguinte tabela lista as dependências da versão 2.0.0 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.2.0 <2.3.0 | Flexível | 

------

Para obter mais informações sobre as dependências dos componentes, consulte [referência de fórmula do componente](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuração
<a name="shadow-manager-component-configuration"></a>

Esse componente fornece os seguintes parâmetros de configuração que podem ser personalizados ao implantar o componente.

------
#### [ 2.3.x ]

`strategy`  <a name="shadow-manager-component-configuration-strategy"></a>
(Opcional) A estratégia que esse componente usa para sincronizar sombras entre AWS IoT Core e o dispositivo principal.  
Esse objeto contém as informações a seguir.    
`type`  
(Opcional) O tipo de estratégia que esse componente usa para sincronizar as sombras entre o AWS IoT Core e o dispositivo principal. Escolha uma das seguintes opções:  
+ `realTime`— Sincronize sombras AWS IoT Core sempre que ocorrer uma atualização de sombras.
+ `periodic`— Sincronize sombras AWS IoT Core em um intervalo regular que você especifica com o parâmetro `delay` de configuração.
Padrão: `realTime`  
`delay`  
(Opcional) O intervalo em segundos no qual esse componente sincroniza as sombras com o AWS IoT Core quando você especifica a estratégia de sincronização `periodic`.  
Esse parâmetro será obrigatório se você especificar a estratégia de sincronização `periodic`.

`synchronize`  <a name="shadow-manager-component-configuration-synchronize"></a>
<a name="shadow-manager-component-configuration-strategy-description"></a>(Opcional) As configurações de sincronização que determinam como as sombras são sincronizadas com a Nuvem AWS.   
É necessário criar uma atualização de configuração com essa propriedade para sincronizar as sombras com a Nuvem AWS.
Esse objeto contém as informações abaixo.    
`coreThing`  <a name="shadow-manager-component-configuration-synchronize-core-thing"></a>
(Opcional) A sombra do dispositivo principal para sincronização. Esse objeto contém as informações a seguir.    
`classic`  
(Opcional) Por padrão, o Gerenciador de sombras sincroniza o estado local da sombra clássica do seu dispositivo núcleo com a Nuvem AWS. Se você não deseja sincronizar a sombra clássica do dispositivo, defina essa propriedade como `false`.  
Padrão: `true`  
`namedShadows`  
(Opcional) A lista de sombras nomeadas do dispositivo principal para sincronização. É necessário especificar os nomes exatos das sombras.  
O AWS IoT Greengrass serviço usa a sombra `AWSManagedGreengrassV2Deployment` nomeada para gerenciar implantações direcionadas a dispositivos principais individuais. Essa sombra nomeada é reservada para uso pelo AWS IoT Greengrass serviço. Não a atualize nem exclua.  
`shadowDocumentsMap`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents-map"></a>
(Opcional) As sombras adicionais do dispositivo para sincronização. O uso desse parâmetro de configuração facilita a especificação de documentos de sombra. Recomendamos o uso deste parâmetro, em vez do objeto `shadowDocuments`.  
Se você especificar um objeto `shadowDocumentsMap`, não deverá especificar o `shadowDocuments`.
Cada objeto contém as seguintes informações:    
*`thingName`*  
A configuração de sombra *thingName* para esta configuração de sombra.    
`classic`  
(Opcional) Se você não deseja sincronizar a sombra clássica do dispositivo `thingName`, defina essa propriedade como `false`.  
`namedShadows`  
A lista de sombras nomeadas que você deseja sincronizar. É necessário especificar os nomes exatos das sombras.  
`shadowDocuments`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents"></a>
(Opcional) A lista de sombras adicionais do dispositivo para sincronização. Em vez disso, recomendamos o uso do parâmetro `shadowDocumentsMap`.  
Se você especificar um objeto `shadowDocuments`, não deverá especificar o `shadowDocumentsMap`.
Cada objeto na lista contém as informações abaixo.     
`thingName`  
O nome do item do dispositivo com o qual sincronizar as sombras.   
`classic`  
(Opcional) Se você não deseja sincronizar a sombra clássica do dispositivo `thingName`, defina essa propriedade como `false`.  
Padrão: `true`  
`namedShadows`  
(Opcional) A lista de sombras nomeadas do dispositivo que você deseja sincronizar. É necessário especificar os nomes exatos das sombras.  
`direction`  
(Opcional) A direção de sincronização das sombras entre o serviço de sombra local e a Nuvem AWS. É possível configurar essa opção para reduzir a largura de banda e as conexões com a Nuvem AWS. Escolha uma das seguintes opções:  
+ `betweenDeviceAndCloud`: sincronizar as sombras entre o serviço de sombra local e a Nuvem AWS.
+ `deviceToCloud`— Envie atualizações paralelas do serviço paralelo local para o. Nuvem AWS e ignore as atualizações paralelas do Nuvem AWS.
+ `cloudToDevice`: receber as atualizações de sombras da Nuvem AWS e não enviar as atualizações de sombras do serviço de sombra local para a Nuvem AWS.
Padrão: `BETWEEN_DEVICE_AND_CLOUD`

`rateLimits`  <a name="shadow-manager-component-configuration-rate-limits"></a>
(Opcional) As configurações que determinam os limites de taxa para solicitações de serviço de sombra.  
Esse objeto contém as informações abaixo.    
`maxOutboundSyncUpdatesPerSecond`  
(Opcional) O número máximo de solicitações de sincronização por segundo que o dispositivo transmite.   
Padrão: 100 solicitações por segundo  
`maxTotalLocalRequestsRate`  
(Opcional) O número máximo de solicitações do IPC locais por segundo enviadas ao dispositivo principal.   
Padrão: 200 solicitações por segundo  
`maxLocalRequestsPerSecondPerThing`  
(Opcional) O número máximo de solicitações do IPC locais por segundo enviadas para cada item conectado do IoT.   
Padrão: 20 requests/second para cada coisa
Esses parâmetros de limite de taxa definem o número máximo de solicitações por segundo para o serviço de sombra local. O número máximo de solicitações por segundo para o serviço AWS IoT Device Shadow depende do seu Região da AWS. Para obter mais informações, consulte os limites da [API de serviços do AWS IoT Device Shadow](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) em *Referência geral da Amazon Web Services*.

`shadowDocumentSizeLimitBytes`  <a name="shadow-manager-component-configuration-shadow-document-size-limit-bytes"></a>
(Opcional) O tamanho máximo permitido de cada documento de estado em JSON para sombras locais.   
Se você aumentar esse valor, deverá também aumentar o limite de recursos para o documento de estado em JSON para as sombras na nuvem. Para obter mais informações, consulte os limites da [API de serviços do AWS IoT Device Shadow](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) em *Referência geral da Amazon Web Services*.  
Padrão: 8192 bytes  
Máximo: 30720 bytes

**Example Exemplo: atualização da mesclagem de configuração**  
Veja a seguir exemplo de atualização da mesclagem de configuração com todos os parâmetros de configuração disponíveis para o componente Gerenciador de sombras.  

```
{
   "strategy":{
      "type":"periodic",
      "delay":300
   },
   "synchronize":{
      "shadowDocumentsMap":{
         "MyDevice1":{
            "classic":false,
            "namedShadows":[
               "MyShadowA",
               "MyShadowB"
            ]
         },
         "MyDevice2":{
            "classic":true,
            "namedShadows":[]
         }
      },
      "direction":"betweenDeviceAndCloud"
   },
   "rateLimits":{
      "maxOutboundSyncUpdatesPerSecond":100,
      "maxTotalLocalRequestsRate":200,
      "maxLocalRequestsPerSecondPerThing":20
   },
   "shadowDocumentSizeLimitBytes":8192
}
```

------
#### [ 2.2.x ]

`strategy`  <a name="shadow-manager-component-configuration-strategy"></a>
(Opcional) A estratégia que esse componente usa para sincronizar sombras entre AWS IoT Core e o dispositivo principal.  
Esse objeto contém as informações a seguir.    
`type`  
(Opcional) O tipo de estratégia que esse componente usa para sincronizar as sombras entre o AWS IoT Core e o dispositivo principal. Escolha uma das seguintes opções:  
+ `realTime`— Sincronize sombras AWS IoT Core sempre que ocorrer uma atualização de sombras.
+ `periodic`— Sincronize sombras AWS IoT Core em um intervalo regular que você especifica com o parâmetro `delay` de configuração.
Padrão: `realTime`  
`delay`  
(Opcional) O intervalo em segundos no qual esse componente sincroniza as sombras com o AWS IoT Core quando você especifica a estratégia de sincronização `periodic`.  
Esse parâmetro será obrigatório se você especificar a estratégia de sincronização `periodic`.

`synchronize`  <a name="shadow-manager-component-configuration-synchronize"></a>
<a name="shadow-manager-component-configuration-strategy-description"></a>(Opcional) As configurações de sincronização que determinam como as sombras são sincronizadas com a Nuvem AWS.   
É necessário criar uma atualização de configuração com essa propriedade para sincronizar as sombras com a Nuvem AWS.
Esse objeto contém as informações abaixo.    
`coreThing`  <a name="shadow-manager-component-configuration-synchronize-core-thing"></a>
(Opcional) A sombra do dispositivo principal para sincronização. Esse objeto contém as informações a seguir.    
`classic`  
(Opcional) Por padrão, o Gerenciador de sombras sincroniza o estado local da sombra clássica do seu dispositivo núcleo com a Nuvem AWS. Se você não deseja sincronizar a sombra clássica do dispositivo, defina essa propriedade como `false`.  
Padrão: `true`  
`namedShadows`  
(Opcional) A lista de sombras nomeadas do dispositivo principal para sincronização. É necessário especificar os nomes exatos das sombras.  
O AWS IoT Greengrass serviço usa a sombra `AWSManagedGreengrassV2Deployment` nomeada para gerenciar implantações direcionadas a dispositivos principais individuais. Essa sombra nomeada é reservada para uso pelo AWS IoT Greengrass serviço. Não a atualize nem exclua.  
`shadowDocumentsMap`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents-map"></a>
(Opcional) As sombras adicionais do dispositivo para sincronização. O uso desse parâmetro de configuração facilita a especificação de documentos de sombra. Recomendamos o uso deste parâmetro, em vez do objeto `shadowDocuments`.  
Se você especificar um objeto `shadowDocumentsMap`, não deverá especificar o `shadowDocuments`.
Cada objeto contém as seguintes informações:    
*`thingName`*  
A configuração de sombra *thingName* para esta configuração de sombra.    
`classic`  
(Opcional) Se você não deseja sincronizar a sombra clássica do dispositivo `thingName`, defina essa propriedade como `false`.  
`namedShadows`  
A lista de sombras nomeadas que você deseja sincronizar. É necessário especificar os nomes exatos das sombras.  
`shadowDocuments`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents"></a>
(Opcional) A lista de sombras adicionais do dispositivo para sincronização. Em vez disso, recomendamos o uso do parâmetro `shadowDocumentsMap`.  
Se você especificar um objeto `shadowDocuments`, não deverá especificar o `shadowDocumentsMap`.
Cada objeto na lista contém as informações abaixo.     
`thingName`  
O nome do item do dispositivo com o qual sincronizar as sombras.   
`classic`  
(Opcional) Se você não deseja sincronizar a sombra clássica do dispositivo `thingName`, defina essa propriedade como `false`.  
Padrão: `true`  
`namedShadows`  
(Opcional) A lista de sombras nomeadas do dispositivo que você deseja sincronizar. É necessário especificar os nomes exatos das sombras.  
`direction`  
(Opcional) A direção de sincronização das sombras entre o serviço de sombra local e a Nuvem AWS. É possível configurar essa opção para reduzir a largura de banda e as conexões com a Nuvem AWS. Escolha uma das seguintes opções:  
+ `betweenDeviceAndCloud`: sincronizar as sombras entre o serviço de sombra local e a Nuvem AWS.
+ `deviceToCloud`— Envie atualizações paralelas do serviço paralelo local para o. Nuvem AWS e ignore as atualizações paralelas do Nuvem AWS.
+ `cloudToDevice`: receber as atualizações de sombras da Nuvem AWS e não enviar as atualizações de sombras do serviço de sombra local para a Nuvem AWS.
Padrão: `BETWEEN_DEVICE_AND_CLOUD`

`rateLimits`  <a name="shadow-manager-component-configuration-rate-limits"></a>
(Opcional) As configurações que determinam os limites de taxa para solicitações de serviço de sombra.  
Esse objeto contém as informações abaixo.    
`maxOutboundSyncUpdatesPerSecond`  
(Opcional) O número máximo de solicitações de sincronização por segundo que o dispositivo transmite.   
Padrão: 100 solicitações por segundo  
`maxTotalLocalRequestsRate`  
(Opcional) O número máximo de solicitações do IPC locais por segundo enviadas ao dispositivo principal.   
Padrão: 200 solicitações por segundo  
`maxLocalRequestsPerSecondPerThing`  
(Opcional) O número máximo de solicitações do IPC locais por segundo enviadas para cada item conectado do IoT.   
Padrão: 20 requests/second para cada coisa
Esses parâmetros de limite de taxa definem o número máximo de solicitações por segundo para o serviço de sombra local. O número máximo de solicitações por segundo para o serviço AWS IoT Device Shadow depende do seu Região da AWS. Para obter mais informações, consulte os limites da [API de serviços do AWS IoT Device Shadow](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) em *Referência geral da Amazon Web Services*.

`shadowDocumentSizeLimitBytes`  <a name="shadow-manager-component-configuration-shadow-document-size-limit-bytes"></a>
(Opcional) O tamanho máximo permitido de cada documento de estado em JSON para sombras locais.   
Se você aumentar esse valor, deverá também aumentar o limite de recursos para o documento de estado em JSON para as sombras na nuvem. Para obter mais informações, consulte os limites da [API de serviços do AWS IoT Device Shadow](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) em *Referência geral da Amazon Web Services*.  
Padrão: 8192 bytes  
Máximo: 30720 bytes

**Example Exemplo: atualização da mesclagem de configuração**  
Veja a seguir exemplo de atualização da mesclagem de configuração com todos os parâmetros de configuração disponíveis para o componente Gerenciador de sombras.  

```
{
   "strategy":{
      "type":"periodic",
      "delay":300
   },
   "synchronize":{
      "shadowDocumentsMap":{
         "MyDevice1":{
            "classic":false,
            "namedShadows":[
               "MyShadowA",
               "MyShadowB"
            ]
         },
         "MyDevice2":{
            "classic":true,
            "namedShadows":[]
         }
      },
      "direction":"betweenDeviceAndCloud"
   },
   "rateLimits":{
      "maxOutboundSyncUpdatesPerSecond":100,
      "maxTotalLocalRequestsRate":200,
      "maxLocalRequestsPerSecondPerThing":20
   },
   "shadowDocumentSizeLimitBytes":8192
}
```

------
#### [ 2.1.x ]

`strategy`  <a name="shadow-manager-component-configuration-strategy"></a>
(Opcional) A estratégia que esse componente usa para sincronizar sombras entre AWS IoT Core e o dispositivo principal.  
Esse objeto contém as informações a seguir.    
`type`  
(Opcional) O tipo de estratégia que esse componente usa para sincronizar as sombras entre o AWS IoT Core e o dispositivo principal. Escolha uma das seguintes opções:  
+ `realTime`— Sincronize sombras AWS IoT Core sempre que ocorrer uma atualização de sombras.
+ `periodic`— Sincronize sombras AWS IoT Core em um intervalo regular que você especifica com o parâmetro `delay` de configuração.
Padrão: `realTime`  
`delay`  
(Opcional) O intervalo em segundos no qual esse componente sincroniza as sombras com o AWS IoT Core quando você especifica a estratégia de sincronização `periodic`.  
Esse parâmetro será obrigatório se você especificar a estratégia de sincronização `periodic`.

`synchronize`  <a name="shadow-manager-component-configuration-synchronize"></a>
<a name="shadow-manager-component-configuration-strategy-description"></a>(Opcional) As configurações de sincronização que determinam como as sombras são sincronizadas com a Nuvem AWS.   
É necessário criar uma atualização de configuração com essa propriedade para sincronizar as sombras com a Nuvem AWS.
Esse objeto contém as informações abaixo.    
`coreThing`  <a name="shadow-manager-component-configuration-synchronize-core-thing"></a>
(Opcional) A sombra do dispositivo principal para sincronização. Esse objeto contém as informações a seguir.    
`classic`  
(Opcional) Por padrão, o Gerenciador de sombras sincroniza o estado local da sombra clássica do seu dispositivo núcleo com a Nuvem AWS. Se você não deseja sincronizar a sombra clássica do dispositivo, defina essa propriedade como `false`.  
Padrão: `true`  
`namedShadows`  
(Opcional) A lista de sombras nomeadas do dispositivo principal para sincronização. É necessário especificar os nomes exatos das sombras.  
O AWS IoT Greengrass serviço usa a sombra `AWSManagedGreengrassV2Deployment` nomeada para gerenciar implantações direcionadas a dispositivos principais individuais. Essa sombra nomeada é reservada para uso pelo AWS IoT Greengrass serviço. Não a atualize nem exclua.  
`shadowDocumentsMap`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents-map"></a>
(Opcional) As sombras adicionais do dispositivo para sincronização. O uso desse parâmetro de configuração facilita a especificação de documentos de sombra. Recomendamos o uso deste parâmetro, em vez do objeto `shadowDocuments`.  
Se você especificar um objeto `shadowDocumentsMap`, não deverá especificar o `shadowDocuments`.
Cada objeto contém as seguintes informações:    
*`thingName`*  
A configuração de sombra *thingName* para esta configuração de sombra.    
`classic`  
(Opcional) Se você não deseja sincronizar a sombra clássica do dispositivo `thingName`, defina essa propriedade como `false`.  
`namedShadows`  
A lista de sombras nomeadas que você deseja sincronizar. É necessário especificar os nomes exatos das sombras.  
`shadowDocuments`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents"></a>
(Opcional) A lista de sombras adicionais do dispositivo para sincronização. Em vez disso, recomendamos o uso do parâmetro `shadowDocumentsMap`.  
Se você especificar um objeto `shadowDocuments`, não deverá especificar o `shadowDocumentsMap`.
Cada objeto na lista contém as informações abaixo.     
`thingName`  
O nome do item do dispositivo com o qual sincronizar as sombras.   
`classic`  
(Opcional) Se você não deseja sincronizar a sombra clássica do dispositivo `thingName`, defina essa propriedade como `false`.  
Padrão: `true`  
`namedShadows`  
(Opcional) A lista de sombras nomeadas do dispositivo que você deseja sincronizar. É necessário especificar os nomes exatos das sombras.

`rateLimits`  <a name="shadow-manager-component-configuration-rate-limits"></a>
(Opcional) As configurações que determinam os limites de taxa para solicitações de serviço de sombra.  
Esse objeto contém as informações abaixo.    
`maxOutboundSyncUpdatesPerSecond`  
(Opcional) O número máximo de solicitações de sincronização por segundo que o dispositivo transmite.   
Padrão: 100 solicitações por segundo  
`maxTotalLocalRequestsRate`  
(Opcional) O número máximo de solicitações do IPC locais por segundo enviadas ao dispositivo principal.   
Padrão: 200 solicitações por segundo  
`maxLocalRequestsPerSecondPerThing`  
(Opcional) O número máximo de solicitações do IPC locais por segundo enviadas para cada item conectado do IoT.   
Padrão: 20 requests/second para cada coisa
Esses parâmetros de limite de taxa definem o número máximo de solicitações por segundo para o serviço de sombra local. O número máximo de solicitações por segundo para o serviço AWS IoT Device Shadow depende do seu Região da AWS. Para obter mais informações, consulte os limites da [API de serviços do AWS IoT Device Shadow](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) em *Referência geral da Amazon Web Services*.

`shadowDocumentSizeLimitBytes`  <a name="shadow-manager-component-configuration-shadow-document-size-limit-bytes"></a>
(Opcional) O tamanho máximo permitido de cada documento de estado em JSON para sombras locais.   
Se você aumentar esse valor, deverá também aumentar o limite de recursos para o documento de estado em JSON para as sombras na nuvem. Para obter mais informações, consulte os limites da [API de serviços do AWS IoT Device Shadow](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) em *Referência geral da Amazon Web Services*.  
Padrão: 8192 bytes  
Máximo: 30720 bytes

**Example Exemplo: atualização da mesclagem de configuração**  
Veja a seguir exemplo de atualização da mesclagem de configuração com todos os parâmetros de configuração disponíveis para o componente Gerenciador de sombras.  

```
{
   "strategy":{
      "type":"periodic",
      "delay":300
   },
   "synchronize":{
      "shadowDocumentsMap":{
         "MyDevice1":{
            "classic":false,
            "namedShadows":[
               "MyShadowA",
               "MyShadowB"
            ]
         },
         "MyDevice2":{
            "classic":true,
            "namedShadows":[]
         }
      },
      "direction":"betweenDeviceAndCloud"
   },
   "rateLimits":{
      "maxOutboundSyncUpdatesPerSecond":100,
      "maxTotalLocalRequestsRate":200,
      "maxLocalRequestsPerSecondPerThing":20
   },
   "shadowDocumentSizeLimitBytes":8192
}
```

------
#### [ 2.0.x ]

`synchronize`  <a name="shadow-manager-component-configuration-synchronize"></a>
<a name="shadow-manager-component-configuration-strategy-description"></a>(Opcional) As configurações de sincronização que determinam como as sombras são sincronizadas com a Nuvem AWS.   
É necessário criar uma atualização de configuração com essa propriedade para sincronizar as sombras com a Nuvem AWS.
Esse objeto contém as informações abaixo.    
`coreThing`  <a name="shadow-manager-component-configuration-synchronize-core-thing"></a>
(Opcional) A sombra do dispositivo principal para sincronização. Esse objeto contém as informações a seguir.    
`classic`  
(Opcional) Por padrão, o Gerenciador de sombras sincroniza o estado local da sombra clássica do seu dispositivo núcleo com a Nuvem AWS. Se você não deseja sincronizar a sombra clássica do dispositivo, defina essa propriedade como `false`.  
Padrão: `true`  
`namedShadows`  
(Opcional) A lista de sombras nomeadas do dispositivo principal para sincronização. É necessário especificar os nomes exatos das sombras.  
O AWS IoT Greengrass serviço usa a sombra `AWSManagedGreengrassV2Deployment` nomeada para gerenciar implantações direcionadas a dispositivos principais individuais. Essa sombra nomeada é reservada para uso pelo AWS IoT Greengrass serviço. Não a atualize nem exclua.  
`shadowDocumentsMap`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents-map"></a>
(Opcional) As sombras adicionais do dispositivo para sincronização. O uso desse parâmetro de configuração facilita a especificação de documentos de sombra. Recomendamos o uso deste parâmetro, em vez do objeto `shadowDocuments`.  
Se você especificar um objeto `shadowDocumentsMap`, não deverá especificar o `shadowDocuments`.
Cada objeto contém as seguintes informações:    
*`thingName`*  
A configuração de sombra *thingName* para esta configuração de sombra.    
`classic`  
(Opcional) Se você não deseja sincronizar a sombra clássica do dispositivo `thingName`, defina essa propriedade como `false`.  
`namedShadows`  
A lista de sombras nomeadas que você deseja sincronizar. É necessário especificar os nomes exatos das sombras.  
`shadowDocuments`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents"></a>
(Opcional) A lista de sombras adicionais do dispositivo para sincronização. Em vez disso, recomendamos o uso do parâmetro `shadowDocumentsMap`.  
Se você especificar um objeto `shadowDocuments`, não deverá especificar o `shadowDocumentsMap`.
Cada objeto na lista contém as informações abaixo.     
`thingName`  
O nome do item do dispositivo com o qual sincronizar as sombras.   
`classic`  
(Opcional) Se você não deseja sincronizar a sombra clássica do dispositivo `thingName`, defina essa propriedade como `false`.  
Padrão: `true`  
`namedShadows`  
(Opcional) A lista de sombras nomeadas do dispositivo que você deseja sincronizar. É necessário especificar os nomes exatos das sombras.

`rateLimits`  <a name="shadow-manager-component-configuration-rate-limits"></a>
(Opcional) As configurações que determinam os limites de taxa para solicitações de serviço de sombra.  
Esse objeto contém as informações abaixo.    
`maxOutboundSyncUpdatesPerSecond`  
(Opcional) O número máximo de solicitações de sincronização por segundo que o dispositivo transmite.   
Padrão: 100 solicitações por segundo  
`maxTotalLocalRequestsRate`  
(Opcional) O número máximo de solicitações do IPC locais por segundo enviadas ao dispositivo principal.   
Padrão: 200 solicitações por segundo  
`maxLocalRequestsPerSecondPerThing`  
(Opcional) O número máximo de solicitações do IPC locais por segundo enviadas para cada item conectado do IoT.   
Padrão: 20 requests/second para cada coisa
Esses parâmetros de limite de taxa definem o número máximo de solicitações por segundo para o serviço de sombra local. O número máximo de solicitações por segundo para o serviço AWS IoT Device Shadow depende do seu Região da AWS. Para obter mais informações, consulte os limites da [API de serviços do AWS IoT Device Shadow](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) em *Referência geral da Amazon Web Services*.

`shadowDocumentSizeLimitBytes`  <a name="shadow-manager-component-configuration-shadow-document-size-limit-bytes"></a>
(Opcional) O tamanho máximo permitido de cada documento de estado em JSON para sombras locais.   
Se você aumentar esse valor, deverá também aumentar o limite de recursos para o documento de estado em JSON para as sombras na nuvem. Para obter mais informações, consulte os limites da [API de serviços do AWS IoT Device Shadow](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) em *Referência geral da Amazon Web Services*.  
Padrão: 8192 bytes  
Máximo: 30720 bytes

**Example Exemplo: atualização da mesclagem de configuração**  
Veja a seguir exemplo de atualização da mesclagem de configuração com todos os parâmetros de configuração disponíveis para o componente Gerenciador de sombras.  

```
{
  "synchronize": {
    "coreThing": {
      "classic": true,
      "namedShadows": [
        "MyCoreShadowA",
        "MyCoreShadowB"
      ]
    },
    "shadowDocuments": [
      {
        "thingName": "MyDevice1",
        "classic": false,
        "namedShadows": [
          "MyShadowA",
          "MyShadowB"
        ]
      },
      {
        "thingName": "MyDevice2",
        "classic": true,
        "namedShadows": []
      }
    ]
  },
  "rateLimits": {       
    "maxOutboundSyncUpdatesPerSecond": 100,
    "maxTotalLocalRequestsRate": 200,
    "maxLocalRequestsPerSecondPerThing": 20
  },
  "shadowDocumentSizeLimitBytes": 8192
}
```

------

## Arquivo de log local
<a name="shadow-manager-component-log-file"></a>

Esse componente usa o mesmo arquivo de log do componente de [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ Linux ]

```
/greengrass/v2/logs/greengrass.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\greengrass.log
```

------

**Para ver os logs desse componente**
+ Execute o comando a seguir no dispositivo principal para visualizar o arquivo de log desse componente em tempo real. Substitua `/greengrass/v2` ou *C:\$1greengrass\$1v2* pelo caminho para a pasta AWS IoT Greengrass raiz.

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/greengrass.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait
  ```

------

## Changelog
<a name="shadow-manager-component-changelog"></a>

A tabela a seguir descreve as alterações em cada versão do componente.


|  Versão  |  Alterações  | 
| --- | --- | 
|  2.3.13  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.12  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.11  | Versão atualizada para o Greengrass nucleus versão 2.15.0. | 
|  2.3.10  | Versão atualizada para o Greengrass nucleus versão 2.14.0. | 
|  2.3.9  | Versão atualizada para o núcleo do Greengrass 2.13.0. | 
|  2.3.8  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.7  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.6  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.5  | Versão atualizada para o núcleo do Greengrass 2.12.0. | 
|  2.3.4  |  <a name="changelog-shadow-manager-2.3.4"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.3.3  | Versão atualizada para o núcleo do Greengrass 2.11.0. | 
|  2.3.2  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.1  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.0  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.2.4  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.2.3  | Versão atualizada para o núcleo do Greengrass 2.9.0. | 
|  2.2.2  | Versão atualizada para o núcleo do Greengrass 2.8.0. | 
|  2.2.1  |  Versão atualizada para o lançamento da versão 2.7.0 do núcleo do Greengrass.  | 
|  2.2.0  |  <a name="changelog-shadow-manager-2.2.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.1.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.0.6  |  Essa versão contém correções de bugs e melhorias.  | 
|  2.0.5  |  Versão atualizada para o núcleo do Greengrass 2.5.0.  | 
|  2.0.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.0.3  |  Versão atualizada para o lançamento da versão 2.4.0 do núcleo do Greengrass.  | 
|  2.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.0.1  |  Versão atualizada para o lançamento da versão 2.3.0 do núcleo do Greengrass.  | 
|  2.0.0  |  Versão inicial.  | 