

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

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

El componente administrador de sombras (`aws.greengrass.ShadowManager`) habilita el servicio de sombra local en su dispositivo principal. El servicio de sombra local permite a los componentes utilizar la comunicación entre procesos para [interactuar con las sombras locales](ipc-local-shadows.md). El componente de gestión de sombras gestiona el almacenamiento de los documentos ocultos locales y también gestiona la sincronización de los estados ocultos locales con el servicio AWS IoT Device Shadow.

Para obtener más información sobre cómo los dispositivos principales de Greengrass pueden interactuar con las sombras, consulte [Interacción con las sombras de dispositivo](interact-with-shadows.md).

**Topics**
+ [Versiones](#shadow-manager-component-versions)
+ [Tipo](#shadow-manager-component-type)
+ [Sistema operativo](#shadow-manager-component-os-support)
+ [Requisitos](#shadow-manager-component-requirements)
+ [Dependencias](#shadow-manager-component-dependencies)
+ [Configuración](#shadow-manager-component-configuration)
+ [Archivo de registro local](#shadow-manager-component-log-file)
+ [Registros de cambios](#shadow-manager-component-changelog)

## Versiones
<a name="shadow-manager-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 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 es un componente de complemento (`aws.greengrass.plugin`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta este componente en la misma máquina virtual Java (JVM) que el núcleo. El núcleo se reinicia al cambiar la versión de este componente en el dispositivo principal.

<a name="public-component-type-plugin-para2"></a>Este componente usa el mismo archivo de registro que el núcleo de Greengrass. Para obtener más información, consulte [Supervisión de los registros de AWS IoT Greengrass](monitor-logs.md).

<a name="public-component-type-more-information"></a>Para obtener más información, consulte [Tipos de componentes](develop-greengrass-components.md#component-types).

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

Este componente se puede instalar en los dispositivos principales que ejecutan los siguientes sistemas operativos:
+ Linux
+ Windows

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

Este componente tiene los siguientes requisitos:
+ (Opcional) Para sincronizar las sombras con el servicio AWS IoT Device Shadow, la AWS IoT política del dispositivo principal de Greengrass debe permitir las siguientes acciones de política AWS IoT Core clandestina:
  + `iot:GetThingShadow`
  + `iot:UpdateThingShadow`
  + `iot:DeleteThingShadow`

  Para obtener más información sobre estas AWS IoT Core políticas, consulte las acciones [AWS IoT Core políticas ](https://docs.aws.amazon.com/iot/latest/developerguide/iot-policy-actions.html) en la Guía para *AWS IoT * desarrolladores.

  Para obtener más información sobre la AWS IoT política mínima, consulte [AWS IoT Política mínima para los dispositivos AWS IoT Greengrass V2 principales](device-auth.md#greengrass-core-minimal-iot-policy)
+ Se admite la ejecución del componente administrador de sombras en una VPC.

## Dependencias
<a name="shadow-manager-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también implementa versiones compatibles de sus dependencias. Esto significa que debe cumplir los requisitos del componente y de todas sus dependencias para poder implementar el componente correctamente. En esta sección, se enumeran las dependencias de las [versiones publicadas](#shadow-manager-component-changelog) de este componente y las restricciones de las versiones semánticas que definen las versiones de los componentes para cada dependencia. También puede ver las dependencias de cada versión del componente en la [consola de AWS IoT Greengrass](https://console.aws.amazon.com/greengrass). En la página de detalles del componente, busque la lista de **Dependencias**.

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

En la siguiente tabla se enumeran las dependencias de la versión 2.3.13 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | > =2.5.0 <2.17.0 | Flexible | 

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

En la siguiente tabla se enumeran las dependencias de la versión 2.3.12 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | > =2.5.0 <2.17.0 | Flexible | 

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

En la siguiente tabla se enumeran las dependencias de la versión 2.3.11 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | > =2.5.0 <2.16.0 | Flexible | 

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

En la siguiente tabla se enumeran las dependencias de la versión 2.3.10 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | > =2.5.0 <2.15.0 | Flexible | 

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

En la siguiente tabla, se muestran las dependencias de la versión 2.3.9 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.5.0 <2.14.0 | Flexible | 

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

En la siguiente tabla, se muestran las dependencias de las versiones 2.3.5 a 2.3.8 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.5.0 <2.13.0 | Flexible | 

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

En la siguiente tabla, se muestran las dependencias de las versiones 2.3.3 y 2.3.4 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.5.0 <2.12.0 | Flexible | 

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

En la siguiente tabla, se muestran las dependencias de la versión 2.3.2 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.5.0 <2.11.0 | Flexible | 

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

En la siguiente tabla, se muestran las dependencias de las versiones 2.3.0 y 2.3.1 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.5.0 <2.10.0 | Flexible | 

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

En la siguiente tabla, se muestran las dependencias de las versiones 2.2.3 y 2.2.4 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.2.0 <3.0.0 | Flexible | 

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

En la siguiente tabla, se muestran las dependencias de la versión 2.2.2 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.2.0 <2.9.0 | Flexible | 

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

En la siguiente tabla, se muestran las dependencias de la versión 2.2.1 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.2.0 <2.8.0 | Flexible | 

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

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.1 y 2.2.0 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.2.0 <2.7.0 | Flexible | 

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

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.5 a 2.1.0 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.2.0 <2.6.0 | Flexible | 

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

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.3 y 2.0.4 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.2.0 <2.5.0 | Flexible | 

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

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.1 y 2.0.2 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.2.0 <2.4.0 | Flexible | 

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

En la siguiente tabla, se muestran las dependencias de la versión 2.0.0 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.2.0 <2.3.0 | Flexible | 

------

Para obtener más información sobre las dependencias del componente, consulte la [referencia de receta de componentes](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuración
<a name="shadow-manager-component-configuration"></a>

Este componente ofrece los siguientes parámetros de configuración que puede personalizar cuando implemente el componente.

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

`strategy`  <a name="shadow-manager-component-configuration-strategy"></a>
(Opcional) La estrategia que utiliza este componente para sincronizar las sombras entre AWS IoT Core el dispositivo principal y el dispositivo principal.  
Este objeto contiene la siguiente información:    
`type`  
(Opcional) El tipo de estrategia que utiliza este componente para sincronizar las sombras entre AWS IoT Core y el dispositivo principal. Puede elegir entre las siguientes opciones:  
+ `realTime`— Sincronice las sombras AWS IoT Core cada vez que se produzca una actualización de sombras.
+ `periodic`— Sincronice las sombras con AWS IoT Core un intervalo regular que especifique con el parámetro `delay` de configuración.
Valor predeterminado: `realTime`  
`delay`  
(Opcional) El intervalo en segundos en el que este componente sincroniza las sombras con AWS IoT Core, al especificar la estrategia de sincronización `periodic`.  
Este parámetro es necesario si no se especifica estrategia de sincronización `periodic`.

`synchronize`  <a name="shadow-manager-component-configuration-synchronize"></a>
<a name="shadow-manager-component-configuration-strategy-description"></a>(Opcional) Los ajustes de sincronización que determinan cómo se sincronizan las sombras con la Nube de AWS.   
Debe crear una actualización de configuración con esta propiedad para sincronizar las sombras con la Nube de AWS.
Este objeto contiene la siguiente información:    
`coreThing`  <a name="shadow-manager-component-configuration-synchronize-core-thing"></a>
(Opcional) Las sombras de dispositivo principal se van a sincronizar. Este objeto contiene la siguiente información:    
`classic`  
(Opcional) De forma predeterminada, el administrador de sombras sincroniza el estado local de la sombra clásica de su dispositivo principal con la Nube de AWS. Si no desea sincronizar la sombra de dispositivo clásica, configúrela en `false`.  
Valor predeterminado: `true`  
`namedShadows`  
(Opcional) La lista de sombras de dispositivo principales con nombre que se van a sincronizar. Debe especificar los nombres exactos de las sombras.  
El AWS IoT Greengrass servicio usa la sombra `AWSManagedGreengrassV2Deployment` denominada para administrar las implementaciones dirigidas a dispositivos principales individuales. Esta sombra con nombre está reservada para que la utilice el AWS IoT Greengrass servicio. No actualice ni elimine esta sombra con nombre.  
`shadowDocumentsMap`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents-map"></a>
(Opcional) Las sombras de dispositivo adicionales que se van a sincronizar. El uso de este parámetro de configuración facilita la especificación de documentos de sombras. Le recomendamos que utilice este parámetro en lugar del objeto `shadowDocuments`.  
Si especifica un objeto `shadowDocumentsMap`, no debe especificar `shadowDocuments`.
Cada objeto contiene la siguiente información:    
{{`thingName`}}  
La configuración de sombras {{thingName}} para esta configuración de sombras.    
`classic`  
(Opcional) Si no desea sincronizar la sombra de dispositivo clásico con el dispositivo `thingName`, configúrela en `false`.  
`namedShadows`  
La lista de sombras con nombre que desea sincronizar. Debe especificar los nombres exactos de las sombras.  
`shadowDocuments`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents"></a>
(Opcional) La lista de sombras de dispositivo adicionales que se van a sincronizar. Le recomendamos que utilice el parámetro `shadowDocumentsMap` en su lugar.  
Si especifica un objeto `shadowDocuments`, no debe especificar `shadowDocumentsMap`.
Cada objeto en la lista contiene la siguiente información.     
`thingName`  
Nombre del objeto del dispositivo para el que se sincronizan las sombras.   
`classic`  
(Opcional) Si no desea sincronizar la sombra de dispositivo clásico con el dispositivo `thingName`, configúrela en `false`.  
Valor predeterminado: `true`  
`namedShadows`  
(Opcional) La lista de sombras de dispositivo con nombre que desea sincronizar. Debe especificar los nombres exactos de las sombras.  
`direction`  
(Opcional) La dirección para sincronizar las sombras entre el servicio de sombra local y la Nube de AWS. Puede configurar esta opción para reducir el ancho de banda y las conexiones a la Nube de AWS. Puede elegir entre las siguientes opciones:  
+ `betweenDeviceAndCloud`: sincronice las sombras entre el servicio de sombra local y la Nube de AWS.
+ `deviceToCloud`— Envíe las actualizaciones instantáneas desde el servicio oculto local a e ignore las actualizaciones instantáneas del Nube de AWS. Nube de AWS
+ `cloudToDevice`: recibe actualizaciones de sombras de la Nube de AWS y no envía actualizaciones de sombras del servicio de sombras local a la Nube de AWS.
Valor predeterminado: `BETWEEN_DEVICE_AND_CLOUD`

`rateLimits`  <a name="shadow-manager-component-configuration-rate-limits"></a>
(Opcional) La configuración que determina los límites de tasa para las solicitudes de servicios de sombra.  
Este objeto contiene la siguiente información:    
`maxOutboundSyncUpdatesPerSecond`  
(Opcional) El número máximo de solicitudes de sincronización por segundo que transmite el dispositivo.   
Predeterminado: 100 requests/second  
`maxTotalLocalRequestsRate`  
(Opcional) El número máximo de solicitudes de IPC locales por segundo que se envían al dispositivo principal.   
Predeterminado: 200 requests/second  
`maxLocalRequestsPerSecondPerThing`  
(Opcional) La cantidad máxima de solicitudes de IPC locales por segundo que se envían para cada objeto IoT conectado.   
Predeterminado: 20 requests/second para cada cosa
Estos parámetros de límites de tasa definen el número máximo de solicitudes por segundo para el servicio de sombra local. El número máximo de solicitudes por segundo para el servicio AWS IoT Device Shadow depende de tu Región de AWS. Para obtener más información, consulte los límites de la [API del servicio de sombra de dispositivo AWS IoT](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) en la *Referencia general de Amazon Web Services*.

`shadowDocumentSizeLimitBytes`  <a name="shadow-manager-component-configuration-shadow-document-size-limit-bytes"></a>
(Opcional) El tamaño máximo permitido de cada documento de estado JSON para las sombras locales.   
Si aumenta este valor debe incrementar también el límite de recursos del documento de estado JSON para sombras en la nube. Para obtener más información, consulte los límites de la [API del servicio de sombra de dispositivo AWS IoT](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) en la *Referencia general de Amazon Web Services*.  
Valor predeterminado: 8192 bytes  
Valor máximo: 30 720 bytes

**Example Ejemplo: actualización de la combinación de configuraciones**  
En el siguiente ejemplo, se muestra un ejemplo de actualización de la combinación de configuraciones con todos los parámetros de configuración disponibles para el componente administrador 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) La estrategia que utiliza este componente para sincronizar las sombras entre el dispositivo principal AWS IoT Core y el dispositivo principal.  
Este objeto contiene la siguiente información:    
`type`  
(Opcional) El tipo de estrategia que utiliza este componente para sincronizar las sombras entre AWS IoT Core y el dispositivo principal. Puede elegir entre las siguientes opciones:  
+ `realTime`— Sincronice las sombras AWS IoT Core cada vez que se produzca una actualización de sombras.
+ `periodic`— Sincronice las sombras con AWS IoT Core un intervalo regular que especifique con el parámetro `delay` de configuración.
Valor predeterminado: `realTime`  
`delay`  
(Opcional) El intervalo en segundos en el que este componente sincroniza las sombras con AWS IoT Core, al especificar la estrategia de sincronización `periodic`.  
Este parámetro es necesario si no se especifica estrategia de sincronización `periodic`.

`synchronize`  <a name="shadow-manager-component-configuration-synchronize"></a>
<a name="shadow-manager-component-configuration-strategy-description"></a>(Opcional) Los ajustes de sincronización que determinan cómo se sincronizan las sombras con la Nube de AWS.   
Debe crear una actualización de configuración con esta propiedad para sincronizar las sombras con la Nube de AWS.
Este objeto contiene la siguiente información:    
`coreThing`  <a name="shadow-manager-component-configuration-synchronize-core-thing"></a>
(Opcional) Las sombras de dispositivo principal se van a sincronizar. Este objeto contiene la siguiente información:    
`classic`  
(Opcional) De forma predeterminada, el administrador de sombras sincroniza el estado local de la sombra clásica de su dispositivo principal con la Nube de AWS. Si no desea sincronizar la sombra de dispositivo clásica, configúrela en `false`.  
Valor predeterminado: `true`  
`namedShadows`  
(Opcional) La lista de sombras de dispositivo principales con nombre que se van a sincronizar. Debe especificar los nombres exactos de las sombras.  
El AWS IoT Greengrass servicio usa la sombra `AWSManagedGreengrassV2Deployment` denominada para administrar las implementaciones dirigidas a dispositivos principales individuales. Esta sombra con nombre está reservada para que la utilice el AWS IoT Greengrass servicio. No actualice ni elimine esta sombra con nombre.  
`shadowDocumentsMap`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents-map"></a>
(Opcional) Las sombras de dispositivo adicionales que se van a sincronizar. El uso de este parámetro de configuración facilita la especificación de documentos de sombras. Le recomendamos que utilice este parámetro en lugar del objeto `shadowDocuments`.  
Si especifica un objeto `shadowDocumentsMap`, no debe especificar `shadowDocuments`.
Cada objeto contiene la siguiente información:    
{{`thingName`}}  
La configuración de sombras {{thingName}} para esta configuración de sombras.    
`classic`  
(Opcional) Si no desea sincronizar la sombra de dispositivo clásico con el dispositivo `thingName`, configúrela en `false`.  
`namedShadows`  
La lista de sombras con nombre que desea sincronizar. Debe especificar los nombres exactos de las sombras.  
`shadowDocuments`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents"></a>
(Opcional) La lista de sombras de dispositivo adicionales que se van a sincronizar. Le recomendamos que utilice el parámetro `shadowDocumentsMap` en su lugar.  
Si especifica un objeto `shadowDocuments`, no debe especificar `shadowDocumentsMap`.
Cada objeto en la lista contiene la siguiente información.     
`thingName`  
Nombre del objeto del dispositivo para el que se sincronizan las sombras.   
`classic`  
(Opcional) Si no desea sincronizar la sombra de dispositivo clásico con el dispositivo `thingName`, configúrela en `false`.  
Valor predeterminado: `true`  
`namedShadows`  
(Opcional) La lista de sombras de dispositivo con nombre que desea sincronizar. Debe especificar los nombres exactos de las sombras.  
`direction`  
(Opcional) La dirección para sincronizar las sombras entre el servicio de sombra local y la Nube de AWS. Puede configurar esta opción para reducir el ancho de banda y las conexiones a la Nube de AWS. Puede elegir entre las siguientes opciones:  
+ `betweenDeviceAndCloud`: sincronice las sombras entre el servicio de sombra local y la Nube de AWS.
+ `deviceToCloud`— Envíe las actualizaciones instantáneas desde el servicio oculto local a e ignore las actualizaciones instantáneas del Nube de AWS. Nube de AWS
+ `cloudToDevice`: recibe actualizaciones de sombras de la Nube de AWS y no envía actualizaciones de sombras del servicio de sombras local a la Nube de AWS.
Valor predeterminado: `BETWEEN_DEVICE_AND_CLOUD`

`rateLimits`  <a name="shadow-manager-component-configuration-rate-limits"></a>
(Opcional) La configuración que determina los límites de tasa para las solicitudes de servicios de sombra.  
Este objeto contiene la siguiente información:    
`maxOutboundSyncUpdatesPerSecond`  
(Opcional) El número máximo de solicitudes de sincronización por segundo que transmite el dispositivo.   
Predeterminado: 100 requests/second  
`maxTotalLocalRequestsRate`  
(Opcional) El número máximo de solicitudes de IPC locales por segundo que se envían al dispositivo principal.   
Predeterminado: 200 requests/second  
`maxLocalRequestsPerSecondPerThing`  
(Opcional) La cantidad máxima de solicitudes de IPC locales por segundo que se envían para cada objeto IoT conectado.   
Predeterminado: 20 requests/second para cada cosa
Estos parámetros de límites de tasa definen el número máximo de solicitudes por segundo para el servicio de sombra local. El número máximo de solicitudes por segundo para el servicio AWS IoT Device Shadow depende de tu Región de AWS. Para obtener más información, consulte los límites de la [API del servicio de sombra de dispositivo AWS IoT](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) en la *Referencia general de Amazon Web Services*.

`shadowDocumentSizeLimitBytes`  <a name="shadow-manager-component-configuration-shadow-document-size-limit-bytes"></a>
(Opcional) El tamaño máximo permitido de cada documento de estado JSON para las sombras locales.   
Si aumenta este valor debe incrementar también el límite de recursos del documento de estado JSON para sombras en la nube. Para obtener más información, consulte los límites de la [API del servicio de sombra de dispositivo AWS IoT](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) en la *Referencia general de Amazon Web Services*.  
Valor predeterminado: 8192 bytes  
Valor máximo: 30 720 bytes

**Example Ejemplo: actualización de la combinación de configuraciones**  
En el siguiente ejemplo, se muestra un ejemplo de actualización de la combinación de configuraciones con todos los parámetros de configuración disponibles para el componente administrador 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) La estrategia que utiliza este componente para sincronizar las sombras entre el dispositivo principal AWS IoT Core y el dispositivo principal.  
Este objeto contiene la siguiente información:    
`type`  
(Opcional) El tipo de estrategia que utiliza este componente para sincronizar las sombras entre AWS IoT Core y el dispositivo principal. Puede elegir entre las siguientes opciones:  
+ `realTime`— Sincronice las sombras AWS IoT Core cada vez que se produzca una actualización de sombras.
+ `periodic`— Sincronice las sombras con AWS IoT Core un intervalo regular que especifique con el parámetro `delay` de configuración.
Valor predeterminado: `realTime`  
`delay`  
(Opcional) El intervalo en segundos en el que este componente sincroniza las sombras con AWS IoT Core, al especificar la estrategia de sincronización `periodic`.  
Este parámetro es necesario si no se especifica estrategia de sincronización `periodic`.

`synchronize`  <a name="shadow-manager-component-configuration-synchronize"></a>
<a name="shadow-manager-component-configuration-strategy-description"></a>(Opcional) Los ajustes de sincronización que determinan cómo se sincronizan las sombras con la Nube de AWS.   
Debe crear una actualización de configuración con esta propiedad para sincronizar las sombras con la Nube de AWS.
Este objeto contiene la siguiente información:    
`coreThing`  <a name="shadow-manager-component-configuration-synchronize-core-thing"></a>
(Opcional) Las sombras de dispositivo principal se van a sincronizar. Este objeto contiene la siguiente información:    
`classic`  
(Opcional) De forma predeterminada, el administrador de sombras sincroniza el estado local de la sombra clásica de su dispositivo principal con la Nube de AWS. Si no desea sincronizar la sombra de dispositivo clásica, configúrela en `false`.  
Valor predeterminado: `true`  
`namedShadows`  
(Opcional) La lista de sombras de dispositivo principales con nombre que se van a sincronizar. Debe especificar los nombres exactos de las sombras.  
El AWS IoT Greengrass servicio usa la sombra `AWSManagedGreengrassV2Deployment` denominada para administrar las implementaciones dirigidas a dispositivos principales individuales. Esta sombra con nombre está reservada para que la utilice el AWS IoT Greengrass servicio. No actualice ni elimine esta sombra con nombre.  
`shadowDocumentsMap`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents-map"></a>
(Opcional) Las sombras de dispositivo adicionales que se van a sincronizar. El uso de este parámetro de configuración facilita la especificación de documentos de sombras. Le recomendamos que utilice este parámetro en lugar del objeto `shadowDocuments`.  
Si especifica un objeto `shadowDocumentsMap`, no debe especificar `shadowDocuments`.
Cada objeto contiene la siguiente información:    
{{`thingName`}}  
La configuración de sombras {{thingName}} para esta configuración de sombras.    
`classic`  
(Opcional) Si no desea sincronizar la sombra de dispositivo clásico con el dispositivo `thingName`, configúrela en `false`.  
`namedShadows`  
La lista de sombras con nombre que desea sincronizar. Debe especificar los nombres exactos de las sombras.  
`shadowDocuments`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents"></a>
(Opcional) La lista de sombras de dispositivo adicionales que se van a sincronizar. Le recomendamos que utilice el parámetro `shadowDocumentsMap` en su lugar.  
Si especifica un objeto `shadowDocuments`, no debe especificar `shadowDocumentsMap`.
Cada objeto en la lista contiene la siguiente información.     
`thingName`  
Nombre del objeto del dispositivo para el que se sincronizan las sombras.   
`classic`  
(Opcional) Si no desea sincronizar la sombra de dispositivo clásico con el dispositivo `thingName`, configúrela en `false`.  
Valor predeterminado: `true`  
`namedShadows`  
(Opcional) La lista de sombras de dispositivo con nombre que desea sincronizar. Debe especificar los nombres exactos de las sombras.

`rateLimits`  <a name="shadow-manager-component-configuration-rate-limits"></a>
(Opcional) La configuración que determina los límites de tasa para las solicitudes de servicios de sombra.  
Este objeto contiene la siguiente información:    
`maxOutboundSyncUpdatesPerSecond`  
(Opcional) El número máximo de solicitudes de sincronización por segundo que transmite el dispositivo.   
Predeterminado: 100 requests/second  
`maxTotalLocalRequestsRate`  
(Opcional) El número máximo de solicitudes de IPC locales por segundo que se envían al dispositivo principal.   
Predeterminado: 200 requests/second  
`maxLocalRequestsPerSecondPerThing`  
(Opcional) La cantidad máxima de solicitudes de IPC locales por segundo que se envían para cada objeto IoT conectado.   
Predeterminado: 20 requests/second para cada cosa
Estos parámetros de límites de tasa definen el número máximo de solicitudes por segundo para el servicio de sombra local. El número máximo de solicitudes por segundo para el servicio AWS IoT Device Shadow depende de tu Región de AWS. Para obtener más información, consulte los límites de la [API del servicio de sombra de dispositivo AWS IoT](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) en la *Referencia general de Amazon Web Services*.

`shadowDocumentSizeLimitBytes`  <a name="shadow-manager-component-configuration-shadow-document-size-limit-bytes"></a>
(Opcional) El tamaño máximo permitido de cada documento de estado JSON para las sombras locales.   
Si aumenta este valor debe incrementar también el límite de recursos del documento de estado JSON para sombras en la nube. Para obtener más información, consulte los límites de la [API del servicio de sombra de dispositivo AWS IoT](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) en la *Referencia general de Amazon Web Services*.  
Valor predeterminado: 8192 bytes  
Valor máximo: 30 720 bytes

**Example Ejemplo: actualización de la combinación de configuraciones**  
En el siguiente ejemplo, se muestra un ejemplo de actualización de la combinación de configuraciones con todos los parámetros de configuración disponibles para el componente administrador 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) Los ajustes de sincronización que determinan cómo se sincronizan las sombras con la Nube de AWS.   
Debe crear una actualización de configuración con esta propiedad para sincronizar las sombras con la Nube de AWS.
Este objeto contiene la siguiente información:    
`coreThing`  <a name="shadow-manager-component-configuration-synchronize-core-thing"></a>
(Opcional) Las sombras de dispositivo principal se van a sincronizar. Este objeto contiene la siguiente información:    
`classic`  
(Opcional) De forma predeterminada, el administrador de sombras sincroniza el estado local de la sombra clásica de su dispositivo principal con la Nube de AWS. Si no desea sincronizar la sombra de dispositivo clásica, configúrela en `false`.  
Valor predeterminado: `true`  
`namedShadows`  
(Opcional) La lista de sombras de dispositivo principales con nombre que se van a sincronizar. Debe especificar los nombres exactos de las sombras.  
El AWS IoT Greengrass servicio usa el `AWSManagedGreengrassV2Deployment` nombre shadow para administrar las implementaciones dirigidas a dispositivos principales individuales. Esta sombra con nombre está reservada para que la utilice el AWS IoT Greengrass servicio. No actualice ni elimine esta sombra con nombre.  
`shadowDocumentsMap`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents-map"></a>
(Opcional) Las sombras de dispositivo adicionales que se van a sincronizar. El uso de este parámetro de configuración facilita la especificación de documentos de sombras. Le recomendamos que utilice este parámetro en lugar del objeto `shadowDocuments`.  
Si especifica un objeto `shadowDocumentsMap`, no debe especificar `shadowDocuments`.
Cada objeto contiene la siguiente información:    
{{`thingName`}}  
La configuración de sombras {{thingName}} para esta configuración de sombras.    
`classic`  
(Opcional) Si no desea sincronizar la sombra de dispositivo clásico con el dispositivo `thingName`, configúrela en `false`.  
`namedShadows`  
La lista de sombras con nombre que desea sincronizar. Debe especificar los nombres exactos de las sombras.  
`shadowDocuments`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents"></a>
(Opcional) La lista de sombras de dispositivo adicionales que se van a sincronizar. Le recomendamos que utilice el parámetro `shadowDocumentsMap` en su lugar.  
Si especifica un objeto `shadowDocuments`, no debe especificar `shadowDocumentsMap`.
Cada objeto en la lista contiene la siguiente información.     
`thingName`  
Nombre del objeto del dispositivo para el que se sincronizan las sombras.   
`classic`  
(Opcional) Si no desea sincronizar la sombra de dispositivo clásico con el dispositivo `thingName`, configúrela en `false`.  
Valor predeterminado: `true`  
`namedShadows`  
(Opcional) La lista de sombras de dispositivo con nombre que desea sincronizar. Debe especificar los nombres exactos de las sombras.

`rateLimits`  <a name="shadow-manager-component-configuration-rate-limits"></a>
(Opcional) La configuración que determina los límites de tasa para las solicitudes de servicios de sombra.  
Este objeto contiene la siguiente información:    
`maxOutboundSyncUpdatesPerSecond`  
(Opcional) El número máximo de solicitudes de sincronización por segundo que transmite el dispositivo.   
Predeterminado: 100 requests/second  
`maxTotalLocalRequestsRate`  
(Opcional) El número máximo de solicitudes de IPC locales por segundo que se envían al dispositivo principal.   
Predeterminado: 200 requests/second  
`maxLocalRequestsPerSecondPerThing`  
(Opcional) La cantidad máxima de solicitudes de IPC locales por segundo que se envían para cada objeto IoT conectado.   
Predeterminado: 20 requests/second para cada cosa
Estos parámetros de límites de tasa definen el número máximo de solicitudes por segundo para el servicio de sombra local. El número máximo de solicitudes por segundo para el servicio AWS IoT Device Shadow depende de tu Región de AWS. Para obtener más información, consulte los límites de la [API del servicio de sombra de dispositivo AWS IoT](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) en la *Referencia general de Amazon Web Services*.

`shadowDocumentSizeLimitBytes`  <a name="shadow-manager-component-configuration-shadow-document-size-limit-bytes"></a>
(Opcional) El tamaño máximo permitido de cada documento de estado JSON para las sombras locales.   
Si aumenta este valor debe incrementar también el límite de recursos del documento de estado JSON para sombras en la nube. Para obtener más información, consulte los límites de la [API del servicio de sombra de dispositivo AWS IoT](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) en la *Referencia general de Amazon Web Services*.  
Valor predeterminado: 8192 bytes  
Valor máximo: 30 720 bytes

**Example Ejemplo: actualización de la combinación de configuraciones**  
En el siguiente ejemplo, se muestra un ejemplo de actualización de la combinación de configuraciones con todos los parámetros de configuración disponibles para el componente administrador 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
}
```

------

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

Este componente utiliza el mismo archivo de registro que el componente [núcleo de Greengrass](greengrass-nucleus-component.md).

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

```
{{/greengrass/v2}}/logs/greengrass.log
```

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

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

------

**Visualización de los registros de este componente**
+ Ejecute el siguiente comando en el dispositivo de núcleo para ver el archivo de registro de este componente en tiempo real. Sustituya `{{/greengrass/v2}}` o {{C:\\greengrass\\v2}} por la ruta a la carpeta AWS IoT Greengrass raíz.

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

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

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

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

------

## Registros de cambios
<a name="shadow-manager-component-changelog"></a>

En la siguiente tabla, se describen los cambios en cada versión del componente.


|  Versión  |  Cambios  | 
| --- | --- | 
| 2.3.15 | **Mejoras y correcciones de errores**<br />   Soluciona un problema por el que el administrador de sombras podía dejar de funcionar después de que un corte de energía dañara su base de datos local.   Valida la integridad de la base de datos local al inicio y vuelve a crear la base de datos cuando detecta daños.    | 
| 2.3.14 | Actualiza la versión del componente para la versión 2.17.0 de Greengrass nucleus. | 
| 2.3.13 | **Mejoras y correcciones de errores**<br />   Soluciona un problema que provocaba que las actualizaciones instantáneas locales no se sincronizaran con la nube de forma intermitente, incluso cuando la configuración de la dirección de sincronización lo permitía.   Pequeñas correcciones de errores y mejoras.    | 
| 2.3.12 | **Mejoras y correcciones de errores**<br />   Soluciona un problema por el que las implementaciones se bloqueaban cuando se configuraban más de 1024 sombras de dispositivos.    | 
| 2.3.11 | Versión actualizada para la versión 2.15.0 de Greengrass nucleus. | 
| 2.3.10 | Versión actualizada para la versión 2.14.0 de Greengrass nucleus. | 
| 2.3.9 | Versión actualizada para el lanzamiento de la versión 2.13.0 del núcleo de Greengrass. | 
| 2.3.8 | **Mejoras y correcciones de errores**<br />   Soluciona un problema que provocaba que el administrador de sombras creara una situación de bloqueo durante la conexión del cliente MQTT.    | 
| 2.3.7 | **Mejoras y correcciones de errores**<br />   Soluciona un problema por el que el administrador de sombras registraba periódicamente un error `NullPointerException` durante la sincronización del administrador de sombras.    | 
| 2.3.6 | **Mejoras y correcciones de errores**<br />   Corrige un problema por el que las propiedades de sombra que se eliminan mediante las actualizaciones de Nube de AWS mientras el dispositivo no está en línea siguen existiendo en la sombra local tras recuperar la conectividad.    | 
| 2.3.5 | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
| 2.3.4 |  <a name="changelog-shadow-manager-2.3.4"></a>**Mejoras y correcciones de errores**<br />   Suma compatibilidad con documentos de estado de sombra nulos y vacíos.     | 
| 2.3.3 | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
| 2.3.2 | **Mejoras y correcciones de errores**<br />   Soluciona un problema por el que el administrador de sombras entra en estado `BROKEN` cuando la base de datos de sombra local está dañada.   Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass.    | 
| 2.3.1 | **Mejoras y correcciones de errores**<br />   Soluciona una condición que podía impedir que las actualizaciones de sombra en la nube se sincronizaran.   Soluciona un problema por el que los cambios en la configuración de sincronización de sombras con nombre se aplicaban solo a una sombra con nombre.    | 
| 2.3.0 | **Mejoras y correcciones de errores**<br />   Soluciona un problema que podía impedir que las sombras se sincronizaran cuando la clave privada del dispositivo de Greengrass estaba almacenada en un módulo de seguridad de hardware.    | 
| 2.2.4 | **Mejoras y correcciones de errores**<br />   Soluciona un problema por el que la validación del tamaño de la sombra no era coherente con el de la nube al actualizar el documento de sombra local.   Soluciona un problema por el que el administrador de sombras deja de escuchar las actualizaciones de la configuración si una implementación realiza un `RESET` en los nodos de configuración.    | 
| 2.2.3 | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
| 2.2.2 | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
| 2.2.1 | Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass. | 
| 2.2.0 |  <a name="changelog-shadow-manager-2.2.0"></a>**Nuevas características**<br />   Añade soporte para el servicio virtual local a través de la publish/subscribe interfaz local. Ahora puede comunicarse con el intermediario de publish/subscribe mensajes local sobre [ temas relacionados con MQTT oculto ](https://docs.aws.amazon.com/iot/latest/developerguide/reserved-topics.html#reserved-topics-shadow) para obtener, actualizar y eliminar las sombras del dispositivo principal. Esta función le permite conectar los dispositivos cliente al servicio virtual local mediante el puente MQTT para retransmitir mensajes sobre temas ocultos entre los dispositivos cliente y la interfaz local publish/subscribe. <br />Esta característica requiere la versión 2.6.0 o posterior del [componente núcleo de Greengrass](greengrass-nucleus-component.md). Para conectar los dispositivos de cliente al servicio de sombra local, también debe utilizar la versión 2.2.0 o posterior del [componente puente MQTT](mqtt-bridge-component.md).   Agrega la opción `direction` que puede configurar para personalizar la dirección de sincronización de las sombras entre el servicio de sombra local y la Nube de AWS. Puede configurar esta opción para reducir el ancho de banda y las conexiones a la Nube de AWS.     | 
| 2.1.1 |  **Mejoras y correcciones de errores**<br />   Soluciona un problema por el que la profundidad máxima en las secciones `desired` y `reported` del documento de estado de sombra de dispositivo JSON era de 4 niveles en lugar de 5 niveles.   Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.     | 
| 2.1.0 |  **Nuevas características**<br />   Agrega compatibilidad con intervalos periódicos de sincronización paralela, de modo que puede configurar el dispositivo principal para reducir el uso de ancho de banda y los cargos.     | 
| 2.0.6 | Esta versión contiene correcciones de errores y mejoras. | 
| 2.0.5 | Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass. | 
| 2.0.4 |  **Mejoras y correcciones de errores**<br />   Soluciona un problema que provocaba que el administrador de sombras eliminara las versiones recién creadas de cualquier sombra que se hubiera eliminado anteriormente.    Actualiza la operación de IPC `DeleteThingShadow` para incrementar la versión de sombra cuando se invoca.     | 
| 2.0.3 | Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass. | 
| 2.0.2 |  **Mejoras y correcciones de errores**<br />   Se ha corregido un error que provocaba que el administrador de sombras no reconociera la propiedad `delta` al sincronizar los estados de sombra desde AWS IoT Core.   Se ha corregido un problema que a veces provocaba que las solicitudes de sincronización de una sombra se combinaran de forma incorrecta.      | 
| 2.0.1 | Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass. | 
| 2.0.0 | Versión inicial. | 