

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.

# Componentes proporcionados por AWS
<a name="public-components"></a>

AWS IoT Greengrass proporciona y mantiene componentes prediseñados que puede implementa en sus dispositivos. Estos componentes incluyen características (como el administrador de flujos), conectores de AWS IoT Greengrass V1 (como las métricas de CloudWatch) y herramientas de desarrollo local (como la CLI de AWS IoT Greengrass). Puede [implementar estos componentes](manage-deployments.md) en sus dispositivos para que funcionen de forma independiente, o puede usarlos como dependencias en sus [componentes personalizados de Greengrass](develop-greengrass-components.md).

**nota**  <a name="component-nucleus-dependency-update-note"></a>
Varios de los componentes proporcionados por AWS dependen de versiones secundarias específicas del núcleo de Greengrass. Debido a esta dependencia, es necesario actualizar estos componentes al actualizar el núcleo de Greengrass a una nueva versión secundaria. Para obtener información sobre las versiones específicas del núcleo de las que depende cada componente, consulte el tema del componente correspondiente. Para más información sobre la actualización del núcleo, consulte [Actualización del software AWS IoT Greengrass Core (OTA)](update-greengrass-core-v2.md).

<a name="component-table-type-description"></a>Cuando un componente tiene un tipo de componente genérico y de Lambda, la versión actual del componente es del tipo genérico y la versión anterior del componente es del tipo de Lambda.


| Componente | Descripción | [Tipo de componente](develop-greengrass-components.md#component-types) | Sistema operativo admitido | [Código abierto](open-source.md) | Compatible con la versión lite del núcleo | 
| --- | --- | --- | --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | El núcleo del software AWS IoT Greengrass Core. Utilice este componente para configurar y actualizar el software de sus dispositivos principales. | Núcleo | Linux, Windows | [Sí](https://github.com/aws-greengrass/aws-greengrass-nucleus) | No | 
| [Versión lite del núcleo de Greengrass](greengrass-nucleus-lite-component.md) | Un núcleo ligero para dispositivos con recursos limitados, optimizado para dispositivos de periferia de bajo costo y aplicaciones de gran volumen | NucleusLite | Linux | [Sí](https://github.com/aws-greengrass/aws-greengrass-lite) | No | 
| <a name="client-device-auth-component-table-row"></a>[Autenticación del dispositivo de cliente](client-device-auth-component.md) | Habilita los dispositivos IoT locales, denominados dispositivos de cliente, a conectarse al dispositivo principal. | Complemento | Linux, Windows | [Sí](https://github.com/aws-greengrass/aws-greengrass-client-device-auth) | No | 
| [CloudWatch métricas](cloudwatch-metrics-component.md) | Publica métricas personalizadas en Amazon CloudWatch. | Genérico, Lambda | Linux, Windows | [Sí](https://github.com/aws-greengrass/aws-greengrass-cloudwatch-metrics) | Sí | 
| [AWS IoT Device Defender](device-defender-component.md) | Notifica a los administradores de los cambios en el estado de un dispositivo principal de Greengrass para identificar comportamientos inusuales. | Genérico, Lambda | Linux, Windows | [Sí](https://github.com/aws-greengrass/aws-greengrass-device-defender) | No | 
| [Spooler de disco](disk-spooler-component.md) | Habilita una opción de almacenamiento persistente para los mensajes enviados desde los dispositivos principales de Greengrass a AWS IoT Core. Este componente almacenará estos mensajes salientes en el disco. | Complemento | Linux, Windows | [Sí](https://github.com/aws-greengrass/aws-greengrass-disk-spooler) | No | 
| [Administrador de aplicaciones de Docker](docker-application-manager-component.md) | Permite a AWS IoT Greengrass descargar imágenes de Docker desde Docker Hub y Amazon Elastic Container Registry (Amazon ECR). | Genérico | Linux, Windows | No | No | 
| [Conector periférico para Kinesis Video Streams](kvs-edge-connector-component.md) | Lee las transmisiones de video de las cámaras locales, publica los flujos en Kinesis Video Streams y los muestra en los paneles de Grafana con TwinMaker AWS IoT. | Genérico | Linux | No | No | 
| [CLI de Greengrass](greengrass-cli-component.md) | Proporciona una interfaz de línea de comandos que puede usar para crear implementaciones locales e interactuar con el dispositivo principal de Greengrass y sus componentes. | Complemento | Linux, Windows | [Sí](https://github.com/aws-greengrass/aws-greengrass-cli) | [No](https://github.com/aws-greengrass/aws-greengrass-lite/blob/main/docs/ggl-cli.md) | 
| <a name="ip-detector-component-table-row"></a>[Detector de IP](ip-detector-component.md) | Envía la información de conectividad del agente MQTT a AWS IoT Greengrass, para que los dispositivos de cliente puedan descubrir cómo conectarse. | Complemento | Linux, Windows | [Sí](https://github.com/aws-greengrass/aws-greengrass-ip-detector) | No | 
| [Firehose](kinesis-firehose-component.md) | Publica datos a través de los flujos de entrega de Amazon Data Firehose a los destinos de la Nube de AWS. | Lambda | Linux | No | No | 
| [Lanzador de Lambda](lambda-launcher-component.md) | Maneja los procesos y la configuración del entorno para las funciones de Lambda. | Genérico | Linux | No | No | 
| [Administrador de Lambda](lambda-manager-component.md) | Maneja la comunicación y el escalado entre procesos para las funciones de Lambda. | Complemento | Linux | No | No | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | Ofrece artefactos para cada tiempo de ejecución de Lambda. | Genérico | Linux | No | No | 
| [Enrutador de suscripción antigua](legacy-subscription-router-component.md) | Administra las suscripciones para las funciones de Lambda que se ejecutan en AWS IoT Greengrass V1. | Genérico | Linux | No | No | 
| [Consola de depuración local](local-debug-console-component.md) | Proporciona una consola local que puede usar para depurar y administrar el dispositivo principal de Greengrass y sus componentes. | Complemento | Linux, Windows | [Sí](https://github.com/aws-greengrass/aws-greengrass-localdebugconsole) | No | 
| [Administrador de registros](log-manager-component.md) | Recopila y carga los registros en el dispositivo principal de Greengrass. | Complemento | Linux, Windows | [Sí](https://github.com/aws-greengrass/aws-greengrass-log-manager) | No | 
| [Componentes de machine learning](machine-learning-components.md) | Proporciona modelos de machine learning y código de inferencia de muestra que puede usar para realizar inferencias de machine learning en los dispositivos principales de Greengrass. | Consulte [Componentes de machine learning](machine-learning-components.md). | No | 
| [Adaptador de protocolo Modbus-RTU](modbus-rtu-protocol-adapter-component.md) | Extrae información de dispositivos Modbus RTU locales. | Lambda | Linux | No | No | 
| [Emisor de telemetría del núcleo](nucleus-emitter-component.md) | Publica los datos de telemetría del estado del sistema recopilados desde el núcleo hasta un tema local o un tema de MQTT AWS IoT Core. | Complemento | Linux, Windows | [Sí](https://github.com/aws-greengrass/aws-greengrass-telemetry-nucleus-emitter) | No | 
| <a name="mqtt-bridge-component-table-row"></a>[Puente MQTT](mqtt-bridge-component.md) | Retransmite mensajes MQTT entre los dispositivos cliente, los de publicación/suscripción local de AWS IoT Greengrass e AWS IoT Core. | Complemento | Linux, Windows | [Sí](https://github.com/aws-greengrass/aws-greengrass-mqtt-bridge) | No | 
| <a name="mqtt-broker-moquette-component-table-row"></a>[Agente MQTT 3.1.1 (Moquette)](mqtt-broker-moquette-component.md) | Ejecuta un agente MQTT 3.1.1 que administra los mensajes entre los dispositivos de cliente y el dispositivo principal. | Complemento | Linux, Windows | [Sí](https://github.com/aws-greengrass/aws-greengrass-moquette-mqtt) | No | 
| <a name="mqtt-broker-emqx-component-table-row"></a>[Agente MQTT 5 (EMQX)](mqtt-broker-emqx-component.md) | Ejecuta un agente MQTT 5 que administra los mensajes entre los dispositivos de cliente y el dispositivo principal. | Genérico | Linux, Windows | No | No | 
| [Proveedor PKCS\$111](pkcs11-provider-component.md) | Permite que los componentes de Greengrass accedan a una clave privada y un certificado que se almacenan de forma segura en un módulo de seguridad de hardware (HSM). | Complemento | Linux | [Sí](https://github.com/aws-greengrass/aws-greengrass-pkcs11-provider) | No | 
| [Administrador de secretos](secret-manager-component.md) | Implementa secretos a partir de secretos de AWS Secrets Manager para que pueda utilizar de forma segura las credenciales, como las contraseñas, en componentes personalizados del dispositivo principal de Greengrass. | Complemento | Linux, Windows | [Sí](https://github.com/aws-greengrass/aws-greengrass-secret-manager) | No | 
| [Tunelización segura](secure-tunneling-component.md) | Permite conexiones de tunelización AWS IoT seguras que puede utilizar para establecer comunicaciones bidireccionales con los dispositivos principales de Greengrass que se encuentran detrás de firewalls restringidos. | Genérico | Linux | No | Sí | 
| <a name="shadow-manager-component-table-row"></a>[Administrador de sombras](shadow-manager-component.md) | Permite la interacción con las sombras del dispositivo principal. Administra el almacenamiento de documentos de sombra y también la sincronización de los estados de sombras locales con el servicio de sombra de dispositivo de AWS IoT. | Complemento | Linux, Windows | [Sí](https://github.com/aws-greengrass/aws-greengrass-shadow-manager) | No | 
| [Amazon SNS](sns-component.md) | Publica mensajes en un tema de Amazon SNS. | Lambda | Linux | No | No | 
| [Administrador de flujos](stream-manager-component.md) | Transmite grandes volúmenes de datos de orígenes locales a la Nube de AWS. | Genérico | Linux, Windows | No | Sí | 
| [Reenviador de registros del sistema](system-log-forwarder-component.md) | Cargue los registros de systemd-journald a la Nube de AWS. | Genérico | Linux | [Sí](https://github.com/aws-greengrass/aws-greengrass-system-log-forwarder) | Sí | 
| [Agente de Systems Manager](systems-manager-agent-component.md) | Administre los dispositivos principales con AWS Systems Manager, lo que le permite parchear dispositivos, ejecutar comandos y más. | Genérico | Linux | [Sí](https://github.com/aws/amazon-ssm-agent/blob/mainline/packaging/greengrass/component.json) | No | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | Proporciona credenciales de AWS que puede usar para interactuar con los servicios de AWS. | Genérico | Linux, Windows | No | No | 
| [Colector IoT SiteWise OPC UA](iotsitewise-opcua-collector-component.md) | Recopila datos de los servidores OPC-UA. | Genérico | Linux, Windows | No | No | 
| [Simulador de fuente de datos IoT SiteWise OPC UA](iotsitewise-opcua-data-source-simulator-component.md) | Ejecuta un servidor OPC-UA local que genera datos de muestra. | Genérico | Linux, Windows | No | No | 
| [SiteWise Publicador de IoT](iotsitewise-publisher-component.md) | Publica datos en la nube de AWS. | Genérico | Linux, Windows | No | No | 
| [SiteWise Procesador IoT](iotsitewise-processor-component.md) | Procesa los datos de los dispositivos principales de Greengrass. | Genérico | Linux, Windows | No | No | 

# Núcleo de Greengrass
<a name="greengrass-nucleus-component"></a>

El componente núcleo de Greengrass (`aws.greengrass.Nucleus`) es un componente obligatorio y el requisito mínimo para ejecutar el software AWS IoT Greengrass Core en un dispositivo. Puede configurar este componente para personalizar y actualizar el software AWS IoT Greengrass Core de forma remota. Implemente este componente para configurar ajustes como el proxy, la función del dispositivo y la configuración de las AWS IoT cosas en sus dispositivos principales.

**nota**  
Desde la versión 2.14.0 de Greengrass, estará disponible una versión optimizada del tiempo de ejecución del dispositivo del núcleo para el uso de memoria de los dispositivos de periferia restringidos. Consulte la [versión lite del núcleo de Greengrass](https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html) para obtener más información sobre su configuración y uso.

**importante**  
Cuando la versión del componente núcleo cambia, o cuando cambias determinados parámetros de configuración, el software AWS IoT Greengrass Core, que incluye el núcleo y todos los demás componentes del dispositivo, se reinicia para aplicar los cambios.   
<a name="component-patch-update"></a>Al implementar un componente, AWS IoT Greengrass instala las últimas versiones compatibles de todas las dependencias de ese componente. Por este motivo, es posible que las nuevas versiones con parches de los componentes públicos AWS proporcionados se implementen automáticamente en sus dispositivos principales si agrega nuevos dispositivos a un grupo de cosas o si actualiza la implementación destinada a esos dispositivos. Algunas actualizaciones automáticas, como las actualizaciones de núcleo, pueden provocar que los dispositivos se reinicien de forma inesperada.   
<a name="component-version-pinning"></a>Para evitar actualizaciones no deseadas de un componente que se ejecuta en su dispositivo, recomendamos que incluya directamente la versión que prefiera de ese componente cuando [cree una implementación](create-deployments.md). Para obtener más información sobre el comportamiento de actualización AWS IoT Greengrass del software principal, consulte[Actualización del software AWS IoT Greengrass Core (OTA)](update-greengrass-core-v2.md).

**Topics**
+ [Versiones](#greengrass-nucleus-component-versions)
+ [Requisitos de los dispositivos](#greengrass-v2-requirements)
+ [Plataformas admitidas](#greengrass-v2-supported-platforms)
+ [Sistema operativo](#greengrass-nucleus-component-os-support)
+ [Requisitos](#greengrass-nucleus-component-requirements)
+ [Dependencias](#greengrass-nucleus-component-dependencies)
+ [Descarga e instalación](#greengrass-nucleus-component-install)
+ [Configuración](#greengrass-nucleus-component-configuration)
+ [Archivo de registro local](#greengrass-nucleus-component-log-file)
+ [Registros de cambios](#greengrass-nucleus-component-changelog)

## Versiones
<a name="greengrass-nucleus-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.16.x
+ 2.15.x
+ 2.14.x
+ 2.13.x
+ 2.12.x
+ 2.11.x
+ 2.10.x
+ 2.9.x
+ 2.8.x
+ 2.7.x
+ 2.6.x
+ 2.5.x
+ 2.4.x
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Requisitos de los dispositivos
<a name="greengrass-v2-requirements"></a>

**nota**  
Puede utilizar AWS IoT Device Tester for AWS IoT Greengrass para comprobar que su dispositivo puede ejecutar el software AWS IoT Greengrass principal y comunicarse con el. Nube de AWS Para obtener más información, consulte [Uso de AWS IoT Device Tester para la versión 2 de AWS IoT Greengrass](device-tester-for-greengrass-ug.md).

------
#### [ Linux ]
+ <a name="requirement-supported-region"></a>El uso de un [Región de AWS](https://en.wikipedia.org/wiki/Amazon_Web_Services#Availability_and_topology)que admita AWS IoT Greengrass V2. Para ver una lista completa de las regiones compatibles, consulte [AWS IoT Greengrass V2 endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/greengrassv2.html) en la *Referencia general de AWS*.
+ Un mínimo de 256 MB de espacio en disco disponible para el software AWS IoT Greengrass Core. Este requisito no incluye los componentes implementados en el dispositivo principal.
+ Se asigna un mínimo de 96 MB de RAM al software AWS IoT Greengrass principal. Este requisito no incluye los componentes implementados en el dispositivo principal. Para obtener más información, consulte [Control de la asignación de memoria con las opciones de JVM](configure-greengrass-core-v2.md#jvm-tuning).
+ Entorno de ejecución de Java (JRE) versión 8 o posterior. Java debe estar disponible en la variable de entorno [PATH](https://en.wikipedia.org/wiki/PATH_(variable)) en el dispositivo. Para utilizar Java para desarrollar componentes personalizados, debe instalar un kit de desarrollo de Java (JDK). Le recomendamos que utilice las versiones de compatibilidad a largo plazo de [Amazon Corretto](https://aws.amazon.com/corretto/) u [OpenJDK](https://openjdk.java.net/). Se requiere la versión 8 o posterior.
+ [Biblioteca C de GNU](https://www.gnu.org/software/libc/) (glibc) versión 2.25 o posterior.
+ Debe ejecutar el software AWS IoT Greengrass Core como usuario root. Por ejemplo, utilice `sudo`.
+ El usuario root que ejecuta el software AWS IoT Greengrass principal, por ejemplo`root`, debe tener permiso para ejecutar `sudo` con cualquier usuario y grupo. El archivo `/etc/sudoers` debe conceder permiso a este usuario para que se ejecute `sudo` como otros grupos. El permiso para el usuario en `/etc/sudoers` debería verse como el siguiente ejemplo.

  ```
  root    ALL=(ALL:ALL) ALL
  ```
+ El dispositivo principal debe poder realizar solicitudes salientes a un conjunto de puntos de conexión y puertos. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).
+ El directorio `/tmp` debe montarse con permisos `exec`.
+ Todos los siguientes intérprete de comandos:
  + `ps -ax -o pid,ppid`
  + `sudo`
  + `sh`
  + `kill`
  + `cp`
  + `chmod`
  + `rm`
  + `ln`
  + `echo`
  + `exit`
  + `id`
  + `uname`
  + `grep`
+ Es posible que su dispositivo también requiera los siguientes intérprete de comandos opcionales:
  + (Opcional)`systemctl`. Este comando se utiliza para configurar el software AWS IoT Greengrass Core como un servicio del sistema.
  + (Opcional) `useradd`, `groupadd` y `usermod`. Estos comandos se utilizan para configurar el usuario `ggc_user` y el grupo `ggc_group` del sistema.
  + (Opcional)`mkfifo`. Este comando se utiliza para ejecutar funciones de Lambda como componentes.
+ Para configurar los límites de recursos del sistema para los procesos de los componentes, el dispositivo debe ejecutar la versión 2.6.24 o posterior del kernel de Linux.
+ Para ejecutar las funciones de Lambda, el dispositivo debe cumplir requisitos adicionales. Para obtener más información, consulte [Requisitos de la función de Lambda](setting-up.md#greengrass-v2-lambda-requirements).

------
#### [ Windows ]
+ <a name="requirement-supported-region"></a>El uso de una [Región de AWS](https://en.wikipedia.org/wiki/Amazon_Web_Services#Availability_and_topology)que soporte AWS IoT Greengrass V2. Para ver una lista completa de las regiones compatibles, consulte [AWS IoT Greengrass V2 endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/greengrassv2.html) en la *Referencia general de AWS*.
+ Un mínimo de 256 MB de espacio en disco disponible para el software AWS IoT Greengrass Core. Este requisito no incluye los componentes implementados en el dispositivo principal.
+ Se asigna un mínimo de 160 MB de RAM al software AWS IoT Greengrass principal. Este requisito no incluye los componentes implementados en el dispositivo principal. Para obtener más información, consulte [Control de la asignación de memoria con las opciones de JVM](configure-greengrass-core-v2.md#jvm-tuning).
+ Entorno de ejecución de Java (JRE) versión 8 o posterior. Java debe estar disponible en la variable de entorno [PATH](https://en.wikipedia.org/wiki/PATH_(variable)) en el dispositivo. Para utilizar Java para desarrollar componentes personalizados, debe instalar un kit de desarrollo de Java (JDK). Le recomendamos que utilice las versiones de compatibilidad a largo plazo de [Amazon Corretto](https://aws.amazon.com/corretto/) u [OpenJDK](https://openjdk.java.net/). Se requiere la versión 8 o posterior. 
**nota**  
Para utilizar la versión 2.5.0 del [núcleo de Greengrass](#greengrass-nucleus-component), debe utilizar una versión de 64 bits del Entorno de ejecución de Java (JRE). La versión 2.5.1 del núcleo de Greengrass admite 32 y 64 bits. JREs
+ El usuario que instala el software AWS IoT Greengrass Core debe ser administrador.
+ Debe instalar el software AWS IoT Greengrass Core como un servicio del sistema. Especifique `--setup-system-service true` cuándo va a instalar el software.
+ Cada usuario que ejecute los procesos componentes debe existir en la LocalSystem cuenta y el nombre y la contraseña del usuario deben estar en la instancia de Credential Manager de la LocalSystem cuenta. Puede configurar este usuario siguiendo las instrucciones para [instalar el software AWS IoT Greengrass principal](install-greengrass-core-v2.md).
+ El dispositivo principal debe poder realizar solicitudes salientes a un conjunto de puntos de conexión y puertos. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).

------

## Plataformas admitidas
<a name="greengrass-v2-supported-platforms"></a>

AWS IoT Greengrass oficialmente es compatible con dispositivos que ejecutan las siguientes plataformas. Es posible que los dispositivos con plataformas no incluidas en esta lista funcionen, pero AWS IoT Greengrass las pruebas solo se realizan en estas plataformas especificadas.

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

Arquitecturas:
+ Armv7l
+ Armv8 () AArch64
+ x86\$164

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

Arquitecturas:
+ x86\$164

Versiones:
+ Windows 10
+ Windows 11
+ Windows Server 2019
+ Windows Server 2022

**nota**  
Algunas AWS IoT Greengrass funciones no son compatibles actualmente con los dispositivos Windows. Para obtener más información, consulte [Compatibilidad de características de Greengrass](operating-system-feature-support-matrix.md) y [Aspectos a tener en cuenta sobre las características](#greengrass-v2-windows-feature-considerations).

------

### Aspectos a tener en cuenta sobre las características
<a name="greengrass-v2-windows-feature-considerations"></a>

Algunas AWS IoT Greengrass funciones no son compatibles actualmente con los dispositivos Windows. Revise las diferencias de las características para confirmar si un dispositivo Windows cumple sus requisitos. Para obtener más información, consulte [Compatibilidad de características de Greengrass](operating-system-feature-support-matrix.md).

[Para crear un sistema operativo personalizado basado en Linux, puedes usar la BitBake receta AWS IoT Greengrass del proyecto. `meta-aws`](https://github.com/aws/meta-aws/tree/master/recipes-iot) El `meta-aws` proyecto proporciona recetas que puede utilizar para desarrollar capacidades de software de AWS vanguardia en sistemas [Linux integrados](https://elinux.org/) que se crean con [OpenEmbedded](https://www.openembedded.org/wiki/Main_Page)los marcos de compilación del Proyecto Yocto. [Yocto Project](https://www.yoctoproject.org/) es un proyecto de colaboración de código abierto que le ayuda a crear sistemas personalizados basados ​​en Linux para aplicaciones incrustadas independientemente de la arquitectura del hardware. La BitBake receta para AWS IoT Greengrass instalar, configurar y ejecutar automáticamente el software AWS IoT Greengrass Core en su dispositivo.

Las plataformas Linux también se pueden ejecutar AWS IoT Greengrass en un contenedor Docker. Para obtener más información, consulte [Ejecute AWS IoT Greengrass el software principal en un contenedor de Docker](run-greengrass-docker.md). 

## Sistema operativo
<a name="greengrass-nucleus-component-os-support"></a>

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

Para obtener más información, consulte [Plataformas admitidas](#greengrass-v2-supported-platforms).

## Requisitos
<a name="greengrass-nucleus-component-requirements"></a>

Los dispositivos deben cumplir ciertos requisitos para instalar y ejecutar el núcleo de Greengrass y el software AWS IoT Greengrass Core. Para obtener más información, consulte [Requisitos de los dispositivos](#greengrass-v2-requirements).

Se admite la ejecución del componente núcleo de Greengrass en una VPC. Para implementar este componente en una VPC, se requiere lo siguiente.
+ El componente núcleo de Greengrass debe tener conectividad con AWS IoT data, AWS IoT Credentials y Amazon S3.

## Dependencias
<a name="greengrass-nucleus-component-dependencies"></a>

El núcleo de Greengrass no incluye ninguna dependencia de componentes. Sin embargo, varios componentes proporcionados por AWS incluyen el núcleo como dependencia. Para obtener más información, consulte [Componentes proporcionados por AWS](public-components.md).

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

## Descarga e instalación
<a name="greengrass-nucleus-component-install"></a>

Puede descargar un instalador que configura el componente núcleo de Greengrass en el dispositivo. Este instalador configura el dispositivo como un dispositivo principal de Greengrass. Hay dos tipos de instalaciones que puede realizar: una instalación rápida, que crea AWS los recursos necesarios, o una instalación manual, en la que puede crear los AWS recursos usted mismo. Para obtener más información, consulte [Instalación del software AWS IoT Greengrass Core](install-greengrass-core-v2.md).

También puede seguir un tutorial para instalar el núcleo de Greengrass y explorar el desarrollo de componentes de Greengrass. Para obtener más información, consulte [Tutorial: Introducción a AWS IoT Greengrass V2](getting-started.md).

## Configuración
<a name="greengrass-nucleus-component-configuration"></a>

Este componente ofrece los siguientes parámetros de configuración que puede personalizar cuando implemente el componente. Algunos parámetros requieren que el software AWS IoT Greengrass principal se reinicie para que surta efecto. Para obtener más información acerca de por qué y cómo configurar este componente, consulte [Configurar el software AWS IoT Greengrass principal](configure-greengrass-core-v2.md).

`iotRoleAlias`  
<a name="nucleus-component-configuration-iot-role-alias"></a>El alias del AWS IoT rol que apunta a un rol de IAM de intercambio de fichas. El proveedor de AWS IoT credenciales asume esta función para permitir que el dispositivo principal de Greengrass interactúe con AWS los servicios. Para obtener más información, consulte [Autorizar a los dispositivos principales a interactuar con AWS los servicios](device-service-role.md).  
Al ejecutar el software AWS IoT Greengrass Core con la `--provision true` opción, el software proporciona un alias de rol y establece su valor en el componente core.

  `interpolateComponentConfiguration`   
(Opcional) Puede habilitar el núcleo de Greengrass para interpolar las [variables de las recetas](component-recipe-reference.md#recipe-variables) de los componentes en las configuraciones y [combinar las actualizaciones de configuración](update-component-configurations.md#merge-configuration-update-recipe-variables). Se recomienda configurar esta opción en `true` para que el dispositivo principal pueda ejecutar componentes de Greengrass que usen variables de receta en sus configuraciones.  
Esta característica está disponible en la versión 2.6.0 y posteriores de este componente.  
Valor predeterminado: `false`

`networkProxy`  
(Opcional) El proxy de red que se utilizará en todas las conexiones. Para obtener más información, consulte [Realizar la conexión en el puerto 443 o a través de un proxy de red](configure-greengrass-core-v2.md#configure-alpn-network-proxy).  
<a name="nucleus-component-parameter-restart-para"></a>Al implementar un cambio en este parámetro de configuración, el software AWS IoT Greengrass principal se reinicia para que el cambio surta efecto.
Este objeto contiene la siguiente información:    
`noProxyAddresses`  
(Opcional) Una lista separada por comas de direcciones IP o nombres de host que están exentos del proxy.  
`proxy`  
El proxy al que conectar. Este objeto contiene la siguiente información:    
`url`  
La dirección URL del servidor proxy, en el formato `scheme://userinfo@host:port`.  <a name="nucleus-component-configuration-proxy-url-segments"></a>
+ `scheme`: el esquema, que debe ser `http` o `https`.
**importante**  
<a name="https-proxy-greengrass-nucleus-requirement"></a>Los dispositivos principales de Greengrass deben ejecutar la versión 2.5.0 o versiones posteriores del [núcleo de Greengrass ](#greengrass-nucleus-component) para usar proxies HTTPS.  
Si configura un proxy HTTPS, debe agregar el certificado de la CA del servidor proxy al certificado de la CA raíz de Amazon del dispositivo principal. Para obtener más información, consulte [Permita que el dispositivo principal confíe en un proxy HTTPS](configure-greengrass-core-v2.md#https-proxy-certificate-trust).
+ `userinfo`: (opcional) la información de nombre de usuario y contraseña. Si especifica esta información en `url`, el dispositivo principal de Greengrass ignora los campos `username` y `password`.
+ `host`: el nombre de host o dirección IP del servidor proxy.
+ `port`: (opcional) el número de puerto. Si no especifica el puerto, el dispositivo principal de Greengrass usará los siguientes valores predeterminados:
  + `http`: 80
  + `https`: 443  
`username`  
(Opcional) El nombre de usuario que autentica el servidor proxy.  
`password`  
(Opcional) La contraseña para autenticarse en el servidor proxy.

`mqtt`  
(Opcional) La configuración MQTT del dispositivo principal de Greengrass. Para obtener más información, consulte [Realizar la conexión en el puerto 443 o a través de un proxy de red](configure-greengrass-core-v2.md#configure-alpn-network-proxy).  
<a name="nucleus-component-parameter-restart-para"></a>Al implementar un cambio en este parámetro de configuración, el software AWS IoT Greengrass principal se reinicia para que el cambio surta efecto.
Este objeto contiene la siguiente información:    
`port`  
(Opcional) El puerto que se utilizará para las conexiones MQTT.  
Valor predeterminado: `8883`  
`keepAliveTimeoutMs`  
(Opcional) El tiempo en milisegundos que transcurre entre cada mensaje `PING` que envía el cliente para mantener activa la conexión MQTT. El valor debe ser mayor que `pingTimeoutMs`.  
Valor predeterminado: `60000` (60 segundos).  
`pingTimeoutMs`  
(Opcional) El tiempo en milisegundos que el cliente espera para recibir un mensaje `PINGACK` del servidor. Si la espera supera el tiempo de espera, el dispositivo principal se cierra y vuelve a abrir la conexión MQTT. Este valor debe ser inferior a `keepAliveTimeoutMs`.  
Valor predeterminado: `30000` (30 segundos)  
`operationTimeoutMs`  
(Opcional) El tiempo en milisegundos que el cliente espera a que finalicen las operaciones de MQTT (por ejemplo, `CONNECT` o `PUBLISH`). Esta opción no se aplica al `PING` MQTT ni a los mensajes de keep alive.  
Valor predeterminado: `30000` (30 segundos).  
`maxInFlightPublishes`  
(Opcional) La cantidad máxima de mensajes de QoS 1 de MQTT sin confirmar que pueden estar en proceso al mismo tiempo.  
Esta característica está disponible en la versión 2.1.0 y posteriores de este componente.  
Valor predeterminado: `5`  
Rango válido: valor máximo de 100  
`maxMessageSizeInBytes`  
(Opcional) El tamaño máximo de un mensaje MQTT. Si un mensaje supera este tamaño, el núcleo de Greengrass lo rechaza con error.  
Esta característica está disponible en la versión 2.1.0 y posteriores de este componente.  
Valor predeterminado: `131072` (128 KB)  
Rango válido: valor máximo de `2621440` (2,5 MB)  
`maxPublishRetry`  
(Opcional) El número máximo de reintentos permitidos para un mensaje que aun no se publicó. Puede especificar `-1` para volver a intentar un número ilimitado de veces.  
Esta característica está disponible en la versión 2.1.0 y posteriores de este componente.  
Valor predeterminado: `100`  
`spooler`  
(Opcional) La configuración del spooler MQTT del dispositivo principal de Greengrass. Este objeto contiene la siguiente información:    
`storageType`  
El tipo de almacenamiento para almacenar los mensajes. Si `storageType` está establecido en `Disk`, se puede configurar el `pluginName`. Puede especificar `Memory` o `Disk`.  
Esta característica está disponible para la versión 2.11.0 y versiones posteriores del [componente núcleo de Greengrass](#greengrass-nucleus-component).  
Si el spooler de MQTT `storageType` está configurado en `Disk` y desea revertir el núcleo de Greengrass de la versión 2.11.x a una versión anterior, debe volver a cambiar la configuración a `Memory`. La única configuración para `storageType` compatible con las versiones 2.10.x y anteriores del núcleo de Greengrass es `Memory`. Si no se siguen estas instrucciones, se puede romper el spooler. Esto provocaría que el dispositivo principal de Greengrass no pudiera enviar mensajes MQTT a la Nube de AWS.
Valor predeterminado: `Memory`  
`pluginName`  
(Opcional) El nombre del componente del complemento. Este componente solo se usará si `storageType` está configurado en `Disk`. Esta opción se predetermina en `aws.greengrass.DiskSpooler` y usará el [Spooler de disco](disk-spooler-component.md) proporcionado por Greengrass.  
Esta característica está disponible para la versión 2.11.0 y versiones posteriores del [componente núcleo de Greengrass](#greengrass-nucleus-component).  
Valor predeterminado: `"aws.greengrass.DiskSpooler"`  
`maxSizeInBytes`  
(Opcional) El tamaño máximo de la memoria caché en la que el dispositivo principal almacena los mensajes MQTT sin procesar. Si la caché está llena, los mensajes nuevos se rechazan.  
Valor predeterminado: `2621440` (2,5 MB)  
`keepQos0WhenOffline`  
(Opcional) Puede agrupar los mensajes de QoS 0 de MQTT recibidos en el dispositivo principal mientras está desconectado. Si establece esta opción en `true`, el dispositivo principal almacena los mensajes de QoS 0 que no puede enviar mientras está desconectado. Si establece esta opción en `false`, el dispositivo principal descartará estos mensajes. El dispositivo principal siempre envía los mensajes de QoS 1 a menos que el spool esté lleno.  
Valor predeterminado: `false`  
`version`  
(Opcional) La versión de MQTT. Puede especificar `mqtt3` o `mqtt5`.  
Esta característica está disponible para la versión 2.10.0 y versiones posteriores del [componente núcleo de Greengrass](#greengrass-nucleus-component).  
Valor predeterminado: `mqtt5`  
`receiveMaximum`  
(Opcional) La cantidad máxima de paquetes QoS 1 no confirmados que puede enviar el agente.  
Esta característica está disponible para la versión 2.10.0 y versiones posteriores del [componente núcleo de Greengrass](#greengrass-nucleus-component).  
Valor predeterminado: `100`  
`sessionExpirySeconds`  
(Opcional) La cantidad de tiempo en segundos que puede solicitar para que dure una sesión desde IoT Core. El valor predeterminado es el tiempo máximo admitido por AWS IoT Core.  
Esta característica está disponible para la versión 2.10.0 y versiones posteriores del [componente núcleo de Greengrass](#greengrass-nucleus-component).  
Valor predeterminado: `604800 (7 days)`  
`minimumReconnectDelaySeconds`  
(Opcional) Una opción para el comportamiento de reconexión. Tiempo mínimo en segundos para que MQTT se vuelva a conectar.  
Esta característica está disponible para la versión 2.10.0 y versiones posteriores del [componente núcleo de Greengrass](#greengrass-nucleus-component).  
Valor predeterminado: `1`  
`maximumReconnectDelaySeconds`  
(Opcional) Una opción para el comportamiento de reconexión. Tiempo máximo en segundos que MQTT se vuelve a conectar.  
Esta característica está disponible para la versión 2.10.0 y versiones posteriores del [componente núcleo de Greengrass](#greengrass-nucleus-component).  
Valor predeterminado: `120`  
`minimumConnectedTimeBeforeRetryResetSeconds`  
(Opcional) Una opción para el comportamiento de reconexión. La cantidad de tiempo en segundos que una conexión debe estar activa antes de que el aplazo en el reintento se restablezca al mínimo.  
Esta característica está disponible para la versión 2.10.0 y versiones posteriores del [componente núcleo de Greengrass](#greengrass-nucleus-component).  
Valor predeterminado: `30`

  `jvmOptions`  
(Opcional) Las opciones de JVM que se utilizarán para ejecutar el software AWS IoT Greengrass principal. Para obtener información sobre las opciones de JVM recomendadas para ejecutar el software AWS IoT Greengrass Core, consulte. [Control de la asignación de memoria con las opciones de JVM](configure-greengrass-core-v2.md#jvm-tuning)  
<a name="nucleus-component-parameter-restart-para"></a>Al implementar un cambio en este parámetro de configuración, el software AWS IoT Greengrass principal se reinicia para que el cambio surta efecto.

`iotDataEndpoint`  
<a name="nucleus-component-configuration-iot-data-endpoint"></a>El punto final AWS IoT de datos para su. Cuenta de AWS  
<a name="nucleus-component-set-iot-endpoints"></a>Cuando ejecuta el software AWS IoT Greengrass Core con la `--provision true` opción, el software obtiene sus datos y credenciales de los puntos finales AWS IoT y los coloca en el componente núcleo.

`iotCredEndpoint`  
<a name="nucleus-component-configuration-iot-cred-endpoint"></a>El punto final de AWS IoT credenciales para su. Cuenta de AWS  
<a name="nucleus-component-set-iot-endpoints"></a>Cuando ejecuta el software AWS IoT Greengrass Core con la `--provision true` opción, el software obtiene sus datos y credenciales de los puntos finales AWS IoT y los establece en el componente núcleo.

`greengrassDataPlaneEndpoint`  
Esta característica está disponible en la versión 2.7.0 y posteriores de este componente.  
Para obtener más información, consulte [Use un certificado de dispositivo firmado por una CA privada](configure-greengrass-core-v2.md#configure-nucleus-private-ca).

`greengrassDataPlanePort`  
Esta característica está disponible en la versión 2.0.4 y posteriores de este componente.  
(Opcional) El puerto que se utilizará para las conexiones del plano de datos. Para obtener más información, consulte [Realizar la conexión en el puerto 443 o a través de un proxy de red](configure-greengrass-core-v2.md#configure-alpn-network-proxy).  
Debe especificar un puerto en el que el dispositivo pueda realizar conexiones salientes. Si especificas un puerto que está bloqueado, el dispositivo no podrá conectarse AWS IoT Greengrass para recibir las implementaciones.
Puede elegir entre las siguientes opciones:  
+ `443`
+ `8443`
Valor predeterminado: `8443`

`awsRegion`  
El que se Región de AWS debe usar.

`runWithDefault`  
El usuario del sistema que se utilizará para ejecutar los componentes.  
<a name="nucleus-component-parameter-restart-para"></a>Al implementar un cambio en este parámetro de configuración, el software AWS IoT Greengrass principal se reinicia para que el cambio surta efecto.
Este objeto contiene la siguiente información:    
`posixUser`  
El nombre o ID del usuario del sistema y, opcionalmente, del grupo de sistemas que el dispositivo principal utiliza para ejecutar los componentes genéricos y de Lambda. Especifique el usuario y el grupo separados por dos puntos (`:`) con el siguiente formato: `user:group`. El grupo es opcional. Si no especifica un grupo, el software AWS IoT Greengrass Core utiliza el grupo principal para el usuario. Por ejemplo, puede especificar `ggc_user` o `ggc_user:ggc_group`. Para obtener más información, consulte [Configuración del usuario que ejecuta los componentes](configure-greengrass-core-v2.md#configure-component-user).  
Al ejecutar el instalador del software AWS IoT Greengrass Core con la `--component-default-user ggc_user:ggc_group` opción, el software establece este parámetro en el componente core.  
`windowsUser`  
Esta característica está disponible en la versión 2.5.0 y posteriores de este componente.  
El nombre del usuario de Windows que se utilizará para ejecutar este componente en los dispositivos principales de Windows. El usuario debe estar en todos los dispositivos principales de Windows y su nombre y contraseña deben almacenarse en la instancia del administrador de credenciales de la LocalSystem cuenta. Para obtener más información, consulte [Configuración del usuario que ejecuta los componentes](configure-greengrass-core-v2.md#configure-component-user).  
Al ejecutar el instalador de software AWS IoT Greengrass Core con la `--component-default-user ggc_user` opción, el software establece este parámetro en el componente core.  
`systemResourceLimits`  
Esta característica solo está disponible en la versión 2.4.0 o posterior de este componente. AWS IoT Greengrass actualmente no admite esta característica en los dispositivos principales de Windows.   
Los límites de recursos del sistema se aplicarán de forma predeterminada a los procesos de componentes de Lambda genéricos y no contenerizados. Puede anular los límites de recursos del sistema para los componentes individuales cuando crea una implementación. Para obtener más información, consulte [Configuración de los límites de recursos del sistema para los componentes](configure-greengrass-core-v2.md#configure-component-system-resource-limits).  
Este objeto contiene la siguiente información:    
`cpus`  
 <a name="system-resource-limits-cpu-definition-each"></a>La cantidad máxima de tiempo de CPU que los procesos de cada componente pueden utilizar en el dispositivo principal. El tiempo total de CPU de un dispositivo principal equivale a la cantidad de núcleos de CPU del dispositivo. Por ejemplo, en un dispositivo principal con 4 núcleos de CPU, puede establecer este valor en `2` para limitar los procesos de cada componente al 50 % de uso de cada núcleo de CPU. En un dispositivo con 1 núcleo de CPU, puede establecer este valor en `0.25` para limitar los procesos de cada componente al 25 % de uso de la CPU. Si establece este valor en un número superior al número de núcleos de la CPU, el software AWS IoT Greengrass Core no limita el uso de la CPU de los componentes.   
`memory`  
 <a name="system-resource-limits-memory-definition-each"></a>La cantidad máxima de RAM, expresada en kilobytes, que los procesos de un componente pueden utilizar en el dispositivo principal. 

 `s3EndpointType`   
(Opcional) El tipo de punto de conexión de S3. Este parámetro solo tendrá efecto en la región Este de EE. UU. (Norte de Virginia) (`us-east-1`). Se ignorará la configuración de este parámetro desde cualquier otra región. Puede elegir entre las siguientes opciones:  
+ `REGIONAL`: el cliente de S3 y la URL prefirmada utilizan el punto de conexión regional.
+ `GLOBAL`: el cliente de S3 y la URL prefirmada utilizan el punto de conexión heredado.
+ `DUALSTACK`: la URL prefirmada de S3 utiliza el punto de conexión de doble pila.
Valor predeterminado: `GLOBAL`

 `fipsMode`   
(Opcional) Hace que Greengrass utilice puntos de conexión de FIPS. Para obtener más información sobre cómo habilitar los puntos de conexión de FIPS, consulte [Puntos de conexión de FIPS](FIPS.html).  
Puede elegir entre las siguientes opciones:  
+ Si `true` se establece en verdadero, los puntos de conexión utilizarán el punto de conexión de FIPS.
+ Si `false` se establece en falso, los puntos de conexión no utilizarán el punto de conexión de FIPS.
Valor predeterminado: `false`

`logging`  
(Opcional) La configuración de registro del dispositivo principal. Para obtener más información acerca de cómo configurar y usar los registros de Greengrass, consulte [Supervisión de los registros de AWS IoT Greengrass](monitor-logs.md).  
Este objeto contiene la siguiente información:    
  `level`   
(Opcional) El nivel mínimo de mensajes de registro que se van a generar.  
Elija uno de los siguientes niveles de registro, que se enumeran aquí en orden de niveles:  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valor predeterminado: `INFO`  
  `format`   
(Opcional) El formato de datos de los registros. Puede elegir entre las siguientes opciones:  
+ `TEXT`: elija esta opción si desea ver los registros en forma de texto.
+ `JSON`: elija esta opción si desea ver los registros con el [comando logs de la CLI de Greengrass](gg-cli-logs.md) o interactuar con los registros mediante programación.
Valor predeterminado: `TEXT`  
`outputType`  
(Opcional) El tipo de salida para los registros. Puede elegir entre las siguientes opciones:  
+ `FILE`— El software AWS IoT Greengrass Core envía los registros a los archivos del directorio que especifique. `outputDirectory`
+ `CONSOLE`— El software AWS IoT Greengrass Core imprime los registros en`stdout`. Seleccione esta opción para ver los registros a medida que los imprime el dispositivo principal.
Valor predeterminado: `FILE`  
  `fileSizeKB`   
(Opcional) El tamaño máximo de cada archivo de registro (en kilobytes). Cuando un archivo de registro supera este tamaño máximo de archivo, el software AWS IoT Greengrass Core crea un nuevo archivo de registro.  
<a name="nucleus-component-logging-parameter-file-only"></a>Este parámetro solo se aplica cuando se especifica `FILE` para `outputType`.  
Valor predeterminado: `1024`  
  `totalLogsSizeKB`   
(Opcional) El tamaño total máximo de los archivos de registro (en kilobytes) de cada componente, incluido el núcleo de Greengrass. Los archivos de registro del núcleo de Greengrass también incluyen registros de [los componentes del complemento](develop-greengrass-components.md#component-types). Cuando el tamaño total de los archivos de registro de un componente supera este tamaño máximo, el software AWS IoT Greengrass Core elimina los archivos de registro más antiguos de ese componente.  
Este parámetro equivale al parámetro de [límite de espacio en disco](log-manager-component.md#log-manager-component-configuration) del [componente del administrador de registros](log-manager-component.md) (`diskSpaceLimit`), que puede especificar para el núcleo (sistema) de Greengrass y para cada componente. El software AWS IoT Greengrass Core utiliza el mínimo de los dos valores como tamaño de registro total máximo para el núcleo de Greengrass y cada componente.  
<a name="nucleus-component-logging-parameter-file-only"></a>Este parámetro solo se aplica cuando se especifica `FILE` para `outputType`.  
Valor predeterminado: `10240`  
  `outputDirectory`   
(Opcional) El directorio de salida para los archivos de registro.  
<a name="nucleus-component-logging-parameter-file-only"></a>Este parámetro solo se aplica cuando se especifica `FILE` para `outputType`.  
Valor predeterminado: `/greengrass/v2/logs`, donde `/greengrass/v2` es la carpeta raíz de AWS IoT Greengrass .

  `fleetstatus`   
Este parámetro está disponible en la versión 2.1.0 y posteriores de este componente.  
(Opcional) La configuración del estado de la flota para el dispositivo principal.  
Este objeto contiene la siguiente información:    
`periodicStatusPublishIntervalSeconds`  
(Opcional) El tiempo (en segundos) transcurrido desde que el dispositivo principal publica el estado del dispositivo en la Nube de AWS.  
Mínimo: `86400` (24 horas)  
Valor predeterminado: `86400` (24 horas)

  `telemetry`   
(Opcional) La configuración de telemetría del estado del sistema para el dispositivo principal. Para obtener más información sobre las métricas de telemetría y cómo actuar en función de los datos de telemetría, consulte [Recopile datos de telemetría del estado del sistema de los dispositivos principales AWS IoT Greengrass](telemetry.md).  
Este objeto contiene la siguiente información:    
`enabled`  
(Opcional) Puede habilitar o deshabilitar la telemetría.  
Valor predeterminado: `true`  
`periodicAggregateMetricsIntervalSeconds`  
(Opcional) El intervalo (en segundos) durante el que el dispositivo principal agrega las métricas.  
Si establece este valor por debajo del valor mínimo admitido, el núcleo utilizará el valor predeterminado.  
Mínimo: `3600`  
Valor predeterminado: `3600`  
`periodicPublishMetricsIntervalSeconds`  
(Opcional) El tiempo (en segundos) transcurrido desde que el dispositivo principal publica las métricas de telemetría en la Nube de AWS.  
Si establece este valor por debajo del valor mínimo admitido, el núcleo utilizará el valor predeterminado.  
Mínimo: `86400`  
Valor predeterminado: `86400`

`deploymentPollingFrequencySeconds`  
(Opcional) El periodo en segundos durante el que se deben sondear las notificaciones de implementación.  
Valor predeterminado: `15`

`componentStoreMaxSizeBytes`  
(Opcional) El tamaño máximo en disco del almacén de componentes, que incluye las recetas y los artefactos de los componentes.  
Valor predeterminado: `10000000000` (10 GB)

  `platformOverride`   
(Opcional) Un diccionario de atributos que identifica la plataforma del dispositivo principal. Utilícelo para definir los atributos de plataforma personalizados que las recetas de componentes pueden usar para identificar el ciclo de vida y los artefactos correctos del componente. Por ejemplo, puede definir un atributo de capacidad de hardware para implementar solo el conjunto mínimo de artefactos necesarios para la ejecución de un componente. Para más información, consulte el [parámetro de plataforma de manifiesto](component-recipe-reference.md#component-platform-definition) en la receta del componente.  
También puede usar este parámetro para anular los atributos `os` y `architecture` de la plataforma del dispositivo principal.

  `httpClient`   
Este parámetro está disponible en la versión 2.5.0 y posteriores de este componente.  
(Opcional) La configuración del cliente HTTP del dispositivo principal. Estas opciones de configuración se aplican a todas las solicitudes HTTP realizadas por este componente. Si un dispositivo principal funciona en una red más lenta, puede aumentar los tiempos de espera para evitar que se agoten los tiempos de espera de las solicitudes HTTP.  
Este objeto contiene la siguiente información:    
`connectionTimeoutMs`  
(Opcional) El tiempo (en milisegundos) que se debe esperar para que se abra una conexión antes de que agote el tiempo de espera de la solicitud de conexión.  
Valor predeterminado: `2000` (2 segundos)  
`socketTimeoutMs`  
(Opcional) El tiempo (en milisegundos) que se debe esperar para que los datos se transfieran a través de una conexión abierta antes de que se agote el tiempo de espera de la conexión.  
Valor predeterminado: `30000` (30 segundos)

  `deploymentConfigurationTimeSource`   
Este parámetro está disponible en la versión 2.15.0 y versiones posteriores de este componente.  
(Opcional) La marca de tiempo que se debe usar al procesar una implementación. El valor predeterminado es `deploymentCreationTime`.  
El objeto contiene los siguientes valores:    
`deploymentCreationTime`  
El valor predeterminado es `deploymentConfigurationTimeSource`. El dispositivo utiliza la marca de tiempo de creación de la implementación para resolver los conflictos de claves de configuración durante el procesamiento. Si se selecciona este comportamiento, la configuración del dispositivo local sostenida por el núcleo puede tener una marca temporal mayor que la de la implementación entrante, y rechaza los cambios de configuración entrantes que ahora se consideran anticuados.  
`deploymentProcessingTime`  
El dispositivo utiliza su marca de tiempo local para resolver los conflictos de claves de configuración durante la implementación. Cuando se procesa, el dispositivo actualiza las configuraciones según la marca de tiempo de procesamiento y no según la marca de tiempo de creación de la implementación. Este comportamiento supone que el reloj del dispositivo está calibrado correctamente.  
Si desea que los nuevos dispositivos utilicen este comportamiento en la primera conexión, configure este ajuste de núcleo en la imagen o instalación inicial del dispositivo, en lugar de implementarlo mediante una implementación. Utilice la opción [https://docs.aws.amazon.com/greengrass/v2/developerguide/configure-installer.html](https://docs.aws.amazon.com/greengrass/v2/developerguide/configure-installer.html) del instalador de la versión clásica del núcleo para esta configuración.  
Esta configuración inicial es esencial porque los dispositivos procesan múltiples implementaciones en orden arbitrario. Si no hay una configuración inicial adecuada, es posible que un dispositivo procese las implementaciones con el comportamiento `deploymentCreationTime` predeterminado antes de recibir la implementación en la que se establece la configuración del núcleo `deploymentProcessingTime`.

**Example Ejemplo: actualización de la combinación de configuraciones**  

```
{
  "iotRoleAlias": "GreengrassCoreTokenExchangeRoleAlias",
  "networkProxy": {
    "noProxyAddresses": "http://192.168.0.1,www.example.com",
    "proxy": {
      "url": "http://my-proxy-server:1100",
      "username": "Mary_Major",
      "password": "pass@word1357"
    }
  },
  "mqtt": {
    "port": 443
  },
  "greengrassDataPlanePort": 443,
  "jvmOptions": "-Xmx64m",
  "runWithDefault": {
    "posixUser": "ggc_user:ggc_group"
  }
}
```

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

Este componente usa el siguiente archivo de registro.

------
#### [ 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:\$1greengrass\$1v2* por la ruta a la AWS IoT Greengrass carpeta 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="greengrass-nucleus-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.16.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.16.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html) [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.15.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.15.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html) [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.14.3  |  Mejoras y correcciones de errores [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.14.2  |  Mejoras y correcciones de errores [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.14.1  |  Mejoras y correcciones de errores [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.14.0  |  Esta versión ya no está disponible. Las mejoras de esta versión están disponibles en versiones posteriores de este componente.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.13.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.12.6  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.12.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.12.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.12.3  |   Esta versión ya no está disponible. Las mejoras de esta versión están disponibles en versiones posteriores de este componente.  Mejoras y correcciones de errores [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.12.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.12.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.12.0  |  <a name="changelog-nucleus-2.12.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.11.3  |  <a name="changelog-nucleus-2.11.3"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.11.2  |  <a name="changelog-nucleus-2.11.2"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.11.1  |  <a name="changelog-nucleus-2.11.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.11.0  |  <a name="changelog-nucleus-2.11.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.10.3  |  <a name="changelog-nucleus-2.10.3"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.10.2  |  <a name="changelog-nucleus-2.10.2"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.10.1  |  <a name="changelog-nucleus-2.10.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.10.0  |  <a name="changelog-nucleus-2.10.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.9.6  |  <a name="changelog-nucleus-2.9.6"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.9.5  |  <a name="changelog-nucleus-2.9.5"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.9.4  |  <a name="changelog-nucleus-2.9.4"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.9.3  |  <a name="changelog-nucleus-2.9.3"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.9.2  |  <a name="changelog-nucleus-2.9.2"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.9.1  |  <a name="changelog-nucleus-2.9.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.9.0  |  <a name="changelog-nucleus-2.9.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.8.1  |  <a name="changelog-nucleus-2.8.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.8.0  |  <a name="changelog-nucleus-2.8.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.7.0  |  <a name="changelog-nucleus-2.7.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.6.0  |  <a name="changelog-nucleus-2.6.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.5.6  |  <a name="changelog-nucleus-2.5.6"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.5.5  |  <a name="changelog-nucleus-2.5.5"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.5.4  |  <a name="changelog-nucleus-2.5.4"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.5.3  |  <a name="changelog-nucleus-2.5.3"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.5.2  |  <a name="changelog-nucleus-2.5.2"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.5.1  |   Esta versión ya no está disponible. Las mejoras de esta versión están disponibles en versiones posteriores de este componente.  <a name="changelog-nucleus-2.5.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.5.0  |  <a name="changelog-nucleus-2.5.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.4.0  |  <a name="changelog-nucleus-2.4.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.3.0  |  <a name="changelog-nucleus-2.3.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.2.0  |  <a name="changelog-nucleus-2.2.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.1.0  |  <a name="changelog-nucleus-2.1.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.0.5  |  <a name="changelog-nucleus-2.0.5"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.0.4  |  <a name="changelog-nucleus-2.0.4"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.0.3  |  Versión inicial.  | 

# Versión lite del núcleo de Greengrass
<a name="greengrass-nucleus-lite-component"></a>

La versión lite del núcleo de Greengrass (`aws.greengrass.NucleusLite`) es un dispositivo de tiempo de ejecución para dispositivos de periferia restringidos optimizado para ocupar una memoria mínima (utiliza menos de 5 MB de RAM). Se introdujo con la AWS IoT Greengrass versión 2.14.0 y es retrocompatible con componentes AWS IoT Greengrass genéricos, la API Greengrass V2 y el SDK.

La versión lite del núcleo de Greengrass se ofrece como una alternativa al conocido [núcleo de Greengrass (`aws.greengrass.Nucleus`)](https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-nucleus-component.html) y se puede utilizar en flotas heterogéneas de dispositivos Greengrass.

**Topics**
+ [Versiones](#greengrass-nucleus-lite-component-versions)
+ [Sistema operativo](#greengrass-nucleus-lite-component-os-support)
+ [Requisitos](#greengrass-nucleus-lite-component-requirements)
+ [Compatibilidad](#greengrass-nucleus-lite-component-compatibility)
+ [Descarga e instalación](#greengrass-nucleus-lite-component-install)
+ [Configuración](#greengrass-nucleus-lite-component-configuration)
+ [Archivo de registro local](#greengrass-nucleus-lite-component-log-file)
+ [Registros de cambios](#greengrass-nucleus-lite-component-changelog)

## Versiones
<a name="greengrass-nucleus-lite-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Sistema operativo
<a name="greengrass-nucleus-lite-component-os-support"></a>

Este componente se puede instalar en los dispositivos principales que ejecutan los siguientes sistemas operativos:
+ Linux (distribuciones con systemd)

Para obtener más información, consulte [núcleo de Greengrass](https://docs.aws.amazon.com/greengrass/v2/developerguide/operating-system-feature-support-matrix.html).

## Requisitos
<a name="greengrass-nucleus-lite-component-requirements"></a>

Los dispositivos deben cumplir ciertos requisitos para instalar y ejecutar el software AWS IoT Greengrass nucleus lite y Core. AWS IoT Greengrass Para obtener más información, consulte la [Guía de configuración](https://github.com/aws-greengrass/aws-greengrass-lite/blob/main/docs/SETUP.md#setting-up-greengrass-nucleus-lite).
+ 5 MB de espacio de RAM para el tiempo de ejecución del núcleo.
+ 5 MB de almacenamiento (disco/flash).

Las dependencias adicionales del sistema se documentan en la [Guía de configuración](https://github.com/aws-greengrass/aws-greengrass-lite/blob/main/docs/SETUP.md#dependencies).

Se admite la ejecución del componente núcleo de Greengrass en una VPC. Para implementar este componente en una VPC, se requiere lo siguiente:
+ El núcleo de Greengrass debe tener conectividad con los AWS IoT datos, AWS IoT las credenciales y Amazon S3.

## Compatibilidad
<a name="greengrass-nucleus-lite-component-compatibility"></a>

El AWS IoT Greengrass núcleo lite es compatible con la API AWS IoT Greengrass v2 (subconjunto de) y es compatible. SDKs No depende de ningún lenguaje específico, runtimes/VMs pero los componentes que se agregan a una implementación pueden requerir la presencia de tiempos de ejecución específicos (por ejemplo, Java, JVM, Python). Para obtener más información sobre las características compatibles con la versión lite del núcleo de Greengrass, consulte [Compatibilidad de características de Greengrass](operating-system-feature-support-matrix.md).

## Descarga e instalación
<a name="greengrass-nucleus-lite-component-install"></a>

Puede descargar un paquete apt, [compilarlo desde el código fuente](https://github.com/aws-greengrass/aws-greengrass-lite/blob/main/README.md#getting-started), [usar una capa de Yocto](https://github.com/aws4embeddedlinux/meta-aws) o [descargar una imagen de Yocto prediseñada para un dispositivo compatible (por ejemplo](https://github.com/aws4embeddedlinux/meta-aws-demos),). RaspberryPi Desde la [Consola de AWS IoT Core](https://console.aws.amazon.com/iot/home), podrá descargar un **kit de conexión** que contiene todas las credenciales y la configuración inicial de su dispositivo. Las instrucciones sobre cómo realizar la instalación se incluyen en cada método de distribución específico.

También puede seguir un tutorial para instalar el AWS IoT Greengrass núcleo lite y explorar el desarrollo de componentes de Greengrass. Para obtener más información, consulte [Tutorial: Introducción a AWS IoT Greengrass V2](getting-started.md).

## Configuración
<a name="greengrass-nucleus-lite-component-configuration"></a>

El núcleo ofrece los siguientes parámetros de [configuración](https://github.com/aws-greengrass/aws-greengrass-lite/blob/main/docs/SETUP.md#configuring-greengrass): Algunos parámetros requieren que el software AWS IoT Greengrass Core se reinicie para que surta efecto.

`iotRoleAlias`  
El alias del AWS IoT rol que apunta a un rol de IAM de intercambio de fichas. El proveedor de AWS IoT credenciales asume esta función para permitir que el dispositivo principal de Greengrass interactúe con AWS los servicios. Para obtener más información, consulte [Autorizar los dispositivos principales para que interactúen con AWS los servicios](https://docs.aws.amazon.com/greengrass/v2/developerguide/device-service-role.html).

`iotDataEndpoint`  
<a name="nucleus-component-configuration-iot-data-endpoint"></a>El punto final de AWS IoT datos para su Cuenta de AWS.

`iotCredEndpoint`  
<a name="nucleus-component-configuration-iot-cred-endpoint"></a>El punto final de AWS IoT credenciales para su Cuenta de AWS.

`greengrassDataPlanePort`  
El puerto que se utilizará para las conexiones del plano de datos. Para obtener más información, consulte [Conección en el puerto 443 o a través de un proxy de red](https://docs.aws.amazon.com/greengrass/v2/developerguide/configure-greengrass-core-v2.html#configure-alpn-network-proxy).  
Debe especificar un puerto en el que el dispositivo pueda realizar conexiones salientes. Si especificas un puerto que está bloqueado, el dispositivo no podrá conectarse AWS IoT Greengrass para recibir despliegues. Puede elegir entre las siguientes opciones:  
+ `443`
+ `8443`
+ Valor predeterminado: `8443`

`awsRegion`  
El que se Región de AWS debe usar.

`runWithDefault`  
El usuario del sistema que se utilizará para ejecutar los componentes.  
<a name="nucleus-component-parameter-restart-para"></a>Al implementar un cambio en este parámetro de configuración, el software AWS IoT Greengrass principal se reinicia para que el cambio surta efecto.
Este objeto contiene la siguiente información:    
`posixUser`  
El nombre o ID del usuario del sistema y, opcionalmente, del grupo de sistemas que el dispositivo principal utiliza para ejecutar los componentes genéricos. Especifique el usuario y el grupo separados por dos puntos (`:`) con el siguiente formato: `user:group`. El grupo es opcional. Si no especifica un grupo, el software AWS IoT Greengrass Core utiliza el grupo principal para el usuario. Por ejemplo, puede especificar `ggc_user` o `ggc_user:ggc_group`. Para obtener más información, consulte [Configuración del usuario que ejecuta los componentes](configure-greengrass-core-v2.md#configure-component-user).

`networkProxy`  
(Opcional) El proxy de red que se utilizará en todas las conexiones. Para obtener más información, consulte [Realizar la conexión en el puerto 443 o a través de un proxy de red](configure-greengrass-core-v2.md#configure-alpn-network-proxy).  
Al implementar un cambio en este parámetro de configuración, el cambio se efectuará después del siguiente reinicio del software AWS IoT Greengrass principal.
Este objeto contiene la siguiente información:    
`noProxyAddresses`  
(Opcional) Una lista separada por comas de direcciones IP o nombres de host que están exentos del proxy.  
`proxy`  
El proxy al que conectar. Este objeto contiene la siguiente información:    
`url`  
La dirección URL del servidor proxy, en el formato `http://host:port`.  
+ `scheme`: el esquema, que debe ser `http`.
+ `host`: el nombre de host o dirección IP del servidor proxy.
+ `port`: (opcional) el número de puerto. Si no especifica el puerto, el dispositivo principal de Greengrass usará el siguiente valor predeterminado:
  + `http`: 80

## Archivo de registro local
<a name="greengrass-nucleus-lite-component-log-file"></a>

Los mensajes se registran en stdout, y systemd gestiona los archivos de registro.

**Visualización de los registros de este componente**
+ Utilice `journalctl` para ver los registros.

## Registros de cambios
<a name="greengrass-nucleus-lite-component-changelog"></a>


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.3.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.3.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.3.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.2.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.2.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.0.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.0.0  |  Versión inicial.  | 

# Autenticación del dispositivo de cliente
<a name="client-device-auth-component"></a>

El componente de autenticación del dispositivo de cliente (`aws.greengrass.clientdevices.Auth`) autentica los dispositivos de cliente y autoriza las acciones de los dispositivos de cliente.

**nota**  <a name="client-device-component-context"></a>
Los dispositivos de cliente son dispositivos IoT locales que se conectan a un dispositivo principal de Greengrass para enviar mensajes MQTT y datos para su procesamiento. Para obtener más información, consulte [Interacción con dispositivos IoT locales](interact-with-local-iot-devices.md).

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

## Versiones
<a name="client-device-auth-component-versions"></a>

**nota**  
Se ha dejado de usar la versión 2.3.0 de autenticación del dispositivo de cliente. Se recomienda encarecidamente que actualice a la versión 2.3.1 o posterior de autenticación del dispositivo de cliente.

Este componente tiene las siguientes versiones:
+ 2.5.x
+ 2.4.x
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Tipo
<a name="client-device-auth-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="client-device-auth-component-os-support"></a>

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

## Requisitos
<a name="client-device-auth-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ El [rol de servicio de Greengrass](greengrass-service-role.md) debe estar asociado a usted Cuenta de AWS y permitir el `iot:DescribeCertificate` permiso.
+ La AWS IoT política del dispositivo principal debe permitir los siguientes permisos:
  + `greengrass:GetConnectivityInfo`, donde los recursos incluyen el ARN del dispositivo principal que ejecuta este componente
  + `greengrass:VerifyClientDeviceIoTCertificateAssociation`, donde los recursos incluyen el nombre de recurso de Amazon (ARN) de cada dispositivo de cliente que se conecta al dispositivo principal
  + `greengrass:VerifyClientDeviceIdentity`
  + `greengrass:PutCertificateAuthorities`
  + `iot:Publish`, donde los recursos incluyen el ARN del siguiente tema de MQTT:
    + `$aws/things/coreDeviceThingName*-gci/shadow/get`
  + `iot:Subscribe`, donde los recursos incluyen los siguientes filtros ARNs de temas de MQTT:
    + `$aws/things/coreDeviceThingName*-gci/shadow/update/delta`
    + `$aws/things/coreDeviceThingName*-gci/shadow/get/accepted`
  + `iot:Receive`, donde los recursos incluyen los siguientes ARNs temas de MQTT:
    + `$aws/things/coreDeviceThingName*-gci/shadow/update/delta`
    + `$aws/things/coreDeviceThingName*-gci/shadow/get/accepted`

  Para obtener más información, consulte [AWS IoT políticas para las operaciones del plano de datos](device-auth.md#iot-policies) y [AWS IoT Política mínima de compatibilidad con los dispositivos cliente](device-auth.md#client-device-support-minimal-iot-policy).
+ (Opcional) Para utilizar la autenticación sin conexión, la función AWS Identity and Access Management (IAM) utilizada por el AWS IoT Greengrass servicio debe contener el siguiente permiso:
  + `greengrass:ListClientDevicesAssociatedWithCoreDevice` para permitir que el dispositivo principal enumere los clientes para la autenticación sin conexión.
+ Se admite la ejecución del componente de autenticación del dispositivo de cliente en una VPC. Para implementar este componente en una VPC, se requiere lo siguiente.
  + El componente de autenticación del dispositivo cliente debe tener conectividad con AWS IoT data AWS IoT Credentials y Amazon S3.

### Puntos de conexión y puertos
<a name="client-device-auth-component-endpoints"></a>

Este componente debe poder realizar solicitudes salientes a los siguientes puntos de conexión y puertos, además de a los puntos de conexión y puertos necesarios para el funcionamiento básico. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).


| punto de enlace | Puerto | Obligatorio | Description (Descripción) | 
| --- | --- | --- | --- | 
|  `iot.region.amazonaws.com`  | 443 | Sí |  Se utiliza para obtener información sobre los certificados de AWS IoT cosas.  | 

## Dependencias
<a name="client-device-auth-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#client-device-auth-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.5.5 ]

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


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

------
#### [ 2.5.4 ]

La siguiente tabla muestra las dependencias de la versión 2.5.4 de este componente.


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

------
#### [ 2.5.2 – 2.5.3 ]

La siguiente tabla muestra las dependencias de las versiones 2.5.2 y 2.5.3 de este componente.


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

------
#### [ 2.5.1 ]

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


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

------
#### [ 2.4.4 - 2.5.0 ]

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


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

------
#### [ 2.4.3 ]

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


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

------
#### [ 2.4.1 and 2.4.2 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.4.1 y 2.4.2 de este componente.


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

------
#### [ 2.3.0 – 2.4.0 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.3.0 a 2.4.0 de este componente.


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

------
#### [ 2.3.0 ]

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


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

------
#### [ 2.2.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.6.0 <=2.9.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.6.0 <=2.8.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.6.0 <2.8.0 | Flexible | 

------
#### [ 2.2.0 ]

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


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

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

En la siguiente tabla, se muestran las dependencias de la versión 2.1.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.4 ]

En la siguiente tabla, se muestran las dependencias de la versión 2.0.4 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.2 and 2.0.3 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.2 y 2.0.3 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 ]

En la siguiente tabla, se muestran las dependencias de la versión 2.0.1 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="client-device-auth-component-configuration"></a>

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

**nota**  
El permiso de suscripción se evalúa durante una solicitud de suscripción del cliente al agente MQTT local. Si se revoca el permiso de suscripción actual del cliente, el cliente ya no podrá suscribirse a un tema. Sin embargo, seguirá recibiendo mensajes de cualquier tema al que se haya suscrito anteriormente. Para evitar este comportamiento, el agente MQTT local debe reiniciarse tras revocar el permiso de suscripción para forzar la reautorización de los clientes.  
Para el componente agente MQTT 5 (EMQX), actualice la configuración `restartIdentifier` para reiniciar el agente MQTT 5.  
Para el componente agente MQTT 3.1.1 (Moquette), se reinicia semanalmente de forma predeterminada cuando el certificado del servidor cambia y obliga a los clientes a volver a autorizar. Puede forzar un reinicio si cambia la información de conectividad (direcciones IP) del dispositivo principal o realiza una implementación para eliminar el componente agente y volver a implementarlo más adelante.

------
#### [ v2.5.0 – 2.5.4 ]

`deviceGroups`  
Los grupos de dispositivos son grupos de dispositivos de cliente que tienen permisos para conectarse y comunicarse con un dispositivo principal. Use reglas de selección para identificar grupos de dispositivos de cliente y defina *políticas de autorización de dispositivos de cliente* que especifiquen los permisos para cada grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`formatVersion`  
La versión de formato de este objeto de configuración.  
Puede elegir entre las siguientes opciones:  
+ `2021-03-05`  
`definitions`  
Los grupos de dispositivos de este dispositivo principal. Cada definición especifica una *regla de selección* para evaluar si un dispositivo de cliente es miembro del grupo. Cada definición también especifica la política de permisos que se aplicará a los dispositivos de cliente que coincidan con la regla de selección. Si un dispositivo de cliente es miembro de varios grupos de dispositivos, los permisos del dispositivo se componen de la política de permisos de cada grupo.  
Este objeto contiene la siguiente información:    
`groupNameKey`  
El nombre de este grupo de dispositivos. *groupNameKey*Sustitúyalo por un nombre que ayude a identificar este grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`selectionRule`  
La consulta que especifica qué dispositivos de cliente son miembros de este grupo de dispositivos. Cuando un dispositivo de cliente se conecta, el dispositivo principal evalúa esta regla de selección para determinar si el dispositivo de cliente es miembro de este grupo de dispositivos. Si el dispositivo de cliente es miembro, el dispositivo principal usa la política de este grupo de dispositivos para autorizar las acciones del dispositivo de cliente.  
Cada regla de selección incluye al menos una *cláusula de regla de selección*, que es una consulta de expresión única que puede coincidir con los dispositivos de cliente. Las reglas de selección utilizan la misma sintaxis de consulta que la indexación de AWS IoT flotas. Para obtener más información sobre la sintaxis de las reglas de selección, consulte la [sintaxis de las consultas de indexación de flotas de AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) en la *Guía para desarrolladores de AWS IoT Core *.  
Use el comodín `*` para hacer coincidir varios dispositivos de cliente con una cláusula de regla de selección. Puede usar este comodín al principio y al final del nombre del objeto para hacer coincidir los dispositivos de cliente cuyos nombres comiencen o terminen con la cadena que especifique. También puede usar este comodín para hacer coincidir todos los dispositivos de cliente.  
Para seleccionar un valor que contenga dos puntos (`:`), evite los dos puntos y coloque un carácter de barra invertida (`\`). En formatos como JSON, debe evitar los caracteres de barra invertida, por lo que debe escribir dos caracteres de barra invertida antes del carácter de dos puntos. Por ejemplo, especifique `thingName: MyTeam\\:ClientDevice1` para seleccionar un elemento cuyo nombre sea `MyTeam:ClientDevice1`.
Puede especificar el siguiente selector:  
+ `thingName`— El nombre del dispositivo de un cliente AWS IoT .

**Example Ejemplo de regla de selección**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres son `MyClientDevice1` o `MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Ejemplo de regla de selección (usar caracteres comodín)**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres comiencen por `MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Ejemplo de regla de selección (usar caracteres comodín)**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres terminan en `MyClientDevice`.  

```
thingName: *MyClientDevice
```

**Example Ejemplo de regla de selección (hacer coincidir todos los dispositivos)**  
La siguiente regla de selección coincide con todos los dispositivos de cliente.  

```
thingName: *
```  
`policyName`  
La política de permisos que se aplica a los dispositivos de cliente de este grupo de dispositivos. Especifique el nombre de la política que define en el objeto `policies`.  
`policies`  
Las políticas de autorización de dispositivos de cliente para dispositivos de cliente que se conectan al dispositivo principal. Cada política de autorización especifica un conjunto de acciones y los recursos en los que un dispositivo de cliente puede realizar esas acciones.  
Este objeto contiene la siguiente información:    
`policyNameKey`  
El nombre de esta política de autorización. *policyNameKey*Sustitúyalo por un nombre que ayude a identificar esta política de autorización. Este nombre de política se usa para definir qué política se aplica a un grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`statementNameKey`  
El nombre de esta declaración de política. *statementNameKey*Sustitúyala por un nombre que ayude a identificar esta declaración de política.  
Este objeto contiene la siguiente información:    
`operations`  
La lista de operaciones que permiten usar los recursos de esta política.  
Puede incluir cualquiera de las siguientes operaciones:  
+ `mqtt:connect`: otorga permiso para conectarse al dispositivo principal. Los dispositivos de cliente deben tener este permiso para conectarse a un dispositivo principal.

  Esta operación admite los siguientes recursos:
  + `mqtt:clientId:deviceClientId`: restringe el acceso en función del ID de cliente que use el dispositivo de cliente para conectarse al agente MQTT del dispositivo principal. *deviceClientId*Sustitúyalo por el ID de cliente que se va a utilizar.
+ `mqtt:publish`: otorga permiso para publicar mensajes MQTT en los temas.

  Esta operación admite los siguientes recursos:
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`: restringe el acceso en función del tema MQTT en el que un dispositivo de cliente publica un mensaje. *mqttTopic*Sustitúyalo por el tema que se va a utilizar.

    Este recurso no admite caracteres comodín de temas MQTT.
+ `mqtt:subscribe`: otorga permiso para suscribirse a los filtros de temas MQTT para recibir mensajes.

  Esta operación admite los siguientes recursos:
  + `mqtt:topicfilter:mqttTopicFilter`: restringe el acceso en función de los temas MQTT en los que un dispositivo de cliente puede suscribirse a los mensajes. *mqttTopicFilter*Sustitúyalo por el filtro de tema que desee utilizar.

    Este recurso no admite caracteres comodín de temas MQTT.  
`resources`  
La lista de recursos que permiten las operaciones de esta política. Especifique los recursos que corresponden a las operaciones de esta política. Por ejemplo, puede especificar una lista de recursos de temas MQTT (`mqtt:topic:mqttTopic`) en una política que especifique la operación `mqtt:publish`.  
Puede especificar el comodín `*` en cualquier lugar de la variable de recurso para permitir el acceso a todos los recursos. Por ejemplo, puede especificar **mqtt:topic:my\$1** para permitir el acceso a los recursos que coincidan con esa entrada.  
Se admite la siguiente variable de recurso:  
+ `mqtt:topic:${iot:Connection.Thing.ThingName}`

  Esto se traduce en el nombre del elemento del AWS IoT Core registro para el que se está evaluando la política. AWS IoT Core usa el certificado que presenta el dispositivo cuando se autentica para determinar qué se debe usar para verificar la conexión. Esta variable de política solo está disponible cuando un dispositivo se conecta a través de MQTT o MQTT a través del protocolo. WebSocket   
`statementDescription`  
(Opcional) Una descripción para esta declaración de política.

`certificates`  <a name="client-device-auth-component-configuration-certificates"></a>
(Opcional) Las opciones de configuración del certificado para este dispositivo principal. Este objeto contiene la siguiente información:    
`serverCertificateValiditySeconds`  
(Opcional) El periodo de tiempo (en segundos) luego del cual caduca el certificado del servidor MQTT local. Puede configurar esta opción para personalizar la frecuencia con la que los dispositivos de cliente se desconectan y se vuelven a conectar al dispositivo principal.  
Este componente rota el certificado del servidor MQTT local 24 horas antes de que caduque. El agente MQTT, como el [componente agente MQTT de Moquette](mqtt-broker-moquette-component.md), genera un nuevo certificado y se reinicia. Cuando esto ocurre, todos los dispositivos de cliente conectados a este dispositivo principal se desconectan. Los dispositivos de cliente se pueden volver a conectar al dispositivo principal tras un breve periodo.  
Valor predeterminado: `604800` (7 días)  
Valor mínimo: `172800` (2 días)  
Valor máximo: `864000` (10 días)

`performance`  
(Opcional) Las opciones de configuración del rendimiento de este dispositivo principal. Este objeto contiene la siguiente información:    
`maxActiveAuthTokens`  
(Opcional) El número máximo de tokens de autorización de dispositivos de cliente activos. Puede aumentar este número para permitir que un mayor número de dispositivos de cliente se conecten a un dispositivo principal sin tener que volver a autenticarlos.  
Valor predeterminado: `2500`  
`cloudRequestQueueSize`  
(Opcional) El número máximo de Nube de AWS solicitudes que se deben poner en cola antes de que este componente las rechace.  
Valor predeterminado: `100`  
`maxConcurrentCloudRequests`  
(Opcional) El número máximo de solicitudes simultáneas que se enviarán a la Nube de AWS. Puede aumentar este número para mejorar el rendimiento de la autenticación en los dispositivos principales a los que se conecta un gran número de dispositivos de cliente.  
Valor predeterminado: `1`

`certificateAuthority`  
(Opcional) Opciones de configuración de la autoridad de certificación para reemplazar la autoridad intermedia del dispositivo principal por su propia autoridad de certificación intermedia.  
Si configura su dispositivo principal de Greengrass con una autoridad de certificación (CA) personalizada y usa la misma CA para emitir los certificados de los dispositivos de cliente, Greengrass omite las comprobaciones de las políticas de autorización para las operaciones MQTT de los dispositivos de cliente. El componente de autenticación del dispositivo de cliente confía plenamente en los clientes que usan certificados firmados por la CA para la que está configurado.  
Para restringir este comportamiento al usar una CA personalizada, cree y firme los dispositivos de cliente con una CA diferente o intermedia y, a continuación, ajuste los campos `certificateUri` y `certificateChainUri` para que apunten a la CA intermedia correcta.
 Este objeto contiene la siguiente información:    
certificateUri  
La ubicación del certificado. Puede ser un URI del sistema de archivos o un URI que apunta a un certificado almacenado en un módulo de seguridad de hardware.  
`certificateChainUri`  
La ubicación de la cadena de certificados para la CA del dispositivo principal. Debe ser la cadena de certificados completa que lleva a la CA raíz. Puede ser un URI del sistema de archivos o un URI que apunta a una cadena de certificados almacenada en un módulo de seguridad de hardware.  
`privateKeyUri`  
La ubicación de la clave privada del dispositivo principal. Puede ser un URI del sistema de archivos o un URI que apunta a una clave privada de certificado almacenada en un módulo de seguridad de hardware.

`security`  
(Opcional) Opciones de configuración de seguridad para este dispositivo principal. Este objeto contiene la siguiente información:    
`clientDeviceTrustDurationMinutes`  
El tiempo en minutos durante el que se puede confiar en la información de autenticación de un dispositivo de cliente antes de que sea necesario volver a autenticarse con el dispositivo principal. El valor predeterminado es 1.

`metrics`  
(Opcional) Las opciones de métricas de este dispositivo principal. Las métricas de error solo se mostrarán si hay un error en la autenticación del dispositivo de cliente. Este objeto contiene la siguiente información:    
`disableMetrics`  
Si el campo `disableMetrics` está establecido como `true`, la autenticación del dispositivo de cliente no recopilará métricas.  
Valor predeterminado: `false`  
`aggregatePeriodSeconds`  
El periodo de agregación en segundos que determina la frecuencia con la que la autenticación del dispositivo de cliente agrega las métricas y las envía al agente de telemetría. Esto no cambia la frecuencia con la que se publican las métricas, ya que el agente de telemetría sigue publicándolas una vez al día.  
Valor predeterminado: `3600`

startupTimeoutSeconds  
(Opcional) El tiempo máximo en segundos para que se inicie el componente. El estado del componente cambia a `ERRORED` si supera este tiempo de espera.  
Valor predeterminado: `120`

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política restrictiva)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
En el siguiente ejemplo de configuración se especifica que se permita la conexión de los dispositivos cliente cuyos nombres comiencen por «» y publish/subscribe en todos los temas. `MyClientDevice`  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política permisiva)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
El siguiente ejemplo de configuración especifica permitir la conexión de todos los dispositivos cliente y publish/subscribe en todos los temas.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política de nombres de objetos)**  <a name="client-device-auth-component-configuration-example-mythingname"></a>
El siguiente ejemplo de configuración permite a los dispositivos de cliente publicar temas que comiencen con el nombre del objeto del dispositivo de cliente y terminen con la cadena `topic`.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "myThing": {
        "selectionRule": "thingName: *",
        "policyName": "MyThingNamePolicy"
      }
    },
    "policies": {
      "MyThingNamePolicy": {
        "policyStatement": {
          "statementDescription": "mqtt publish",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:${iot:Connection.Thing.ThingName}/*/topic"
          ]
        }
      }
    }
  }
}
```

------
#### [ v2.4.5 ]

`deviceGroups`  
Los grupos de dispositivos son grupos de dispositivos de cliente que tienen permisos para conectarse y comunicarse con un dispositivo principal. Use reglas de selección para identificar grupos de dispositivos de cliente y defina *políticas de autorización de dispositivos de cliente* que especifiquen los permisos para cada grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`formatVersion`  
La versión de formato de este objeto de configuración.  
Puede elegir entre las siguientes opciones:  
+ `2021-03-05`  
`definitions`  
Los grupos de dispositivos de este dispositivo principal. Cada definición especifica una *regla de selección* para evaluar si un dispositivo de cliente es miembro del grupo. Cada definición también especifica la política de permisos que se aplicará a los dispositivos de cliente que coincidan con la regla de selección. Si un dispositivo de cliente es miembro de varios grupos de dispositivos, los permisos del dispositivo se componen de la política de permisos de cada grupo.  
Este objeto contiene la siguiente información:    
`groupNameKey`  
El nombre de este grupo de dispositivos. *groupNameKey*Sustitúyalo por un nombre que ayude a identificar este grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`selectionRule`  
La consulta que especifica qué dispositivos de cliente son miembros de este grupo de dispositivos. Cuando un dispositivo de cliente se conecta, el dispositivo principal evalúa esta regla de selección para determinar si el dispositivo de cliente es miembro de este grupo de dispositivos. Si el dispositivo de cliente es miembro, el dispositivo principal usa la política de este grupo de dispositivos para autorizar las acciones del dispositivo de cliente.  
Cada regla de selección incluye al menos una *cláusula de regla de selección*, que es una consulta de expresión única que puede coincidir con los dispositivos de cliente. Las reglas de selección utilizan la misma sintaxis de consulta que la indexación de AWS IoT flotas. Para obtener más información sobre la sintaxis de las reglas de selección, consulte la [sintaxis de las consultas de indexación de flotas de AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) en la *Guía para desarrolladores de AWS IoT Core *.  
Use el comodín `*` para hacer coincidir varios dispositivos de cliente con una cláusula de regla de selección. Puede usar este comodín al principio y al final del nombre del objeto para hacer coincidir los dispositivos de cliente cuyos nombres comiencen o terminen con la cadena que especifique. También puede usar este comodín para hacer coincidir todos los dispositivos de cliente.  
Para seleccionar un valor que contenga dos puntos (`:`), evite los dos puntos y coloque un carácter de barra invertida (`\`). En formatos como JSON, debe evitar los caracteres de barra invertida, por lo que debe escribir dos caracteres de barra invertida antes del carácter de dos puntos. Por ejemplo, especifique `thingName: MyTeam\\:ClientDevice1` para seleccionar un elemento cuyo nombre sea `MyTeam:ClientDevice1`.
Puede especificar el siguiente selector:  
+ `thingName`— El nombre del dispositivo de un cliente AWS IoT .

**Example Ejemplo de regla de selección**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres son `MyClientDevice1` o `MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Ejemplo de regla de selección (usar caracteres comodín)**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres comiencen por `MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Ejemplo de regla de selección (usar caracteres comodín)**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres terminan en `MyClientDevice`.  

```
thingName: *MyClientDevice
```

**Example Ejemplo de regla de selección (hacer coincidir todos los dispositivos)**  
La siguiente regla de selección coincide con todos los dispositivos de cliente.  

```
thingName: *
```  
`policyName`  
La política de permisos que se aplica a los dispositivos de cliente de este grupo de dispositivos. Especifique el nombre de la política que define en el objeto `policies`.  
`policies`  
Las políticas de autorización de dispositivos de cliente para dispositivos de cliente que se conectan al dispositivo principal. Cada política de autorización especifica un conjunto de acciones y los recursos en los que un dispositivo de cliente puede realizar esas acciones.  
Este objeto contiene la siguiente información:    
`policyNameKey`  
El nombre de esta política de autorización. *policyNameKey*Sustitúyalo por un nombre que ayude a identificar esta política de autorización. Este nombre de política se usa para definir qué política se aplica a un grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`statementNameKey`  
El nombre de esta declaración de política. *statementNameKey*Sustitúyala por un nombre que ayude a identificar esta declaración de política.  
Este objeto contiene la siguiente información:    
`operations`  
La lista de operaciones que permiten usar los recursos de esta política.  
Puede incluir cualquiera de las siguientes operaciones:  
+ `mqtt:connect`: otorga permiso para conectarse al dispositivo principal. Los dispositivos de cliente deben tener este permiso para conectarse a un dispositivo principal.

  Esta operación admite los siguientes recursos:
  + `mqtt:clientId:deviceClientId`: restringe el acceso en función del ID de cliente que use el dispositivo de cliente para conectarse al agente MQTT del dispositivo principal. *deviceClientId*Sustitúyalo por el ID de cliente que se va a utilizar.
+ `mqtt:publish`: otorga permiso para publicar mensajes MQTT en los temas.

  Esta operación admite los siguientes recursos:
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`: restringe el acceso en función del tema MQTT en el que un dispositivo de cliente publica un mensaje. *mqttTopic*Sustitúyalo por el tema que se va a utilizar.

    Este recurso no admite caracteres comodín de temas MQTT.
+ `mqtt:subscribe`: otorga permiso para suscribirse a los filtros de temas MQTT para recibir mensajes.

  Esta operación admite los siguientes recursos:
  + <a name="client-device-authorization-policy-resource-mqtt-topicfilter"></a>`mqtt:topicfilter:mqttTopicFilter`: restringe el acceso en función de los temas MQTT en los que un dispositivo de cliente puede suscribirse a los mensajes. *mqttTopicFilter*Sustitúyalo por el filtro de tema que desee utilizar.

    Este recurso admite los caracteres comodín de los temas MQTT `+` y `#`. Para obtener más información, consulte [Temas MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) en la *Guía para desarrolladores de AWS IoT Core *.

    El dispositivo de cliente puede suscribirse a los filtros de temas exactos que usted permita. Por ejemplo, si permite que el dispositivo de cliente se suscriba al recurso `mqtt:topicfilter:client/+/status`, el dispositivo de cliente puede suscribirse a `client/+/status`, pero no a `client/client1/status`.
Puede especificar el comodín `*` para permitir el acceso a todas las acciones.  
`resources`  
La lista de recursos que permiten las operaciones de esta política. Especifique los recursos que corresponden a las operaciones de esta política. Por ejemplo, puede especificar una lista de recursos de temas MQTT (`mqtt:topic:mqttTopic`) en una política que especifique la operación `mqtt:publish`.  
Puede especificar el comodín `*` para permitir el acceso a todos los recursos. No puede usar el comodín `*` para hacer coincidir los identificadores de recursos parciales. Por ejemplo, puede especificar **"resources": "\$1"**, pero no puede especificar **"resources": "mqtt:clientId:\$1"**.  
`statementDescription`  
(Opcional) Una descripción para esta declaración de política.

`certificates`  <a name="client-device-auth-component-configuration-certificates"></a>
(Opcional) Las opciones de configuración del certificado para este dispositivo principal. Este objeto contiene la siguiente información:    
`serverCertificateValiditySeconds`  
(Opcional) El periodo de tiempo (en segundos) luego del cual caduca el certificado del servidor MQTT local. Puede configurar esta opción para personalizar la frecuencia con la que los dispositivos de cliente se desconectan y se vuelven a conectar al dispositivo principal.  
Este componente rota el certificado del servidor MQTT local 24 horas antes de que caduque. El agente MQTT, como el [componente agente MQTT de Moquette](mqtt-broker-moquette-component.md), genera un nuevo certificado y se reinicia. Cuando esto ocurre, todos los dispositivos de cliente conectados a este dispositivo principal se desconectan. Los dispositivos de cliente se pueden volver a conectar al dispositivo principal tras un breve periodo.  
Valor predeterminado: `604800` (7 días)  
Valor mínimo: `172800` (2 días)  
Valor máximo: `864000` (10 días)

`performance`  
(Opcional) Las opciones de configuración del rendimiento de este dispositivo principal. Este objeto contiene la siguiente información:    
`maxActiveAuthTokens`  
(Opcional) El número máximo de tokens de autorización de dispositivos de cliente activos. Puede aumentar este número para permitir que un mayor número de dispositivos de cliente se conecten a un dispositivo principal sin tener que volver a autenticarlos.  
Valor predeterminado: `2500`  
`cloudRequestQueueSize`  
(Opcional) El número máximo de Nube de AWS solicitudes que se van a poner en cola antes de que este componente las rechace.  
Valor predeterminado: `100`  
`maxConcurrentCloudRequests`  
(Opcional) El número máximo de solicitudes simultáneas que se enviarán a la Nube de AWS. Puede aumentar este número para mejorar el rendimiento de la autenticación en los dispositivos principales a los que se conecta un gran número de dispositivos de cliente.  
Valor predeterminado: `1`

`certificateAuthority`  
(Opcional) Opciones de configuración de la autoridad de certificación para reemplazar la autoridad intermedia del dispositivo principal por su propia autoridad de certificación intermedia.  
Si configura su dispositivo principal de Greengrass con una autoridad de certificación (CA) personalizada y usa la misma CA para emitir los certificados de los dispositivos de cliente, Greengrass omite las comprobaciones de las políticas de autorización para las operaciones MQTT de los dispositivos de cliente. El componente de autenticación del dispositivo de cliente confía plenamente en los clientes que usan certificados firmados por la CA para la que está configurado.  
Para restringir este comportamiento al usar una CA personalizada, cree y firme los dispositivos de cliente con una CA diferente o intermedia y, a continuación, ajuste los campos `certificateUri` y `certificateChainUri` para que apunten a la CA intermedia correcta.
 Este objeto contiene la siguiente información:    
certificateUri  
La ubicación del certificado. Puede ser un URI del sistema de archivos o un URI que apunta a un certificado almacenado en un módulo de seguridad de hardware.  
`certificateChainUri`  
La ubicación de la cadena de certificados para la CA del dispositivo principal. Debe ser la cadena de certificados completa que lleva a la CA raíz. Puede ser un URI del sistema de archivos o un URI que apunta a una cadena de certificados almacenada en un módulo de seguridad de hardware.  
`privateKeyUri`  
La ubicación de la clave privada del dispositivo principal. Puede ser un URI del sistema de archivos o un URI que apunta a una clave privada de certificado almacenada en un módulo de seguridad de hardware.

`security`  
(Opcional) Opciones de configuración de seguridad para este dispositivo principal. Este objeto contiene la siguiente información:    
`clientDeviceTrustDurationMinutes`  
El tiempo en minutos durante el que se puede confiar en la información de autenticación de un dispositivo de cliente antes de que sea necesario volver a autenticarse con el dispositivo principal. El valor predeterminado es 1.

`metrics`  
(Opcional) Las opciones de métricas de este dispositivo principal. Las métricas de error solo se mostrarán si hay un error en la autenticación del dispositivo de cliente. Este objeto contiene la siguiente información:    
`disableMetrics`  
Si el campo `disableMetrics` está establecido como `true`, la autenticación del dispositivo de cliente no recopilará métricas.  
Valor predeterminado: `false`  
`aggregatePeriodSeconds`  
El periodo de agregación en segundos que determina la frecuencia con la que la autenticación del dispositivo de cliente agrega las métricas y las envía al agente de telemetría. Esto no cambia la frecuencia con la que se publican las métricas, ya que el agente de telemetría sigue publicándolas una vez al día.  
Valor predeterminado: `3600`

startupTimeoutSeconds  
(Opcional) El tiempo máximo en segundos para que se inicie el componente. El estado del componente cambia a `ERRORED` si supera este tiempo de espera.  
Valor predeterminado: `120`

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política restrictiva)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
En el siguiente ejemplo de configuración se especifica que se permita la conexión de los dispositivos cliente cuyos nombres comiencen por «» y publish/subscribe en todos los temas. `MyClientDevice`  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política permisiva)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
El siguiente ejemplo de configuración especifica permitir la conexión de todos los dispositivos cliente y publish/subscribe en todos los temas.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

------
#### [ v2.4.2 - v2.4.4 ]

`deviceGroups`  <a name="client-device-auth-component-configuration-devicegroups"></a>
Los grupos de dispositivos son grupos de dispositivos de cliente que tienen permisos para conectarse y comunicarse con un dispositivo principal. Use reglas de selección para identificar grupos de dispositivos de cliente y defina *políticas de autorización de dispositivos de cliente* que especifiquen los permisos para cada grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`formatVersion`  
La versión de formato de este objeto de configuración.  
Puede elegir entre las siguientes opciones:  
+ `2021-03-05`  
`definitions`  
Los grupos de dispositivos de este dispositivo principal. Cada definición especifica una *regla de selección* para evaluar si un dispositivo de cliente es miembro del grupo. Cada definición también especifica la política de permisos que se aplicará a los dispositivos de cliente que coincidan con la regla de selección. Si un dispositivo de cliente es miembro de varios grupos de dispositivos, los permisos del dispositivo se componen de la política de permisos de cada grupo.  
Este objeto contiene la siguiente información:    
`groupNameKey`  
El nombre de este grupo de dispositivos. *groupNameKey*Sustitúyalo por un nombre que ayude a identificar este grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`selectionRule`  
La consulta que especifica qué dispositivos de cliente son miembros de este grupo de dispositivos. Cuando un dispositivo de cliente se conecta, el dispositivo principal evalúa esta regla de selección para determinar si el dispositivo de cliente es miembro de este grupo de dispositivos. Si el dispositivo de cliente es miembro, el dispositivo principal usa la política de este grupo de dispositivos para autorizar las acciones del dispositivo de cliente.  
Cada regla de selección incluye al menos una *cláusula de regla de selección*, que es una consulta de expresión única que puede coincidir con los dispositivos de cliente. Las reglas de selección utilizan la misma sintaxis de consulta que la indexación de AWS IoT flotas. Para obtener más información sobre la sintaxis de las reglas de selección, consulte la [sintaxis de las consultas de indexación de flotas de AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) en la *Guía para desarrolladores de AWS IoT Core *.  
Use el comodín `*` para hacer coincidir varios dispositivos de cliente con una cláusula de regla de selección. Puede usar este comodín al final del nombre del objeto para hacer coincidir los dispositivos de cliente cuyos nombres comiencen por la cadena que especifique. También puede usar este comodín para hacer coincidir todos los dispositivos de cliente.  
Para seleccionar un valor que contenga dos puntos (`:`), evite los dos puntos y coloque un carácter de barra invertida (`\\`). En formatos como JSON, debe evitar los caracteres de barra invertida, por lo que debe escribir dos caracteres de barra invertida antes del carácter de dos puntos. Por ejemplo, especifique `thingName: MyTeam\\\\:ClientDevice1` para seleccionar un elemento cuyo nombre sea `MyTeam:ClientDevice1`.
Puede especificar el siguiente selector:  
+ `thingName`: el nombre del objeto de AWS IoT del dispositivo de cliente.

**Example Ejemplo de regla de selección**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres son `MyClientDevice1` o `MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Ejemplo de regla de selección (usar caracteres comodín)**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres comiencen por `MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Ejemplo de regla de selección (hacer coincidir todos los dispositivos)**  
La siguiente regla de selección coincide con todos los dispositivos de cliente.  

```
thingName: *
```  
`policyName`  
La política de permisos que se aplica a los dispositivos de cliente de este grupo de dispositivos. Especifique el nombre de la política que define en el objeto `policies`.  
`policies`  
Las políticas de autorización de dispositivos de cliente para dispositivos de cliente que se conectan al dispositivo principal. Cada política de autorización especifica un conjunto de acciones y los recursos en los que un dispositivo de cliente puede realizar esas acciones.  
Este objeto contiene la siguiente información:    
`policyNameKey`  
El nombre de esta política de autorización. *policyNameKey*Sustitúyala por un nombre que ayude a identificar esta política de autorización. Este nombre de política se usa para definir qué política se aplica a un grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`statementNameKey`  
El nombre de esta declaración de política. *statementNameKey*Sustitúyala por un nombre que ayude a identificar esta declaración de política.  
Este objeto contiene la siguiente información:    
`operations`  
La lista de operaciones que permiten usar los recursos de esta política.  
Puede incluir cualquiera de las siguientes operaciones:  
+ `mqtt:connect`: otorga permiso para conectarse al dispositivo principal. Los dispositivos de cliente deben tener este permiso para conectarse a un dispositivo principal.

  Esta operación admite los siguientes recursos:
  + `mqtt:clientId:deviceClientId`: restringe el acceso en función del ID de cliente que use el dispositivo de cliente para conectarse al agente MQTT del dispositivo principal. *deviceClientId*Sustitúyalo por el ID de cliente que se va a utilizar.
+ `mqtt:publish`: otorga permiso para publicar mensajes MQTT en los temas.

  Esta operación admite los siguientes recursos:
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`: restringe el acceso en función del tema MQTT en el que un dispositivo de cliente publica un mensaje. *mqttTopic*Sustitúyalo por el tema que se va a utilizar.

    Este recurso no admite caracteres comodín de temas MQTT.
+ `mqtt:subscribe`: otorga permiso para suscribirse a los filtros de temas MQTT para recibir mensajes.

  Esta operación admite los siguientes recursos:
  + <a name="client-device-authorization-policy-resource-mqtt-topicfilter"></a>`mqtt:topicfilter:mqttTopicFilter`: restringe el acceso en función de los temas MQTT en los que un dispositivo de cliente puede suscribirse a los mensajes. *mqttTopicFilter*Sustitúyalo por el filtro de tema que desee utilizar.

    Este recurso admite los caracteres comodín de los temas MQTT `+` y `#`. Para obtener más información, consulte [Temas MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) en la *Guía para desarrolladores de AWS IoT Core *.

    El dispositivo de cliente puede suscribirse a los filtros de temas exactos que usted permita. Por ejemplo, si permite que el dispositivo de cliente se suscriba al recurso `mqtt:topicfilter:client/+/status`, el dispositivo de cliente puede suscribirse a `client/+/status`, pero no a `client/client1/status`.
Puede especificar el comodín `*` para permitir el acceso a todas las acciones.  
`resources`  
La lista de recursos que permiten las operaciones de esta política. Especifique los recursos que corresponden a las operaciones de esta política. Por ejemplo, puede especificar una lista de recursos de temas MQTT (`mqtt:topic:mqttTopic`) en una política que especifique la operación `mqtt:publish`.  
Puede especificar el comodín `*` para permitir el acceso a todos los recursos. No puede usar el comodín `*` para hacer coincidir los identificadores de recursos parciales. Por ejemplo, puede especificar **"resources": "\$1"**, pero no puede especificar **"resources": "mqtt:clientId:\$1"**.  
`statementDescription`  
(Opcional) Una descripción para esta declaración de política.

`certificates`  <a name="client-device-auth-component-configuration-certificates"></a>
(Opcional) Las opciones de configuración del certificado para este dispositivo principal. Este objeto contiene la siguiente información:    
`serverCertificateValiditySeconds`  
(Opcional) El periodo de tiempo (en segundos) luego del cual caduca el certificado del servidor MQTT local. Puede configurar esta opción para personalizar la frecuencia con la que los dispositivos de cliente se desconectan y se vuelven a conectar al dispositivo principal.  
Este componente rota el certificado del servidor MQTT local 24 horas antes de que caduque. El agente MQTT, como el [componente agente MQTT de Moquette](mqtt-broker-moquette-component.md), genera un nuevo certificado y se reinicia. Cuando esto ocurre, todos los dispositivos de cliente conectados a este dispositivo principal se desconectan. Los dispositivos de cliente se pueden volver a conectar al dispositivo principal tras un breve periodo.  
Valor predeterminado: `604800` (7 días)  
Valor mínimo: `172800` (2 días)  
Valor máximo: `864000` (10 días)

`performance`  
(Opcional) Las opciones de configuración del rendimiento de este dispositivo principal. Este objeto contiene la siguiente información:    
`maxActiveAuthTokens`  
(Opcional) El número máximo de tokens de autorización de dispositivos de cliente activos. Puede aumentar este número para permitir que un mayor número de dispositivos de cliente se conecten a un dispositivo principal sin tener que volver a autenticarlos.  
Valor predeterminado: `2500`  
`cloudRequestQueueSize`  
(Opcional) El número máximo de Nube de AWS solicitudes que se van a poner en cola antes de que este componente las rechace.  
Valor predeterminado: `100`  
`maxConcurrentCloudRequests`  
(Opcional) El número máximo de solicitudes simultáneas que se enviarán a la Nube de AWS. Puede aumentar este número para mejorar el rendimiento de la autenticación en los dispositivos principales a los que se conecta un gran número de dispositivos de cliente.  
Valor predeterminado: `1`

`certificateAuthority`  
(Opcional) Opciones de configuración de la autoridad de certificación para reemplazar la autoridad intermedia del dispositivo principal por su propia autoridad de certificación intermedia.  
Si configura su dispositivo principal de Greengrass con una autoridad de certificación (CA) personalizada y usa la misma CA para emitir los certificados de los dispositivos de cliente, Greengrass omite las comprobaciones de las políticas de autorización para las operaciones MQTT de los dispositivos de cliente. El componente de autenticación del dispositivo de cliente confía plenamente en los clientes que usan certificados firmados por la CA para la que está configurado.  
Para restringir este comportamiento al usar una CA personalizada, cree y firme los dispositivos de cliente con una CA diferente o intermedia y, a continuación, ajuste los campos `certificateUri` y `certificateChainUri` para que apunten a la CA intermedia correcta.
 Este objeto contiene la siguiente información:    
certificateUri  
La ubicación del certificado. Puede ser un URI del sistema de archivos o un URI que apunta a un certificado almacenado en un módulo de seguridad de hardware.  
`certificateChainUri`  
La ubicación de la cadena de certificados para la CA del dispositivo principal. Debe ser la cadena de certificados completa que lleva a la CA raíz. Puede ser un URI del sistema de archivos o un URI que apunta a una cadena de certificados almacenada en un módulo de seguridad de hardware.  
`privateKeyUri`  
La ubicación de la clave privada del dispositivo principal. Puede ser un URI del sistema de archivos o un URI que apunta a una clave privada de certificado almacenada en un módulo de seguridad de hardware.

`security`  
(Opcional) Opciones de configuración de seguridad para este dispositivo principal. Este objeto contiene la siguiente información:    
`clientDeviceTrustDurationMinutes`  
El tiempo en minutos durante el que se puede confiar en la información de autenticación de un dispositivo de cliente antes de que sea necesario volver a autenticarse con el dispositivo principal. El valor predeterminado es 1.

`metrics`  
(Opcional) Las opciones de métricas de este dispositivo principal. Las métricas de error solo se mostrarán si hay un error en la autenticación del dispositivo de cliente. Este objeto contiene la siguiente información:    
`disableMetrics`  
Si el campo `disableMetrics` está establecido como `true`, la autenticación del dispositivo de cliente no recopilará métricas.  
Valor predeterminado: `false`  
`aggregatePeriodSeconds`  
El periodo de agregación en segundos que determina la frecuencia con la que la autenticación del dispositivo de cliente agrega las métricas y las envía al agente de telemetría. Esto no cambia la frecuencia con la que se publican las métricas, ya que el agente de telemetría sigue publicándolas una vez al día.  
Valor predeterminado: `3600`

startupTimeoutSeconds  
(Opcional) El tiempo máximo en segundos para que se inicie el componente. El estado del componente cambia a `ERRORED` si supera este tiempo de espera.  
Valor predeterminado: `120`

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política restrictiva)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
En el siguiente ejemplo de configuración se especifica que se permita la conexión de los dispositivos cliente cuyos nombres comiencen por «» y publish/subscribe en todos los temas. `MyClientDevice`  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política permisiva)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
El siguiente ejemplo de configuración especifica permitir la conexión de todos los dispositivos cliente y publish/subscribe en todos los temas.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

------
#### [ v2.4.0 - v2.4.1 ]

`deviceGroups`  <a name="client-device-auth-component-configuration-devicegroups"></a>
Los grupos de dispositivos son grupos de dispositivos de cliente que tienen permisos para conectarse y comunicarse con un dispositivo principal. Use reglas de selección para identificar grupos de dispositivos de cliente y defina *políticas de autorización de dispositivos de cliente* que especifiquen los permisos para cada grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`formatVersion`  
La versión de formato de este objeto de configuración.  
Puede elegir entre las siguientes opciones:  
+ `2021-03-05`  
`definitions`  
Los grupos de dispositivos de este dispositivo principal. Cada definición especifica una *regla de selección* para evaluar si un dispositivo de cliente es miembro del grupo. Cada definición también especifica la política de permisos que se aplicará a los dispositivos de cliente que coincidan con la regla de selección. Si un dispositivo de cliente es miembro de varios grupos de dispositivos, los permisos del dispositivo se componen de la política de permisos de cada grupo.  
Este objeto contiene la siguiente información:    
`groupNameKey`  
El nombre de este grupo de dispositivos. *groupNameKey*Sustitúyalo por un nombre que ayude a identificar este grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`selectionRule`  
La consulta que especifica qué dispositivos de cliente son miembros de este grupo de dispositivos. Cuando un dispositivo de cliente se conecta, el dispositivo principal evalúa esta regla de selección para determinar si el dispositivo de cliente es miembro de este grupo de dispositivos. Si el dispositivo de cliente es miembro, el dispositivo principal usa la política de este grupo de dispositivos para autorizar las acciones del dispositivo de cliente.  
Cada regla de selección incluye al menos una *cláusula de regla de selección*, que es una consulta de expresión única que puede coincidir con los dispositivos de cliente. Las reglas de selección utilizan la misma sintaxis de consulta que la indexación de AWS IoT flotas. Para obtener más información sobre la sintaxis de las reglas de selección, consulte la [sintaxis de las consultas de indexación de flotas de AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) en la *Guía para desarrolladores de AWS IoT Core *.  
Use el comodín `*` para hacer coincidir varios dispositivos de cliente con una cláusula de regla de selección. Puede usar este comodín al final del nombre del objeto para hacer coincidir los dispositivos de cliente cuyos nombres comiencen por la cadena que especifique. También puede usar este comodín para hacer coincidir todos los dispositivos de cliente.  
Para seleccionar un valor que contenga dos puntos (`:`), evite los dos puntos y coloque un carácter de barra invertida (`\\`). En formatos como JSON, debe evitar los caracteres de barra invertida, por lo que debe escribir dos caracteres de barra invertida antes del carácter de dos puntos. Por ejemplo, especifique `thingName: MyTeam\\\\:ClientDevice1` para seleccionar un elemento cuyo nombre sea `MyTeam:ClientDevice1`.
Puede especificar el siguiente selector:  
+ `thingName`: el nombre del objeto de AWS IoT del dispositivo de cliente.

**Example Ejemplo de regla de selección**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres son `MyClientDevice1` o `MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Ejemplo de regla de selección (usar caracteres comodín)**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres comiencen por `MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Ejemplo de regla de selección (hacer coincidir todos los dispositivos)**  
La siguiente regla de selección coincide con todos los dispositivos de cliente.  

```
thingName: *
```  
`policyName`  
La política de permisos que se aplica a los dispositivos de cliente de este grupo de dispositivos. Especifique el nombre de la política que define en el objeto `policies`.  
`policies`  
Las políticas de autorización de dispositivos de cliente para dispositivos de cliente que se conectan al dispositivo principal. Cada política de autorización especifica un conjunto de acciones y los recursos en los que un dispositivo de cliente puede realizar esas acciones.  
Este objeto contiene la siguiente información:    
`policyNameKey`  
El nombre de esta política de autorización. *policyNameKey*Sustitúyala por un nombre que ayude a identificar esta política de autorización. Este nombre de política se usa para definir qué política se aplica a un grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`statementNameKey`  
El nombre de esta declaración de política. *statementNameKey*Sustitúyala por un nombre que ayude a identificar esta declaración de política.  
Este objeto contiene la siguiente información:    
`operations`  
La lista de operaciones que permiten usar los recursos de esta política.  
Puede incluir cualquiera de las siguientes operaciones:  
+ `mqtt:connect`: otorga permiso para conectarse al dispositivo principal. Los dispositivos de cliente deben tener este permiso para conectarse a un dispositivo principal.

  Esta operación admite los siguientes recursos:
  + `mqtt:clientId:deviceClientId`: restringe el acceso en función del ID de cliente que use el dispositivo de cliente para conectarse al agente MQTT del dispositivo principal. *deviceClientId*Sustitúyalo por el ID de cliente que se va a utilizar.
+ `mqtt:publish`: otorga permiso para publicar mensajes MQTT en los temas.

  Esta operación admite los siguientes recursos:
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`: restringe el acceso en función del tema MQTT en el que un dispositivo de cliente publica un mensaje. *mqttTopic*Sustitúyalo por el tema que se va a utilizar.

    Este recurso no admite caracteres comodín de temas MQTT.
+ `mqtt:subscribe`: otorga permiso para suscribirse a los filtros de temas MQTT para recibir mensajes.

  Esta operación admite los siguientes recursos:
  + <a name="client-device-authorization-policy-resource-mqtt-topicfilter"></a>`mqtt:topicfilter:mqttTopicFilter`: restringe el acceso en función de los temas MQTT en los que un dispositivo de cliente puede suscribirse a los mensajes. *mqttTopicFilter*Sustitúyalo por el filtro de tema que desee utilizar.

    Este recurso admite los caracteres comodín de los temas MQTT `+` y `#`. Para obtener más información, consulte [Temas MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) en la *Guía para desarrolladores de AWS IoT Core *.

    El dispositivo de cliente puede suscribirse a los filtros de temas exactos que usted permita. Por ejemplo, si permite que el dispositivo de cliente se suscriba al recurso `mqtt:topicfilter:client/+/status`, el dispositivo de cliente puede suscribirse a `client/+/status`, pero no a `client/client1/status`.
Puede especificar el comodín `*` para permitir el acceso a todas las acciones.  
`resources`  
La lista de recursos que permiten las operaciones de esta política. Especifique los recursos que corresponden a las operaciones de esta política. Por ejemplo, puede especificar una lista de recursos de temas MQTT (`mqtt:topic:mqttTopic`) en una política que especifique la operación `mqtt:publish`.  
Puede especificar el comodín `*` para permitir el acceso a todos los recursos. No puede usar el comodín `*` para hacer coincidir los identificadores de recursos parciales. Por ejemplo, puede especificar **"resources": "\$1"**, pero no puede especificar **"resources": "mqtt:clientId:\$1"**.  
`statementDescription`  
(Opcional) Una descripción para esta declaración de política.

`certificates`  <a name="client-device-auth-component-configuration-certificates"></a>
(Opcional) Las opciones de configuración del certificado para este dispositivo principal. Este objeto contiene la siguiente información:    
`serverCertificateValiditySeconds`  
(Opcional) El periodo de tiempo (en segundos) luego del cual caduca el certificado del servidor MQTT local. Puede configurar esta opción para personalizar la frecuencia con la que los dispositivos de cliente se desconectan y se vuelven a conectar al dispositivo principal.  
Este componente rota el certificado del servidor MQTT local 24 horas antes de que caduque. El agente MQTT, como el [componente agente MQTT de Moquette](mqtt-broker-moquette-component.md), genera un nuevo certificado y se reinicia. Cuando esto ocurre, todos los dispositivos de cliente conectados a este dispositivo principal se desconectan. Los dispositivos de cliente se pueden volver a conectar al dispositivo principal tras un breve periodo.  
Valor predeterminado: `604800` (7 días)  
Valor mínimo: `172800` (2 días)  
Valor máximo: `864000` (10 días)

`performance`  
(Opcional) Las opciones de configuración del rendimiento de este dispositivo principal. Este objeto contiene la siguiente información:    
`maxActiveAuthTokens`  
(Opcional) El número máximo de tokens de autorización de dispositivos de cliente activos. Puede aumentar este número para permitir que un mayor número de dispositivos de cliente se conecten a un dispositivo principal sin tener que volver a autenticarlos.  
Valor predeterminado: `2500`  
`cloudRequestQueueSize`  
(Opcional) El número máximo de Nube de AWS solicitudes que se van a poner en cola antes de que este componente las rechace.  
Valor predeterminado: `100`  
`maxConcurrentCloudRequests`  
(Opcional) El número máximo de solicitudes simultáneas que se enviarán a la Nube de AWS. Puede aumentar este número para mejorar el rendimiento de la autenticación en los dispositivos principales a los que se conecta un gran número de dispositivos de cliente.  
Valor predeterminado: `1`

`certificateAuthority`  
(Opcional) Opciones de configuración de la autoridad de certificación para reemplazar la autoridad intermedia del dispositivo principal por su propia autoridad de certificación intermedia. Este objeto contiene la siguiente información:  
 Este objeto contiene la siguiente información:    
certificateUri  
La ubicación del certificado. Puede ser un URI del sistema de archivos o un URI que apunta a un certificado almacenado en un módulo de seguridad de hardware.  
`certificateChainUri`  
La ubicación de la cadena de certificados para la CA del dispositivo principal. Debe ser la cadena de certificados completa que lleva a la CA raíz. Puede ser un URI del sistema de archivos o un URI que apunta a una cadena de certificados almacenada en un módulo de seguridad de hardware.  
`privateKeyUri`  
La ubicación de la clave privada del dispositivo principal. Puede ser un URI del sistema de archivos o un URI que apunta a una clave privada de certificado almacenada en un módulo de seguridad de hardware.

`security`  
(Opcional) Opciones de configuración de seguridad para este dispositivo principal. Este objeto contiene la siguiente información:    
`clientDeviceTrustDurationMinutes`  
El tiempo en minutos durante el que se puede confiar en la información de autenticación de un dispositivo de cliente antes de que sea necesario volver a autenticarse con el dispositivo principal. El valor predeterminado es 1.

`metrics`  
(Opcional) Las opciones de métricas de este dispositivo principal. Las métricas de error solo se mostrarán si hay un error en la autenticación del dispositivo de cliente. Este objeto contiene la siguiente información:    
`disableMetrics`  
Si el campo `disableMetrics` está establecido como `true`, la autenticación del dispositivo de cliente no recopilará métricas.  
Valor predeterminado: `false`  
`aggregatePeriodSeconds`  
El periodo de agregación en segundos que determina la frecuencia con la que la autenticación del dispositivo de cliente agrega las métricas y las envía al agente de telemetría. Esto no cambia la frecuencia con la que se publican las métricas, ya que el agente de telemetría sigue publicándolas una vez al día.  
Valor predeterminado: `3600`

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política restrictiva)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
En el siguiente ejemplo de configuración se especifica que se permita la conexión de los dispositivos cliente cuyos nombres comiencen por «» y publish/subscribe en todos los temas. `MyClientDevice`  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política permisiva)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
El siguiente ejemplo de configuración especifica permitir la conexión de todos los dispositivos cliente y publish/subscribe en todos los temas.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

------
#### [ v2.3.x ]

`deviceGroups`  <a name="client-device-auth-component-configuration-devicegroups"></a>
Los grupos de dispositivos son grupos de dispositivos de cliente que tienen permisos para conectarse y comunicarse con un dispositivo principal. Use reglas de selección para identificar grupos de dispositivos de cliente y defina *políticas de autorización de dispositivos de cliente* que especifiquen los permisos para cada grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`formatVersion`  
La versión de formato de este objeto de configuración.  
Puede elegir entre las siguientes opciones:  
+ `2021-03-05`  
`definitions`  
Los grupos de dispositivos de este dispositivo principal. Cada definición especifica una *regla de selección* para evaluar si un dispositivo de cliente es miembro del grupo. Cada definición también especifica la política de permisos que se aplicará a los dispositivos de cliente que coincidan con la regla de selección. Si un dispositivo de cliente es miembro de varios grupos de dispositivos, los permisos del dispositivo se componen de la política de permisos de cada grupo.  
Este objeto contiene la siguiente información:    
`groupNameKey`  
El nombre de este grupo de dispositivos. *groupNameKey*Sustitúyalo por un nombre que ayude a identificar este grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`selectionRule`  
La consulta que especifica qué dispositivos de cliente son miembros de este grupo de dispositivos. Cuando un dispositivo de cliente se conecta, el dispositivo principal evalúa esta regla de selección para determinar si el dispositivo de cliente es miembro de este grupo de dispositivos. Si el dispositivo de cliente es miembro, el dispositivo principal usa la política de este grupo de dispositivos para autorizar las acciones del dispositivo de cliente.  
Cada regla de selección incluye al menos una *cláusula de regla de selección*, que es una consulta de expresión única que puede coincidir con los dispositivos de cliente. Las reglas de selección utilizan la misma sintaxis de consulta que la indexación de AWS IoT flotas. Para obtener más información sobre la sintaxis de las reglas de selección, consulte la [sintaxis de las consultas de indexación de flotas de AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) en la *Guía para desarrolladores de AWS IoT Core *.  
Use el comodín `*` para hacer coincidir varios dispositivos de cliente con una cláusula de regla de selección. Puede usar este comodín al final del nombre del objeto para hacer coincidir los dispositivos de cliente cuyos nombres comiencen por la cadena que especifique. También puede usar este comodín para hacer coincidir todos los dispositivos de cliente.  
Para seleccionar un valor que contenga dos puntos (`:`), evite los dos puntos y coloque un carácter de barra invertida (`\\`). En formatos como JSON, debe evitar los caracteres de barra invertida, por lo que debe escribir dos caracteres de barra invertida antes del carácter de dos puntos. Por ejemplo, especifique `thingName: MyTeam\\\\:ClientDevice1` para seleccionar un elemento cuyo nombre sea `MyTeam:ClientDevice1`.
Puede especificar el siguiente selector:  
+ `thingName`: el nombre del objeto de AWS IoT del dispositivo de cliente.

**Example Ejemplo de regla de selección**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres son `MyClientDevice1` o `MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Ejemplo de regla de selección (usar caracteres comodín)**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres comiencen por `MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Ejemplo de regla de selección (hacer coincidir todos los dispositivos)**  
La siguiente regla de selección coincide con todos los dispositivos de cliente.  

```
thingName: *
```  
`policyName`  
La política de permisos que se aplica a los dispositivos de cliente de este grupo de dispositivos. Especifique el nombre de la política que define en el objeto `policies`.  
`policies`  
Las políticas de autorización de dispositivos de cliente para dispositivos de cliente que se conectan al dispositivo principal. Cada política de autorización especifica un conjunto de acciones y los recursos en los que un dispositivo de cliente puede realizar esas acciones.  
Este objeto contiene la siguiente información:    
`policyNameKey`  
El nombre de esta política de autorización. *policyNameKey*Sustitúyala por un nombre que ayude a identificar esta política de autorización. Este nombre de política se usa para definir qué política se aplica a un grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`statementNameKey`  
El nombre de esta declaración de política. *statementNameKey*Sustitúyala por un nombre que ayude a identificar esta declaración de política.  
Este objeto contiene la siguiente información:    
`operations`  
La lista de operaciones que permiten usar los recursos de esta política.  
Puede incluir cualquiera de las siguientes operaciones:  
+ `mqtt:connect`: otorga permiso para conectarse al dispositivo principal. Los dispositivos de cliente deben tener este permiso para conectarse a un dispositivo principal.

  Esta operación admite los siguientes recursos:
  + `mqtt:clientId:deviceClientId`: restringe el acceso en función del ID de cliente que use el dispositivo de cliente para conectarse al agente MQTT del dispositivo principal. *deviceClientId*Sustitúyalo por el ID de cliente que se va a utilizar.
+ `mqtt:publish`: otorga permiso para publicar mensajes MQTT en los temas.

  Esta operación admite los siguientes recursos:
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`: restringe el acceso en función del tema MQTT en el que un dispositivo de cliente publica un mensaje. *mqttTopic*Sustitúyalo por el tema que se va a utilizar.

    Este recurso no admite caracteres comodín de temas MQTT.
+ `mqtt:subscribe`: otorga permiso para suscribirse a los filtros de temas MQTT para recibir mensajes.

  Esta operación admite los siguientes recursos:
  + <a name="client-device-authorization-policy-resource-mqtt-topicfilter"></a>`mqtt:topicfilter:mqttTopicFilter`: restringe el acceso en función de los temas MQTT en los que un dispositivo de cliente puede suscribirse a los mensajes. *mqttTopicFilter*Sustitúyalo por el filtro de tema que desee utilizar.

    Este recurso admite los caracteres comodín de los temas MQTT `+` y `#`. Para obtener más información, consulte [Temas MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) en la *Guía para desarrolladores de AWS IoT Core *.

    El dispositivo de cliente puede suscribirse a los filtros de temas exactos que usted permita. Por ejemplo, si permite que el dispositivo de cliente se suscriba al recurso `mqtt:topicfilter:client/+/status`, el dispositivo de cliente puede suscribirse a `client/+/status`, pero no a `client/client1/status`.
Puede especificar el comodín `*` para permitir el acceso a todas las acciones.  
`resources`  
La lista de recursos que permiten las operaciones de esta política. Especifique los recursos que corresponden a las operaciones de esta política. Por ejemplo, puede especificar una lista de recursos de temas MQTT (`mqtt:topic:mqttTopic`) en una política que especifique la operación `mqtt:publish`.  
Puede especificar el comodín `*` para permitir el acceso a todos los recursos. No puede usar el comodín `*` para hacer coincidir los identificadores de recursos parciales. Por ejemplo, puede especificar **"resources": "\$1"**, pero no puede especificar **"resources": "mqtt:clientId:\$1"**.  
`statementDescription`  
(Opcional) Una descripción para esta declaración de política.

`certificates`  <a name="client-device-auth-component-configuration-certificates"></a>
(Opcional) Las opciones de configuración del certificado para este dispositivo principal. Este objeto contiene la siguiente información:    
`serverCertificateValiditySeconds`  
(Opcional) El periodo de tiempo (en segundos) luego del cual caduca el certificado del servidor MQTT local. Puede configurar esta opción para personalizar la frecuencia con la que los dispositivos de cliente se desconectan y se vuelven a conectar al dispositivo principal.  
Este componente rota el certificado del servidor MQTT local 24 horas antes de que caduque. El agente MQTT, como el [componente agente MQTT de Moquette](mqtt-broker-moquette-component.md), genera un nuevo certificado y se reinicia. Cuando esto ocurre, todos los dispositivos de cliente conectados a este dispositivo principal se desconectan. Los dispositivos de cliente se pueden volver a conectar al dispositivo principal tras un breve periodo.  
Valor predeterminado: `604800` (7 días)  
Valor mínimo: `172800` (2 días)  
Valor máximo: `864000` (10 días)

`performance`  
(Opcional) Las opciones de configuración del rendimiento de este dispositivo principal. Este objeto contiene la siguiente información:    
`maxActiveAuthTokens`  
(Opcional) El número máximo de tokens de autorización de dispositivos de cliente activos. Puede aumentar este número para permitir que un mayor número de dispositivos de cliente se conecten a un solo dispositivo principal sin volver a autenticarlos.  
Valor predeterminado: `2500`  
`cloudRequestQueueSize`  
(Opcional) El número máximo de Nube de AWS solicitudes que se van a poner en cola antes de que este componente las rechace.  
Valor predeterminado: `100`  
`maxConcurrentCloudRequests`  
(Opcional) El número máximo de solicitudes simultáneas que se enviarán a la Nube de AWS. Puede aumentar este número para mejorar el rendimiento de la autenticación en los dispositivos principales a los que se conecta un gran número de dispositivos de cliente.  
Valor predeterminado: `1`

`certificateAuthority`  
(Opcional) Opciones de configuración de la autoridad de certificación para reemplazar la autoridad intermedia del dispositivo principal por su propia autoridad de certificación intermedia. Este objeto contiene la siguiente información:    
certificateUri  
La ubicación del certificado. Puede ser un URI del sistema de archivos o un URI que apunta a un certificado almacenado en un módulo de seguridad de hardware.  
`certificateChainUri`  
La ubicación de la cadena de certificados para la CA del dispositivo principal. Debe ser la cadena de certificados completa que lleva a la CA raíz. Puede ser un URI del sistema de archivos o un URI que apunta a una cadena de certificados almacenada en un módulo de seguridad de hardware.  
`privateKeyUri`  
La ubicación de la clave privada del dispositivo principal. Puede ser un URI del sistema de archivos o un URI que apunta a una clave privada de certificado almacenada en un módulo de seguridad de hardware.

`security`  
(Opcional) Opciones de configuración de seguridad para este dispositivo principal. Este objeto contiene la siguiente información:    
`clientDeviceTrustDurationMinutes`  
La duración en minutos durante la que se puede confiar en la información de autenticación de un dispositivo de cliente antes de que sea necesario volver a autenticarse con el dispositivo principal. El valor predeterminado es 1.

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política restrictiva)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
En el siguiente ejemplo de configuración se especifica que se permita la conexión de los dispositivos cliente cuyos nombres comiencen por «» y publish/subscribe en todos los temas. `MyClientDevice`  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política permisiva)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
El siguiente ejemplo de configuración especifica permitir la conexión de todos los dispositivos cliente y publish/subscribe en todos los temas.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

------
#### [ v2.2.x ]

`deviceGroups`  <a name="client-device-auth-component-configuration-devicegroups"></a>
Los grupos de dispositivos son grupos de dispositivos de cliente que tienen permisos para conectarse y comunicarse con un dispositivo principal. Use reglas de selección para identificar grupos de dispositivos de cliente y defina *políticas de autorización de dispositivos de cliente* que especifiquen los permisos para cada grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`formatVersion`  
La versión de formato de este objeto de configuración.  
Puede elegir entre las siguientes opciones:  
+ `2021-03-05`  
`definitions`  
Los grupos de dispositivos de este dispositivo principal. Cada definición especifica una *regla de selección* para evaluar si un dispositivo de cliente es miembro del grupo. Cada definición también especifica la política de permisos que se aplicará a los dispositivos de cliente que coincidan con la regla de selección. Si un dispositivo de cliente es miembro de varios grupos de dispositivos, los permisos del dispositivo se componen de la política de permisos de cada grupo.  
Este objeto contiene la siguiente información:    
`groupNameKey`  
El nombre de este grupo de dispositivos. *groupNameKey*Sustitúyalo por un nombre que ayude a identificar este grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`selectionRule`  
La consulta que especifica qué dispositivos de cliente son miembros de este grupo de dispositivos. Cuando un dispositivo de cliente se conecta, el dispositivo principal evalúa esta regla de selección para determinar si el dispositivo de cliente es miembro de este grupo de dispositivos. Si el dispositivo de cliente es miembro, el dispositivo principal usa la política de este grupo de dispositivos para autorizar las acciones del dispositivo de cliente.  
Cada regla de selección incluye al menos una *cláusula de regla de selección*, que es una consulta de expresión única que puede coincidir con los dispositivos de cliente. Las reglas de selección utilizan la misma sintaxis de consulta que la indexación de AWS IoT flotas. Para obtener más información sobre la sintaxis de las reglas de selección, consulte la [sintaxis de las consultas de indexación de flotas de AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) en la *Guía para desarrolladores de AWS IoT Core *.  
Use el comodín `*` para hacer coincidir varios dispositivos de cliente con una cláusula de regla de selección. Puede usar este comodín al final del nombre del objeto para hacer coincidir los dispositivos de cliente cuyos nombres comiencen por la cadena que especifique. También puede usar este comodín para hacer coincidir todos los dispositivos de cliente.  
Para seleccionar un valor que contenga dos puntos (`:`), evite los dos puntos y coloque un carácter de barra invertida (`\\`). En formatos como JSON, debe evitar los caracteres de barra invertida, por lo que debe escribir dos caracteres de barra invertida antes del carácter de dos puntos. Por ejemplo, especifique `thingName: MyTeam\\\\:ClientDevice1` para seleccionar un elemento cuyo nombre sea `MyTeam:ClientDevice1`.
Puede especificar el siguiente selector:  
+ `thingName`: el nombre del objeto de AWS IoT del dispositivo de cliente.

**Example Ejemplo de regla de selección**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres son `MyClientDevice1` o `MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Ejemplo de regla de selección (usar caracteres comodín)**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres comiencen por `MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Ejemplo de regla de selección (hacer coincidir todos los dispositivos)**  
La siguiente regla de selección coincide con todos los dispositivos de cliente.  

```
thingName: *
```  
`policyName`  
La política de permisos que se aplica a los dispositivos de cliente de este grupo de dispositivos. Especifique el nombre de la política que define en el objeto `policies`.  
`policies`  
Las políticas de autorización de dispositivos de cliente para dispositivos de cliente que se conectan al dispositivo principal. Cada política de autorización especifica un conjunto de acciones y los recursos en los que un dispositivo de cliente puede realizar esas acciones.  
Este objeto contiene la siguiente información:    
`policyNameKey`  
El nombre de esta política de autorización. *policyNameKey*Sustitúyala por un nombre que ayude a identificar esta política de autorización. Este nombre de política se usa para definir qué política se aplica a un grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`statementNameKey`  
El nombre de esta declaración de política. *statementNameKey*Sustitúyala por un nombre que ayude a identificar esta declaración de política.  
Este objeto contiene la siguiente información:    
`operations`  
La lista de operaciones que permiten usar los recursos de esta política.  
Puede incluir cualquiera de las siguientes operaciones:  
+ `mqtt:connect`: otorga permiso para conectarse al dispositivo principal. Los dispositivos de cliente deben tener este permiso para conectarse a un dispositivo principal.

  Esta operación admite los siguientes recursos:
  + `mqtt:clientId:deviceClientId`: restringe el acceso en función del ID de cliente que use el dispositivo de cliente para conectarse al agente MQTT del dispositivo principal. *deviceClientId*Sustitúyalo por el ID de cliente que se va a utilizar.
+ `mqtt:publish`: otorga permiso para publicar mensajes MQTT en los temas.

  Esta operación admite los siguientes recursos:
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`: restringe el acceso en función del tema MQTT en el que un dispositivo de cliente publica un mensaje. *mqttTopic*Sustitúyalo por el tema que se va a utilizar.

    Este recurso no admite caracteres comodín de temas MQTT.
+ `mqtt:subscribe`: otorga permiso para suscribirse a los filtros de temas MQTT para recibir mensajes.

  Esta operación admite los siguientes recursos:
  + <a name="client-device-authorization-policy-resource-mqtt-topicfilter"></a>`mqtt:topicfilter:mqttTopicFilter`: restringe el acceso en función de los temas MQTT en los que un dispositivo de cliente puede suscribirse a los mensajes. *mqttTopicFilter*Sustitúyalo por el filtro de tema que desee utilizar.

    Este recurso admite los caracteres comodín de los temas MQTT `+` y `#`. Para obtener más información, consulte [Temas MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) en la *Guía para desarrolladores de AWS IoT Core *.

    El dispositivo de cliente puede suscribirse a los filtros de temas exactos que usted permita. Por ejemplo, si permite que el dispositivo de cliente se suscriba al recurso `mqtt:topicfilter:client/+/status`, el dispositivo de cliente puede suscribirse a `client/+/status`, pero no a `client/client1/status`.
Puede especificar el comodín `*` para permitir el acceso a todas las acciones.  
`resources`  
La lista de recursos que permiten las operaciones de esta política. Especifique los recursos que corresponden a las operaciones de esta política. Por ejemplo, puede especificar una lista de recursos de temas MQTT (`mqtt:topic:mqttTopic`) en una política que especifique la operación `mqtt:publish`.  
Puede especificar el comodín `*` para permitir el acceso a todos los recursos. No puede usar el comodín `*` para hacer coincidir los identificadores de recursos parciales. Por ejemplo, puede especificar **"resources": "\$1"**, pero no puede especificar **"resources": "mqtt:clientId:\$1"**.  
`statementDescription`  
(Opcional) Una descripción para esta declaración de política.

`certificates`  <a name="client-device-auth-component-configuration-certificates"></a>
(Opcional) Las opciones de configuración del certificado para este dispositivo principal. Este objeto contiene la siguiente información:    
`serverCertificateValiditySeconds`  
(Opcional) El periodo de tiempo (en segundos) luego del cual caduca el certificado del servidor MQTT local. Puede configurar esta opción para personalizar la frecuencia con la que los dispositivos de cliente se desconectan y se vuelven a conectar al dispositivo principal.  
Este componente rota el certificado del servidor MQTT local 24 horas antes de que caduque. El agente MQTT, como el [componente agente MQTT de Moquette](mqtt-broker-moquette-component.md), genera un nuevo certificado y se reinicia. Cuando esto ocurre, todos los dispositivos de cliente conectados a este dispositivo principal se desconectan. Los dispositivos de cliente se pueden volver a conectar al dispositivo principal tras un breve periodo.  
Valor predeterminado: `604800` (7 días)  
Valor mínimo: `172800` (2 días)  
Valor máximo: `864000` (10 días)

`performance`  
(Opcional) Las opciones de configuración del rendimiento de este dispositivo principal. Este objeto contiene la siguiente información:    
`maxActiveAuthTokens`  
(Opcional) El número máximo de tokens de autorización de dispositivos de cliente activos. Puede aumentar este número para permitir que un mayor número de dispositivos de cliente se conecten a un solo dispositivo principal sin volver a autenticarlos.  
Valor predeterminado: `2500`  
`cloudRequestQueueSize`  
(Opcional) El número máximo de Nube de AWS solicitudes que se van a poner en cola antes de que este componente las rechace.  
Valor predeterminado: `100`  
`maxConcurrentCloudRequests`  
(Opcional) El número máximo de solicitudes simultáneas que se enviarán a la Nube de AWS. Puede aumentar este número para mejorar el rendimiento de la autenticación en los dispositivos principales a los que se conecta un gran número de dispositivos de cliente.  
Valor predeterminado: `1`

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política restrictiva)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
En el siguiente ejemplo de configuración se especifica que se permita la conexión de los dispositivos cliente cuyos nombres comiencen por: y publish/subscribe en todos los temas. `MyClientDevice`  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política permisiva)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
El siguiente ejemplo de configuración especifica permitir la conexión de todos los dispositivos cliente y publish/subscribe en todos los temas.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

------
#### [ v2.1.x ]

`deviceGroups`  <a name="client-device-auth-component-configuration-devicegroups"></a>
Los grupos de dispositivos son grupos de dispositivos de cliente que tienen permisos para conectarse y comunicarse con un dispositivo principal. Use reglas de selección para identificar grupos de dispositivos de cliente y defina *políticas de autorización de dispositivos de cliente* que especifiquen los permisos para cada grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`formatVersion`  
La versión de formato de este objeto de configuración.  
Puede elegir entre las siguientes opciones:  
+ `2021-03-05`  
`definitions`  
Los grupos de dispositivos de este dispositivo principal. Cada definición especifica una *regla de selección* para evaluar si un dispositivo de cliente es miembro del grupo. Cada definición también especifica la política de permisos que se aplicará a los dispositivos de cliente que coincidan con la regla de selección. Si un dispositivo de cliente es miembro de varios grupos de dispositivos, los permisos del dispositivo se componen de la política de permisos de cada grupo.  
Este objeto contiene la siguiente información:    
`groupNameKey`  
El nombre de este grupo de dispositivos. *groupNameKey*Sustitúyalo por un nombre que ayude a identificar este grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`selectionRule`  
La consulta que especifica qué dispositivos de cliente son miembros de este grupo de dispositivos. Cuando un dispositivo de cliente se conecta, el dispositivo principal evalúa esta regla de selección para determinar si el dispositivo de cliente es miembro de este grupo de dispositivos. Si el dispositivo de cliente es miembro, el dispositivo principal usa la política de este grupo de dispositivos para autorizar las acciones del dispositivo de cliente.  
Cada regla de selección incluye al menos una *cláusula de regla de selección*, que es una consulta de expresión única que puede coincidir con los dispositivos de cliente. Las reglas de selección utilizan la misma sintaxis de consulta que la indexación de AWS IoT flotas. Para obtener más información sobre la sintaxis de las reglas de selección, consulte la [sintaxis de las consultas de indexación de flotas de AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) en la *Guía para desarrolladores de AWS IoT Core *.  
Use el comodín `*` para hacer coincidir varios dispositivos de cliente con una cláusula de regla de selección. Puede usar este comodín al final del nombre del objeto para hacer coincidir los dispositivos de cliente cuyos nombres comiencen por la cadena que especifique. También puede usar este comodín para hacer coincidir todos los dispositivos de cliente.  
Para seleccionar un valor que contenga dos puntos (`:`), evite los dos puntos y coloque un carácter de barra invertida (`\\`). En formatos como JSON, debe evitar los caracteres de barra invertida, por lo que debe escribir dos caracteres de barra invertida antes del carácter de dos puntos. Por ejemplo, especifique `thingName: MyTeam\\\\:ClientDevice1` para seleccionar un elemento cuyo nombre sea `MyTeam:ClientDevice1`.
Puede especificar el siguiente selector:  
+ `thingName`: el nombre del objeto de AWS IoT del dispositivo de cliente.

**Example Ejemplo de regla de selección**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres son `MyClientDevice1` o `MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Ejemplo de regla de selección (usar caracteres comodín)**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres comiencen por `MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Ejemplo de regla de selección (hacer coincidir todos los dispositivos)**  
La siguiente regla de selección coincide con todos los dispositivos de cliente.  

```
thingName: *
```  
`policyName`  
La política de permisos que se aplica a los dispositivos de cliente de este grupo de dispositivos. Especifique el nombre de la política que define en el objeto `policies`.  
`policies`  
Las políticas de autorización de dispositivos de cliente para dispositivos de cliente que se conectan al dispositivo principal. Cada política de autorización especifica un conjunto de acciones y los recursos en los que un dispositivo de cliente puede realizar esas acciones.  
Este objeto contiene la siguiente información:    
`policyNameKey`  
El nombre de esta política de autorización. *policyNameKey*Sustitúyala por un nombre que ayude a identificar esta política de autorización. Este nombre de política se usa para definir qué política se aplica a un grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`statementNameKey`  
El nombre de esta declaración de política. *statementNameKey*Sustitúyala por un nombre que ayude a identificar esta declaración de política.  
Este objeto contiene la siguiente información:    
`operations`  
La lista de operaciones que permiten usar los recursos de esta política.  
Puede incluir cualquiera de las siguientes operaciones:  
+ `mqtt:connect`: otorga permiso para conectarse al dispositivo principal. Los dispositivos de cliente deben tener este permiso para conectarse a un dispositivo principal.

  Esta operación admite los siguientes recursos:
  + `mqtt:clientId:deviceClientId`: restringe el acceso en función del ID de cliente que use el dispositivo de cliente para conectarse al agente MQTT del dispositivo principal. *deviceClientId*Sustitúyalo por el ID de cliente que se va a utilizar.
+ `mqtt:publish`: otorga permiso para publicar mensajes MQTT en los temas.

  Esta operación admite los siguientes recursos:
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`: restringe el acceso en función del tema MQTT en el que un dispositivo de cliente publica un mensaje. *mqttTopic*Sustitúyalo por el tema que se va a utilizar.

    Este recurso no admite caracteres comodín de temas MQTT.
+ `mqtt:subscribe`: otorga permiso para suscribirse a los filtros de temas MQTT para recibir mensajes.

  Esta operación admite los siguientes recursos:
  + <a name="client-device-authorization-policy-resource-mqtt-topicfilter"></a>`mqtt:topicfilter:mqttTopicFilter`: restringe el acceso en función de los temas MQTT en los que un dispositivo de cliente puede suscribirse a los mensajes. *mqttTopicFilter*Sustitúyalo por el filtro de tema que desee utilizar.

    Este recurso admite los caracteres comodín de los temas MQTT `+` y `#`. Para obtener más información, consulte [Temas MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) en la *Guía para desarrolladores de AWS IoT Core *.

    El dispositivo de cliente puede suscribirse a los filtros de temas exactos que usted permita. Por ejemplo, si permite que el dispositivo de cliente se suscriba al recurso `mqtt:topicfilter:client/+/status`, el dispositivo de cliente puede suscribirse a `client/+/status`, pero no a `client/client1/status`.
Puede especificar el comodín `*` para permitir el acceso a todas las acciones.  
`resources`  
La lista de recursos que permiten las operaciones de esta política. Especifique los recursos que corresponden a las operaciones de esta política. Por ejemplo, puede especificar una lista de recursos de temas MQTT (`mqtt:topic:mqttTopic`) en una política que especifique la operación `mqtt:publish`.  
Puede especificar el comodín `*` para permitir el acceso a todos los recursos. No puede usar el comodín `*` para hacer coincidir los identificadores de recursos parciales. Por ejemplo, puede especificar **"resources": "\$1"**, pero no puede especificar **"resources": "mqtt:clientId:\$1"**.  
`statementDescription`  
(Opcional) Una descripción para esta declaración de política.

`certificates`  <a name="client-device-auth-component-configuration-certificates"></a>
(Opcional) Las opciones de configuración del certificado para este dispositivo principal. Este objeto contiene la siguiente información:    
`serverCertificateValiditySeconds`  
(Opcional) El periodo de tiempo (en segundos) luego del cual caduca el certificado del servidor MQTT local. Puede configurar esta opción para personalizar la frecuencia con la que los dispositivos de cliente se desconectan y se vuelven a conectar al dispositivo principal.  
Este componente rota el certificado del servidor MQTT local 24 horas antes de que caduque. El agente MQTT, como el [componente agente MQTT de Moquette](mqtt-broker-moquette-component.md), genera un nuevo certificado y se reinicia. Cuando esto ocurre, todos los dispositivos de cliente conectados a este dispositivo principal se desconectan. Los dispositivos de cliente se pueden volver a conectar al dispositivo principal tras un breve periodo.  
Valor predeterminado: `604800` (7 días)  
Valor mínimo: `172800` (2 días)  
Valor máximo: `864000` (10 días)

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política restrictiva)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
El siguiente ejemplo de configuración especifica que los dispositivos cliente cuyos nombres comiencen por «se `MyClientDevice` conecten» y publish/subscribe en todos los temas.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política permisiva)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
El siguiente ejemplo de configuración especifica permitir la conexión de todos los dispositivos cliente y publish/subscribe en todos los temas.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

------
#### [ v2.0.x ]

`deviceGroups`  <a name="client-device-auth-component-configuration-devicegroups"></a>
Los grupos de dispositivos son grupos de dispositivos de cliente que tienen permisos para conectarse y comunicarse con un dispositivo principal. Use reglas de selección para identificar grupos de dispositivos de cliente y defina *políticas de autorización de dispositivos de cliente* que especifiquen los permisos para cada grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`formatVersion`  
La versión de formato de este objeto de configuración.  
Puede elegir entre las siguientes opciones:  
+ `2021-03-05`  
`definitions`  
Los grupos de dispositivos de este dispositivo principal. Cada definición especifica una *regla de selección* para evaluar si un dispositivo de cliente es miembro del grupo. Cada definición también especifica la política de permisos que se aplicará a los dispositivos de cliente que coincidan con la regla de selección. Si un dispositivo de cliente es miembro de varios grupos de dispositivos, los permisos del dispositivo se componen de la política de permisos de cada grupo.  
Este objeto contiene la siguiente información:    
`groupNameKey`  
El nombre de este grupo de dispositivos. *groupNameKey*Sustitúyalo por un nombre que ayude a identificar este grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`selectionRule`  
La consulta que especifica qué dispositivos de cliente son miembros de este grupo de dispositivos. Cuando un dispositivo de cliente se conecta, el dispositivo principal evalúa esta regla de selección para determinar si el dispositivo de cliente es miembro de este grupo de dispositivos. Si el dispositivo de cliente es miembro, el dispositivo principal usa la política de este grupo de dispositivos para autorizar las acciones del dispositivo de cliente.  
Cada regla de selección incluye al menos una *cláusula de regla de selección*, que es una consulta de expresión única que puede coincidir con los dispositivos de cliente. Las reglas de selección utilizan la misma sintaxis de consulta que la indexación de AWS IoT flotas. Para obtener más información sobre la sintaxis de las reglas de selección, consulte la [sintaxis de las consultas de indexación de flotas de AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) en la *Guía para desarrolladores de AWS IoT Core *.  
Use el comodín `*` para hacer coincidir varios dispositivos de cliente con una cláusula de regla de selección. Puede usar este comodín al final del nombre del objeto para hacer coincidir los dispositivos de cliente cuyos nombres comiencen por la cadena que especifique. También puede usar este comodín para hacer coincidir todos los dispositivos de cliente.  
Para seleccionar un valor que contenga dos puntos (`:`), evite los dos puntos y coloque un carácter de barra invertida (`\\`). En formatos como JSON, debe evitar los caracteres de barra invertida, por lo que debe escribir dos caracteres de barra invertida antes del carácter de dos puntos. Por ejemplo, especifique `thingName: MyTeam\\\\:ClientDevice1` para seleccionar un elemento cuyo nombre sea `MyTeam:ClientDevice1`.
Puede especificar el siguiente selector:  
+ `thingName`: el nombre del objeto de AWS IoT del dispositivo de cliente.

**Example Ejemplo de regla de selección**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres son `MyClientDevice1` o `MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Ejemplo de regla de selección (usar caracteres comodín)**  
La siguiente regla de selección coincide con los dispositivos de cliente cuyos nombres comiencen por `MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Ejemplo de regla de selección (hacer coincidir todos los dispositivos)**  
La siguiente regla de selección coincide con todos los dispositivos de cliente.  

```
thingName: *
```  
`policyName`  
La política de permisos que se aplica a los dispositivos de cliente de este grupo de dispositivos. Especifique el nombre de la política que define en el objeto `policies`.  
`policies`  
Las políticas de autorización de dispositivos de cliente para dispositivos de cliente que se conectan al dispositivo principal. Cada política de autorización especifica un conjunto de acciones y los recursos en los que un dispositivo de cliente puede realizar esas acciones.  
Este objeto contiene la siguiente información:    
`policyNameKey`  
El nombre de esta política de autorización. *policyNameKey*Sustitúyala por un nombre que ayude a identificar esta política de autorización. Este nombre de política se usa para definir qué política se aplica a un grupo de dispositivos.  
Este objeto contiene la siguiente información:    
`statementNameKey`  
El nombre de esta declaración de política. *statementNameKey*Sustitúyala por un nombre que ayude a identificar esta declaración de política.  
Este objeto contiene la siguiente información:    
`operations`  
La lista de operaciones que permiten usar los recursos de esta política.  
Puede incluir cualquiera de las siguientes operaciones:  
+ `mqtt:connect`: otorga permiso para conectarse al dispositivo principal. Los dispositivos de cliente deben tener este permiso para conectarse a un dispositivo principal.

  Esta operación admite los siguientes recursos:
  + `mqtt:clientId:deviceClientId`: restringe el acceso en función del ID de cliente que use el dispositivo de cliente para conectarse al agente MQTT del dispositivo principal. *deviceClientId*Sustitúyalo por el ID de cliente que se va a utilizar.
+ `mqtt:publish`: otorga permiso para publicar mensajes MQTT en los temas.

  Esta operación admite los siguientes recursos:
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`: restringe el acceso en función del tema MQTT en el que un dispositivo de cliente publica un mensaje. *mqttTopic*Sustitúyalo por el tema que se va a utilizar.

    Este recurso no admite caracteres comodín de temas MQTT.
+ `mqtt:subscribe`: otorga permiso para suscribirse a los filtros de temas MQTT para recibir mensajes.

  Esta operación admite los siguientes recursos:
  + <a name="client-device-authorization-policy-resource-mqtt-topicfilter"></a>`mqtt:topicfilter:mqttTopicFilter`: restringe el acceso en función de los temas MQTT en los que un dispositivo de cliente puede suscribirse a los mensajes. *mqttTopicFilter*Sustitúyalo por el filtro de tema que desee utilizar.

    Este recurso admite los caracteres comodín de los temas MQTT `+` y `#`. Para obtener más información, consulte [Temas MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) en la *Guía para desarrolladores de AWS IoT Core *.

    El dispositivo de cliente puede suscribirse a los filtros de temas exactos que usted permita. Por ejemplo, si permite que el dispositivo de cliente se suscriba al recurso `mqtt:topicfilter:client/+/status`, el dispositivo de cliente puede suscribirse a `client/+/status`, pero no a `client/client1/status`.
Puede especificar el comodín `*` para permitir el acceso a todas las acciones.  
`resources`  
La lista de recursos que permiten las operaciones de esta política. Especifique los recursos que corresponden a las operaciones de esta política. Por ejemplo, puede especificar una lista de recursos de temas MQTT (`mqtt:topic:mqttTopic`) en una política que especifique la operación `mqtt:publish`.  
Puede especificar el comodín `*` para permitir el acceso a todos los recursos. No puede usar el comodín `*` para hacer coincidir los identificadores de recursos parciales. Por ejemplo, puede especificar **"resources": "\$1"**, pero no puede especificar **"resources": "mqtt:clientId:\$1"**.  
`statementDescription`  
(Opcional) Una descripción para esta declaración de política.

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política restrictiva)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
El siguiente ejemplo de configuración especifica que los dispositivos cliente cuyos nombres comiencen por «se `MyClientDevice` conecten» y publish/subscribe en todos los temas.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Ejemplo: Actualización de la combinación de configuraciones (mediante una política permisiva)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
El siguiente ejemplo de configuración especifica permitir la conexión de todos los dispositivos cliente y publish/subscribe en todos los temas.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

------

## Archivo de registro local
<a name="client-device-auth-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:\$1greengrass\$1v2* 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="client-device-auth-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.5.5  |  Versión actualizada para la versión 2.16.0 de Greengrass nucleus.  | 
|  2.5.4  | Versión actualizada para la versión 2.15.0 de Greengrass nucleus. | 
|  2.5.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.5.2  |  Versión actualizada para la versión 2.14.0 de Greengrass nucleus.  | 
|  2.5.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.5.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.4.5  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/client-device-auth-component.html) | 
|  2.4.4  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.4.3  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.4.2  |  <a name="changelog-client-device-auth-2.4.2"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.4.1  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.4.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.3.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.3.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.3.0  |   Esta versión ya no está disponible. Las mejoras de esta versión están disponibles en versiones posteriores de este componente.  Nuevas características [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.2.3  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.2.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  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-client-device-auth-2.2.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.0.4  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.0.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.0.2  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  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.  | 

# CloudWatch métricas
<a name="cloudwatch-metrics-component"></a>

El componente de CloudWatch métricas de Amazon (`aws.greengrass.Cloudwatch`) publica métricas personalizadas de los dispositivos principales de Greengrass en Amazon. CloudWatch El componente permite a los componentes publicar CloudWatch métricas, que puede utilizar para supervisar y analizar el entorno del dispositivo principal de Greengrass. Para obtener más información, consulta [Uso de CloudWatch las métricas de Amazon](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/working_with_metrics.html) en la *Guía del CloudWatch usuario de Amazon*.

Para publicar una CloudWatch métrica con este componente, publica un mensaje en un tema al que esté suscrito este componente. De forma predeterminada, este componente se suscribe al tema `cloudwatch/metric/put` [de publicación/suscripción local](ipc-publish-subscribe.md). Puede especificar otros temas, incluidos los temas de AWS IoT Core MQTT, al implementar este componente.

Este componente agrupa las métricas que se encuentran en el mismo espacio de nombres y las publica a CloudWatch intervalos regulares.

**nota**  
Este componente proporciona una funcionalidad similar a la del conector de CloudWatch métricas de la versión 1. AWS IoT Greengrass Para obtener más información, consulte el [conector de CloudWatch métricas](https://docs.aws.amazon.com/greengrass/latest/developerguide/cloudwatch-metrics-connector.html) en la *Guía para AWS IoT Greengrass desarrolladores* de la versión 1.

**Topics**
+ [Versiones](#cloudwatch-metrics-component-versions)
+ [Tipo](#cloudwatch-metrics-component-type)
+ [Sistema operativo](#cloudwatch-metrics-component-os-support)
+ [Requisitos](#cloudwatch-metrics-component-requirements)
+ [Dependencias](#cloudwatch-metrics-component-dependencies)
+ [Configuración](#cloudwatch-metrics-component-configuration)
+ [Datos de entrada](#cloudwatch-metrics-component-input-data)
+ [Datos de salida](#cloudwatch-metrics-component-output-data)
+ [Licencias](#cloudwatch-metrics-component-licenses)
+ [Archivo de registro local](#cloudwatch-metrics-component-log-file)
+ [Registros de cambios](#cloudwatch-metrics-component-changelog)
+ [Véase también](#cloudwatch-metrics-component-see-also)

## Versiones
<a name="cloudwatch-metrics-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 3.2.x
+ 3.1.x
+ 3.0.x
+ 2.1.x
+ 2.0.x

Para obtener información acerca de los cambios en cada versión del componente, consulte el [Registro de cambios](#cloudwatch-metrics-component-changelog).

## Tipo
<a name="cloudwatch-metrics-component-type"></a>

------
#### [ v3.x ]

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

------
#### [ v2.x ]

<a name="public-component-type-lambda"></a>Este <a name="public-component-type-lambda-phrase"></a>componente es un componente de Lambda (`aws.greengrass.lambda`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta la función de Lambda de este componente mediante el [componente lanzador de Lambda](lambda-launcher-component.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="cloudwatch-metrics-component-os-support"></a>

------
#### [ v3.x ]

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

------
#### [ v2.x ]

Este componente solo se puede instalar en los dispositivos principales de Linux.

------

## Requisitos
<a name="cloudwatch-metrics-component-requirements"></a>

Este componente tiene los siguientes requisitos:

------
#### [ 3.x ]
+ <a name="public-component-python3-requirement"></a>Versión 3.7 de [Python](https://www.python.org/) instalada en el dispositivo principal y agregada a la variable de entorno PATH.
+ El [rol del dispositivo de Greengrass](device-service-role.md) debe permitir la acción `cloudwatch:PutMetricData`, tal como se muestra en la siguiente política de IAM de ejemplo.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "cloudwatch:PutMetricData"
        ],
        "Effect": "Allow",
        "Resource": "*"
      }
    ]
  }
  ```

------

  Para obtener más información, consulta la [referencia de CloudWatch permisos de Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/permissions-reference-cw.html) en la *Guía del CloudWatch usuario de Amazon*.

------
#### [ 2.x ]
+ <a name="core-device-lambda-function-requirements"></a>El dispositivo principal debe cumplir los requisitos para ejecutar las funciones de Lambda. Si desea que el dispositivo principal ejecute funciones de Lambda en contenedores, el dispositivo debe cumplir los requisitos para hacerlo. Para obtener más información, consulte [Requisitos de la función de Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ <a name="public-component-python3-requirement"></a>Versión 3.7 de [Python](https://www.python.org/) instalada en el dispositivo principal y agregada a la variable de entorno PATH.
+ El [rol del dispositivo de Greengrass](device-service-role.md) debe permitir la acción `cloudwatch:PutMetricData`, tal como se muestra en la siguiente política de IAM de ejemplo.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "cloudwatch:PutMetricData"
        ],
        "Effect": "Allow",
        "Resource": "*"
      }
    ]
  }
  ```

------

  Para obtener más información, consulta la [referencia de CloudWatch permisos de Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/permissions-reference-cw.html) en la *Guía del CloudWatch usuario de Amazon*.
+ <a name="connector-component-legacy-subscription-router-dependency"></a>Para recibir los datos de salida de este componente, debe combinar la siguiente actualización de configuración para el [componente del enrutador de suscripción antiguo](legacy-subscription-router-component.md) (`aws.greengrass.LegacySubscriptionRouter`) cuando implemente este componente. Esta configuración especifica el tema en el que este componente publica las respuestas.

------
#### [ Legacy subscription router v2.1.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-cloudwatch": {
        "id": "aws-greengrass-cloudwatch",
        "source": "component:aws.greengrass.Cloudwatch",
        "subject": "cloudwatch/metric/put/status",
        "target": "cloud"
      }
    }
  }
  ```

------
#### [ Legacy subscription router v2.0.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-cloudwatch": {
        "id": "aws-greengrass-cloudwatch",
        "source": "arn:aws:lambda:region:aws:function:aws-greengrass-cloudwatch:version",
        "subject": "cloudwatch/metric/put/status",
        "target": "cloud"
      }
    }
  }
  ```<a name="connector-component-legacy-subscription-router-dependency-replace"></a>
  + *region*Sustitúyala por la Región de AWS que utilices.
  + *version*Sustitúyala por la versión de la función Lambda que ejecuta este componente. Para encontrar la versión de la función de Lambda, debe ver la receta de la versión de este componente que desee implementar. Abra la página de detalles de este componente en la [consola de AWS IoT Greengrass](https://console.aws.amazon.com//greengrass) y busque el par clave-valor de la **función de Lambda**. Este par clave-valor contiene el nombre y la versión de la función de Lambda.

**importante**  <a name="connector-component-legacy-subscription-router-dependency-note"></a>
Debe actualizar la versión de la función de Lambda en el enrutador de suscripción antiguo cada vez que implemente este componente. Esto garantiza que utilice la versión correcta de la función de Lambda para la versión del componente que implemente.

------

  <a name="connector-component-create-deployments"></a>Para obtener más información, consulte [Crear implementaciones](create-deployments.md).

------

### Puntos de conexión y puertos
<a name="cloudwatch-metrics-component-endpoints"></a>

Este componente debe poder realizar solicitudes salientes a los siguientes puntos de conexión y puertos, además de a los puntos de conexión y puertos necesarios para el funcionamiento básico. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).


| punto de enlace | Puerto | Obligatorio | Description (Descripción) | 
| --- | --- | --- | --- | 
|  `monitoring.region.amazonaws.com`  | 443 | Sí |  Cargue CloudWatch métricas.  | 

## Dependencias
<a name="cloudwatch-metrics-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#cloudwatch-metrics-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**.

------
#### [ 3.2.0 ]

En la siguiente tabla se enumeran las dependencias de las versiones 3.2.0 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <3.0.0 | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=0.0.0 | Rígido | 

------
#### [ 3.0.0 - 3.1.0 ]

En la siguiente tabla, se muestran las dependencias de las versiones 3.0.0 a 3.1.0 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <3.0.0 | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=0.0.0 | Rígido | 

------
#### [ 2.1.4 - 2.1.9 ]

La siguiente tabla muestra las dependencias de las versiones 2.1.4 a 2.1.9 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <3.0.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.4 - 2.1.8 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.4 y 2.1.8 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <3.0.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.2 - 2.1.3 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.2 y 2.1.3 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.1 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.8 - 2.1.0 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.7 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.6 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.4 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.3 <2.1.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | >=1.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | >=1.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=1.0.0  | Rígido | 

------

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="cloudwatch-metrics-component-configuration"></a>

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

------
#### [ v3.x ]

 `PublishInterval`   
(Opcional) El número máximo de segundos que se debe esperar antes de que el componente publique las métricas por lote para un determinado espacio de nombres. Para configurar el componente para que publique las métricas a medida que las reciba, es decir, sin procesamiento por lotes, especifique `0`.  
El componente se publica CloudWatch después de recibir 20 métricas en el mismo espacio de nombres o después del intervalo que especifique.  
El componente no especifica el orden en el que se publican los eventos.
Este valor puede ser de 900 segundos como máximo.  
Valor predeterminado: 10 segundos

 `MaxMetricsToRetain`   
(Opcional) El número máximo de métricas de todos los espacios de nombres que se guardarán en la memoria antes de que se reemplacen por nuevas métricas.  
Este límite se aplica cuando el dispositivo principal no tiene conexión a Internet, por lo que el componente almacena las métricas en un búfer para publicarlas más adelante. Cuando el búfer está lleno, el componente reemplaza las métricas más antiguas por otras más nuevas. Las métricas de un determinado espacio de nombres reemplazan únicamente métricas en el mismo espacio de nombres.  
Si se interrumpe el proceso de host del componente, el componente no guarda las métricas. Esto puede ocurrir durante una implementación o cuando el dispositivo principal se reinicia, por ejemplo.
Este valor debe ser de al menos 2000 métricas.  
Valor predeterminado: 5000 métricas

`InputTopic`  
(Opcional) El tema al que se suscribe el componente para recibir mensajes. Si especifica `true` para `PubSubToIoTCore`, puede usar los comodines MQTT (\$1 y \$1) en este tema.  
Valor predeterminado: `cloudwatch/metric/put`

`OutputTopic`  
(Opcional) El tema en el que el componente publica las respuestas de estado.  
Valor predeterminado: `cloudwatch/metric/put/status`

`PubSubToIoTCore`  
(Opcional) Valor de cadena que define si se deben publicar o suscribirse a los temas de MQTT de AWS IoT Core . Los valores admitidos son `true` y `false`.  
Valor predeterminado: `false`

`LogLevel`  
(Opcional) El nivel de registro del componente. Elija uno de los siguientes niveles de registro, que se enumeran aquí en orden de niveles:  
+ `DEBUG`
+ `INFO`
+ `WARNING`
+ `ERROR`
+ `CRITICAL`
Valor predeterminado: `INFO`

`UseInstaller`  
(Opcional) Valor booleano que define si se debe usar el script de instalación de este componente para instalar las dependencias del SDK de este componente.  
Establezca este valor a `false` si desea usar un script personalizado para instalar las dependencias o si desea incluir las dependencias de tiempo de ejecución en una imagen de Linux prediseñada. Para usar este componente, debe instalar las siguientes bibliotecas, incluidas las dependencias, y ponerlas a disposición del usuario predeterminado del sistema Greengrass.  
+ [Versión 2 de SDK para dispositivos con AWS IoT para Python](https://github.com/aws/aws-iot-device-sdk-python-v2)
+ [AWS SDK para Python (Boto3)](http://boto.readthedocs.org/en/latest/ref/)
Valor predeterminado: `true`

`PublishRegion`  
(Opcional) El lugar en el que se Región de AWS van a publicar CloudWatch las métricas. Este valor anula la región predeterminada del dispositivo principal. Este parámetro solo es obligatorio para las métricas entre regiones.

`accessControl`  
(Opcional) El objeto que contiene la [política de autorización](interprocess-communication.md#ipc-authorization-policies) que permite al componente publicar y suscribirse a los temas especificados. Si especifica valores personalizados para `InputTopic` y `OutputTopic`, debe actualizar los valores de los recursos de este objeto.   
Predeterminado:   

```
{
  "aws.greengrass.ipc.pubsub": {
    "aws.greengrass.Cloudwatch:pubsub:1": {
      "policyDescription": "Allows access to subscribe to input topics.",
      "operations": [
        "aws.greengrass#SubscribeToTopic"
      ],
      "resources": [
        "cloudwatch/metric/put"
      ]
    },
    "aws.greengrass.Cloudwatch:pubsub:2": {
      "policyDescription": "Allows access to publish to output topics.",
      "operations": [
        "aws.greengrass#PublishToTopic"
      ],
      "resources": [
        "cloudwatch/metric/put/status"
      ]
    }
  },
  "aws.greengrass.ipc.mqttproxy": {
    "aws.greengrass.Cloudwatch:mqttproxy:1": {
      "policyDescription": "Allows access to subscribe to input topics.",
      "operations": [
        "aws.greengrass#SubscribeToIoTCore"
      ],
      "resources": [
        "cloudwatch/metric/put"
      ]
    },
    "aws.greengrass.Cloudwatch:mqttproxy:2": {
      "policyDescription": "Allows access to publish to output topics.",
      "operations": [
        "aws.greengrass#PublishToIoTCore"
      ],
      "resources": [
        "cloudwatch/metric/put/status"
      ]
    }
  }
}
```

**Example Ejemplo: actualización de la combinación de configuraciones**  

```
{
  "PublishInterval": 0,
  "PubSubToIoTCore": true
}
```

------
#### [ v2.x ]

**nota**  <a name="connector-component-lambda-parameters"></a>
La configuración predeterminada de este componente incluye los parámetros de la función de Lambda. Le recomendamos que edite solo los siguientes parámetros para configurar este componente en sus dispositivos.

 `lambdaParams`   
Un objeto que contiene los parámetros de la función de Lambda de este componente. Este objeto contiene la siguiente información:    
 `EnvironmentVariables`   
Un objeto que contiene los parámetros de la función de Lambda. Este objeto contiene la siguiente información:    
 `PUBLISH_INTERVAL`   
(Opcional) El número máximo de segundos que se debe esperar antes de que el componente publique las métricas por lote para un determinado espacio de nombres. Para configurar el componente para que publique las métricas a medida que las reciba, es decir, sin procesamiento por lotes, especifique `0`.  
El componente se publica CloudWatch después de recibir 20 métricas en el mismo espacio de nombres o después del intervalo que especifiques.  
El componente no garantiza el orden de publicación de eventos.
Este valor puede ser de 900 segundos como máximo.  
Valor predeterminado: 10 segundos  
 `MAX_METRICS_TO_RETAIN`   
(Opcional) El número máximo de métricas de todos los espacios de nombres que se guardarán en la memoria antes de que se reemplacen por nuevas métricas.  
Este límite se aplica cuando el dispositivo principal no tiene conexión a Internet, por lo que el componente almacena las métricas en un búfer para publicarlas más adelante. Cuando el búfer está lleno, el componente reemplaza las métricas más antiguas por otras más nuevas. Las métricas de un determinado espacio de nombres reemplazan únicamente métricas en el mismo espacio de nombres.  
Si se interrumpe el proceso de host del componente, el componente no guarda las métricas. Esto puede ocurrir durante una implementación o cuando el dispositivo principal se reinicia, por ejemplo.
Este valor debe ser de al menos 2000 métricas.  
Valor predeterminado: 5000 métricas  
 `PUBLISH_REGION`   
(Opcional) El lugar en el que se Región de AWS van a publicar CloudWatch las métricas. Este valor anula la región predeterminada del dispositivo principal. Este parámetro solo es obligatorio para las métricas entre regiones.

`containerMode`  <a name="connector-component-container-mode-parameter"></a>
(Opcional) El modo de almacenamiento en contenedores de este componente. Puede elegir entre las siguientes opciones:  <a name="lambda-function-component-container-mode-parameter"></a>
+ `NoContainer`: el componente no se ejecuta en un entorno de tiempo de ejecución aislado.
+ `GreengrassContainer`— El componente se ejecuta en un entorno de ejecución aislado dentro del AWS IoT Greengrass contenedor.
Valor predeterminado: `GreengrassContainer`

 `containerParams`   
<a name="connector-component-container-params-description"></a>(Opcional) Un objeto que contiene los parámetros de contenedor de este componente. El componente utiliza estos parámetros si se especifica `GreengrassContainer` para `containerMode`.  
Este objeto contiene la siguiente información:    
 `memorySize`   
<a name="connector-component-container-params-memory-size-description"></a>(Opcional) La cantidad de memoria (en kilobytes) que se va a asignar al componente.  
El valor predeterminado es 64 MB (65 535 KB).

`pubsubTopics`  <a name="connector-component-pubsub-topics-parameter"></a>
(Opcional) Un objeto que contiene los temas a los que el componente se suscribe para recibir mensajes. Puede especificar cada tema y si el componente se suscribe a temas de MQTT AWS IoT Core o a temas locales publish/subscribe .  
Este objeto contiene la siguiente información:    
`0`: se trata de un índice de matriz en forma de cadena.  
Un objeto que contiene la siguiente información:    
`type`  
(Opcional) El tipo de publish/subscribe mensajes que utiliza este componente para suscribirse a los mensajes. Puede elegir entre las siguientes opciones:  
+ `PUB_SUB` — Suscribirse a la mensajería de publicación/suscripción local. Si elige esta opción, el tema no podrá contener caracteres comodín de MQTT. Para obtener más información sobre cómo enviar mensajes desde un componente personalizado cuando especifique esta opción, consulte [Publicar/suscribir mensajes locales](ipc-publish-subscribe.md).
+ `IOT_CORE`— Suscríbase a los mensajes de AWS IoT Core MQTT. Si elige esta opción, el tema puede contener caracteres comodín de MQTT. Para obtener más información sobre cómo enviar mensajes desde componentes personalizados cuando especifique esta opción, consulte [Publicar/suscribir mensajes MQTT AWS IoT Core](ipc-iot-core-mqtt.md).
Valor predeterminado: `PUB_SUB`  
`topic`  
(Opcional) El tema al que se suscribe el componente para recibir mensajes. Si especifica `IotCore` para `type`, puede usar los comodines de MQTT (`+` y `#`) en este tema.

**Example Ejemplo: actualización de la combinación de configuraciones (modo en contenedor)**  

```
{
  "containerMode": "GreengrassContainer"
}
```

**Example Ejemplo: actualización de la combinación de configuraciones (modo sin contenedor)**  

```
{
  "containerMode": "NoContainer"
}
```

------

## Datos de entrada
<a name="cloudwatch-metrics-component-input-data"></a>

Este componente acepta métricas sobre el siguiente tema y las publica en. CloudWatch <a name="connector-component-local-publish"></a>De forma predeterminada, este componente se suscribe a los publish/subscribe mensajes locales. Para obtener más información sobre cómo publicar mensajes en este componente desde sus componentes personalizados, consulte [Publicar/suscribir mensajes locales](ipc-publish-subscribe.md). 

A partir de la versión 3.0.0 del componente, si lo desea, puede configurar este componente para que se suscriba a un tema de MQTT estableciendo el parámetro de configuración `PubSubToIoTCore` en `true`. Para obtener más información sobre la publicación de mensajes en un tema de MQTT en sus componentes personalizados, consulte [Publicar/suscribir mensajes MQTT AWS IoT Core](ipc-iot-core-mqtt.md).

 **Tema predeterminado:** `cloudwatch/metric/put` 

<a name="connector-component-input-properties"></a>El mensaje acepta las siguientes propiedades. Los mensajes de entrada deben tener un formato JSON válido.

 `request`   
La métrica de este mensaje.  
El objeto de la solicitud contiene los datos de métricas que se publicarán en CloudWatch. Los valores de métricas deben cumplir las especificaciones de la operación [https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_PutMetricData.html](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_PutMetricData.html).  
Tipo: `object` que contiene la siguiente información:    
 `namespace`   
El espacio de nombres definido por el usuario para los datos de las métricas de esta solicitud. CloudWatch utiliza los espacios de nombres como contenedores para los puntos de datos métricos.  
No se puede especificar un espacio de nombres que comience la cadena reservada por `AWS/`.
Tipo: `string`  
Patrón válido: `[^:].*`  
 `metricData`   
Los datos de la métrica.  
Tipo: `object` que contiene la siguiente información:    
 `metricName`   
El nombre de la métrica.  
Tipo: `string`  
 `value`   
El valor de la métrica.  
CloudWatch rechaza los valores demasiado pequeños o demasiado grandes. El valor debe estar comprendido entre `8.515920e-109` y `1.174271e+108` (Base 10) o `2e-360` y `2e360` (Base 2). CloudWatch no admite valores especiales como `NaN``+Infinity`, y`-Infinity`.
Tipo: `double`  
 `dimensions`   
(Opcional) Las dimensiones de la métrica. Las dimensiones proporcionan información adicional acerca de la métrica y sus datos. Una métrica puede definir hasta 10 dimensiones.  
Este componente incluye automáticamente una dimensión denominada `coreName`, cuyo valor es el nombre del dispositivo principal.  
Tipo: `array` de objetos, cada uno de los cuales contiene la siguiente información:    
 `name`   
(Opcional) El nombre de la dimensión.  
Tipo: `string`  
 `value`   
(Opcional) El valor de la dimensión.  
Tipo: `string`  
 `timestamp`   
(Opcional) El tiempo en el que se recibieron los datos de las métricas, expresados en segundos, en tiempo Unix.  
El valor predeterminado es la hora a la que el componente recibe el mensaje.  
Tipo: `double`  
Si usa las versiones entre 2.0.3 y 2.0.7 de este componente, recomendamos que recupere la marca temporal por separado para cada métrica cuando envíe varias métricas desde un solo origen. No utilice una variable para almacenar la marca de tiempo.  
 `unit`   
(Opcional) La unidad de la métrica.  
Tipo: `string`  
Valores válidos: `Seconds`, `Microseconds`, `Milliseconds`, `Bytes`, `Kilobytes`, `Megabytes`, `Gigabytes`, `Terabytes`, `Bits`, `Kilobits`, `Megabits`, `Gigabits`, `Terabits`, `Percent`, `Count`, `Bytes/Second`, `Kilobytes/Second`, `Megabytes/Second`, `Gigabytes/Second`, `Terabytes/Second`, `Bits/Second`, `Kilobits/Second`, `Megabits/Second`, `Gigabits/Second`, `Terabits/Second`, `Count/Second`, `None`  
El valor predeterminado es `None`.

**nota**  
Todas las cuotas que se aplican a la CloudWatch `PutMetricData` API se aplican a las métricas que publiques con este componente. Los siguientes límites son especialmente importantes:  
Límite de 40 KB en la carga útil de la API
20 métricas por solicitud de API
150 transacciones por segundo (TPS) para la API de `PutMetricData`
Para obtener más información, consulta [las cuotas CloudWatch de servicio](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_limits.html) en la *Guía del CloudWatch usuario*.

**Example Ejemplo de entrada**  

```
{
  "request": {
    "namespace": "Greengrass",
    "metricData": {
      "metricName": "latency",
      "dimensions": [
        {
          "name": "hostname",
          "value": "test_hostname"
        }
      ],
      "timestamp": 1539027324,
      "value": 123.0,
      "unit": "Seconds"
    }
  }
}
```

## Datos de salida
<a name="cloudwatch-metrics-component-output-data"></a>

 <a name="connector-component-output-data-pubsub"></a>Este componente publica las respuestas como datos de salida sobre el siguiente publish/subscribe tema local de forma predeterminada. Para obtener más información sobre cómo suscribirse a los mensajes sobre este tema en sus componentes personalizados, consulte [Publicar/suscribir mensajes locales](ipc-publish-subscribe.md). 

Si lo desea, puede configurar este componente para que se publique en un tema de MQTT al establecer el parámetro de configuración `PubSubToIoTCore` en `true`. Para obtener más información sobre cómo suscribirse a mensajes sobre un tema de MQTT en sus componentes personalizados, consulte [Publicar/suscribir mensajes MQTT AWS IoT Core](ipc-iot-core-mqtt.md).

**nota**  
Las versiones 2.0.x de los componentes publican las respuestas como datos de salida sobre un tema de MQTT de forma predeterminada. Debe especificar el tema como parte del `subject` en la configuración del [componente del enrutador de suscripciones antiguo](legacy-subscription-router-component.md).

 **Tema predeterminado:** `cloudwatch/metric/put/status` 

**Example Ejemplo de salida: Correcto**  
La respuesta incluye el espacio de nombres de los datos de la métrica y el `RequestId` campo de la CloudWatch respuesta.  

```
{
  "response": {
    "cloudwatch_rid": "70573243-d723-11e8-b095-75ff2EXAMPLE",
    "namespace": "Greengrass",
    "status": "success"
  }
}
```

**Example Ejemplo de salida: Error**  

```
{
  "response" : {
    "namespace": "Greengrass",
    "error": "InvalidInputException",
    "error_message": "cw metric is invalid",
    "status": "fail"
  }
}
```

**nota**  <a name="connector-component-retryable-error"></a>
Si el componente detecta un error que se puede volver a intentar, como un error de conexión, volverá a intentar la publicación en el siguiente lote.

## Licencias
<a name="cloudwatch-metrics-component-licenses"></a>

Este componente incluye las siguientes licencias o software de terceros:<a name="boto-3-licenses"></a>
+ [AWS SDK para Python (Boto3)](https://pypi.org/project/boto3/)/Apache License 2.0
+ [botocore](https://pypi.org/project/botocore/)/Apache License 2.0
+ [dateutil](https://pypi.org/project/python-dateutil/1.4/)/PSF License
+ [docutils](https://pypi.org/project/docutils/)/BSD License, GNU General Public License (GPL), Python Software Foundation License, Public Domain
+ [jmespath](https://pypi.org/project/jmespath/)/MIT License
+ [s3transfer](https://pypi.org/project/s3transfer/)/Apache License 2.0
+ [urllib3](https://pypi.org/project/urllib3/)/MIT License

<a name="component-core-software-license"></a>Este conector se publica en el [Contrato de Licencia de Software de Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

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

Este componente usa el siguiente archivo de registro.

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

```
/greengrass/v2/logs/aws.greengrass.Cloudwatch.log
```

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

```
C:\greengrass\v2\logs\aws.greengrass.Cloudwatch.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:\$1greengrass\$1v2* por la ruta a la carpeta AWS IoT Greengrass raíz.

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

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

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

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

------

## Registros de cambios
<a name="cloudwatch-metrics-component-changelog"></a>

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

------
#### [ v3.x ]


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  3.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 
|  3.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 
|  3.0.0  |  <a name="changelog-cloudwatch-metrics-3.0.0-major-version-changes"></a>Esta versión del componente de CloudWatch métricas espera parámetros de configuración diferentes a los de la versión 2.x. Si usa una configuración no predeterminada para la versión 2.x y desea actualizar de la versión 2.x a la versión 3.x, debe actualizar la configuración del componente. Para obtener más información, consulte la [configuración del componente de CloudWatch métricas](#cloudwatch-metrics-component-configuration). <a name="changelog-cloudwatch-metrics-3.0.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 

------
#### [ v2.x ]


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.1.8  |  Versión actualizada para el lanzamiento de la versión 2.13.0 del núcleo de Greengrass.  | 
|  2.1.3  |  Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass.  | 
|  2.1.2  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.1.1  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 
|  2.0.8  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 
|  2.0.7  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.0.6  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.0.5  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.0.4  |  Versión actualizada para el lanzamiento de la versión 2.1.0 del núcleo de Greengrass.  | 
|  2.0.3  |  Versión inicial.  | 

------

## Véase también
<a name="cloudwatch-metrics-component-see-also"></a>
+ [Uso de CloudWatch las métricas de Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html) en la *Guía del CloudWatch usuario de Amazon*
+ [PutMetricData](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_PutMetricData.html)en la *referencia de la CloudWatch API de Amazon*

# AWS IoT Device Defender
<a name="device-defender-component"></a>

El AWS IoT Device Defender componente (`aws.greengrass.DeviceDefender`) notifica a los administradores los cambios en el estado de los dispositivos principales de Greengrass. Esto puede ayudar a identificar comportamiento inusual que podrían indicar un dispositivo en riesgo. Para obtener más información, consulte [AWS IoT Device Defender](https://docs.aws.amazon.com/iot/latest/developerguide/device-defender.html) en la *Guía para desarrolladores de AWS IoT Core *.

Este componente lee las métricas del sistema en el dispositivo principal. A continuación, publica las métricas en AWS IoT Device Defender. Para obtener más información sobre cómo leer e interpretar las métricas que informa este componente, consulte las [especificaciones del documento sobre las métricas del dispositivo](https://docs.aws.amazon.com/iot/latest/developerguide/detect-device-side-metrics.html#DetectMetricsMessagesSpec) en la *Guía para desarrolladores de AWS IoT Core *.

**nota**  
Este componente proporciona una funcionalidad similar a la del conector Device Defender incorporado. AWS IoT Greengrass V1 Para obtener más información, consulte [conector de Device Defender](https://docs.aws.amazon.com/greengrass/latest/developerguide/device-defender-connector.html) en la *Guía para desarrolladores de AWS IoT Greengrass V1 *.

**Topics**
+ [Versiones](#device-defender-component-versions)
+ [Tipo](#device-defender-component-type)
+ [Sistema operativo](#device-defender-component-os-support)
+ [Requisitos](#device-defender-component-requirements)
+ [Dependencias](#device-defender-component-dependencies)
+ [Configuración](#device-defender-component-configuration)
+ [Datos de entrada](#device-defender-component-input-data)
+ [Datos de salida](#device-defender-component-output-data)
+ [Archivo de registro local](#device-defender-component-log-file)
+ [Licencias](#device-defender-component-licenses)
+ [Registros de cambios](#device-defender-component-changelog)

## Versiones
<a name="device-defender-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 3.1.x
+ 3.0.x
+ 2.0.x

Para obtener información acerca de los cambios en cada versión del componente, consulte el [Registro de cambios](#device-defender-component-changelog).

## Tipo
<a name="device-defender-component-type"></a>

------
#### [ v3.x ]

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

------
#### [ v2.x ]

<a name="public-component-type-lambda"></a>Este <a name="public-component-type-lambda-phrase"></a>componente es un componente de Lambda (`aws.greengrass.lambda`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta la función de Lambda de este componente mediante el [componente lanzador de Lambda](lambda-launcher-component.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="device-defender-component-os-support"></a>

------
#### [ v3.x ]

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

------
#### [ v2.x ]

Este componente solo se puede instalar en los dispositivos principales de Linux.

------

## Requisitos
<a name="device-defender-component-requirements"></a>

Este componente tiene los siguientes requisitos:

------
#### [ v3.x ]
+ <a name="public-component-python3-requirement"></a>Versión 3.7 de [Python](https://www.python.org/) instalada en el dispositivo principal y agregada a la variable de entorno PATH.
+ AWS IoT Device Defender configurado para utilizar la función de detección para supervisar las infracciones. Para obtener más información, consulte [Detectar](https://docs.aws.amazon.com/iot/latest/developerguide/device-defender-detect.html) en la *Guía para desarrolladores de AWS IoT Core *.

------
#### [ v2.x ]
+ <a name="core-device-lambda-function-requirements"></a>El dispositivo principal debe cumplir los requisitos para ejecutar las funciones de Lambda. Si desea que el dispositivo principal ejecute funciones de Lambda en contenedores, el dispositivo debe cumplir los requisitos para hacerlo. Para obtener más información, consulte [Requisitos de la función de Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ <a name="public-component-python3-requirement"></a>Versión 3.7 de [Python](https://www.python.org/) instalada en el dispositivo principal y agregada a la variable de entorno PATH.
+ AWS IoT Device Defender configurado para utilizar la función de detección para supervisar las infracciones. Para obtener más información, consulte [Detectar](https://docs.aws.amazon.com/iot/latest/developerguide/device-defender-detect.html) en la *Guía para desarrolladores de AWS IoT Core *.
+ La biblioteca [psutil](https://pypi.org/project/psutil/) instalada en el dispositivo principal. La versión 5.7.0 es la última versión que se verifica para que funcione con el componente.
+ La [biblioteca](https://pypi.org/project/cbor/) cbor instalada en el dispositivo principal. La versión 1.0.0 es la última versión que se verifica para que funcione con el componente.
+ <a name="connector-component-legacy-subscription-router-dependency"></a>Para recibir los datos de salida de este componente, debe combinar la siguiente actualización de configuración para el [componente del enrutador de suscripción antiguo](legacy-subscription-router-component.md) (`aws.greengrass.LegacySubscriptionRouter`) cuando implemente este componente. Esta configuración especifica el tema en el que este componente publica las respuestas.

------
#### [ Legacy subscription router v2.1.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-device-defender": {
        "id": "aws-greengrass-device-defender",
        "source": "component:aws.greengrass.DeviceDefender",
        "subject": "$aws/things/+/defender/metrics/json",
        "target": "cloud"
      }
    }
  }
  ```

------
#### [ Legacy subscription router v2.0.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-device-defender": {
        "id": "aws-greengrass-device-defender",
        "source": "arn:aws:lambda:region:aws:function:aws-greengrass-device-defender:version",
        "subject": "$aws/things/+/defender/metrics/json",
        "target": "cloud"
      }
    }
  }
  ```<a name="connector-component-legacy-subscription-router-dependency-replace"></a>
  + *region*Sustitúyala por la Región de AWS que utilices.
  + *version*Sustitúyala por la versión de la función Lambda que ejecuta este componente. Para encontrar la versión de la función de Lambda, debe ver la receta de la versión de este componente que desee implementar. Abra la página de detalles de este componente en la [consola de AWS IoT Greengrass](https://console.aws.amazon.com//greengrass) y busque el par clave-valor de la **función de Lambda**. Este par clave-valor contiene el nombre y la versión de la función de Lambda.

**importante**  <a name="connector-component-legacy-subscription-router-dependency-note"></a>
Debe actualizar la versión de la función de Lambda en el enrutador de suscripción antiguo cada vez que implemente este componente. Esto garantiza que utilice la versión correcta de la función de Lambda para la versión del componente que implemente.

------

  <a name="connector-component-create-deployments"></a>Para obtener más información, consulte [Crear implementaciones](create-deployments.md).

------

## Dependencias
<a name="device-defender-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#device-defender-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**.

------
#### [ 3.1.1 ]

La siguiente tabla muestra las dependencias de la versión 3.1.1 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <3.0.0 | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=0.0.0 | Rígido | 

------
#### [ 3.0.0 - 3.0.2 ]

La siguiente tabla muestra las dependencias de las versiones 3.0.0 a 3.0.2 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <3.0.0 | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=0.0.0 | Rígido | 

------
#### [ 2.0.12 - 2.0.17 ]

En la siguiente tabla se enumeran las dependencias de las versiones 2.0.12 a 2.0.17 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <3.0.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.12 - 2.0.16 ]

La siguiente tabla muestra las dependencias de la versión 2.0.16 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <3.0.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.10 - 2.0.11 ]

La siguiente tabla muestra las dependencias de las versiones 2.0.10 y 2.0.11 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.9 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.8 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.7 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.6 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.4 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.3 <2.1.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | >=1.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | >=1.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=1.0.0  | Rígido | 

------

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="device-defender-component-configuration"></a>

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

------
#### [ v3.x ]

`PublishRetryCount`  
El número de veces que se volverá a intentar la publicación. Esta característica está disponible en la versión 3.1.1.  
El mínimo es 0.  
El máximo es 72.  
Valor predeterminado: 5

`SampleIntervalSeconds`  
(Opcional) La cantidad de tiempo en segundos entre cada ciclo en el que el componente recopila las métricas y las informa.  
El valor mínimo es de 300 segundos (5 minutos).  
Predeterminado: 300 segundos

 `UseInstaller`   
(Opcional) Valor booleano que define si se debe utilizar el script de instalación de este componente para instalar las dependencias de este componente.  
Establezca este valor a `false` si desea usar un script personalizado para instalar las dependencias o si desea incluir las dependencias de tiempo de ejecución en una imagen de Linux prediseñada. Para usar este componente, debe instalar las siguientes bibliotecas, incluidas las dependencias, y ponerlas a disposición del usuario predeterminado del sistema Greengrass.  
+ [Versión 2 de SDK para dispositivos con AWS IoT para Python](https://github.com/aws/aws-iot-device-sdk-python-v2)
+ Biblioteca [cbor](https://pypi.org/project/cbor/). La versión 1.0.0 es la última versión que se verifica para que funcione con el componente.
+ Biblioteca [psutil](https://pypi.org/project/psutil/). La versión 5.7.0 es la última versión que se verifica para que funcione con el componente.
Si utiliza la versión 3.0.0 o 3.0.1 de este componente en los dispositivos principales que configura para usar un proxy HTTPS, debe establecer este valor en `false`. El script de instalación no admite la operación detrás de un proxy HTTPS en estas versiones de este componente.
Valor predeterminado: `true`

------
#### [ v2.x ]

**nota**  <a name="connector-component-lambda-parameters"></a>
La configuración predeterminada de este componente incluye los parámetros de la función de Lambda. Le recomendamos que edite solo los siguientes parámetros para configurar este componente en sus dispositivos.

`lambdaParams`  
Un objeto que contiene los parámetros de la función de Lambda de este componente. Este objeto contiene la siguiente información:    
`EnvironmentVariables`  
Un objeto que contiene los parámetros de la función de Lambda. Este objeto contiene la siguiente información:    
`PROCFS_PATH`  
(Opcional) La ruta a la carpeta `/proc`.  
+ Para ejecutar este componente en un contenedor, utilice el valor predeterminado, `/host-proc`. El componente se ejecuta en un contenedor de forma predeterminada.
+ Para ejecutar este componente en modo sin contenedor, especifique `/proc` para este parámetro.
Predeterminado: `/host-proc`. Esta es la ruta por defecto en la que este componente monta la carpeta `/proc` en el contenedor.  
Este componente tiene acceso de solo lectura a esta carpeta.  
`SAMPLE_INTERVAL_SECONDS`  
(Opcional) La cantidad de tiempo en segundos entre cada ciclo en el que el componente recopila las métricas y las informa.  
El valor mínimo es de 300 segundos (5 minutos).  
Predeterminado: 300 segundos

`containerMode`  
(Opcional) El modo de almacenamiento en contenedores de este componente. Puede elegir entre las siguientes opciones:  
+ `GreengrassContainer`— El componente se ejecuta en un entorno de ejecución aislado dentro del contenedor. AWS IoT Greengrass 
+ `NoContainer`: el componente no se ejecuta en un entorno de tiempo de ejecución aislado.

  Si especifica esta opción, debe especificar `/proc` para el parámetro de la variable de entorno `PROCFS_PATH`.
Valor predeterminado: `GreengrassContainer`

`containerParams`  
<a name="connector-component-container-params-description"></a>(Opcional) Un objeto que contiene los parámetros de contenedor de este componente. El componente utiliza estos parámetros si se especifica `GreengrassContainer` para `containerMode`.  
Este objeto contiene la siguiente información:    
`memorySize`  
<a name="connector-component-container-params-memory-size-description"></a>(Opcional) La cantidad de memoria (en kilobytes) que se va a asignar al componente.  
El valor predeterminado es 50 000 KB.

`pubsubTopics`  <a name="connector-component-pubsub-topics-parameter"></a>
(Opcional) Un objeto que contiene los temas a los que el componente se suscribe para recibir mensajes. Puede especificar cada tema y si el componente se suscribe a temas de MQTT AWS IoT Core o a temas locales publish/subscribe .  
Este objeto contiene la siguiente información:    
`0`: se trata de un índice de matriz en forma de cadena.  
Un objeto que contiene la siguiente información:    
`type`  
(Opcional) El tipo de publish/subscribe mensajes que utiliza este componente para suscribirse a los mensajes. Puede elegir entre las siguientes opciones:  
+ `PUB_SUB` — Suscribirse a la mensajería de publicación/suscripción local. Si elige esta opción, el tema no podrá contener caracteres comodín de MQTT. Para obtener más información sobre cómo enviar mensajes desde un componente personalizado cuando especifique esta opción, consulte [Publicar/suscribir mensajes locales](ipc-publish-subscribe.md).
+ `IOT_CORE`— Suscríbase a los mensajes de AWS IoT Core MQTT. Si elige esta opción, el tema puede contener caracteres comodín de MQTT. Para obtener más información sobre cómo enviar mensajes desde componentes personalizados cuando especifique esta opción, consulte [Publicar/suscribir mensajes MQTT AWS IoT Core](ipc-iot-core-mqtt.md).
Valor predeterminado: `PUB_SUB`  
`topic`  
(Opcional) El tema al que se suscribe el componente para recibir mensajes. Si especifica `IotCore` para `type`, puede usar los comodines de MQTT (`+` y `#`) en este tema.

**Example Ejemplo: actualización de la combinación de configuraciones (modo en contenedor)**  

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "PROCFS_PATH": "/host_proc"
    }
  },
  "containerMode": "GreengrassContainer"
}
```

**Example Ejemplo: actualización de la combinación de configuraciones (modo sin contenedor)**  

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "PROCFS_PATH": "/proc"
    }
  },
  "containerMode": "NoContainer"
}
```

------

## Datos de entrada
<a name="device-defender-component-input-data"></a>

Este componente no acepta mensajes como datos de entrada.

## Datos de salida
<a name="device-defender-component-output-data"></a>

Este componente publica las métricas de seguridad en el siguiente tema reservado para AWS IoT Device Defender. Este componente se *coreDeviceName* sustituye por el nombre del dispositivo principal cuando publica las métricas.

**Tema (AWS IoT Core MQTT):** `$aws/things/coreDeviceName/defender/metrics/json`

**Example Ejemplo de resultado**  

```
{
  "header": {
    "report_id": 1529963534,
    "version": "1.0"
  },
  "metrics": {
    "listening_tcp_ports": {
      "ports": [
        {
          "interface": "eth0",
          "port": 24800
        },
        {
          "interface": "eth0",
          "port": 22
        },
        {
          "interface": "eth0",
          "port": 53
        }
      ],
      "total": 3
    },
    "listening_udp_ports": {
      "ports": [
        {
          "interface": "eth0",
          "port": 5353
        },
        {
          "interface": "eth0",
          "port": 67
        }
      ],
      "total": 2
    },
    "network_stats": {
      "bytes_in": 1157864729406,
      "bytes_out": 1170821865,
      "packets_in": 693092175031,
      "packets_out": 738917180
    },
    "tcp_connections": {
      "established_connections":{
        "connections": [
          {
            "local_interface": "eth0",
            "local_port": 80,
            "remote_addr": "192.168.0.1:8000"
          },
          {
            "local_interface": "eth0",
            "local_port": 80,
            "remote_addr": "192.168.0.1:8000"
          }
        ],
        "total": 2
      }
    }
  }
}
```

Para obtener más información sobre las métricas que informa este componente, consulte las [especificaciones del documento sobre las métricas de los dispositivos](https://docs.aws.amazon.com/iot/latest/developerguide/detect-device-side-metrics.html#DetectMetricsMessagesSpec) en la *Guía para desarrolladores de AWS IoT Core *.

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

Este componente usa el siguiente archivo de registro.

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

```
/greengrass/v2/logs/aws.greengrass.DeviceDefender.log
```

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

```
C:\greengrass\v2\logs\aws.greengrass.DeviceDefender.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:\$1greengrass\$1v2* por la ruta a la carpeta AWS IoT Greengrass raíz.

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

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

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

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

------

## Licencias
<a name="device-defender-component-licenses"></a>

<a name="component-core-software-license"></a>Este conector se publica en el [Contrato de Licencia de Software de Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Registros de cambios
<a name="device-defender-component-changelog"></a>

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

------
#### [ v3.x ]


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  3.1.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/device-defender-component.html)  | 
|  3.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/device-defender-component.html)  | 
|  3.0.1  |  Soluciona un problema relacionado con la forma en que el componente calcula los valores delta de las métricas.  | 
|  3.0.0  |   Esta versión ya no está disponible. Las mejoras de esta versión están disponibles en versiones posteriores de este componente.  Versión inicial.  | 

------
#### [ v2.x ]


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.0.17  |  Versión actualizada para la versión 2.14.0 de Greengrass Nucleus.  | 
|  2.0.16  |  Versión actualizada para el lanzamiento de la versión 2.13.0 del núcleo de Greengrass.  | 
|  2.0.11  |  Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass.  | 
|  2.0.10  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.0.9  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.0.8  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.0.7  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.0.6  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.0.5  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.0.4  |  Versión actualizada para el lanzamiento de la versión 2.1.0 del núcleo de Greengrass.  | 
|  2.0.3  |  Versión inicial.  | 

------

# Spooler de disco
<a name="disk-spooler-component"></a>

El componente disk spooler (`aws.greengrass.DiskSpooler`) ofrece una opción de almacenamiento persistente para los mensajes enviados desde los dispositivos principales de Greengrass a. AWS IoT Core Este componente almacenará estos mensajes salientes en el disco.

**Topics**
+ [Versiones](#disk-spooler-component-versions)
+ [Tipo](#disk-spooler-component-type)
+ [Sistema operativo](#disk-spooler-component-os-support)
+ [Requisitos](#disk-spooler-component-requirements)
+ [Dependencias](#disk-spooler-component-dependencies)
+ [De uso](#disk-spooler-component-usage)
+ [Archivo de registro local](#disk-spooler-component-log-file)
+ [Registros de cambios](#disk-spooler-component-changelog)

## Versiones
<a name="disk-spooler-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 1.0.x

## Tipo
<a name="disk-spooler-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="disk-spooler-component-os-support"></a>

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

## Requisitos
<a name="disk-spooler-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ `storageType` debería configurarse a `Disk` para usar este componente. Puede configurarlo en la [configuración del núcleo de Greengrass](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration).
+ `maxSizeInBytes` no debe configurarse para que supere el espacio disponible en el dispositivo. Puede configurarlo en la [configuración del núcleo de Greengrass](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration).
+ Se admite la ejecución del componente del spooler de disco en una VPC.

## Dependencias
<a name="disk-spooler-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#disk-spooler-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**.

------
#### [ 1.0.7 ]

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


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

------
#### [ 1.0. ]

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


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

------
#### [ 1.0.5 ]

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


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

------
#### [ 1.0.4 ]

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


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

------
#### [ 1.0.1 – 1.0.3 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.0.1 a 1.0.3 de este componente.


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

------
#### [ 1.0.0 ]

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


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

------

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

## De uso
<a name="disk-spooler-component-usage"></a>

Para utilizar el componente del spooler de disco, `aws.greengrass.DiskSpooler` debe estar implementado.

Para configurar y usar este componente, debe configurar el `pluginName` en `aws.greengrass.DiskSpooler`.

## Archivo de registro local
<a name="disk-spooler-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 por la ruta a la *C:\$1greengrass\$1v2* carpeta raíz. AWS IoT Greengrass 

------
#### [ 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="disk-spooler-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  1.0.7  |  Versión actualizada para la versión 2.16.0 de Greengrass nucleus.  | 
|  1.0.6  |  Versión actualizada para el lanzamiento de la versión 2.15.0 de Greengrass nucleus.  | 
|  1.0.5  |  Versión actualizada para la versión 2.14.0 de Greengrass Nucleus.  | 
|  1.0.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/disk-spooler-component.html)  | 
|  1.0.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/disk-spooler-component.html)  | 
|  1.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/disk-spooler-component.html)  | 
|  1.0.1  |  Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass.  | 
|  1.0.0  |  Versión inicial.  | 

# Administrador de aplicaciones de Docker
<a name="docker-application-manager-component"></a>

El componente gestor de aplicaciones de Docker (`aws.greengrass.DockerApplicationManager`) AWS IoT Greengrass permite descargar imágenes de Docker de registros de imágenes públicos y registros privados alojados en Amazon Elastic Container Registry (Amazon ECR). También permite gestionar las credenciales automáticamente AWS IoT Greengrass para descargar imágenes de forma segura desde repositorios privados en Amazon ECR.

Cuando desarrolle un componente personalizado que ejecute un contenedor de Docker, incluya el administrador de aplicaciones de Docker como dependencia para descargar las imágenes de Docker especificadas como artefactos en su componente. Para obtener más información, consulte [Ejecución de un contenedor de Docker](run-docker-container.md).

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

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

Este componente tiene las siguientes versiones:
+ 2.0.x

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

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="docker-application-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="docker-application-manager-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ <a name="docker-engine-requirement"></a>Versión 1.9.1 o posterior de [Docker Engine](https://docs.docker.com/engine/) instalada en el dispositivo principal de Greengrass. Se ha comprobado que la versión 20.10 es la última versión que funciona con el AWS IoT Greengrass software Core. Debe instalar Docker directamente en el dispositivo principal antes de implementar componentes que ejecuten contenedores de Docker.
+ <a name="docker-daemon-requirement"></a>El daemon de Docker se inició y se ejecutó en el dispositivo principal antes de implementar este componente. 
+ Imágenes de Docker almacenadas en uno de los siguientes orígenes de imágenes compatibles:
  + Repositorios de imágenes públicos y privados en Amazon Elastic Container Registry (Amazon ECR)
  + Repositorio público de Docker Hub
  + Registro público de confianza de Docker
+ Las imágenes de Docker se incluyen como artefactos en sus componentes de contenedor de Docker personalizados. Use los siguientes formatos de URI para especificar sus imágenes de Docker:<a name="docker-image-artifact-uri"></a>
  + Imagen privada de Amazon ECR: `docker:account-id.dkr.ecr.region.amazonaws.com/repository/image[:tag|@digest]`
  + Imagen pública de Amazon ECR: `docker:public.ecr.aws/repository/image[:tag|@digest]`
  + Imagen pública de Docker Hub: `docker:name[:tag|@digest]`

  Para obtener más información, consulte [Ejecución de un contenedor de Docker](run-docker-container.md).
**nota**  
Si no especifica la etiqueta de la imagen o el resumen de la imagen en el URI del artefacto de una imagen, el administrador de aplicaciones de Docker extrae la última versión disponible de esa imagen al implementar el componente del contenedor de Docker personalizado. Para asegurarse de que todos sus dispositivos principales ejecuten la misma versión de una imagen, recomendamos que incluya la etiqueta o el resumen de la imagen en el URI del artefacto.
+ <a name="docker-user-permissions-requirement"></a>El usuario del sistema que ejecute un componente contenedor de Docker debe tener permisos de raíz o administrador, o bien debe configurar Docker para que se ejecute como un usuario no de raíz o no administrador.
  + En los dispositivos Linux, debe agregar un usuario al grupo de `docker` para llamar comandos `docker` sin `sudo`.
  + En los dispositivos Windows, puede agregar un usuario al grupo de `docker-users` para llamar comandos `docker` sin privilegios de administrador.

------
#### [ Linux or Unix ]

  Para agregar `ggc_user`, o el usuario no raíz que utilice para ejecutar los componentes del contenedor de Docker, al grupo de `docker`, ejecute el siguiente comando.

  ```
  sudo usermod -aG docker ggc_user
  ```

  Para obtener más información, consulte [Administrar Docker como un usuario no raíz](https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user).

------
#### [ Windows Command Prompt (CMD) ]

  Para agregar `ggc_user`, o el usuario que utilice para ejecutar los componentes del contenedor de Docker, al grupo de `docker-users`, ejecute el siguiente comando como un administrador.

  ```
  net localgroup docker-users ggc_user /add
  ```

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

  Para agregar `ggc_user`, o el usuario que utilice para ejecutar los componentes del contenedor de Docker, al grupo de `docker-users`, ejecute el siguiente comando como un administrador.

  ```
  Add-LocalGroupMember -Group docker-users -Member ggc_user
  ```

------
+ <a name="docker-proxy-requirement"></a>Si [configura el software AWS IoT Greengrass Core para usar un proxy de red](configure-greengrass-core-v2.md#configure-alpn-network-proxy), debe [configurar Docker para que use el mismo servidor proxy](https://docs.docker.com/network/proxy/).
+ Si sus imágenes de Docker están almacenadas en un registro privado de Amazon ECR, debe incluir el componente del servicio de intercambio de token como una dependencia en el componente del contenedor de Docker. Además, el [rol de dispositivo de Greengrass](device-service-role.md) debe permitir las acciones `ecr:GetAuthorizationToken`, `ecr:BatchGetImage` y `ecr:GetDownloadUrlForLayer` como se muestra en el siguiente ejemplo de política de IAM.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "ecr:GetAuthorizationToken",
          "ecr:BatchGetImage",
          "ecr:GetDownloadUrlForLayer"
        ],
        "Resource": [
          "*"
        ],
        "Effect": "Allow"
      }
    ]
  }
  ```

------

  ```
  ```
+ Se admite la ejecución del componente del administrador de aplicaciones de Docker en una VPC. Para implementar este componente en una VPC, se requiere lo siguiente.
  + El componente del administrador de aplicaciones de Docker debe tener conectividad para descargar imágenes. Por ejemplo, si usa ECR, debe tener conectividad con los siguientes puntos de conexión.
    + `*.dkr.ecr.region.amazonaws.com` (punto de conexión de VPC `com.amazonaws.region.ecr.dkr`)
    + `api.ecr.region.amazonaws.com` (punto de conexión de VPC `com.amazonaws.region.ecr.api`)

### Puntos de conexión y puertos
<a name="docker-application-manager-component-endpoints"></a>

Este componente debe poder realizar solicitudes salientes a los siguientes puntos de conexión y puertos, además de a los puntos de conexión y puertos necesarios para el funcionamiento básico. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).


| punto de enlace | Puerto | Obligatorio | Description (Descripción) | 
| --- | --- | --- | --- | 
|  `ecr.region.amazonaws.com`  | 443 | No |  Obligatorio si descarga imágenes de Docker de Amazon ECR.  | 
|  `hub.docker.com` `registry.hub.docker.com/v1`  | 443 | No |  Obligatorio si descarga imágenes de Docker desde Docker Hub.  | 

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

Al implementar un componente, AWS IoT Greengrass también despliega 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](#docker-application-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.0.15 ]

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


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

------
#### [ 2.0.14 ]

La siguiente tabla muestra las dependencias de la versión 2.0.14 de este componente.


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

------
#### [ 2.0.13 ]

La siguiente tabla muestra las dependencias de la versión 2.0.13 de este componente.


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

------
#### [ 2.0.12 ]

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


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

------
#### [ 2.0.11 ]

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


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

------
#### [ 2.0.10 ]

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


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

------
#### [ 2.0.9 ]

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


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

------
#### [ 2.0.8 ]

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


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

------
#### [ 2.0.7 ]

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


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

------
#### [ 2.0.6 ]

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


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

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

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


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

------
#### [ 2.0.4 ]

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


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

------
#### [ 2.0.3 ]

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


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

------
#### [ 2.0.2 ]

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


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

------
#### [ 2.0.1 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.3.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.1.0 <2.2.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="docker-application-manager-component-configuration"></a>

Este componente no tiene ningún parámetro de configuración.

## Archivo de registro local
<a name="docker-application-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 por la ruta a *C:\$1greengrass\$1v2* la carpeta raíz. AWS IoT Greengrass 

------
#### [ 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="docker-application-manager-component-changelog"></a>

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


|   **Versión**   |   **Cambios**   | 
| --- | --- | 
|  2.0.15  |  Versión actualizada para la versión 2.16.0 de Greengrass nucleus.  | 
|  2.0.14  | Versión actualizada para la versión 2.15.0 de Greengrass nucleus. | 
|  2.0.13  | Versión actualizada para la versión 2.14.0 de Greengrass Nucleus. | 
|  2.0.12  | Versión actualizada para el lanzamiento de la versión 2.13.0 del núcleo de Greengrass. | 
|  2.0.11  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.0.10  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.0.9  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.0.8  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.0.7  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.0.6  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.0.5  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.0.4  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.0.3  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.0.2  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.0.1  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.0.0  |  Versión inicial.  | 

## Véase también
<a name="docker-application-manager-component-see-also"></a>
+  [Ejecución de un contenedor de Docker](run-docker-container.md) 

# Conector periférico para Kinesis Video Streams
<a name="kvs-edge-connector-component"></a>

El conector periférico para el componente Kinesis Video Streams (`aws.iot.EdgeConnectorForKVS`) lee las transmisiones de video de las cámaras locales y las publica en Kinesis Video Streams. Puede configurar este componente para leer las transmisiones de video de las cámaras de protocolo de Internet (IP) mediante el protocolo de transmisión en tiempo real (RTSP). A continuación, puede configurar paneles en los servidores de [Amazon Managed Grafana](https://docs.aws.amazon.com/grafana/latest/userguide/what-is-Amazon-Managed-Service-Grafana.html) o Grafana locales para supervisar los flujos de video e interactuar con ellos.

Puede integrar este componente AWS IoT TwinMaker para mostrar y controlar las transmisiones de vídeo en los paneles de Grafana. AWS IoT TwinMaker es un AWS servicio que le permite crear gemelos digitales operativos de sistemas físicos. Puede utilizarlo AWS IoT TwinMaker para visualizar los datos de los sensores, las cámaras y las aplicaciones empresariales con el fin de realizar un seguimiento de sus fábricas, edificios o plantas industriales físicas. También puede utilizar estos datos para supervisar las operaciones, diagnosticar errores y repararlos. Para obtener más información, consulte [¿Qué es AWS IoT TwinMaker?](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/what-is-twinmaker.html) en la *Guía AWS IoT TwinMaker del usuario*.

Este componente almacena su configuración en AWS IoT SiteWise, que es un AWS servicio que modela y almacena datos industriales. En AWS IoT SiteWise, *los activos* representan objetos como dispositivos, equipos o grupos de otros objetos. Para configurar y usar este componente, debe crear un AWS IoT SiteWise activo para cada dispositivo principal de Greengrass y para cada cámara IP conectada a cada dispositivo principal. Cada activo tiene propiedades que se configuran para controlar características, como la transmisión en directo, la carga bajo demanda y el almacenamiento en caché local. Para especificar la URL de cada cámara, debe crear una entrada secreta en AWS Secrets Manager que contenga la URL de la cámara. Si la cámara requiere autenticación, también debe especificar un nombre de usuario y una contraseña en la URL. A continuación, especifique ese secreto en una propiedad de activo de la cámara de IP.

Este componente carga la transmisión de video de cada cámara a una transmisión de video de Kinesis. Debe especificar el nombre de la transmisión de vídeo de Kinesis de destino en la configuración de AWS IoT SiteWise activos de cada cámara. Si la transmisión de video de Kinesis no existe, este componente la crea por usted.

AWS IoT TwinMaker proporciona un script que puede ejecutar para crear estos AWS IoT SiteWise activos y los secretos de Secrets Manager. Para obtener más información sobre cómo crear estos recursos y cómo instalar, configurar y usar este componente, consulte la [integración de AWS IoT TwinMaker vídeo](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/video-integration.html) en la *Guía del AWS IoT TwinMaker usuario*.

**nota**  
El conector periférico para Kinesis Video Streams solo está disponible en las siguientes Regiones de AWS:  
Este de EE. UU. (Norte de Virginia)
Oeste de EE. UU. (Oregón)
Europa (Fráncfort)
Europa (Irlanda)
Asia-Pacífico (Singapur)
Asia-Pacífico (Tokio)
Asia-Pacífico (Seúl)
Asia-Pacífico (Sídney)
Asia-Pacífico (Mumbai)
China (Pekín)

**Topics**
+ [Versiones](#kvs-edge-connector-component-versions)
+ [Tipo](#kvs-edge-connector-component-type)
+ [Sistema operativo](#kvs-edge-connector-component-os-support)
+ [Requisitos](#kvs-edge-connector-component-requirements)
+ [Dependencias](#kvs-edge-connector-component-dependencies)
+ [Configuración](#kvs-edge-connector-component-configuration)
+ [Licencias](#kvs-edge-connector-component-licenses)
+ [De uso](#kvs-edge-connector-component-usage)
+ [Archivo de registro local](#kvs-edge-connector-component-log-file)
+ [Registros de cambios](#kvs-edge-connector-component-changelog)
+ [Véase también](#kvs-edge-connector-component-see-also)

## Versiones
<a name="kvs-edge-connector-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 1.0.x

## Tipo
<a name="kvs-edge-connector-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="kvs-edge-connector-component-os-support"></a>

Este componente solo se puede instalar en los dispositivos principales de Linux.

## Requisitos
<a name="kvs-edge-connector-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ Puede implementar este componente solo en dispositivos de un núcleo principal, ya que la configuración del componente debe ser única para cada dispositivo principal. No puede implementar este componente en grupos de dispositivos principales.
+ [GStreamer](https://gstreamer.freedesktop.org)1.18.4 o una versión posterior instalada en el dispositivo principal. [Para obtener más información, consulte Instalación. GStreamer](https://gstreamer.freedesktop.org/documentation/installing/index.html?gi-language=c)

  En un dispositivo con`apt`, puede ejecutar los siguientes comandos para realizar la instalación GStreamer.

  ```
  sudo apt install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-base-apps
  sudo apt install -y gstreamer1.0-libav
  sudo apt install -y gstreamer1.0-plugins-bad gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-tools
  ```
+ Un AWS IoT SiteWise activo para cada dispositivo principal. Este AWS IoT SiteWise activo representa el dispositivo principal. Para obtener más información sobre cómo crear este recurso, consulte la [integración de AWS IoT TwinMaker vídeo](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/video-integration.html) en la *Guía del AWS IoT TwinMaker usuario*.
+ Un AWS IoT SiteWise recurso para cada cámara IP que se conecte a cada dispositivo principal. Estos activos AWS IoT SiteWise representan las cámaras que transmiten video a cada dispositivo principal. El activo de cada cámara debe estar asociado al activo del dispositivo principal que se conecta a la cámara. Los activos de cámara tienen propiedades que puede configurar para especificar un flujo de video de Kinesis, un secreto de autenticación y parámetros de transmisión de video. Para obtener más información sobre cómo crear y configurar los activos de la cámara, consulte la [integración de AWS IoT TwinMaker vídeo](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/video-integration.html) en la *Guía del AWS IoT TwinMaker usuario*.
+ Un AWS Secrets Manager secreto para cada cámara IP. Este secreto debe definir un par clave-valor, donde la clave es `RTSPStreamUrl` y el valor es la URL de la cámara. Si la cámara requiere autenticación, incluya el nombre de usuario y la contraseña en esta URL. Puede usar una cadena para crear un secreto cuando cree los recursos que requiere este componente. Para obtener más información, consulte la [integración de AWS IoT TwinMaker vídeo](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/video-integration.html) en la *Guía del AWS IoT TwinMaker usuario*.

  También puede utilizar la consola del administrador de secretos y la API para crear secretos adicionales. Para obtener más información, consulte [Cómo crear un secreto](https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_create-basic-secret.html) en la *Guía del usuario de AWS Secrets Manager *.
+ La [función de intercambio de tokens de Greengrass](device-service-role.md) debe permitir las siguientes acciones y las de Kinesis Video Streams AWS Secrets Manager AWS IoT SiteWise, como se muestra en el siguiente ejemplo de política de IAM.
**nota**  
Este ejemplo de política permite al dispositivo obtener el valor de los secretos con nombres **IPCamera1Url** y **IPCamera2Url**. Cuando configura cada cámara de IP, se especifica un secreto que contiene la URL de esa cámara. Si la cámara requiere autenticación, también debe especificar un nombre de usuario y una contraseña en la URL. El rol de intercambio de token del dispositivo principal debe permitir el acceso al secreto de cada cámara de IP a la que se conecte.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "secretsmanager:GetSecretValue"
        ],
        "Effect": "Allow",
        "Resource": [
        "arn:aws:secretsmanager:us-east-1:123456789012:secret:IPCamera1Url",
    "arn:aws:secretsmanager:us-east-1:123456789012:secret:IPCamera2Url"
        ]
      },
      {
        "Action": [
          "iotsitewise:BatchPutAssetPropertyValue",
          "iotsitewise:DescribeAsset",
          "iotsitewise:DescribeAssetModel",
          "iotsitewise:DescribeAssetProperty",
          "iotsitewise:GetAssetPropertyValue",
          "iotsitewise:ListAssetRelationships",
          "iotsitewise:ListAssets",
          "iotsitewise:ListAssociatedAssets",
          "kinesisvideo:CreateStream",
          "kinesisvideo:DescribeStream",
          "kinesisvideo:GetDataEndpoint",
          "kinesisvideo:PutMedia",
          "kinesisvideo:TagStream"
        ],
        "Effect": "Allow",
        "Resource": [
          "*"
        ]
      }
    ]
  }
  ```

------
**nota**  
Si utiliza una AWS Key Management Service clave gestionada por el cliente para cifrar los secretos, la función de dispositivo también debe permitir la acción. `kms:Decrypt`

### Puntos de conexión y puertos
<a name="kvs-edge-connector-component-endpoints"></a>

Este componente debe poder realizar solicitudes salientes a los siguientes puntos de conexión y puertos, además de a los puntos de conexión y puertos necesarios para el funcionamiento básico. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).


| punto de enlace | Puerto | Obligatorio | Description (Descripción) | 
| --- | --- | --- | --- | 
|  `kinesisvideo.region.amazonaws.com`  | 443 | Sí |  Cargue datos a Kinesis Video Streams.  | 
|  `data.iotsitewise.region.amazonaws.com`  | 443 | Sí |  Publique los metadatos del flujo de video en AWS IoT SiteWise.  | 
|  `secretsmanager.region.amazonaws.com`  | 443 | Sí |  Descargue los secretos de la URL de la cámara al dispositivo principal.  | 

## Dependencias
<a name="kvs-edge-connector-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#kvs-edge-connector-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**.

En la siguiente tabla, se muestran las dependencias de las versiones 1.0.0 a 1.0.5 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=2.0.3 | Rígido | 
| [Administrador de flujos](stream-manager-component.md) | >=2.0.9 | Rígido | 

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="kvs-edge-connector-component-configuration"></a>

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

`SiteWiseAssetIdForHub`  
El ID del AWS IoT SiteWise activo que representa este dispositivo principal. Para obtener más información sobre cómo crear este recurso y usarlo para interactuar con este componente, consulte la [integración de AWS IoT TwinMaker vídeo](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/video-integration.html) en la *Guía del AWS IoT TwinMaker usuario*.

**Example Ejemplo: actualización de la combinación de configuraciones**  

```
{
  "SiteWiseAssetIdForHub": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
}
```

## Licencias
<a name="kvs-edge-connector-component-licenses"></a>

Este componente incluye las siguientes licencias o software de terceros:
+ [Quartz Job Scheduler](http://www.quartz-scheduler.org/)/Apache License 2.0
+ [Vinculaciones de Java para la GStreamer licencia pública general reducida 1.x/GNU](https://github.com/gstreamer-java/gst1-java-core) v3.0

## De uso
<a name="kvs-edge-connector-component-usage"></a>

Para configurar este componente e interactuar con él, puede configurar las propiedades de AWS IoT SiteWise los activos que representan el dispositivo principal y las cámaras IP a las que se conecta. También puede visualizar e interactuar con las transmisiones de vídeo en los paneles de Grafana a través de. AWS IoT TwinMaker Para obtener más información, consulte la [integración de AWS IoT TwinMaker vídeo](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/video-integration.html) en la Guía del *AWS IoT TwinMaker usuario*.

## Archivo de registro local
<a name="kvs-edge-connector-component-log-file"></a>

Este componente usa el siguiente archivo de registro.

```
/greengrass/v2/logs/aws.iot.EdgeConnectorForKVS.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. `/greengrass/v2`Sustitúyala por la ruta a la carpeta AWS IoT Greengrass raíz.

  ```
  sudo tail -f /greengrass/v2/logs/aws.iot.EdgeConnectorForKVS.log
  ```

## Registros de cambios
<a name="kvs-edge-connector-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  1.0.5  |  Corrección de errores y mejoras generales.  | 
|  1.0.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/kvs-edge-connector-component.html)  | 
|  1.0.3  |  Corrección de errores y mejoras generales.  | 
|  1.0.1  |  Corrección de errores y mejoras generales.  | 
|  1.0.0  |  Versión inicial.  | 

## Véase también
<a name="kvs-edge-connector-component-see-also"></a>
+ [¿Qué es AWS IoT TwinMaker?](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/what-is-twinmaker.html) en la *Guía AWS IoT TwinMaker del usuario*
+ [AWS IoT TwinMaker integración de vídeo](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/video-integration.html) en la *Guía AWS IoT TwinMaker del usuario*
+ [¿Qué es AWS IoT SiteWise?](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/what-is-sitewise.html) en la *Guía AWS IoT SiteWise del usuario*
+ [Actualización de los valores de los atributos](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/update-attribute-values.html) en la *Guía del usuario de AWS IoT SiteWise *
+ ¿[Qué es AWS Secrets Manager?](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) en la * Guía del usuario de AWS Secrets Manager *
+ [Creación y administración de secretos](https://docs.aws.amazon.com/secretsmanager/latest/userguide/managing-secrets.html) en la *Guía del usuario de AWS Secrets Manager *

# CLI de Greengrass
<a name="greengrass-cli-component"></a>

El componente CLI de Greengrass (`aws.greengrass.Cli`) proporciona una interfaz de línea de comandos local que puede usar en los dispositivos principales para desarrollar y depurar componentes de forma local. La CLI de Greengrass le permite crear implementaciones locales y reiniciar componentes en el dispositivo principal, por ejemplo.

Puede instalar este componente al instalar el software principal. AWS IoT Greengrass Para obtener más información, consulte [Tutorial: Introducción a AWS IoT Greengrass V2](getting-started.md).

**importante**  
 <a name="local-dev-tools-production-environment-warning"></a>Se recomienda usar este componente solo en entornos de desarrollo y no en entornos de producción. Este componente brinda acceso a información y operaciones que, por lo general, no necesitará en un entorno de producción. Siga el principio de privilegio mínimo al implementar este componente solo en los dispositivos principales donde lo necesite. 

Una vez instalado este componente, ejecute el siguiente comando para ver la documentación de ayuda. Cuando se instala este componente, se agrega un enlace simbólico a `greengrass-cli` en la carpeta `/greengrass/v2/bin`. Puede ejecutar la CLI de Greengrass desde esta ruta o agregarla a la variable de entorno `PATH` para que `greengrass-cli` se ejecute sin la ruta absoluta.

------
#### [ Linux or Unix ]

```
/greengrass/v2/bin/greengrass-cli help
```

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

```
C:\greengrass\v2\bin\greengrass-cli help
```

------

El siguiente comando reinicia un componente denominado `com.example.HelloWorld`, por ejemplo.

------
#### [ Linux or Unix ]

```
sudo /greengrass/v2/bin/greengrass-cli component restart --names "com.example.HelloWorld"
```

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

```
C:\greengrass\v2\bin\greengrass-cli component restart --names "com.example.HelloWorld"
```

------

Para obtener más información, consulte [Interfaz de la línea de comandos de Greengrass](gg-cli.md).

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

## Versiones
<a name="greengrass-cli-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.16.x
+ 2.15.x
+ 2.14.x
+ 2.13.x
+ 2.12.x
+ 2.11.x
+ 2.10.x
+ 2.9.x
+ 2.8.x
+ 2.7.x
+ 2.6.x
+ 2.5.x
+ 2.4.x
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Tipo
<a name="greengrass-cli-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="greengrass-cli-component-os-support"></a>

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

## Requisitos
<a name="greengrass-cli-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ <a name="greengrass-cli-authorization-requirement"></a>Debe estar autorizado a utilizar la CLI de Greengrass para interactuar con el software AWS IoT Greengrass principal. Realice una de las siguientes acciones para usar la CLI de Greengrass:
  + Utilice el usuario del sistema que ejecuta el software AWS IoT Greengrass Core.
  + Utilice un usuario con permisos raíz o administrativos. En los dispositivos principales de Linux, puede utilizar `sudo` para obtener permisos de raíz.
  + Utilice un usuario del sistema que esté en un grupo que especifique en los parámetros de configuración `AuthorizedPosixGroups` o `AuthorizedWindowsGroups` al implementar el componente. Para obtener más información, consulte [Configuración del componente de la CLI de Greengrass](#greengrass-cli-component-configuration).
+ Se admite la ejecución del componente CLI de Greengrass en una VPC.

## Dependencias
<a name="greengrass-cli-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#greengrass-cli-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.16.0 ]

La siguiente tabla muestra las dependencias de la versión 2.16.0 de este componente.


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

------
#### [ 2.15.1 ]

La siguiente tabla muestra las dependencias de la versión 2.15.1 de este componente.


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

------
#### [ 2.15.0 ]

La siguiente tabla muestra las dependencias de la versión 2.15.0 de este componente.


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

------
#### [ 2.14.0 – 2.14.3 ]

La siguiente tabla muestra las dependencias de las versiones 2.14.0 y 2.14.3 de este componente.


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

------
#### [ 2.13.0 ]

La siguiente tabla muestra las dependencias de la versión 2.13.0 de este componente.


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

------
#### [ 2.12.0 – 2.12.6 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.12.0 a 2.12.6 de este componente.


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

------
#### [ 2.11.0 – 2.11.3 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.11.0 a 2.11.3 de este componente.


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

------
#### [ 2.10.0 – 2.10.3 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.10.0 a 2.10.3 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.9.0 – 2.9.6 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.9.0 a 2.9.6 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.8.0 – 2.8.1 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.8.0 y 2.8.1 de este componente.


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

------
#### [ 2.7.0 ]

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


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

------
#### [ 2.6.0 ]

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


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

------
#### [ 2.5.0 – 2.5.6 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.5.0 a 2.5.6 de este componente.


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

------
#### [ 2.4.0 ]

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


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

------
#### [ 2.3.0 ]

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


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

------
#### [ 2.2.0 ]

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


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

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

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


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

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

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


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

**nota**  
La versión mínima compatible del núcleo de Greengrass corresponde a la versión de revisión del componente CLI de Greengrass. 

------

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="greengrass-cli-component-configuration"></a>

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

------
#### [ 2.5.x - 2.14.x ]

`AuthorizedPosixGroups`  <a name="greengrass-cli-component-configuration-authorizedposixgroups"></a>
(Opcional) Una cadena que contiene una lista de grupos de sistema separados por comas. Usted autoriza a estos grupos de sistemas a utilizar la CLI de Greengrass para interactuar con el software AWS IoT Greengrass principal. Puede especificar los nombres de los grupos o grupos IDs. Por ejemplo, `group1,1002,group3` autoriza a tres grupos de sistemas (`group1`, `1002` y `group3`) a utilizar la CLI de Greengrass.  
Si no especifica ningún grupo para autorizarlo, puede usar la CLI de Greengrass como usuario root (`sudo`) o como usuario del sistema que ejecuta el software AWS IoT Greengrass Core.

`AuthorizedWindowsGroups`  <a name="greengrass-cli-component-configuration-authorizedwindowsgroups"></a>
(Opcional) Una cadena que contiene una lista de grupos de sistema separados por comas. Usted autoriza a estos grupos de sistemas a utilizar la CLI de Greengrass para interactuar con el software AWS IoT Greengrass principal. Puede especificar los nombres de los grupos o grupos IDs. Por ejemplo, `group1,1002,group3` autoriza a tres grupos de sistemas (`group1`, `1002` y `group3`) a utilizar la CLI de Greengrass.  
Si no especifica ningún grupo para autorizarlo, puede usar la CLI de Greengrass como administrador o como usuario del sistema que ejecuta el software AWS IoT Greengrass principal.

**Example Ejemplo: actualización de la combinación de configuraciones**  
En el siguiente ejemplo de configuración, se especifica que se debe autorizar a tres grupos del sistema POSIX (`group1`, `1002` y `group3`) y dos grupos de usuarios de Windows (`Device Operators` y `QA Engineers`) a utilizar la CLI de Greengrass.  

```
{
  "AuthorizedPosixGroups": "group1,1002,group3",
  "AuthorizedWindowsGroups": "Device Operators,QA Engineers"
}
```

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

`AuthorizedPosixGroups`  <a name="greengrass-cli-component-configuration-authorizedposixgroups"></a>
(Opcional) Una cadena que contiene una lista de grupos de sistema separados por comas. Usted autoriza a estos grupos de sistemas a utilizar la CLI de Greengrass para interactuar con el software AWS IoT Greengrass principal. Puede especificar los nombres de los grupos o grupos IDs. Por ejemplo, `group1,1002,group3` autoriza a tres grupos de sistemas (`group1`, `1002` y `group3`) a utilizar la CLI de Greengrass.  
Si no especifica ningún grupo para autorizarlo, puede usar la CLI de Greengrass como usuario root (`sudo`) o como usuario del sistema que ejecuta el software AWS IoT Greengrass Core.

**Example Ejemplo: actualización de la combinación de configuraciones**  
En el siguiente ejemplo de configuración, se especifica que se autorice a tres grupos de sistemas (`group1`, `1002` y `group3`) a utilizar la CLI de Greengrass.  

```
{
  "AuthorizedPosixGroups": "group1,1002,group3"
}
```

------

## Archivo de registro local
<a name="greengrass-cli-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:\$1greengrass\$1v2* 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="greengrass-cli-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.16.1  |  Versión actualizada para la versión 2.16.1 de Greengrass Nucleus.  | 
|  2.16.0  |  Versión actualizada para la versión 2.16.0 de Greengrass nucleus.  | 
|  2.15.1  |  Versión actualizada para la versión 2.15.1 de Greengrass Nucleus.  | 
|  2.15.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-cli-component.html)  | 
|  2.14.3  |  Versión actualizada para la versión 2.14.3 de Greengrass Nucleus.  | 
|  2.14.2  |  Versión actualizada para la versión 2.14.2 de Greengrass Nucleus.  | 
|  2.14.1  |  Versión actualizada para la versión 2.14.1 de Greengrass Nucleus.  | 
|  2.14.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-cli-component.html)  | 
|  2.13.0  |  Versión actualizada para el lanzamiento de la versión 2.13.0 del núcleo de Greengrass.  | 
|  2.12.6  |  Versión actualizada de la versión 2.12.6 del núcleo de Greengrass.  | 
|  2.12.5  |  Versión actualizada para el lanzamiento de la versión 2.12.5 del núcleo de Greengrass.  | 
|  2.12.4  |  Versión actualizada para el lanzamiento de la versión 2.12.4 del núcleo de Greengrass.  | 
|  2.12.3  |   Esta versión ya no está disponible. Las mejoras de esta versión están disponibles en versiones posteriores de este componente.  Versión actualizada para el lanzamiento de la versión 2.12.3 del núcleo de Greengrass.  | 
|  2.12.2  |  Versión actualizada para el lanzamiento de la versión 2.12.2 del núcleo de Greengrass.  | 
|  2.12.1  |  Versión actualizada para el lanzamiento de la versión 2.12.1 del núcleo de Greengrass.  | 
|  2.12.0  |  Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass.  | 
|  2.11.3  |  Versión actualizada para el lanzamiento de la versión 2.11.3 del núcleo de Greengrass.  | 
|  2.11.2  |  Versión actualizada para el lanzamiento de la versión 2.11.2 del núcleo de Greengrass.  | 
|  2.11.1  |  Versión actualizada para el lanzamiento de la versión 2.11.1 del núcleo de Greengrass.  | 
|  2.11.0  |  <a name="changelog-cli-2.11.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-cli-component.html)  | 
|  2.10.3  |  Versión actualizada para el lanzamiento de la versión 2.10.3 del núcleo de Greengrass.  | 
|  2.10.2  |  Versión actualizada para el lanzamiento de la versión 2.10.2 del núcleo de Greengrass.  | 
|  2.10.1  |  Versión actualizada para el lanzamiento de la versión 2.10.1 del núcleo de Greengrass.  | 
|  2.10.0  |  Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass.  | 
|  2.9.6  |  Versión actualizada para el lanzamiento de la versión 2.9.6 del núcleo de Greengrass.  | 
|  2.9.5  |  Versión actualizada para el lanzamiento de la versión 2.9.5 del núcleo de Greengrass.  | 
|  2.9.4  |  Versión actualizada para el lanzamiento de la versión 2.9.4 del núcleo de Greengrass.  | 
|  2.9.3  |  Versión actualizada para el lanzamiento de la versión 2.9.3 del núcleo de Greengrass.  | 
|  2.9.2  |  Versión actualizada para el lanzamiento de la versión 2.9.2 del núcleo de Greengrass.  | 
|  2.9.1  |  Versión actualizada para el lanzamiento de la versión 2.9.1 del núcleo de Greengrass.  | 
|  2.9.0  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.8.1  |  Versión actualizada para el lanzamiento de la versión 2.8.1 del núcleo de Greengrass.  | 
|  2.8.0  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.7.0  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.6.0  |  <a name="changelog-greengrass-cli-2.6.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-cli-component.html)  | 
|  2.5.6  |  Versión actualizada para el lanzamiento de la versión 2.5.6 del núcleo de Greengrass.  | 
|  2.5.5  |  Versión actualizada para el lanzamiento de la versión 2.5.5 del núcleo de Greengrass.  | 
|  2.5.4  |  Versión actualizada para el lanzamiento de la versión 2.5.4 del núcleo de Greengrass.  | 
|  2.5.3  |  Versión actualizada para el lanzamiento de la versión 2.5.3 del núcleo de Greengrass.  | 
|  2.5.2  |  Versión actualizada para el lanzamiento de la versión 2.5.2 del núcleo de Greengrass.  | 
|  2.5.1  |  Versión actualizada para el lanzamiento de la versión 2.5.1 del núcleo de Greengrass.  | 
|  2.5.0  |  <a name="changelog-greengrass-cli-2.5.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-cli-component.html)  | 
|  2.4.0  |  <a name="changelog-greengrass-cli-2.4.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/greengrass-cli-component.html)  | 
|  2.3.0  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.2.0  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.1.0  |  Versión actualizada para el lanzamiento de la versión 2.1.0 del núcleo de Greengrass.  | 
|  2.0.5  | Versión actualizada para el lanzamiento de la versión 2.0.5 del núcleo de Greengrass. | 
|  2.0.4  | Versión actualizada para el lanzamiento de la versión 2.0.4 del núcleo de Greengrass. | 
|  2.0.3  |  Versión inicial.  | 

# Detector de IP
<a name="ip-detector-component"></a>

El componente detector de IP (`aws.greengrass.clientdevices.IPDetector`) hace lo siguiente:
+ Supervisa la información de conectividad de red del dispositivo principal de Greengrass. Esta información incluye los puntos de conexión de la red del dispositivo principal y el puerto en el que opera un agente de MQTT.
+ Actualiza la información de conectividad del dispositivo principal en el servicio en la AWS IoT Greengrass nube.

Los dispositivos de cliente pueden usar la detección en la nube de Greengrass para recuperar la información de conectividad de sus dispositivos principales asociados. A continuación, los dispositivos de cliente pueden intentar conectarse a cada dispositivo principal hasta que se conecten correctamente.

**nota**  <a name="client-device-component-context"></a>
Los dispositivos de cliente son dispositivos IoT locales que se conectan a un dispositivo principal de Greengrass para enviar mensajes MQTT y datos para su procesamiento. Para obtener más información, consulte [Interacción con dispositivos IoT locales](interact-with-local-iot-devices.md).

El componente detector de IP reemplaza la información de conectividad existente de un dispositivo principal por la información que detecta. Como este componente elimina la información existente, puede utilizar el componente detector de IP o administrar manualmente la información de conectividad.

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

## Versiones
<a name="ip-detector-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Tipo
<a name="ip-detector-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="ip-detector-component-os-support"></a>

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

## Requisitos
<a name="ip-detector-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ El [rol de servicio de Greengrass](greengrass-service-role.md) debe estar asociado a sus permisos Cuenta de AWS y permitir los permisos `iot:GetThingShadow` y`iot:UpdateThingShadow`.
+ La AWS IoT política del dispositivo principal debe permitir el `greengrass:UpdateConnectivityInfo` permiso. Para obtener más información, consulte [AWS IoT políticas para las operaciones del plano de datos](device-auth.md#iot-policies) y [AWS IoT Política mínima de compatibilidad con los dispositivos cliente](device-auth.md#client-device-support-minimal-iot-policy).
+ Si configura el componente agente MQTT del dispositivo principal para que utilice un puerto que no sea el puerto 8883 predeterminado, debe usar el detector de IP versión 2.1.0 o posterior. Configúrelo para que indique el puerto en el que opera el agente.
+ Si tiene una configuración de red compleja, es posible que el componente detector de IP no pueda identificar los puntos de conexión en los que los dispositivos de cliente se pueden conectar al dispositivo principal. Si el componente detector de IP no puede administrar los puntos de conexión, debe administrar manualmente los puntos de conexión del dispositivo principal. Por ejemplo, si el dispositivo principal está detrás de un enrutador que le reenvía el puerto de agente MQTT, debe especificar la dirección IP del enrutador como punto de conexión del dispositivo principal. Para obtener más información, consulte [Administración de puntos de conexión del dispositivo principal](manage-core-device-endpoints.md).
+ Se admite que el componente detector de IP se ejecute en una VPC.

## Dependencias
<a name="ip-detector-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#ip-detector-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.2.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.2.0 <2.17.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.2.0 <2.16.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.2.0 <2.15.0 | Flexible | 

------
#### [ 2.2.0 ]

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


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

------
#### [ 2.1.8 – 2.1.9 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.8 y 2.1.9 de este componente.


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

------
#### [ 2.1.7 ]

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


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

------
#### [ 2.1.6 ]

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


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

------
#### [ 2.1.5 ]

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


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

------
#### [ 2.1.4 ]

En la siguiente tabla, se muestran las dependencias de la versión 2.1.4 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.1.3 ]

En la siguiente tabla, se muestran las dependencias de la versión 2.1.3 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.2 ]

En la siguiente tabla, se muestran las dependencias de la versión 2.1.2 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.1.1 ]

En la siguiente tabla, se muestran las dependencias de la versión 2.1.1 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.1.0 and 2.0.2 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.0 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.5.0 | Flexible | 

------
#### [ 2.0.1 ]

En la siguiente tabla, se muestran las dependencias de la versión 2.0.1 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="ip-detector-component-configuration"></a>

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

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

`defaultPort`  <a name="ip-detector-component-configuration-default-port"></a>
<a name="ip-detector-component-configuration-default-port-definition"></a>(Opcional) El puerto del agente de MQTT para informar cuando este componente detecta direcciones IP. Debe especificar este parámetro si configura el agente MQTT para que utilice un puerto diferente al puerto predeterminado 8883.  
Valor predeterminado: `8883`

`includeIPv4LoopbackAddrs`  <a name="ip-detector-component-configuration-include-ipv4-loopback-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-loopback-addrs-definition"></a>(Opcional) Puede activar esta opción para detectar y reportar direcciones de bucle invertido. IPv4 Estas son direcciones IP, por ejemplo, `localhost`, donde un dispositivo puede comunicarse consigo mismo. Utilice esta opción en entornos de prueba en los que el dispositivo principal y el dispositivo de cliente se ejecuten en el mismo sistema.  
Valor predeterminado: `false`

`includeIPv4LinkLocalAddrs`  <a name="ip-detector-component-configuration-include-ipv4-link-local-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-link-local-addrs-definition"></a>(Opcional) Puede activar esta opción para detectar e informar sobre las direcciones locales de los IPv4 [enlaces](https://en.wikipedia.org/wiki/Link-local_address). Utilice esta opción si la red del dispositivo principal no tiene el Protocolo de configuración dinámica de host (DHCP) ni direcciones IP asignadas de forma estática.  
Valor predeterminado: `false`

`includeIPv6LoopbackAddrs`  <a name="ip-detector-component-configuration-include-ipv6-loopback-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv6-loopback-addrs-definition"></a>(Opcional) Puede activar esta opción para detectar e informar sobre las direcciones de IPv6 bucle invertido. Estas son direcciones IP, por ejemplo, `localhost`, donde un dispositivo puede comunicarse consigo mismo. Utilice esta opción en entornos de prueba en los que el dispositivo principal y el dispositivo de cliente se ejecuten en el mismo sistema. Debe configurar `includeIPv4Addrs` en `false` y `includeIPv6Addrs` en `true` para utilizar esta opción.  
Valor predeterminado: `false`

`includeIPv6LinkLocalAddrs`  <a name="ip-detector-component-configuration-include-ipv6-link-local-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv6-link-local-addrs-definition"></a>(Opcional) Puede activar esta opción para detectar e informar sobre las direcciones locales de los IPv6 [enlaces](https://en.wikipedia.org/wiki/Link-local_address). Utilice esta opción si la red del dispositivo principal no tiene el Protocolo de configuración dinámica de host (DHCP) ni direcciones IP asignadas de forma estática. Debe configurar `includeIPv4Addrs` en `false` y `includeIPv6Addrs` en `true` para utilizar esta opción.  
Valor predeterminado: `false`

`includeIPv4Addrs`  <a name="ip-detector-component-configuration-include-ipv4-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-addrs-definition"></a>(Opcional) De forma predeterminada, la opción se establece en `true`. Puede activar esta opción para publicar IPv4 las direcciones que se encuentran en el dispositivo principal.  
Valor predeterminado: `true`

`includeIPv6Addrs`  <a name="ip-detector-component-configuration-include-ipv6-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv6-addrs-definition"></a>(Opcional) Puede activar esta opción para publicar IPv6 las direcciones que se encuentran en el dispositivo principal. Configure `includeIPv4Addrs` en `false` para usar esta opción.  
Valor predeterminado: `false`

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

`defaultPort`  <a name="ip-detector-component-configuration-default-port"></a>
<a name="ip-detector-component-configuration-default-port-definition"></a>(Opcional) El puerto del agente de MQTT para informar cuando este componente detecta direcciones IP. Debe especificar este parámetro si configura el agente MQTT para que utilice un puerto diferente al puerto predeterminado 8883.  
Valor predeterminado: `8883`

`includeIPv4LoopbackAddrs`  <a name="ip-detector-component-configuration-include-ipv4-loopback-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-loopback-addrs-definition"></a>(Opcional) Puede activar esta opción para detectar y reportar las direcciones de IPv4 bucle invertido. Estas son direcciones IP, por ejemplo, `localhost`, donde un dispositivo puede comunicarse consigo mismo. Utilice esta opción en entornos de prueba en los que el dispositivo principal y el dispositivo de cliente se ejecuten en el mismo sistema.  
Valor predeterminado: `false`

`includeIPv4LinkLocalAddrs`  <a name="ip-detector-component-configuration-include-ipv4-link-local-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-link-local-addrs-definition"></a>(Opcional) Puede activar esta opción para detectar e informar sobre las direcciones locales de los IPv4 [enlaces](https://en.wikipedia.org/wiki/Link-local_address). Utilice esta opción si la red del dispositivo principal no tiene el Protocolo de configuración dinámica de host (DHCP) ni direcciones IP asignadas de forma estática.  
Valor predeterminado: `false`

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

`includeIPv4LoopbackAddrs`  <a name="ip-detector-component-configuration-include-ipv4-loopback-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-loopback-addrs-definition"></a>(Opcional) Puede activar esta opción para detectar e informar sobre las direcciones de IPv4 bucle invertido. Estas son direcciones IP, por ejemplo, `localhost`, donde un dispositivo puede comunicarse consigo mismo. Utilice esta opción en entornos de prueba en los que el dispositivo principal y el dispositivo de cliente se ejecuten en el mismo sistema.  
Valor predeterminado: `false`

`includeIPv4LinkLocalAddrs`  <a name="ip-detector-component-configuration-include-ipv4-link-local-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-link-local-addrs-definition"></a>(Opcional) Puede activar esta opción para detectar e informar sobre las direcciones locales de los IPv4 [enlaces](https://en.wikipedia.org/wiki/Link-local_address). Utilice esta opción si la red del dispositivo principal no tiene el Protocolo de configuración dinámica de host (DHCP) ni direcciones IP asignadas de forma estática.  
Valor predeterminado: `false`

------

## Archivo de registro local
<a name="ip-detector-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:\$1greengrass\$1v2* 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="ip-detector-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.2.3  |  Versión actualizada para el lanzamiento de la versión 2.16.0 de Greengrass nucleus.  | 
|  2.2.2  | Versión actualizada para el lanzamiento de la versión 2.15.0 de Greengrass nucleus. | 
|  2.2.1  | Versión actualizada para la versión 2.14.0 de Greengrass Nucleus. | 
|  2.2.0  | Versión actualizada para el lanzamiento de la versión 2.13.0 del núcleo de Greengrass. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/ip-detector-component.html)  | 
|  2.1.9  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/ip-detector-component.html)  | 
|  2.1.8  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.1.7  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.1.6  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.1.5  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.1.4  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.1.3  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.1.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/ip-detector-component.html)  | 
|  2.1.1  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/ip-detector-component.html)  | 
|  2.0.2  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  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.  | 

# Firehose
<a name="kinesis-firehose-component"></a>

El componente Firehose (`aws.greengrass.KinesisFirehose`) publica datos a través de las transmisiones de entrega de Amazon Data Firehose a destinos, como Amazon S3, Amazon Redshift y Amazon Service. OpenSearch Para obtener más información, consulte [¿Qué es Amazon Data Firehose?](https://docs.aws.amazon.com/firehose/latest/dev/what-is-this-service.html) en la *Guía para desarrolladores de Amazon Data Firehose*.

Para publicar en un flujo de entrega de Kinesis con este componente, publique un mensaje en un tema al que se suscriba este componente. De forma predeterminada, este componente se suscribe a los temas de [publicación/suscripción locales `kinesisfirehose/message` y `kinesisfirehose/message/binary/#`](ipc-publish-subscribe.md). Puede especificar otros temas, incluidos los de AWS IoT Core MQTT, al implementar este componente.

**nota**  
Este componente proporciona una funcionalidad similar a la del conector Firehose de la V1. AWS IoT Greengrass Para obtener más información, consulte [Conector de Firehose](https://docs.aws.amazon.com/greengrass/latest/developerguide/kinesis-firehose-connector.html) en la *Guía para desarrolladores de AWS IoT Greengrass V1*.

**Topics**
+ [Versiones](#kinesis-firehose-component-versions)
+ [Tipo](#kinesis-firehose-component-type)
+ [Sistema operativo](#kinesis-firehose-component-os-support)
+ [Requisitos](#kinesis-firehose-component-requirements)
+ [Dependencias](#kinesis-firehose-component-dependencies)
+ [Configuración](#kinesis-firehose-component-configuration)
+ [Datos de entrada](#kinesis-firehose-component-input-data)
+ [Datos de salida](#kinesis-firehose-component-output-data)
+ [Archivo de registro local](#kinesis-firehose-component-log-file)
+ [Licencias](#kinesis-firehose-component-licenses)
+ [Registros de cambios](#kinesis-firehose-component-changelog)
+ [Véase también](#kinesis-firehose-component-see-also)

## Versiones
<a name="kinesis-firehose-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.1.x
+ 2.0.x

## Tipo
<a name="kinesis-firehose-component-type"></a>

<a name="public-component-type-lambda"></a>Este <a name="public-component-type-lambda-phrase"></a>componente es un componente de Lambda (`aws.greengrass.lambda`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta la función de Lambda de este componente mediante el [componente lanzador de Lambda](lambda-launcher-component.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="kinesis-firehose-component-os-support"></a>

Este componente solo se puede instalar en los dispositivos principales de Linux.

## Requisitos
<a name="kinesis-firehose-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ <a name="core-device-lambda-function-requirements"></a>El dispositivo principal debe cumplir los requisitos para ejecutar las funciones de Lambda. Si desea que el dispositivo principal ejecute funciones de Lambda en contenedores, el dispositivo debe cumplir los requisitos para hacerlo. Para obtener más información, consulte [Requisitos de la función de Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ <a name="public-component-python3-requirement"></a>Versión 3.7 de [Python](https://www.python.org/) instalada en el dispositivo principal y agregada a la variable de entorno PATH.
+ El [rol de dispositivo de Greengrass](device-service-role.md) debe permitir las acciones `firehose:PutRecord` y `firehose:PutRecordBatch`, tal como se muestra en la política de IAM en el ejemplo siguiente.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "firehose:PutRecord",
          "firehose:PutRecordBatch"
        ],
        "Effect": "Allow",
        "Resource": [
          "arn:aws:firehose:us-east-1:123456789012:deliverystream/stream-name"
        ]
      }
    ]
  }
  ```

------

  Puede anular dinámicamente el flujo de entrega predeterminado en la carga útil del mensaje de entrada para este componente. Si su aplicación utiliza esta característica, la política de IAM debe incluir todos los flujos de destino como recursos. Puede conceder acceso granular o condicional a recursos (por ejemplo, utilizando un esquema de nomenclatura con comodín `*`)
+ <a name="connector-component-legacy-subscription-router-dependency"></a>Para recibir los datos de salida de este componente, debe combinar la siguiente actualización de configuración para el [componente del enrutador de suscripción antiguo](legacy-subscription-router-component.md) (`aws.greengrass.LegacySubscriptionRouter`) cuando implemente este componente. Esta configuración especifica el tema en el que este componente publica las respuestas.

------
#### [ Legacy subscription router v2.1.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-kinesisfirehose": {
        "id": "aws-greengrass-kinesisfirehose",
        "source": "component:aws.greengrass.KinesisFirehose",
        "subject": "kinesisfirehose/message/status",
        "target": "cloud"
      }
    }
  }
  ```

------
#### [ Legacy subscription router v2.0.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-kinesisfirehose": {
        "id": "aws-greengrass-kinesisfirehose",
        "source": "arn:aws:lambda:region:aws:function:aws-greengrass-kinesisfirehose:version",
        "subject": "kinesisfirehose/message/status",
        "target": "cloud"
      }
    }
  }
  ```<a name="connector-component-legacy-subscription-router-dependency-replace"></a>
  + *region*Sustitúyalo por el Región de AWS que utilice.
  + *version*Sustitúyala por la versión de la función Lambda que ejecuta este componente. Para encontrar la versión de la función de Lambda, debe ver la receta de la versión de este componente que desee implementar. Abra la página de detalles de este componente en la [consola de AWS IoT Greengrass](https://console.aws.amazon.com//greengrass) y busque el par clave-valor de la **función de Lambda**. Este par clave-valor contiene el nombre y la versión de la función de Lambda.

**importante**  <a name="connector-component-legacy-subscription-router-dependency-note"></a>
Debe actualizar la versión de la función de Lambda en el enrutador de suscripción antiguo cada vez que implemente este componente. Esto garantiza que utilice la versión correcta de la función de Lambda para la versión del componente que implemente.

------

  <a name="connector-component-create-deployments"></a>Para obtener más información, consulte [Crear implementaciones](create-deployments.md).
+ Se admite la ejecución del componente de Firehose en una VPC. Para implementar este componente en una VPC, se requiere lo siguiente.
  + El componente de Firehose debe tener una conectividad con `firehose.region.amazonaws.com` que tenga el punto de conexión de VPC de `com.amazonaws.region.kinesis-firehose`.

### Puntos de conexión y puertos
<a name="kinesis-firehose-component-endpoints"></a>

Este componente debe poder realizar solicitudes salientes a los siguientes puntos de conexión y puertos, además de a los puntos de conexión y puertos necesarios para el funcionamiento básico. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).


| punto de enlace | Puerto | Obligatorio | Description (Descripción) | 
| --- | --- | --- | --- | 
|  `firehose.region.amazonaws.com`  | 443 | Sí |  Carga de datos a Firehose.  | 

## Dependencias
<a name="kinesis-firehose-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#kinesis-firehose-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.1.10 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.16.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.9 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 =2.0.0 <2.15.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.8 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.14.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.7 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.6 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.5 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.4 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.2 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.1 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.8 - 2.1.0 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.8 y 2.1.0 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.7 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.6 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.4 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.3 <2.1.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | >=1.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | >=1.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=1.0.0  | Rígido | 

------

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="kinesis-firehose-component-configuration"></a>

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

**nota**  <a name="connector-component-lambda-parameters"></a>
La configuración predeterminada de este componente incluye los parámetros de la función de Lambda. Le recomendamos que edite solo los siguientes parámetros para configurar este componente en sus dispositivos.

`lambdaParams`  
Un objeto que contiene los parámetros de la función de Lambda de este componente. Este objeto contiene la siguiente información:    
`EnvironmentVariables`  
Un objeto que contiene los parámetros de la función de Lambda. Este objeto contiene la siguiente información:    
`DEFAULT_DELIVERY_STREAM_ARN`  
El ARN del flujo de entrega predeterminada de Firehose al que el componente envía los datos. Puede anular el flujo de destino con la propiedad `delivery_stream_arn` en la carga útil del mensajes de entrada.  
El rol del dispositivo principal debe permitir las acciones necesarias en todos los flujos de entrega de destino. Para obtener más información, consulte [Requisitos](#kinesis-firehose-component-requirements).  
`PUBLISH_INTERVAL`  
(Opcional) La cantidad máxima de segundos que se deben esperar antes de que el componente publique los datos por lotes en Firehose. Para configurar el componente para que publique las métricas a medida que las reciba, es decir, sin procesamiento por lotes, especifique `0`.  
Este valor puede ser de 900 segundos como máximo.  
Valor predeterminado: 10 segundos  
`DELIVERY_STREAM_QUEUE_SIZE`  
(Opcional) La cantidad máxima de registros para retener en memoria antes de que el componente rechace los nuevos registros para el mismo flujo de entrega.  
Este valor debe ser de al menos 2000 registros.  
Valor predeterminado: 5000 registros

`containerMode`  <a name="connector-component-container-mode-parameter"></a>
(Opcional) El modo de almacenamiento en contenedores de este componente. Puede elegir entre las siguientes opciones:  <a name="lambda-function-component-container-mode-parameter"></a>
+ `NoContainer`: el componente no se ejecuta en un entorno de tiempo de ejecución aislado.
+ `GreengrassContainer`— El componente se ejecuta en un entorno de ejecución aislado dentro del contenedor. AWS IoT Greengrass 
Valor predeterminado: `GreengrassContainer`

`containerParams`  
<a name="connector-component-container-params-description"></a>(Opcional) Un objeto que contiene los parámetros de contenedor de este componente. El componente utiliza estos parámetros si se especifica `GreengrassContainer` para `containerMode`.  
Este objeto contiene la siguiente información:    
`memorySize`  
<a name="connector-component-container-params-memory-size-description"></a>(Opcional) La cantidad de memoria (en kilobytes) que se va a asignar al componente.  
El valor predeterminado es 64 MB (65 535 KB).

`pubsubTopics`  <a name="connector-component-pubsub-topics-parameter"></a>
(Opcional) Un objeto que contiene los temas a los que el componente se suscribe para recibir mensajes. Puede especificar cada tema y si el componente se suscribe a temas de MQTT AWS IoT Core o a temas locales publish/subscribe .  
Este objeto contiene la siguiente información:    
`0`: se trata de un índice de matriz en forma de cadena.  
Un objeto que contiene la siguiente información:    
`type`  
(Opcional) El tipo de publish/subscribe mensajes que utiliza este componente para suscribirse a los mensajes. Puede elegir entre las siguientes opciones:  
+ `PUB_SUB` — Suscribirse a la mensajería de publicación/suscripción local. Si elige esta opción, el tema no podrá contener caracteres comodín de MQTT. Para obtener más información sobre cómo enviar mensajes desde un componente personalizado cuando especifique esta opción, consulte [Publicar/suscribir mensajes locales](ipc-publish-subscribe.md).
+ `IOT_CORE`— Suscríbase a los mensajes de AWS IoT Core MQTT. Si elige esta opción, el tema puede contener caracteres comodín de MQTT. Para obtener más información sobre cómo enviar mensajes desde componentes personalizados cuando especifique esta opción, consulte [Publicar/suscribir mensajes MQTT AWS IoT Core](ipc-iot-core-mqtt.md).
Valor predeterminado: `PUB_SUB`  
`topic`  
(Opcional) El tema al que se suscribe el componente para recibir mensajes. Si especifica `IotCore` para `type`, puede usar los comodines de MQTT (`+` y `#`) en este tema.

**Example Ejemplo: actualización de la combinación de configuraciones (modo en contenedor)**  

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "DEFAULT_DELIVERY_STREAM_ARN": "arn:aws:firehose:us-west-2:123456789012:deliverystream/mystream"
    }
  },
  "containerMode": "GreengrassContainer"
}
```

**Example Ejemplo: actualización de la combinación de configuraciones (modo sin contenedor)**  

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "DEFAULT_DELIVERY_STREAM_ARN": "arn:aws:firehose:us-west-2:123456789012:deliverystream/mystream"
    }
  },
  "containerMode": "NoContainer"
}
```

## Datos de entrada
<a name="kinesis-firehose-component-input-data"></a>

Este componente acepta el contenido del flujo en los siguientes temas y envía el contenido al flujo de entrega de destino. El componente acepta dos tipos de datos de entrada:
+ Datos JSON en el tema `kinesisfirehose/message`.
+ Datos binarios en el tema `kinesisfirehose/message/binary/#`.

**Tema predeterminado para los datos JSON (publicación/suscripción local):** `kinesisfirehose/message`  
<a name="connector-component-input-properties"></a>El mensaje acepta las siguientes propiedades. Los mensajes de entrada deben tener un formato JSON válido.    
`request`  
Los datos para enviar a la transmisión de entrega y a la transmisión de entrega de destino, si no es la transmisión predeterminada.  
Tipo: `object` que contiene la siguiente información:    
`data`  
Los datos que enviar a la transmisión de entrega.  
Tipo: `string`  
`delivery_stream_arn`  
(Opcional) El ARN del flujo de entrega de destino de Firehose. Especifique esta propiedad para anular el flujo de entrega predeterminado.  
Tipo: `string`  
`id`  <a name="connector-component-input-property-id"></a>
Un ID arbitrario para la solicitud. Use esta propiedad para asignar una solicitud de entrada a una respuesta de salida. Si especifica esta propiedad, el componente establece la propiedad `id` en el objeto de respuesta para este valor.  
Tipo: `string`

**Example Ejemplo de entrada**  

```
{
  "request": {
    "delivery_stream_arn": "arn:aws:firehose:region:account-id:deliverystream/stream2-name",
    "data": "Data to send to the delivery stream."
  },
  "id": "request123"
}
```

**Tema predeterminado para datos binarios (publicación/suscripción local):** `kinesisfirehose/message/binary/#`  
Consulte este tema para enviar un mensaje que contenga datos binarios. El componente no analiza los datos binarios. El componente transmite los datos tal cual.  
Para asignar la solicitud de entrada a una respuesta de salida, sustituya el comodín `#` en el tema del mensaje con un ID de solicitud arbitrario. Por ejemplo, si publica un mensaje en `kinesisfirehose/message/binary/request123`, la propiedad `id` en el objeto de respuesta se establece en `request123`.  
Si no desea asignar una solicitud a una respuesta, puede publicar sus mensajes en `kinesisfirehose/message/binary/`. Asegúrese de incluir la barra diagonal (`/`).

## Datos de salida
<a name="kinesis-firehose-component-output-data"></a>

 <a name="connector-component-output-data"></a>Este componente publica las respuestas como datos de salida sobre el siguiente tema MQTT de forma predeterminada. Debe especificar este tema como parte de `subject` en la configuración del [componente antiguo del enrutador de suscripciones](legacy-subscription-router-component.md). Para obtener más información sobre cómo suscribirse a los mensajes sobre este tema en sus componentes personalizados, consulte [Publicar/suscribir mensajes MQTT AWS IoT Core](ipc-iot-core-mqtt.md). 

**Tema predeterminado (AWS IoT Core MQTT):** `kinesisfirehose/message/status`

**Example Ejemplo de resultado de**  
La respuesta contiene el estado de cada registro de datos enviado en el lote.  

```
{
  "response": [
    {
      "ErrorCode": "error",
      "ErrorMessage": "test error",
      "id": "request123",
      "status": "fail"
    },
    {
      "firehose_record_id": "xyz2",
      "id": "request456",
      "status": "success"
    },
    {
      "firehose_record_id": "xyz3",
      "id": "request890",
      "status": "success"
    }
  ]
}
```

**nota**  <a name="connector-component-retryable-error"></a>
Si el componente detecta un error que se puede volver a intentar, como un error de conexión, volverá a intentar la publicación en el siguiente lote.

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

Este componente usa el siguiente archivo de registro.

```
/greengrass/v2/logs/aws.greengrass.KinesisFirehose.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. `/greengrass/v2`Sustitúyalo por la ruta a la carpeta AWS IoT Greengrass raíz.

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

## Licencias
<a name="kinesis-firehose-component-licenses"></a>

Este componente incluye las siguientes licencias o software de terceros:<a name="boto-3-licenses"></a>
+ [AWS SDK para Python (Boto3)](https://pypi.org/project/boto3/)/Apache License 2.0
+ [botocore](https://pypi.org/project/botocore/)/Apache License 2.0
+ [dateutil](https://pypi.org/project/python-dateutil/1.4/)/PSF License
+ [docutils](https://pypi.org/project/docutils/)/BSD License, GNU General Public License (GPL), Python Software Foundation License, Public Domain
+ [jmespath](https://pypi.org/project/jmespath/)/MIT License
+ [s3transfer](https://pypi.org/project/s3transfer/)/Apache License 2.0
+ [urllib3](https://pypi.org/project/urllib3/)/MIT License

<a name="component-core-software-license"></a>Este conector se publica en el [Contrato de Licencia de Software de Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Registros de cambios
<a name="kinesis-firehose-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.1.10  | Versión actualizada para la versión 2.15.0 de Greengrass nucleus. | 
|  2.1.9  | Versión actualizada para la versión 2.14.0 de Greengrass Nucleus. | 
|  2.1.8  | Versión actualizada para el lanzamiento de la versión 2.13.0 del núcleo de Greengrass. | 
|  2.1.7  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.1.6  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.1.5  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.1.4  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.1.3  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.1.2  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.1.1  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/kinesis-firehose-component.html)  | 
|  2.0.8  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.0.7  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.0.6  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.0.5  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.0.4  |  Versión actualizada para el lanzamiento de la versión 2.1.0 del núcleo de Greengrass.  | 
|  2.0.3  |  Versión inicial.  | 

## Véase también
<a name="kinesis-firehose-component-see-also"></a>
+ [¿Qué es Amazon Data Firehose?](https://docs.aws.amazon.com/firehose/latest/dev/what-is-this-service.html) en la *Guía para desarrolladores de Amazon Data Firehose*

# Lanzador de Lambda
<a name="lambda-launcher-component"></a>

El componente Launcher Lambda (`aws.greengrass.LambdaLauncher`) inicia y detiene AWS Lambda las funciones en AWS IoT Greengrass los dispositivos principales. Este componente también configura cualquier organización de contenedores y ejecuta los procesos según los usuarios que especifique.

**nota**  <a name="lambda-component-dependency-note"></a>
Si implementa un componente de función de Lambda en un dispositivo principal, la implementación también incluye este componente. Para obtener más información, consulte [Ejecución de funciones de AWS Lambda](run-lambda-functions.md).

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

## Versiones
<a name="lambda-launcher-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.0.x

## Tipo
<a name="lambda-launcher-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="lambda-launcher-component-os-support"></a>

Este componente solo se puede instalar en los dispositivos principales de Linux.

## Requisitos
<a name="lambda-launcher-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ <a name="core-device-lambda-function-requirements"></a>El dispositivo principal debe cumplir los requisitos para ejecutar las funciones de Lambda. Si desea que el dispositivo principal ejecute funciones de Lambda en contenedores, el dispositivo debe cumplir los requisitos para hacerlo. Para obtener más información, consulte [Requisitos de la función de Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ Se admite la ejecución del componente lanzador de Lambda en una VPC.

## Dependencias
<a name="lambda-launcher-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#lambda-launcher-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.0.11 – 2.0.13 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.11 a 2.0.13 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Administrador de Lambda](lambda-manager-component.md) | >=2.0.0 <2.4.0  | Rígido | 

------
#### [ 2.0.9 – 2.0.10 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.9 a 2.0.10 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Administrador de Lambda](lambda-manager-component.md) | >=2.0.0 <2.3.0  | Rígido | 

------
#### [ 2.0.4 - 2.0.8 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.4 a 2.0.8 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Administrador de Lambda](lambda-manager-component.md) | >=2.0.0 <2.2.0  | Rígido | 

------
#### [ 2.0.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Administrador de Lambda](lambda-manager-component.md) | >=2.0.3 <2.1.0 | Rígido | 

------

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="lambda-launcher-component-configuration"></a>

Este componente no tiene ningún parámetro de configuración.

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

Este componente usa el siguiente archivo de registro.

```
/greengrass/v2/logs/lambdaFunctionComponentName.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. `/greengrass/v2`Sustitúyalo por la ruta a la carpeta AWS IoT Greengrass raíz y *lambdaFunctionComponentName* sustitúyalo por el nombre del componente de la función Lambda que lanza este componente.

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

## Registros de cambios
<a name="lambda-launcher-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.0.13  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-launcher-component.html)  | 
|  2.0.12  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-launcher-component.html)  | 
|  2.0.11  |  Soporte para el administrador de Lambda 2.3.0.  | 
|  2.0.10  |  <a name="changelog-lambda-launcher-2.0.10"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-launcher-component.html)  | 
|  2.0.9  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.0.8  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.0.7  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.0.6  |  Mejoras de rendimiento generales y correcciones de errores.  | 
|  2.0.4  |  <a name="changelog-lambda-launcher-2.0.4"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-launcher-component.html)  | 
|  2.0.3  |  Versión inicial.  | 

# Administrador de Lambda
<a name="lambda-manager-component"></a>

El componente Lambda manager (`aws.greengrass.LambdaManager`) administra los elementos de trabajo y la comunicación entre procesos para AWS Lambda las funciones que se ejecutan en el dispositivo principal de Greengrass.

**nota**  <a name="lambda-component-dependency-note"></a>
Si implementa un componente de función de Lambda en un dispositivo principal, la implementación también incluye este componente. Para obtener más información, consulte [Ejecución de funciones de AWS Lambda](run-lambda-functions.md).

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

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

Este componente tiene las siguientes versiones:
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

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

Este componente solo se puede instalar en los dispositivos principales de Linux.

## Tipo
<a name="lambda-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).

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

Este componente tiene los siguientes requisitos:
+ <a name="core-device-lambda-function-requirements"></a>El dispositivo principal debe cumplir los requisitos para ejecutar las funciones de Lambda. Si desea que el dispositivo principal ejecute funciones de Lambda en contenedores, el dispositivo debe cumplir los requisitos para hacerlo. Para obtener más información, consulte [Requisitos de la función de Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ Se admite la ejecución del componente administrador de Lambda en una VPC.

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

Al implementar un componente, AWS IoT Greengrass también despliega 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](#lambda-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.7 ]

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


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

------
#### [ 2.3.6 ]

La siguiente tabla muestra las dependencias de la versión 2.3.6 de este componente.


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

------
#### [ 2.3.5 ]

La siguiente tabla muestra las dependencias de la versión 2.3.5 de este componente.


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

------
#### [ 2.3.4 ]

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


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

------
#### [ 2.3.2 and 2.3.3 ]

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


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

------
#### [ 2.2.10 and 2.3.1 ]

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


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

------
#### [ 2.2.8 and 2.2.9 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.2.8 y 2.2.9 de este componente.


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

------
#### [ 2.2.7 ]

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


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

------
#### [ 2.2.6 ]

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


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

------
#### [ 2.2.5 ]

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


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

------
#### [ 2.2.4 ]

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


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

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

En la siguiente tabla, se muestran las dependencias de las versiones 2.2.1 a 2.2.3 de este componente.


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

------
#### [ 2.2.0 ]

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


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

------
#### [ 2.1.3 and 2.1.4 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.3 y 2.1.4 de este componente.


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

------
#### [ 2.1.2 ]

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


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

------
#### [ 2.1.1 ]

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


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

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

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


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

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.3 <2.1.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="lambda-manager-component-configuration"></a>

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

`logHandlerMode`  
Solo para las versiones 2.3.0 y posteriores del administrador de Lambda 
Se utiliza para elegir la implementación del administrador de registros de Lambda que se va a utilizar. Establezca el valor en `optimized` para usar menos subprocesos para leer los registros de Lambda.

`getResultTimeoutInSecond`  
(Opcional) La cantidad máxima de tiempo en segundos que una función de Lambda puede ejecutarse antes de ponerse en espera.  
Valor predeterminado: `60`

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

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

```
/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. Sustitúyala por la `/greengrass/v2` ruta a la carpeta raíz. AWS IoT Greengrass 

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

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

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.3.7  |  Versión actualizada para la versión 2.16.0 de Greengrass nucleus.  | 
|  2.3.6  | Versión actualizada para la versión 2.15.0 de Greengrass nucleus. | 
|  2.3.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.3.4  | Versión actualizada para el lanzamiento de la versión 2.13.0 del núcleo de Greengrass. | 
|  2.3.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.3.2  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.3.1  |  <a name="changelog-lambda-manager-2.3.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.3.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.2.11  |  <a name="changelog-lambda-manager-2.2.11"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.2.10  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.2.9  |  <a name="changelog-lambda-manager-2.2.9"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.2.8  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.2.7  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.2.6  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.2.5  |  <a name="changelog-lambda-manager-2.2.5"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.2.4  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.2.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.2.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.2.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.2.0  |  <a name="changelog-lambda-manager-2.2.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.1.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.1.3  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.1.2  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.1.1  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.1.0  |  Versión actualizada para el lanzamiento de la versión 2.1.0 del núcleo de Greengrass.  | 
|  2.0.3  |  Versión inicial.  | 

# Tiempos de ejecución de Lambda
<a name="lambda-runtimes-component"></a>

El componente de tiempos de ejecución de Lambda (`aws.greengrass.LambdaRuntimes`) proporciona los tiempos de ejecución que utilizan los dispositivos principales de Greengrass para ejecutar funciones de AWS Lambda.

**nota**  <a name="lambda-component-dependency-note"></a>
Si implementa un componente de función de Lambda en un dispositivo principal, la implementación también incluye este componente. Para obtener más información, consulte [Ejecución de funciones de AWS Lambda](run-lambda-functions.md).

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

## Versiones
<a name="lambda-runtimes-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.0.x

## Tipo
<a name="lambda-runtimes-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="lambda-runtimes-component-os-support"></a>

Este componente solo se puede instalar en los dispositivos principales de Linux.

## Requisitos
<a name="lambda-runtimes-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ <a name="core-device-lambda-function-requirements"></a>El dispositivo principal debe cumplir los requisitos para ejecutar las funciones de Lambda. Si desea que el dispositivo principal ejecute funciones de Lambda en contenedores, el dispositivo debe cumplir los requisitos para hacerlo. Para obtener más información, consulte [Requisitos de la función de Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ Se admite la ejecución del componente de tiempos de ejecución de Lambda en una VPC.

## Dependencias
<a name="lambda-runtimes-component-dependencies"></a>

Este componente no tiene ninguna dependencia.

## Configuración
<a name="lambda-runtimes-component-configuration"></a>

Este componente no tiene ningún parámetro de configuración.

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

Este componente no genera registros.

## Registro de cambios
<a name="lambda-runtimes-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.0.9  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/lambda-runtimes-component.html)  | 
|  2.0.8  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.0.7  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.0.6  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.0.5  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.0.4  |  Versión actualizada para el lanzamiento de la versión 2.1.0 del núcleo de Greengrass.  | 
|  2.0.3  |  Versión inicial.  | 

# Enrutador de suscripción antigua
<a name="legacy-subscription-router-component"></a>

El enrutador de suscripción antigua (`aws.greengrass.LegacySubscriptionRouter`) administra las suscripciones en el dispositivo principal de Greengrass. Las suscripciones son una función de la AWS IoT Greengrass versión 1 que define los temas que las funciones de Lambda pueden utilizar para la mensajería MQTT en un dispositivo principal. Para obtener más información, consulte las [Suscripciones administradas en el flujo de trabajo de mensajería de MQTT](https://docs.aws.amazon.com/greengrass/v1/developerguide/gg-sec.html#gg-msg-workflow) en la *Guía para desarrolladores de la V1 de AWS IoT Greengrass *.

Puede usar este componente para habilitar las suscripciones de los componentes de conectores y los componentes de la función Lambda que utilizan el SDK de AWS IoT Greengrass Core.

**nota**  <a name="legacy-subscription-router-requirement-note"></a>
El componente de router de suscripción antiguo solo es necesario si la función Lambda utiliza la `publish()` función del SDK AWS IoT Greengrass principal. Si actualiza el código de la función Lambda para utilizar la interfaz de comunicación entre procesos (IPC) de la SDK para dispositivos con AWS IoT V2, no necesitará implementar el componente de router de suscripción heredado. Para obtener más información, consulte los siguientes servicios de [comunicación entre procesos](interprocess-communication.md):  
[Publicar/suscribir mensajes locales](ipc-publish-subscribe.md)
[Publicar/suscribir mensajes MQTT AWS IoT Core](ipc-iot-core-mqtt.md)

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

## Versiones
<a name="legacy-subscription-router-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.1.x
+ 2.0.x

## Tipo
<a name="legacy-subscription-router-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="legacy-subscription-router-component-os-support"></a>

Este componente solo se puede instalar en los dispositivos principales de Linux.

## Requisitos
<a name="legacy-subscription-router-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ El enrutador de suscripción antigua es compatible para ejecutarse en una VPC.

## Dependencias
<a name="legacy-subscription-router-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#legacy-subscription-router-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.1.15 ]

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


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

------
#### [ 2.1.14 ]

La siguiente tabla muestra las dependencias de la versión 2.1.14 de este componente.


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

------
#### [ 2.1.13 ]

La siguiente tabla muestra las dependencias de la versión 2.1.13 de este componente.


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

------
#### [ 2.1.12 ]

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


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

------
#### [ 2.1.11 ]

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


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

------
#### [ 2.1.10 ]

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


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

------
#### [ 2.1.9 ]

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


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

------
#### [ 2.1.8 ]

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


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

------
#### [ 2.1.7 ]

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


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

------
#### [ 2.1.6 ]

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


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

------
#### [ 2.1.5 ]

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


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

------
#### [ 2.1.4 ]

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


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

------
#### [ 2.1.3 ]

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


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

------
#### [ 2.1.2 ]

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


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

------
#### [ 2.1.1 ]

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


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

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

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


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

------
#### [ 2.0.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.3 <2.1.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="legacy-subscription-router-component-configuration"></a>

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

------
#### [ v2.1.x ]

`subscriptions`  
<a name="legacy-subscription-router-component-configuration-subscriptions-intro"></a>(Opcional) Las suscripciones que se van a habilitar en el dispositivo principal. Se trata de un objeto en el que cada clave es un identificador único y cada valor es un objeto que define la suscripción de ese conector. Debe configurar una suscripción al implementar un componente de conector V1 o una función Lambda que utilice el SDK AWS IoT Greengrass principal.  
Cada objeto de suscripción contiene la siguiente información.    
`id`  <a name="legacy-subscription-router-component-configuration-subscription-id"></a>
El identificador único de esta suscripción. Este identificador debe coincidir con la clave de este objeto de suscripción.  
`source`  
La función Lambda que usa el SDK AWS IoT Greengrass principal para publicar mensajes MQTT sobre los temas que especifique. `subject` Especifique uno de los siguientes valores:  
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-component-name"></a>El nombre de un componente de la función de Lambda en el dispositivo principal. Especifique el nombre del componente con el prefijo `component:`, por ejemplo, **component:com.example.HelloWorldLambda**.
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-function-arn"></a>El Nombre de recurso de Amazon (ARN) de la función de Lambda del dispositivo principal.
**importante**  <a name="legacy-subscription-router-function-version-requirement"></a>
Si la versión de la función de Lambda cambia, debe configurar la suscripción con la nueva versión de la función. De lo contrario, este componente no enrutará los mensajes hasta que la versión coincida con la suscripción.  
Debe especificar un Nombre de recurso de Amazon (ARN) que incluya la versión de la función que se va a importar. No puede utilizar alias de versión como `$LATEST`.
Para implementar una suscripción para un componente del conector V1, especifique el nombre del componente o el ARN de la función de Lambda del componente del conector.  
`subject`  <a name="legacy-subscription-router-component-configuration-subscription-subject"></a>
El tema o filtro de temas de MQTT en el que el origen y el destino pueden publicar y recibir mensajes. Este valor admite los caracteres comodín del tema `+` y `#`.  
`target`  
<a name="legacy-subscription-router-component-configuration-subscription-target-intro"></a>El destino que recibe los mensajes de MQTT sobre los temas que especifique en `subject`. La suscripción especifica que la `source` función publique los mensajes MQTT en AWS IoT Core o en una función Lambda del dispositivo principal. Especifique uno de los siguientes valores:  
+ <a name="legacy-subscription-router-component-configuration-subscription-target-cloud"></a>`cloud`. La `source` función publica mensajes MQTT en. AWS IoT Core
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-component-name"></a>El nombre de un componente de la función de Lambda en el dispositivo principal. Especifique el nombre del componente con el prefijo `component:`, por ejemplo, **component:com.example.HelloWorldLambda**.
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-function-arn"></a>El Nombre de recurso de Amazon (ARN) de la función de Lambda del dispositivo principal.
**importante**  <a name="legacy-subscription-router-function-version-requirement"></a>
Si la versión de la función de Lambda cambia, debe configurar la suscripción con la nueva versión de la función. De lo contrario, este componente no enrutará los mensajes hasta que la versión coincida con la suscripción.  
Debe especificar un Nombre de recurso de Amazon (ARN) que incluya la versión de la función que se va a importar. No puede utilizar alias de versión como `$LATEST`.
Predeterminado: sin suscripciones

**Example Ejemplo de actualización de configuración (definición de una suscripción a AWS IoT Core)**  
El siguiente ejemplo especifica que el componente de la función `com.example.HelloWorldLambda` Lambda publica un mensaje MQTT AWS IoT Core en el tema. `hello/world`  

```
{
  "subscriptions": {
    "Greengrass_HelloWorld_to_cloud": {
      "id": "Greengrass_HelloWorld_to_cloud",
      "source": "component:com.example.HelloWorldLambda",
      "subject": "hello/world",
      "target": "cloud"
    }
  }
}
```

**Example Ejemplo de actualización de configuración (definición de una suscripción a otra función de Lambda)**  
En el siguiente ejemplo, se especifica que el componente de función de Lambda `com.example.HelloWorldLambda` publica mensajes de MQTT en el componente de función de Lambda `com.example.MessageRelay` en el tema `hello/world`.  

```
{
  "subscriptions": {
    "Greengrass_HelloWorld_to_MessageRelay": {
      "id": "Greengrass_HelloWorld_to_MessageRelay",
      "source": "component:com.example.HelloWorldLambda",
      "subject": "hello/world",
      "target": "component:com.example.MessageRelay"
    }
  }
}
```

------
#### [ v2.0.x ]

`subscriptions`  
<a name="legacy-subscription-router-component-configuration-subscriptions-intro"></a>(Opcional) Las suscripciones que se van a habilitar en el dispositivo principal. Se trata de un objeto en el que cada clave es un identificador único y cada valor es un objeto que define la suscripción de ese conector. Debe configurar una suscripción al implementar un componente de conector V1 o una función Lambda que utilice el SDK AWS IoT Greengrass principal.  
Cada objeto de suscripción contiene la siguiente información.    
`id`  <a name="legacy-subscription-router-component-configuration-subscription-id"></a>
El identificador único de esta suscripción. Este identificador debe coincidir con la clave de este objeto de suscripción.  
`source`  
La función Lambda que usa el SDK AWS IoT Greengrass principal para publicar mensajes MQTT sobre los temas que especifique. `subject` Especifique lo siguiente:  
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-function-arn"></a>El Nombre de recurso de Amazon (ARN) de la función de Lambda del dispositivo principal.
**importante**  <a name="legacy-subscription-router-function-version-requirement"></a>
Si la versión de la función de Lambda cambia, debe configurar la suscripción con la nueva versión de la función. De lo contrario, este componente no enrutará los mensajes hasta que la versión coincida con la suscripción.  
Debe especificar un Nombre de recurso de Amazon (ARN) que incluya la versión de la función que se va a importar. No puede utilizar alias de versión como `$LATEST`.
Para implementar una suscripción para un componente del conector V1, especifique el ARN de la función de Lambda del componente del conector.  
`subject`  <a name="legacy-subscription-router-component-configuration-subscription-subject"></a>
El tema o filtro de temas de MQTT en el que el origen y el destino pueden publicar y recibir mensajes. Este valor admite los caracteres comodín del tema `+` y `#`.  
`target`  
<a name="legacy-subscription-router-component-configuration-subscription-target-intro"></a>El destino que recibe los mensajes de MQTT sobre los temas que especifique en `subject`. La suscripción especifica que la `source` función publique los mensajes MQTT en AWS IoT Core o en una función Lambda del dispositivo principal. Especifique uno de los siguientes valores:  
+ <a name="legacy-subscription-router-component-configuration-subscription-target-cloud"></a>`cloud`. La `source` función publica mensajes MQTT en. AWS IoT Core
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-function-arn"></a>El Nombre de recurso de Amazon (ARN) de la función de Lambda del dispositivo principal.
**importante**  <a name="legacy-subscription-router-function-version-requirement"></a>
Si la versión de la función de Lambda cambia, debe configurar la suscripción con la nueva versión de la función. De lo contrario, este componente no enrutará los mensajes hasta que la versión coincida con la suscripción.  
Debe especificar un Nombre de recurso de Amazon (ARN) que incluya la versión de la función que se va a importar. No puede utilizar alias de versión como `$LATEST`.
Predeterminado: sin suscripciones

**Example Ejemplo de actualización de configuración (definición de una suscripción a AWS IoT Core)**  
El siguiente ejemplo especifica que la `Greengrass_HelloWorld` función publica un mensaje MQTT AWS IoT Core sobre el `hello/world` tema.  

```
"subscriptions": {
  "Greengrass_HelloWorld_to_cloud": {
    "id": "Greengrass_HelloWorld_to_cloud",
    "source": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_HelloWorld:5",
    "subject": "hello/world",
    "target": "cloud"
  }
}
```

**Example Ejemplo de actualización de configuración (definición de una suscripción a otra función de Lambda)**  
En el siguiente ejemplo, se especifica que la función `Greengrass_HelloWorld` publica mensajes de MQTT en `Greengrass_MessageRelay` en el tema `hello/world`.  

```
"subscriptions": {
  "Greengrass_HelloWorld_to_MessageRelay": {
    "id": "Greengrass_HelloWorld_to_MessageRelay",
    "source": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_HelloWorld:5",
    "subject": "hello/world",
    "target": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_MessageRelay:5"
  }
}
```

------

## Archivo de registro local
<a name="legacy-subscription-router-component-log-file"></a>

Este componente no genera registros.

## Registros de cambios
<a name="legacy-subscription-router-component-changelog"></a>

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


|  Versión  |  Cambios  | 
| --- | --- | 
|  2.1.15  |  Versión actualizada para la versión 2.16.0 de Greengrass nucleus.  | 
|  2.1.14  | Versión actualizada para la versión 2.15.0 de Greengrass nucleus. | 
|  2.1.13  | Versión actualizada para la versión 2.14.0 de Greengrass Nucleus. | 
|  2.1.12  | Versión actualizada para el lanzamiento de la versión 2.13.0 del núcleo de Greengrass. | 
|  2.1.11  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.1.10  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.1.9  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.1.8  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.1.7  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.1.6  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.1.5  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.1.4  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.1.3  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.1.2  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.1.1  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.1.0  |  <a name="changelog-legacy-subscription-router-2.1.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/legacy-subscription-router-component.html)  | 
|  2.0.3  |  Versión inicial.  | 

# Consola de depuración local
<a name="local-debug-console-component"></a>

El componente de la consola de depuración local (`aws.greengrass.LocalDebugConsole`) proporciona un panel local que muestra información sobre los dispositivos AWS IoT Greengrass principales y sus componentes. Puede usar este panel para depurar su dispositivo principal y administrar los componentes locales.

**importante**  
 <a name="local-dev-tools-production-environment-warning"></a>Se recomienda usar este componente solo en entornos de desarrollo y no en entornos de producción. Este componente brinda acceso a información y operaciones que, por lo general, no necesitará en un entorno de producción. Siga el principio de privilegio mínimo al implementar este componente solo en los dispositivos principales donde lo necesite. 

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

## Versiones
<a name="local-debug-console-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.4.x
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Tipo
<a name="local-debug-console-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="local-debug-console-component-os-support"></a>

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

## Requisitos
<a name="local-debug-console-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ Puede utilizar un nombre de usuario y una contraseña para iniciar sesión en el panel de control. Se le proporciona el nombre de usuario, que es `debug`. Debe usar la AWS IoT Greengrass CLI para crear una contraseña temporal que lo autentique con el panel de control de un dispositivo principal. Debe poder usar la AWS IoT Greengrass CLI para usar la consola de depuración local. Para obtener más información, consulte los [requisitos de la CLI de Greengrass](greengrass-cli-component.md#greengrass-cli-component-requirements). Para obtener más información sobre cómo generar la contraseña e iniciar sesión, consulte [Uso de los componentes de la consola de depuración local](#local-debug-console-component-usage).
+ Se admite la ejecución del componente de la consola de depuración local en una VPC.

## Dependencias
<a name="local-debug-console-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](#local-debug-console-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.4.6 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.10.0 <2.17.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.10.0 =2.10.0 <2.17.0 | Rígido | 

------
#### [ 2.4.5 ]

La siguiente tabla muestra las dependencias de la versión 2.4.5 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.10.0 <2.16.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.10.0 =2.10.0 <2.16.0 | Rígido | 

------
#### [ 2.4.4 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.10.0 =2.10.0 <2.15.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.10.0 =2.10.0 <2.15.0 | Rígido | 

------
#### [ 2.4.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.10.0 <2.14.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.10.0 <2.14.0 | Rígido | 

------
#### [ 2.4.1 – 2.4.2 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.4.1 a 2.4.2 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.10.0 <2.13.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.10.0 <2.13.0 | Rígido | 

------
#### [ 2.4.0 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.10.0 <2.12.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.10.0 <2.12.0 | Rígido | 

------
#### [ 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.10.0 <2.12.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.10.0 <2.12.0 | Rígido | 

------
#### [ 2.2.9 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.12.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.1.0 <2.12.0 | Rígido | 

------
#### [ 2.2.8 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.11.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.1.0 <2.11.0 | Rígido | 

------
#### [ 2.2.7 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.10.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.1.0 <2.10.0 | Rígido | 

------
#### [ 2.2.6 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.9.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.1.0 <2.9.0 | Rígido | 

------
#### [ 2.2.5 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.8.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.1.0 <2.8.0 | Rígido | 

------
#### [ 2.2.4 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.7.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.1.0 <2.7.0 | Rígido | 

------
#### [ 2.2.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.6.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.1.0 <2.6.0 | Rígido | 

------
#### [ 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.1.0 <2.5.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.1.0 <2.5.0 | Rígido | 

------
#### [ 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.1.0 <2.4.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.1.0 <2.4.0 | Rígido | 

------
#### [ 2.2.0 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.3.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.1.0 <2.3.0 | Rígido | 

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.1.0 <2.2.0 | Rígido | 

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.3 <2.1.0  | Flexible | 
| [CLI de Greengrass](greengrass-cli-component.md) |  >=2.0.3 <2.1.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="local-debug-console-component-configuration"></a>

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

------
#### [ v2.1.x - v2.4.x ]

`httpsEnabled`  
(Opcional) Puede habilitar la comunicación HTTPS para la consola de depuración local. Si habilita la comunicación HTTPS, la consola de depuración local crea un certificado autofirmado. Los navegadores web muestran advertencias de seguridad para los sitios web que utilizan certificados autofirmados, por lo que debe verificar el certificado manualmente. A continuación, puede omitir la advertencia. Para obtener más información, consulte [De uso](#local-debug-console-component-usage).  
Valor predeterminado: `true`

`port`  <a name="local-debug-console-component-configuration-port"></a>
(Opcional) El puerto en el que se va a proporcionar la consola de depuración local.  
Valor predeterminado: `1441`

`websocketPort`  <a name="local-debug-console-component-configuration-websocket-port"></a>
(Opcional) El puerto websocket que se utilizará en la consola de depuración local.  
Valor predeterminado: `1442`

`bindHostname`  <a name="local-debug-console-component-configuration-bind-hostname"></a>
(Opcional) El nombre de host que se utilizará en la consola de depuración local.  
Si [ejecuta el software AWS IoT Greengrass principal en un contenedor de Docker](run-greengrass-docker.md), defina este parámetro en para poder abrir la consola de `0.0.0.0` depuración local fuera del contenedor de Docker.  
Valor predeterminado: `localhost`

**Example Ejemplo: actualización de la combinación de configuraciones**  
En el siguiente ejemplo de configuración, se especifica abrir la consola de depuración local en puertos no predeterminados e inhabilitar HTTPS.  

```
{
  "httpsEnabled": false,
  "port": "10441",
  "websocketPort": "10442"
}
```

------
#### [ v2.0.x ]

`port`  <a name="local-debug-console-component-configuration-port"></a>
(Opcional) El puerto en el que se va a proporcionar la consola de depuración local.  
Valor predeterminado: `1441`

`websocketPort`  <a name="local-debug-console-component-configuration-websocket-port"></a>
(Opcional) El puerto websocket que se utilizará en la consola de depuración local.  
Valor predeterminado: `1442`

`bindHostname`  <a name="local-debug-console-component-configuration-bind-hostname"></a>
(Opcional) El nombre de host que se utilizará en la consola de depuración local.  
Si [ejecuta el software AWS IoT Greengrass principal en un contenedor de Docker](run-greengrass-docker.md), defina este parámetro en para `0.0.0.0` poder abrir la consola de depuración local fuera del contenedor de Docker.  
Valor predeterminado: `localhost`

**Example Ejemplo: actualización de la combinación de configuraciones**  
En el siguiente ejemplo de configuración, se especifica abrir la consola de depuración local en puertos no predeterminados.  

```
{
  "port": "10441",
  "websocketPort": "10442"
}
```

------

## De uso
<a name="local-debug-console-component-usage"></a>

Para usar la consola de depuración local, cree una sesión desde la CLI de Greengrass. Cuando crea una sesión, la CLI de Greengrass proporciona un nombre de usuario y una contraseña temporal que puede usar para iniciar sesión en la consola de depuración local.

Siga estas instrucciones para abrir la consola de depuración local en su dispositivo principal o en su computadora de desarrollo.

------
#### [ v2.1.x - v2.4.x ]

En las versiones 2.1.0 y posteriores, la consola de depuración local usa HTTPS de forma predeterminada. Cuando HTTPS está activado, la consola de depuración local crea un certificado autofirmado para proteger la conexión. Su navegador web muestra una advertencia de seguridad cuando abre la consola de depuración local debido a este certificado autofirmado. Cuando crea una sesión con la CLI de Greengrass, el resultado incluye las huellas digitales del certificado para que pueda comprobar que el certificado es legítimo y que la conexión es segura.

Puede deshabilitar HTTPS. Para obtener más información, consulte [Configuración de la consola de depuración local](#local-debug-console-component-configuration).

**Cómo abrir la consola de depuración local**

1. <a name="local-debug-console-component-usage-forward-port"></a>(Opcional) Para ver la consola de depuración local en su computadora de desarrollo, puede reenviar el puerto de la consola a través de SSH. Sin embargo, primero debe habilitar la opción `AllowTcpForwarding` en el archivo de configuración SSH de su dispositivo principal. Esta opción está habilitada de forma predeterminada. Ejecute el siguiente comando en su computadora de desarrollo para ver el panel de control en `localhost:1441` en su computadora de desarrollo.

   ```
   ssh -L 1441:localhost:1441 -L 1442:localhost:1442 username@core-device-ip-address
   ```
**nota**  
Puede cambiar los puertos predeterminados entre `1441` y `1442`. Para obtener más información, consulte [Configuración de la consola de depuración local](#local-debug-console-component-configuration).

1. <a name="local-debug-console-component-create-session-step"></a>Cree una sesión para usar la consola de depuración local. Cuando crea una sesión, genera una contraseña que se utiliza para autenticarse. La consola de depuración local requiere una contraseña para aumentar la seguridad, ya que puede utilizar este componente para ver información importante y realizar operaciones en el dispositivo principal. La consola de depuración local también crea un certificado para proteger la conexión si se habilita HTTPS en la configuración del componente. HTTPS está habilitado de forma predeterminada.

   Utilice la AWS IoT Greengrass CLI para crear la sesión. Este comando genera una contraseña aleatoria de 43 caracteres que caduca a las 8 horas. Sustituya `/greengrass/v2` o *C:\$1greengrass\$1v2* por la ruta a la carpeta AWS IoT Greengrass V2 raíz.

------
#### [ Linux or Unix ]

   ```
   sudo /greengrass/v2/bin/greengrass-cli get-debug-password
   ```

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

   ```
   C:\greengrass\v2\bin\greengrass-cli get-debug-password
   ```

------

   El resultado del comando es similar al del siguiente ejemplo si ha configurado la consola de depuración local para que utilice HTTPS. Use las huellas digitales del certificado para comprobar que la conexión es segura cuando abra la consola de depuración local.

   ```
   Username: debug
   Password: bEDp3MOHdj8ou2w5de_sCBI2XAaguy3a8XxREXAMPLE
   Password expires at: 2021-04-01T17:01:43.921999931-07:00
   The local debug console is configured to use TLS security. The certificate is self-signed so you will need to bypass your web browser's security warnings to open the console.
   Before you bypass the security warning, verify that the certificate fingerprint matches the following fingerprints.
   SHA-256: 15 0B 2C E2 54 8B 22 DE 08 46 54 8A B1 2B 25 DE FB 02 7D 01 4E 4A 56 67 96 DA A6 CC B1 D2 C4 1B
   SHA-1: BC 3E 16 04 D3 80 70 DA E0 47 25 F9 90 FA D6 02 80 3E B5 C1
   ```

   El componente de vista de depuración crea una sesión que dura 8 horas. Después de eso, debe generar una nueva contraseña para volver a ver la consola de depuración local. 

1. Abra e inicie sesión en el panel de control. Vea el panel de control en su dispositivo principal de Greengrass o en su computadora de desarrollo si reenvía el puerto a través de SSH. Realice una de las siguientes acciones:
   + Si habilitó HTTPS en la consola de depuración local, que es la configuración predeterminada, haga lo siguiente:

     1. Abra `https://localhost:1441` en su dispositivo principal o en su computadora de desarrollo si reenvió el puerto a través de SSH.

        Es posible que su navegador muestre una advertencia de seguridad sobre un certificado de seguridad no válido.

     1. Si su navegador muestra una advertencia de seguridad, compruebe que el certificado sea legítimo y omita la advertencia de seguridad. Haga lo siguiente:

        1. Busque la huella digital SHA-256 o SHA-1 del certificado y compruebe que coincida con la huella digital SHA-256 o SHA-1 que el comando `get-debug-password` imprimió anteriormente. Es posible que su navegador proporcione una huella digital o ambas. Consulte la documentación de su navegador para ver el certificado y sus huellas digitales. En algunos navegadores, la huella digital del certificado se denomina huella digital.
**nota**  
Si la huella digital del certificado no coincide, vaya a [Step 2](#local-debug-console-component-create-session-step) para crear una nueva sesión. Si la huella digital del certificado sigue sin coincidir, es posible que la conexión no sea segura.

        1. Si la huella digital del certificado coincide, omita la advertencia de seguridad del navegador para abrir la consola de depuración local. Consulte la documentación del navegador para omitir la advertencia de seguridad del navegador.

     1. Inicie sesión en el sitio web con el nombre de usuario y la contraseña que el comando `get-debug-password` imprimió anteriormente.

        Se abre la consola de depuración local.

     1. Si la consola de depuración local muestra un error que indica que no se puede conectar a ella WebSocket debido a un error en el protocolo de enlace TLS, debes omitir la advertencia de seguridad autofirmada de la URL. WebSocket   
![\[El error de protocolo de enlace WebSocket de TLS en la consola de depuración local.\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/images/local-debug-console/websocket-tls-handshake-error.png)

        Haga lo siguiente:

        1. Abra `https://localhost:1442` en el mismo navegador en el que abrió la consola de depuración local.

        1. Compruebe el certificado y omita la advertencia de seguridad.

           Es posible que su navegador muestre una página HTTP 404 después de omitir la advertencia.

        1. Abra `https://localhost:1441` de nuevo.

           La consola de depuración local muestra información sobre el dispositivo principal.
   + Si ha deshabilitado HTTPS en la consola de depuración local, haga lo siguiente:

     1. <a name="local-debug-console-component-usage-open-localhost-http"></a>Abra `http://localhost:1441` en su dispositivo principal o ábralo en su computadora de desarrollo si reenvió el puerto a través de SSH.

     1. <a name="local-debug-console-component-usage-sign-in"></a>Inicie sesión en el sitio web con el nombre de usuario y la contraseña que el comando `get-debug-password` imprimió anteriormente.

        Se abre la consola de depuración local.

------
#### [ v2.0.x ]

**Cómo abrir la consola de depuración local**

1. <a name="local-debug-console-component-usage-forward-port"></a>(Opcional) Para ver la consola de depuración local en su computadora de desarrollo, puede reenviar el puerto de la consola a través de SSH. Sin embargo, primero debe habilitar la opción `AllowTcpForwarding` en el archivo de configuración SSH de su dispositivo principal. Esta opción está habilitada de forma predeterminada. Ejecute el siguiente comando en su computadora de desarrollo para ver el panel de control en `localhost:1441` en su computadora de desarrollo.

   ```
   ssh -L 1441:localhost:1441 -L 1442:localhost:1442 username@core-device-ip-address
   ```
**nota**  
Puede cambiar los puertos predeterminados entre `1441` y `1442`. Para obtener más información, consulte [Configuración de la consola de depuración local](#local-debug-console-component-configuration).

1. Cree una sesión para usar la consola de depuración local. Cuando crea una sesión, genera una contraseña que se utiliza para autenticarse. La consola de depuración local requiere una contraseña para aumentar la seguridad, ya que puede utilizar este componente para ver información importante y realizar operaciones en el dispositivo principal.

   Utilice la AWS IoT Greengrass CLI para crear la sesión. Este comando genera una contraseña aleatoria de 43 caracteres que caduca a las 8 horas. Sustituya `/greengrass/v2` o *C:\$1greengrass\$1v2* por la ruta a la carpeta AWS IoT Greengrass V2 raíz.

------
#### [ Linux or Unix ]

   ```
   sudo /greengrass/v2/bin/greengrass-cli get-debug-password
   ```

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

   ```
   C:\greengrass\v2\bin\greengrass-cli get-debug-password
   ```

------

   El resultado del comando tendrá un aspecto similar al siguiente ejemplo.

   ```
   Username: debug
   Password: bEDp3MOHdj8ou2w5de_sCBI2XAaguy3a8XxREXAMPLE
   Password will expire at: 2021-04-01T17:01:43.921999931-07:00
   ```

   El componente de vista de depuración crea una sesión que dura 4 horas y, a continuación, debe generar una nueva contraseña para volver a ver la consola de depuración local.

1. <a name="local-debug-console-component-usage-open-localhost-http"></a>Abra `http://localhost:1441` en su dispositivo principal o ábralo en su computadora de desarrollo si reenvió el puerto a través de SSH.

1. <a name="local-debug-console-component-usage-sign-in"></a>Inicie sesión en el sitio web con el nombre de usuario y la contraseña que el comando `get-debug-password` imprimió anteriormente.

   Se abre la consola de depuración local.

------

## Archivo de registro local
<a name="local-debug-console-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:\$1greengrass\$1v2* 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="local-debug-console-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.4.6  |  Versión actualizada para la versión 2.16.0 de Greengrass nucleus.  | 
|  2.4.5  | Versión actualizada para la versión 2.15.0 de Greengrass nucleus. | 
|  2.4.4  | Versión actualizada para la versión 2.14.0 de Greengrass Nucleus. | 
|  2.4.3  |  Versión actualizada para el lanzamiento de la versión 2.13.0 del núcleo de Greengrass. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/local-debug-console-component.html)  | 
|  2.4.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/local-debug-console-component.html)  | 
|  2.4.1  |  Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass.  | 
|  2.4.0  |  <a name="changelog-local-debug-console-2.4.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/local-debug-console-component.html)  | 
|  2.3.1  |  Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass.  | 
|  2.3.0  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/local-debug-console-component.html) | 
|  2.2.7  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.2.6  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.2.5  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.2.4  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.2.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/local-debug-console-component.html)  | 
|  2.2.2  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.2.1  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.2.0  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.1.0  |  <a name="changelog-local-debug-console-2.1.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/local-debug-console-component.html)  | 
|  2.0.3  |  Versión inicial.  | 

# Administrador de registros
<a name="log-manager-component"></a>

**aviso**  
Se recomienda actualizar a la versión 2.3.5 o posterior del administrador de registros. La versión 2.3.5 optimiza la escritura de la configuración del administrador de registros, lo que reduce las operaciones de E/A y mejora la velocidad de carga de los registros, el rendimiento general del dispositivo y, posiblemente, prolonga su vida útil.

El componente gestor de registros (`aws.greengrass.LogManager`) carga los registros de los dispositivos AWS IoT Greengrass principales a Amazon CloudWatch Logs. Puede cargar registros desde el núcleo de Greengrass, otros componentes de Greengrass y otras aplicaciones y servicios que no sean componentes de Greengrass. Para obtener más información sobre cómo supervisar los CloudWatch registros en Logs y en el sistema de archivos local, consulte[Supervisión de los registros de AWS IoT Greengrass](monitor-logs.md).

<a name="log-manager-considerations-intro"></a>Cuando se utiliza el componente gestor de registros para escribir en los CloudWatch registros, se tienen en cuenta las siguientes consideraciones:<a name="log-manager-considerations"></a>
+ **Demoras de registro**

  La versión 2.2.8 (y anteriores) del componente administrador de registros procesa y carga los registros únicamente a partir de archivos de registro rotados. De forma predeterminada, el software AWS IoT Greengrass Core rota los archivos de registro cada hora o después de que ocupen 1024 KB. Como resultado, el componente del administrador de registros carga los registros solo después de que el software AWS IoT Greengrass Core o un componente de Greengrass hayan escrito registros con un valor superior a 1024 KB. Puede configurar un límite de tamaño de archivo de registro inferior para que los archivos de registro roten con mayor frecuencia. Esto hace que el componente del administrador de registros cargue registros en Logs con CloudWatch más frecuencia.

  La versión 2.3.0 (y posteriores) del componente administrador de registros procesa y carga todos los registros. Cuando escribe un registro nuevo, la versión 2.3.0 (y posteriores) del administrador de registros procesa y carga directamente el archivo de registro activo en lugar de esperar a que se rote. Esto significa que puede ver el nuevo registro en 5 minutos o menos.

  El componente administrador de registros carga nuevos registros periódicamente. De forma predeterminada, el componente del administrador de registros carga nuevos registros cada 5 minutos. Puede configurar un intervalo de carga más bajo, de modo que el componente del administrador de registros cargue los registros en CloudWatch Logs con más frecuencia configurando el`periodicUploadIntervalSec`. Para obtener más información acerca de cómo configurar este intervalo periódico, consulte [Configuración](https://docs.aws.amazon.com/greengrass/v2/developerguide/log-manager-component.html#log-manager-component-configuration).

  Los registros se pueden cargar prácticamente en tiempo real desde el mismo sistema de archivos de Greengrass. Si necesita observar los registros en tiempo real, considere usar los [registros del sistema de archivos](monitor-logs.md#access-local-logs).
**nota**  
Si utiliza distintos sistemas de archivos para escribir los registros, el administrador de registros vuelve al comportamiento de las versiones 2.2.8 y anteriores del componente administrador de registros. Para obtener información sobre cómo acceder a los registros del sistema de archivos, consulte [Acceder a los registros del sistema de archivos](https://docs.aws.amazon.com/greengrass/v2/developerguide/monitor-logs.html#access-local-logs).
+ **Desfase del reloj**

  El componente gestor de registros utiliza el proceso de firma estándar de la versión 4 de Signature para crear solicitudes de API a CloudWatch los registros. Si la hora del sistema en un dispositivo principal está desincronizada durante más de 15 minutos, CloudWatch Logs rechaza las solicitudes. Para obtener más información, consulte [Proceso de firma Signature Version 4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) en la *Referencia general de AWS*.

Para obtener información sobre los grupos de registros y los flujos de registros a los que este componente carga los registros, consulte [De uso](#log-manager-component-usage).

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

## Versiones
<a name="log-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="log-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="log-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="log-manager-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ El [rol de dispositivo de Greengrass](device-service-role.md) debe permitir las acciones `logs:CreateLogGroup`, `logs:CreateLogStream`, `logs:PutLogEvents` y `logs:DescribeLogStreams` como se muestra en el siguiente ejemplo de política de IAM.

  ```
  {
    "Version": "2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "logs:CreateLogGroup",
          "logs:CreateLogStream",
          "logs:PutLogEvents",
          "logs:DescribeLogStreams"
        ],
        "Effect": "Allow",
        "Resource": "arn:aws:logs:*:*:*"
      }
    ]
  }
  ```
**nota**  
La [función de dispositivo Greengrass](device-service-role.md) que se crea al instalar el software AWS IoT Greengrass Core incluye los permisos de esta política de ejemplo de forma predeterminada.

  Para obtener más información, consulte [Uso de políticas basadas en la identidad (políticas de IAM) para CloudWatch los registros en la Guía del](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-identity-based-access-control-cwl.html) usuario de *Amazon CloudWatch Logs*.
+ Se admite la ejecución del componente administrador de registros en una VPC. Para implementar este componente en una VPC, se requiere lo siguiente.
  + El componente del administrador de registros debe tener una conectividad con `logs.region.amazonaws.com` que tenga el punto de conexión de VPC de `com.amazonaws.us-east-1.logs`.

### Puntos de conexión y puertos
<a name="log-manager-component-endpoints"></a>

Este componente debe poder realizar solicitudes salientes a los siguientes puntos de conexión y puertos, además de a los puntos de conexión y puertos necesarios para el funcionamiento básico. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).


| punto de enlace | Puerto | Obligatorio | Description (Descripción) | 
| --- | --- | --- | --- | 
|  `logs.region.amazonaws.com`  | 443 | No |  Es obligatorio si escribes registros en Logs. CloudWatch   | 

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

Al implementar un componente, AWS IoT Greengrass también despliega 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](#log-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.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.1.0 <2.17.0 | Flexible | 

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

La siguiente tabla muestra 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.1.0 <2.16.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.1.0 =2.1.0 <2.15.0 | Flexible | 

------
#### [ 2.3.8 ]

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


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

------
#### [ 2.3.7 ]

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


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

------
#### [ 2.3.5 and 2.3.6 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.3.5 y 2.3.6 de este componente.


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

------
#### [ 2.3.3 – 2.3.4 ]

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


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

------
#### [ 2.2.8 – 2.3.2 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.2.8 a 2.3.2 de este componente.


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

------
#### [ 2.2.7 ]

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


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

------
#### [ 2.2.6 ]

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


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

------
#### [ 2.2.5 ]

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


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

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

En la siguiente tabla, se muestran las dependencias de las versiones 2.2.1 a 2.2.4 de este componente.


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

------
#### [ 2.1.3 and 2.2.0 ]

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


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

------
#### [ 2.1.2 ]

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


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

------
#### [ 2.1.1 ]

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


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

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

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


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

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.3 <2.1.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="log-manager-component-configuration"></a>

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

------
#### [ v2.3.10 ]

`logsUploaderConfiguration`  
(Opcional) La configuración de los registros que carga el componente administrador de registros. Este objeto contiene la siguiente información:    
  `systemLogsConfiguration`   
(Opcional) La configuración de los registros del sistema del software AWS IoT Greengrass principal, que incluyen los registros del [núcleo y los componentes del [complemento](develop-greengrass-components.md#component-types) de Greengrass](greengrass-nucleus-component.md). Especifique esta configuración para permitir que el componente administrador de registros administre los registros del sistema. Este objeto contiene la siguiente información:    
`uploadToCloudWatch`  <a name="log-manager-component-configuration-system-upload-to-cloud-watch"></a>
(Opcional) Puede cargar los registros del sistema en CloudWatch Logs.  
Valor predeterminado: `false`  
`minimumLogLevel`  <a name="log-manager-component-configuration-system-minimum-log-level"></a>
(Opcional) El nivel mínimo de mensajes de registro que se deben cargar. Este nivel mínimo se aplica solo si configura el [componente núcleo de Greengrass](greengrass-nucleus-component.md) para generar registros en formato JSON. Para habilitar los registros en formato JSON, especifique `JSON` para el parámetro de [formato de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format) (`logging.format`).  
Elija uno de los siguientes niveles de registro, que se enumeran aquí en orden de niveles:  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valor predeterminado: `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-system-disk-space-limit"></a>
(Opcional) El tamaño total máximo de los archivos de registro del sistema Greengrass en la unidad en la que especifique `diskSpaceLimitUnit`. Cuando el tamaño total de los archivos de registro del sistema Greengrass supera este tamaño total máximo, el software AWS IoT Greengrass Core elimina los archivos de registro del sistema Greengrass más antiguos.  
Este parámetro equivale al parámetro de [límite de tamaño de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) del [componente núcleo de Greengrass](greengrass-nucleus-component.md). El software AWS IoT Greengrass Core utiliza el mínimo de los dos valores como tamaño máximo total del registro del sistema Greengrass.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Opcional) La unidad para `diskSpaceLimit`. Puede elegir entre las siguientes opciones:  
+ `KB`: kilobytes
+ `MB`: megabytes
+ `GB`: gigabytes
Valor predeterminado: `KB`  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Opcional) Puede eliminar un archivo de registro después de que el componente del administrador de registros cargue los registros en Logs. CloudWatch   
Valor predeterminado: `false`  
  `componentLogsConfigurationMap`   
(Opcional) Un mapa de las configuraciones de registro de los componentes del dispositivo principal. Cada objeto `componentName` de este mapa define la configuración de registro del componente o la aplicación. El componente gestor de registros carga estos registros de componentes en Logs. CloudWatch   
Recomendamos utilizar una única clave de configuración por componente. Solo debe dirigirse a un grupo de archivos que solo tengan un archivo de registro en el que se esté escribiendo activamente cuando use `logFileRegex`. Si no se sigue esta recomendación, es posible que se carguen registros duplicados en ellos. CloudWatch Si se dirige a varios archivos de registro activos con una sola expresión regular, le recomendamos que actualice a la versión 2.3.1 o posterior del administrador de registros y que considere la posibilidad de cambiar la configuración con la [configuración de ejemplo.](#log-manager-multiple-logs-v2.3.10)
Si está actualizando desde una versión del administrador de registros anterior a la versión 2.2.0, puede seguir utilizando la lista `componentLogsConfiguration` en lugar de `componentLogsConfigurationMap`. No obstante, le recomendamos que utilice el formato de mapa para poder utilizar actualizaciones de combinación y restablecimiento para modificar configuraciones de componentes específicos. Para obtener información sobre el parámetro `componentLogsConfiguration`, consulte los parámetros de configuración de la versión 2.1.x de este componente.  
*`componentName`*  
La configuración de registro del componente o la aplicación *`componentName`* de esta configuración de registro. Puede especificar el nombre de un componente de Greengrass u otro valor para identificar este grupo de registro.  
Cada objeto contiene la siguiente información:    
`minimumLogLevel`  <a name="log-manager-component-configuration-component-minimum-log-level"></a>
(Opcional) El nivel mínimo de mensajes de registro que se deben cargar. Este nivel mínimo solo se aplica si los registros de este componente utilizan un formato JSON específico, que puedes encontrar en el repositorio del [módulo de AWS IoT Greengrass registro](https://github.com/aws-greengrass/aws-greengrass-logging-java) de GitHub.  
Elija uno de los siguientes niveles de registro, que se enumeran aquí en orden de niveles:  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valor predeterminado: `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-component-disk-space-limit"></a>
(Opcional) El tamaño total máximo de todos los archivos de registro de este componente en la unidad en la que especifique `diskSpaceLimitUnit`. Cuando el tamaño total de los archivos de registro de este componente supere este tamaño total máximo, el software AWS IoT Greengrass Core elimina los archivos de registro más antiguos de este componente.  
Este parámetro está relacionado con el parámetro de [límite de tamaño de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) del [componente núcleo de Greengrass](greengrass-nucleus-component.md). El software AWS IoT Greengrass Core utiliza el mínimo de los dos valores como tamaño de registro total máximo para este componente.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Opcional) La unidad para `diskSpaceLimit`. Puede elegir entre las siguientes opciones:  
+ `KB`: kilobytes
+ `MB`: megabytes
+ `GB`: gigabytes
Valor predeterminado: `KB`  
`logFileDirectoryPath`  <a name="log-manager-component-configuration-component-log-file-dir-path"></a>
(Opcional) La ruta a la carpeta que contiene los archivos de registro de este componente.  
No es necesario especificar este parámetro para los componentes de Greengrass que imprimen en salida estándar (stdout) y error estándar (stderr).  
Predeterminado: `/greengrass/v2/logs`.  
`logFileRegex`  <a name="log-manager-component-configuration-component-log-file-regex"></a>
(Opcional) Expresión habitual que especifica el formato de nombre del archivo de registro que utiliza el componente o la aplicación. El componente administrador de registro utiliza esta expresión habitual para identificar los archivos de registro de la carpeta situada en `logFileDirectoryPath`.  
No es necesario especificar este parámetro para los componentes de Greengrass que imprimen en salida estándar (stdout) y error estándar (stderr).  
Si su componente o aplicación rota los archivos de registro, especifique una expresión habitual que coincida con los nombres de los archivos de registro rotados. Por ejemplo, puede especificar **hello\$1world\$1\$1\$1\$1w\$1.log** para cargar los registros de una aplicación de Hello World. El patrón `\\\\w*` coincide con cero o más caracteres de palabra, lo que incluye caracteres alfanuméricos y guiones bajos. Esta expresión habitual hace coincidir los archivos de registro con y sin marcas temporales en su nombre. En este ejemplo, el administrador de registro carga los siguientes archivos de registro:  
+ `hello_world.log`: el archivo de registro más reciente de la aplicación Hello World.
+ `hello_world_2020_12_15_17_0.log`: un archivo de registro más antiguo de la aplicación Hello World.
Predeterminado:`componentName\\\\w*.log`, donde *componentName* es el nombre del componente para esta configuración de registro.  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Opcional) Puede eliminar un archivo de registro después de que el componente del administrador de registros cargue los registros en CloudWatch Logs.  
Valor predeterminado: `false`  
`multiLineStartPattern`  <a name="log-manager-component-configuration-component-multi-line-start-pattern"></a>
(Opcional) Expresión habitual que identifica cuándo un mensaje de registro de una línea nueva es un mensaje de registro nuevo. Si la expresión regular no coincide con la nueva línea, el componente administrador de registros anexa la nueva línea al mensaje de registro de la línea anterior.  
De forma predeterminada, el componente administrador de registros comprueba si la línea comienza con un carácter de espacio en blanco, como un tabulador o un espacio. Si no es así, el administrador de registros trata esa línea como un nuevo mensaje de registro. De lo contrario, anexa esa línea al mensaje de registro actual. Este comportamiento garantiza que el componente administrador de registros no divida los mensajes que ocupan varias líneas, como los rastreos de pila.

  `periodicUploadIntervalSec`   
(Opcional) El periodo en segundos durante el que el componente administrador de registros comprueba si hay nuevos archivos de registro para cargar.  
Valor predeterminado: `300` (5 minutos)  
Mínimo: `0.000001` (1 microsegundo)

`updateToTlogIntervalSec`  
(Opcional) El periodo en segundos con el que el núcleo escribe los detalles de los eventos de carga de registros de Amazon CloudWatch Events en el registro de transacción local (`config.tlog`). Los valores predeterminados se especifican en `periodicUploadIntervalSec`. Puede modificar este parámetro para aumentar el intervalo de escritura.  
Valor predeterminado: `periodicUploadIntervalSec`  
Mínimo: `periodicUploadIntervalSec`

`deprecatedVersionSupport`  
Indica si el administrador de registros debe utilizar las mejoras de velocidad de registro introducidas en la versión 2.3.5 del administrador de registros. Establezca el valor en `false` para utilizar las mejoras.  
Si establece este valor `false` cuando actualice desde la versión 2.3.1 del administrador de registros o de una versión anterior, es posible que se carguen entradas de registro duplicadas.  
El valor predeterminado es `true`.

**Example Ejemplo: actualización de la combinación de configuraciones**  
El siguiente ejemplo de configuración especifica cargar los registros del sistema y los registros de los `com.example.HelloWorld` componentes en CloudWatch Logs.  

```
{
  "logsUploaderConfiguration": {
    "systemLogsConfiguration": {
      "uploadToCloudWatch": "true",
      "minimumLogLevel": "INFO",
      "diskSpaceLimit": "10",
      "diskSpaceLimitUnit": "MB",
      "deleteLogFileAfterCloudUpload": "false"
    },
    "componentLogsConfigurationMap": {
      "com.example.HelloWorld": {
        "minimumLogLevel": "INFO",
        "diskSpaceLimit": "20",
        "diskSpaceLimitUnit": "MB",
        "deleteLogFileAfterCloudUpload": "false"
      }
    }
  },
  "periodicUploadIntervalSec": "300",
  "deprecatedVersionSupport": "false"
}
```

**Example Ejemplo: configuración para cargar varios archivos de registro activos mediante la versión 2.3.1 del administrador de registros**  
El siguiente ejemplo de configuración es el ejemplo recomendado si desea dirigirse a varios archivos de registro activos. En este ejemplo de configuración se especifican los archivos de registro activos en los que desea cargarlos CloudWatch. Si utiliza este ejemplo de configuración, la configuración también cargará todos los archivos rotados que coincidan con `logFileRegex`. Este ejemplo de configuración es compatible con el administrador de registros versión 2.3.1.  

```
{
  "logsUploaderConfiguration": {
    "componentLogsConfigurationMap": {
      "com.example.A": {
        "logFileRegex": "com.example.A\\w*.log",
        "deleteLogFileAfterCloudUpload": "false"
      }
      "com.example.B": {
        "logFileRegex": "com.example.B\\w*.log",
        "deleteLogFileAfterCloudUpload": "false"
      }
    }
  },
  "periodicUploadIntervalSec": "10"
}
```

------
#### [ v2.3.6 – v2.3.9 ]

`logsUploaderConfiguration`  
(Opcional) La configuración de los registros que carga el componente administrador de registros. Este objeto contiene la siguiente información:    
  `systemLogsConfiguration`   
(Opcional) La configuración de los registros del sistema del software AWS IoT Greengrass principal, que incluyen los registros del [núcleo y los componentes del [complemento](develop-greengrass-components.md#component-types) de Greengrass](greengrass-nucleus-component.md). Especifique esta configuración para permitir que el componente administrador de registros administre los registros del sistema. Este objeto contiene la siguiente información:    
`uploadToCloudWatch`  <a name="log-manager-component-configuration-system-upload-to-cloud-watch"></a>
(Opcional) Puede cargar los registros del sistema en CloudWatch Logs.  
Valor predeterminado: `false`  
`minimumLogLevel`  <a name="log-manager-component-configuration-system-minimum-log-level"></a>
(Opcional) El nivel mínimo de mensajes de registro que se deben cargar. Este nivel mínimo se aplica solo si configura el [componente núcleo de Greengrass](greengrass-nucleus-component.md) para generar registros en formato JSON. Para habilitar los registros en formato JSON, especifique `JSON` para el parámetro de [formato de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format) (`logging.format`).  
Elija uno de los siguientes niveles de registro, que se enumeran aquí en orden de niveles:  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valor predeterminado: `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-system-disk-space-limit"></a>
(Opcional) El tamaño total máximo de los archivos de registro del sistema Greengrass en la unidad en la que especifique `diskSpaceLimitUnit`. Cuando el tamaño total de los archivos de registro del sistema Greengrass supera este tamaño total máximo, el software AWS IoT Greengrass Core elimina los archivos de registro del sistema Greengrass más antiguos.  
Este parámetro equivale al parámetro de [límite de tamaño de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) del [componente núcleo de Greengrass](greengrass-nucleus-component.md). El software AWS IoT Greengrass Core utiliza el mínimo de los dos valores como tamaño máximo total del registro del sistema Greengrass.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Opcional) La unidad para `diskSpaceLimit`. Puede elegir entre las siguientes opciones:  
+ `KB`: kilobytes
+ `MB`: megabytes
+ `GB`: gigabytes
Valor predeterminado: `KB`  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Opcional) Puede eliminar un archivo de registro después de que el componente del administrador de registros cargue los registros en Logs. CloudWatch   
Valor predeterminado: `false`  
  `componentLogsConfigurationMap`   
(Opcional) Un mapa de las configuraciones de registro de los componentes del dispositivo principal. Cada objeto `componentName` de este mapa define la configuración de registro del componente o la aplicación. El componente gestor de registros carga estos registros de componentes en Logs. CloudWatch   
Recomendamos utilizar una única clave de configuración por componente. Solo debe dirigirse a un grupo de archivos que solo tengan un archivo de registro en el que se esté escribiendo activamente cuando use `logFileRegex`. Si no se sigue esta recomendación, es posible que se carguen registros duplicados en ellos. CloudWatch Si se dirige a varios archivos de registro activos con una sola expresión regular, le recomendamos que actualice a la versión 2.3.1 o posterior del administrador de registros y que considere la posibilidad de cambiar la configuración con la [configuración de ejemplo.](#log-manager-multiple-logs-v2.3.1)
Si está actualizando desde una versión del administrador de registros anterior a la versión 2.2.0, puede seguir utilizando la lista `componentLogsConfiguration` en lugar de `componentLogsConfigurationMap`. No obstante, le recomendamos que utilice el formato de mapa para poder utilizar actualizaciones de combinación y restablecimiento para modificar configuraciones de componentes específicos. Para obtener información sobre el parámetro `componentLogsConfiguration`, consulte los parámetros de configuración de la versión 2.1.x de este componente.  
*`componentName`*  
La configuración de registro del componente o la aplicación *`componentName`* de esta configuración de registro. Puede especificar el nombre de un componente de Greengrass u otro valor para identificar este grupo de registro.  
Cada objeto contiene la siguiente información:    
`minimumLogLevel`  <a name="log-manager-component-configuration-component-minimum-log-level"></a>
(Opcional) El nivel mínimo de mensajes de registro que se deben cargar. Este nivel mínimo solo se aplica si los registros de este componente utilizan un formato JSON específico, que puedes encontrar en el repositorio del [módulo de AWS IoT Greengrass registro](https://github.com/aws-greengrass/aws-greengrass-logging-java) de GitHub.  
Elija uno de los siguientes niveles de registro, que se enumeran aquí en orden de niveles:  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valor predeterminado: `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-component-disk-space-limit"></a>
(Opcional) El tamaño total máximo de todos los archivos de registro de este componente en la unidad en la que especifique `diskSpaceLimitUnit`. Cuando el tamaño total de los archivos de registro de este componente supere este tamaño total máximo, el software AWS IoT Greengrass Core elimina los archivos de registro más antiguos de este componente.  
Este parámetro está relacionado con el parámetro de [límite de tamaño de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) del [componente núcleo de Greengrass](greengrass-nucleus-component.md). El software AWS IoT Greengrass Core utiliza el mínimo de los dos valores como tamaño de registro total máximo para este componente.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Opcional) La unidad para `diskSpaceLimit`. Puede elegir entre las siguientes opciones:  
+ `KB`: kilobytes
+ `MB`: megabytes
+ `GB`: gigabytes
Valor predeterminado: `KB`  
`logFileDirectoryPath`  <a name="log-manager-component-configuration-component-log-file-dir-path"></a>
(Opcional) La ruta a la carpeta que contiene los archivos de registro de este componente.  
No es necesario especificar este parámetro para los componentes de Greengrass que imprimen en salida estándar (stdout) y error estándar (stderr).  
Predeterminado: `/greengrass/v2/logs`.  
`logFileRegex`  <a name="log-manager-component-configuration-component-log-file-regex"></a>
(Opcional) Expresión habitual que especifica el formato de nombre del archivo de registro que utiliza el componente o la aplicación. El componente administrador de registro utiliza esta expresión habitual para identificar los archivos de registro de la carpeta situada en `logFileDirectoryPath`.  
No es necesario especificar este parámetro para los componentes de Greengrass que imprimen en salida estándar (stdout) y error estándar (stderr).  
Si su componente o aplicación rota los archivos de registro, especifique una expresión habitual que coincida con los nombres de los archivos de registro rotados. Por ejemplo, puede especificar **hello\$1world\$1\$1\$1\$1w\$1.log** para cargar los registros de una aplicación de Hello World. El patrón `\\\\w*` coincide con cero o más caracteres de palabra, lo que incluye caracteres alfanuméricos y guiones bajos. Esta expresión habitual hace coincidir los archivos de registro con y sin marcas temporales en su nombre. En este ejemplo, el administrador de registro carga los siguientes archivos de registro:  
+ `hello_world.log`: el archivo de registro más reciente de la aplicación Hello World.
+ `hello_world_2020_12_15_17_0.log`: un archivo de registro más antiguo de la aplicación Hello World.
Predeterminado:`componentName\\\\w*.log`, donde *componentName* es el nombre del componente para esta configuración de registro.  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Opcional) Puede eliminar un archivo de registro después de que el componente del administrador de registros cargue los registros en CloudWatch Logs.  
Valor predeterminado: `false`  
`multiLineStartPattern`  <a name="log-manager-component-configuration-component-multi-line-start-pattern"></a>
(Opcional) Expresión habitual que identifica cuándo un mensaje de registro de una línea nueva es un mensaje de registro nuevo. Si la expresión regular no coincide con la nueva línea, el componente administrador de registros anexa la nueva línea al mensaje de registro de la línea anterior.  
De forma predeterminada, el componente administrador de registros comprueba si la línea comienza con un carácter de espacio en blanco, como un tabulador o un espacio. Si no es así, el administrador de registros trata esa línea como un nuevo mensaje de registro. De lo contrario, anexa esa línea al mensaje de registro actual. Este comportamiento garantiza que el componente administrador de registros no divida los mensajes que ocupan varias líneas, como los rastreos de pila.

  `periodicUploadIntervalSec`   
(Opcional) El periodo en segundos durante el que el componente administrador de registros comprueba si hay nuevos archivos de registro para cargar.  
Valor predeterminado: `300` (5 minutos)  
Mínimo: `0.000001` (1 microsegundo)

`deprecatedVersionSupport`  
Indica si el administrador de registros debe utilizar las mejoras de velocidad de registro introducidas en la versión 2.3.5 del administrador de registros. Establezca el valor en `false` para utilizar las mejoras.  
Si establece este valor `false` cuando actualice desde la versión 2.3.1 del administrador de registros o de una versión anterior, es posible que se carguen entradas de registro duplicadas.  
El valor predeterminado es `true`.

**Example Ejemplo: actualización de la combinación de configuraciones**  
El siguiente ejemplo de configuración especifica cargar los registros del sistema y los registros de los `com.example.HelloWorld` componentes en CloudWatch Logs.  

```
{
  "logsUploaderConfiguration": {
    "systemLogsConfiguration": {
      "uploadToCloudWatch": "true",
      "minimumLogLevel": "INFO",
      "diskSpaceLimit": "10",
      "diskSpaceLimitUnit": "MB",
      "deleteLogFileAfterCloudUpload": "false"
    },
    "componentLogsConfigurationMap": {
      "com.example.HelloWorld": {
        "minimumLogLevel": "INFO",
        "diskSpaceLimit": "20",
        "diskSpaceLimitUnit": "MB",
        "deleteLogFileAfterCloudUpload": "false"
      }
    }
  },
  "periodicUploadIntervalSec": "300",
  "deprecatedVersionSupport": "false"
}
```

**Example Ejemplo: configuración para cargar varios archivos de registro activos mediante la versión 2.3.1 del administrador de registros**  
El siguiente ejemplo de configuración es el ejemplo recomendado si desea dirigirse a varios archivos de registro activos. En este ejemplo de configuración se especifican los archivos de registro activos en los que desea cargarlos CloudWatch. Si utiliza este ejemplo de configuración, la configuración también cargará todos los archivos rotados que coincidan con `logFileRegex`. Este ejemplo de configuración es compatible con el administrador de registros versión 2.3.1.  

```
{
  "logsUploaderConfiguration": {
    "componentLogsConfigurationMap": {
      "com.example.A": {
        "logFileRegex": "com.example.A\\w*.log",
        "deleteLogFileAfterCloudUpload": "false"
      }
      "com.example.B": {
        "logFileRegex": "com.example.B\\w*.log",
        "deleteLogFileAfterCloudUpload": "false"
      }
    }
  },
  "periodicUploadIntervalSec": "10"
}
```

------
#### [ v2.3.0 – 2.3.5 ]

`logsUploaderConfiguration`  
(Opcional) La configuración de los registros que carga el componente administrador de registros. Este objeto contiene la siguiente información:    
  `systemLogsConfiguration`   
(Opcional) La configuración de los registros del sistema del software AWS IoT Greengrass principal, que incluyen los registros del [núcleo y los componentes del [complemento](develop-greengrass-components.md#component-types) de Greengrass](greengrass-nucleus-component.md). Especifique esta configuración para permitir que el componente administrador de registros administre los registros del sistema. Este objeto contiene la siguiente información:    
`uploadToCloudWatch`  <a name="log-manager-component-configuration-system-upload-to-cloud-watch"></a>
(Opcional) Puede cargar los registros del sistema en CloudWatch Logs.  
Valor predeterminado: `false`  
`minimumLogLevel`  <a name="log-manager-component-configuration-system-minimum-log-level"></a>
(Opcional) El nivel mínimo de mensajes de registro que se deben cargar. Este nivel mínimo se aplica solo si configura el [componente núcleo de Greengrass](greengrass-nucleus-component.md) para generar registros en formato JSON. Para habilitar los registros en formato JSON, especifique `JSON` para el parámetro de [formato de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format) (`logging.format`).  
Elija uno de los siguientes niveles de registro, que se enumeran aquí en orden de niveles:  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valor predeterminado: `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-system-disk-space-limit"></a>
(Opcional) El tamaño total máximo de los archivos de registro del sistema Greengrass en la unidad en la que especifique `diskSpaceLimitUnit`. Cuando el tamaño total de los archivos de registro del sistema Greengrass supera este tamaño total máximo, el software AWS IoT Greengrass Core elimina los archivos de registro del sistema Greengrass más antiguos.  
Este parámetro equivale al parámetro de [límite de tamaño de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) del [componente núcleo de Greengrass](greengrass-nucleus-component.md). El software AWS IoT Greengrass Core utiliza el mínimo de los dos valores como tamaño máximo total del registro del sistema Greengrass.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Opcional) La unidad para `diskSpaceLimit`. Puede elegir entre las siguientes opciones:  
+ `KB`: kilobytes
+ `MB`: megabytes
+ `GB`: gigabytes
Valor predeterminado: `KB`  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Opcional) Puede eliminar un archivo de registro después de que el componente del administrador de registros cargue los registros en Logs. CloudWatch   
Valor predeterminado: `false`  
  `componentLogsConfigurationMap`   
(Opcional) Un mapa de las configuraciones de registro de los componentes del dispositivo principal. Cada objeto `componentName` de este mapa define la configuración de registro del componente o la aplicación. El componente gestor de registros carga estos registros de componentes en Logs. CloudWatch   
Recomendamos utilizar una única clave de configuración por componente. Solo debe dirigirse a un grupo de archivos que solo tengan un archivo de registro en el que se esté escribiendo activamente cuando use `logFileRegex`. Si no se sigue esta recomendación, es posible que se carguen registros duplicados en ellos. CloudWatch Si se dirige a varios archivos de registro activos con una sola expresión regular, le recomendamos que actualice a la versión 2.3.1 del administrador de registros y que considere la posibilidad de cambiar la configuración con la [configuración de ejemplo](#log-manager-multiple-logs-v2.3.1).
Si está actualizando desde una versión del administrador de registros anterior a la versión 2.2.0, puede seguir utilizando la lista `componentLogsConfiguration` en lugar de `componentLogsConfigurationMap`. No obstante, le recomendamos que utilice el formato de mapa para poder utilizar actualizaciones de combinación y restablecimiento para modificar configuraciones de componentes específicos. Para obtener información sobre el parámetro `componentLogsConfiguration`, consulte los parámetros de configuración de la versión 2.1.x de este componente.  
*`componentName`*  
La configuración de registro del componente o la aplicación *`componentName`* de esta configuración de registro. Puede especificar el nombre de un componente de Greengrass u otro valor para identificar este grupo de registro.  
Cada objeto contiene la siguiente información:    
`minimumLogLevel`  <a name="log-manager-component-configuration-component-minimum-log-level"></a>
(Opcional) El nivel mínimo de mensajes de registro que se deben cargar. Este nivel mínimo solo se aplica si los registros de este componente utilizan un formato JSON específico, que puedes encontrar en el repositorio del [módulo de AWS IoT Greengrass registro](https://github.com/aws-greengrass/aws-greengrass-logging-java) de GitHub.  
Elija uno de los siguientes niveles de registro, que se enumeran aquí en orden de niveles:  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valor predeterminado: `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-component-disk-space-limit"></a>
(Opcional) El tamaño total máximo de todos los archivos de registro de este componente en la unidad en la que especifique `diskSpaceLimitUnit`. Cuando el tamaño total de los archivos de registro de este componente supere este tamaño total máximo, el software AWS IoT Greengrass Core elimina los archivos de registro más antiguos de este componente.  
Este parámetro está relacionado con el parámetro de [límite de tamaño de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) del [componente núcleo de Greengrass](greengrass-nucleus-component.md). El software AWS IoT Greengrass Core utiliza el mínimo de los dos valores como tamaño de registro total máximo para este componente.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Opcional) La unidad para `diskSpaceLimit`. Puede elegir entre las siguientes opciones:  
+ `KB`: kilobytes
+ `MB`: megabytes
+ `GB`: gigabytes
Valor predeterminado: `KB`  
`logFileDirectoryPath`  <a name="log-manager-component-configuration-component-log-file-dir-path"></a>
(Opcional) La ruta a la carpeta que contiene los archivos de registro de este componente.  
No es necesario especificar este parámetro para los componentes de Greengrass que imprimen en salida estándar (stdout) y error estándar (stderr).  
Predeterminado: `/greengrass/v2/logs`.  
`logFileRegex`  <a name="log-manager-component-configuration-component-log-file-regex"></a>
(Opcional) Expresión habitual que especifica el formato de nombre del archivo de registro que utiliza el componente o la aplicación. El componente administrador de registro utiliza esta expresión habitual para identificar los archivos de registro de la carpeta situada en `logFileDirectoryPath`.  
No es necesario especificar este parámetro para los componentes de Greengrass que imprimen en salida estándar (stdout) y error estándar (stderr).  
Si su componente o aplicación rota los archivos de registro, especifique una expresión habitual que coincida con los nombres de los archivos de registro rotados. Por ejemplo, puede especificar **hello\$1world\$1\$1\$1\$1w\$1.log** para cargar los registros de una aplicación de Hello World. El patrón `\\\\w*` coincide con cero o más caracteres de palabra, lo que incluye caracteres alfanuméricos y guiones bajos. Esta expresión habitual hace coincidir los archivos de registro con y sin marcas temporales en su nombre. En este ejemplo, el administrador de registro carga los siguientes archivos de registro:  
+ `hello_world.log`: el archivo de registro más reciente de la aplicación Hello World.
+ `hello_world_2020_12_15_17_0.log`: un archivo de registro más antiguo de la aplicación Hello World.
Predeterminado:`componentName\\\\w*.log`, donde *componentName* es el nombre del componente para esta configuración de registro.  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Opcional) Puede eliminar un archivo de registro después de que el componente del administrador de registros cargue los registros en CloudWatch Logs.  
Valor predeterminado: `false`  
`multiLineStartPattern`  <a name="log-manager-component-configuration-component-multi-line-start-pattern"></a>
(Opcional) Expresión habitual que identifica cuándo un mensaje de registro de una línea nueva es un mensaje de registro nuevo. Si la expresión regular no coincide con la nueva línea, el componente administrador de registros anexa la nueva línea al mensaje de registro de la línea anterior.  
De forma predeterminada, el componente administrador de registros comprueba si la línea comienza con un carácter de espacio en blanco, como un tabulador o un espacio. Si no es así, el administrador de registros trata esa línea como un nuevo mensaje de registro. De lo contrario, anexa esa línea al mensaje de registro actual. Este comportamiento garantiza que el componente administrador de registros no divida los mensajes que ocupan varias líneas, como los rastreos de pila.

  `periodicUploadIntervalSec`   
(Opcional) El periodo en segundos durante el que el componente administrador de registros comprueba si hay nuevos archivos de registro para cargar.  
Valor predeterminado: `300` (5 minutos)  
Mínimo: `0.000001` (1 microsegundo)

**Example Ejemplo: actualización de la combinación de configuraciones**  
El siguiente ejemplo de configuración especifica cargar los registros del sistema y los registros de los `com.example.HelloWorld` componentes en CloudWatch Logs.  

```
{
  "logsUploaderConfiguration": {
    "systemLogsConfiguration": {
      "uploadToCloudWatch": "true",
      "minimumLogLevel": "INFO",
      "diskSpaceLimit": "10",
      "diskSpaceLimitUnit": "MB",
      "deleteLogFileAfterCloudUpload": "false"
    },
    "componentLogsConfigurationMap": {
      "com.example.HelloWorld": {
        "minimumLogLevel": "INFO",
        "diskSpaceLimit": "20",
        "diskSpaceLimitUnit": "MB",
        "deleteLogFileAfterCloudUpload": "false"
      }
    }
  },
  "periodicUploadIntervalSec": "300"
}
```

**Example Ejemplo: configuración para cargar varios archivos de registro activos mediante la versión 2.3.1 del administrador de registros**  
El siguiente ejemplo de configuración es el ejemplo recomendado si desea dirigirse a varios archivos de registro activos. En este ejemplo de configuración se especifican los archivos de registro activos en los que desea cargarlos CloudWatch. Si utiliza este ejemplo de configuración, la configuración también cargará todos los archivos rotados que coincidan con `logFileRegex`. Este ejemplo de configuración es compatible con el administrador de registros versión 2.3.1.  

```
{
  "logsUploaderConfiguration": {
    "componentLogsConfigurationMap": {
      "com.example.A": {
        "logFileRegex": "com.example.A\\w*.log",
        "deleteLogFileAfterCloudUpload": "false"
      }
      "com.example.B": {
        "logFileRegex": "com.example.B\\w*.log",
        "deleteLogFileAfterCloudUpload": "false"
      }
    }
  },
  "periodicUploadIntervalSec": "10"
}
```

------
#### [ v2.2.x ]

`logsUploaderConfiguration`  
(Opcional) La configuración de los registros que carga el componente administrador de registros. Este objeto contiene la siguiente información:    
  `systemLogsConfiguration`   
(Opcional) La configuración de los registros del sistema del software AWS IoT Greengrass principal, que incluyen los registros del [núcleo y los componentes del [complemento](develop-greengrass-components.md#component-types) de Greengrass](greengrass-nucleus-component.md). Especifique esta configuración para permitir que el componente administrador de registros administre los registros del sistema. Este objeto contiene la siguiente información:    
`uploadToCloudWatch`  <a name="log-manager-component-configuration-system-upload-to-cloud-watch"></a>
(Opcional) Puede cargar los registros del sistema en CloudWatch Logs.  
Valor predeterminado: `false`  
`minimumLogLevel`  <a name="log-manager-component-configuration-system-minimum-log-level"></a>
(Opcional) El nivel mínimo de mensajes de registro que se deben cargar. Este nivel mínimo se aplica solo si configura el [componente núcleo de Greengrass](greengrass-nucleus-component.md) para generar registros en formato JSON. Para habilitar los registros en formato JSON, especifique `JSON` para el parámetro de [formato de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format) (`logging.format`).  
Elija uno de los siguientes niveles de registro, que se enumeran aquí en orden de niveles:  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valor predeterminado: `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-system-disk-space-limit"></a>
(Opcional) El tamaño total máximo de los archivos de registro del sistema Greengrass en la unidad en la que especifique `diskSpaceLimitUnit`. Cuando el tamaño total de los archivos de registro del sistema Greengrass supera este tamaño total máximo, el software AWS IoT Greengrass Core elimina los archivos de registro del sistema Greengrass más antiguos.  
Este parámetro equivale al parámetro de [límite de tamaño de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) del [componente núcleo de Greengrass](greengrass-nucleus-component.md). El software AWS IoT Greengrass Core utiliza el mínimo de los dos valores como tamaño máximo total del registro del sistema Greengrass.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Opcional) La unidad para `diskSpaceLimit`. Puede elegir entre las siguientes opciones:  
+ `KB`: kilobytes
+ `MB`: megabytes
+ `GB`: gigabytes
Valor predeterminado: `KB`  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Opcional) Puede eliminar un archivo de registro después de que el componente del administrador de registros cargue los registros en Logs. CloudWatch   
Valor predeterminado: `false`  
  `componentLogsConfigurationMap`   
(Opcional) Un mapa de las configuraciones de registro de los componentes del dispositivo principal. Cada objeto `componentName` de este mapa define la configuración de registro del componente o la aplicación. El componente gestor de registros carga estos registros de componentes en Logs. CloudWatch   
Si está actualizando desde una versión del administrador de registros anterior a la versión 2.2.0, puede seguir utilizando la lista `componentLogsConfiguration` en lugar de `componentLogsConfigurationMap`. No obstante, le recomendamos que utilice el formato de mapa para poder utilizar actualizaciones de combinación y restablecimiento para modificar configuraciones de componentes específicos. Para obtener información sobre el parámetro `componentLogsConfiguration`, consulte los parámetros de configuración de la versión 2.1.x de este componente.   
*`componentName`*  
La configuración de registro del componente o la aplicación *`componentName`* de esta configuración de registro. Puede especificar el nombre de un componente de Greengrass u otro valor para identificar este grupo de registro.  
Cada objeto contiene la siguiente información:    
`minimumLogLevel`  <a name="log-manager-component-configuration-component-minimum-log-level"></a>
(Opcional) El nivel mínimo de mensajes de registro que se deben cargar. Este nivel mínimo se aplica solo si los registros de este componente utilizan un formato JSON específico, que puede encontrar en el repositorio del [módulo de AWS IoT Greengrass registro](https://github.com/aws-greengrass/aws-greengrass-logging-java) de. GitHub  
Elija uno de los siguientes niveles de registro, que se enumeran aquí en orden de niveles:  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valor predeterminado: `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-component-disk-space-limit"></a>
(Opcional) El tamaño total máximo de todos los archivos de registro de este componente en la unidad en la que especifique `diskSpaceLimitUnit`. Cuando el tamaño total de los archivos de registro de este componente supere este tamaño total máximo, el software AWS IoT Greengrass Core elimina los archivos de registro más antiguos de este componente.  
Este parámetro está relacionado con el parámetro de [límite de tamaño de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) del [componente núcleo de Greengrass](greengrass-nucleus-component.md). El software AWS IoT Greengrass Core utiliza el mínimo de los dos valores como tamaño de registro total máximo para este componente.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Opcional) La unidad para `diskSpaceLimit`. Puede elegir entre las siguientes opciones:  
+ `KB`: kilobytes
+ `MB`: megabytes
+ `GB`: gigabytes
Valor predeterminado: `KB`  
`logFileDirectoryPath`  <a name="log-manager-component-configuration-component-log-file-dir-path"></a>
(Opcional) La ruta a la carpeta que contiene los archivos de registro de este componente.  
No es necesario especificar este parámetro para los componentes de Greengrass que imprimen en salida estándar (stdout) y error estándar (stderr).  
Predeterminado: `/greengrass/v2/logs`.  
`logFileRegex`  <a name="log-manager-component-configuration-component-log-file-regex"></a>
(Opcional) Expresión habitual que especifica el formato de nombre del archivo de registro que utiliza el componente o la aplicación. El componente administrador de registro utiliza esta expresión habitual para identificar los archivos de registro de la carpeta situada en `logFileDirectoryPath`.  
No es necesario especificar este parámetro para los componentes de Greengrass que imprimen en salida estándar (stdout) y error estándar (stderr).  
Si su componente o aplicación rota los archivos de registro, especifique una expresión habitual que coincida con los nombres de los archivos de registro rotados. Por ejemplo, puede especificar **hello\$1world\$1\$1\$1\$1w\$1.log** para cargar los registros de una aplicación de Hello World. El patrón `\\\\w*` coincide con cero o más caracteres de palabra, lo que incluye caracteres alfanuméricos y guiones bajos. Esta expresión habitual hace coincidir los archivos de registro con y sin marcas temporales en su nombre. En este ejemplo, el administrador de registro carga los siguientes archivos de registro:  
+ `hello_world.log`: el archivo de registro más reciente de la aplicación Hello World.
+ `hello_world_2020_12_15_17_0.log`: un archivo de registro más antiguo de la aplicación Hello World.
Predeterminado:`componentName\\\\w*.log`, donde *componentName* es el nombre del componente para esta configuración de registro.  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Opcional) Puede eliminar un archivo de registro después de que el componente del administrador de registros cargue los registros en CloudWatch Logs.  
Valor predeterminado: `false`  
`multiLineStartPattern`  <a name="log-manager-component-configuration-component-multi-line-start-pattern"></a>
(Opcional) Expresión habitual que identifica cuándo un mensaje de registro de una línea nueva es un mensaje de registro nuevo. Si la expresión regular no coincide con la nueva línea, el componente administrador de registros anexa la nueva línea al mensaje de registro de la línea anterior.  
De forma predeterminada, el componente administrador de registros comprueba si la línea comienza con un carácter de espacio en blanco, como un tabulador o un espacio. Si no es así, el administrador de registros trata esa línea como un nuevo mensaje de registro. De lo contrario, anexa esa línea al mensaje de registro actual. Este comportamiento garantiza que el componente administrador de registros no divida los mensajes que ocupan varias líneas, como los rastreos de pila.

  `periodicUploadIntervalSec`   
(Opcional) El periodo en segundos durante el que el componente administrador de registros comprueba si hay nuevos archivos de registro para cargar.  
Valor predeterminado: `300` (5 minutos)  
Mínimo: `0.000001` (1 microsegundo)

**Example Ejemplo: actualización de la combinación de configuraciones**  
El siguiente ejemplo de configuración especifica cargar los registros del sistema y los registros de los `com.example.HelloWorld` componentes en CloudWatch Logs.  

```
{
  "logsUploaderConfiguration": {
    "systemLogsConfiguration": {
      "uploadToCloudWatch": "true",
      "minimumLogLevel": "INFO",
      "diskSpaceLimit": "10",
      "diskSpaceLimitUnit": "MB",
      "deleteLogFileAfterCloudUpload": "false"
    },
    "componentLogsConfigurationMap": {
      "com.example.HelloWorld": {
        "minimumLogLevel": "INFO",
        "diskSpaceLimit": "20",
        "diskSpaceLimitUnit": "MB",
        "deleteLogFileAfterCloudUpload": "false"
      }
    }
  },
  "periodicUploadIntervalSec": "300"
}
```

------
#### [ v2.1.x ]

`logsUploaderConfiguration`  
(Opcional) La configuración de los registros que carga el componente administrador de registros. Este objeto contiene la siguiente información:    
 `systemLogsConfiguration`   
(Opcional) La configuración de los registros del sistema del software AWS IoT Greengrass principal, que incluyen los registros del [núcleo y los componentes del [complemento](develop-greengrass-components.md#component-types) de Greengrass](greengrass-nucleus-component.md). Especifique esta configuración para permitir que el componente administrador de registros administre los registros del sistema. Este objeto contiene la siguiente información:    
`uploadToCloudWatch`  <a name="log-manager-component-configuration-system-upload-to-cloud-watch"></a>
(Opcional) Puede cargar los registros del sistema en CloudWatch Logs.  
Valor predeterminado: `false`  
`minimumLogLevel`  <a name="log-manager-component-configuration-system-minimum-log-level"></a>
(Opcional) El nivel mínimo de mensajes de registro que se deben cargar. Este nivel mínimo se aplica solo si configura el [componente núcleo de Greengrass](greengrass-nucleus-component.md) para generar registros en formato JSON. Para habilitar los registros en formato JSON, especifique `JSON` para el parámetro de [formato de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format) (`logging.format`).  
Elija uno de los siguientes niveles de registro, que se enumeran aquí en orden de niveles:  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valor predeterminado: `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-system-disk-space-limit"></a>
(Opcional) El tamaño total máximo de los archivos de registro del sistema Greengrass en la unidad en la que especifique `diskSpaceLimitUnit`. Cuando el tamaño total de los archivos de registro del sistema Greengrass supera este tamaño total máximo, el software AWS IoT Greengrass Core elimina los archivos de registro del sistema Greengrass más antiguos.  
Este parámetro equivale al parámetro de [límite de tamaño de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) del [componente núcleo de Greengrass](greengrass-nucleus-component.md). El software AWS IoT Greengrass Core utiliza el mínimo de los dos valores como tamaño máximo total del registro del sistema Greengrass.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Opcional) La unidad para `diskSpaceLimit`. Puede elegir entre las siguientes opciones:  
+ `KB`: kilobytes
+ `MB`: megabytes
+ `GB`: gigabytes
Valor predeterminado: `KB`  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Opcional) Puede eliminar un archivo de registro después de que el componente del administrador de registros cargue los registros en Logs. CloudWatch   
Valor predeterminado: `false`  
  `componentLogsConfiguration`   
(Opcional) Una lista de las configuraciones de registro de los componentes del dispositivo principal. Cada configuración de esta lista define la configuración de registro de un componente o aplicación. El componente gestor de registros carga estos registros de componentes en Logs CloudWatch   
Cada objeto contiene la siguiente información:    
`componentName`  <a name="log-manager-component-configuration-component-component-name"></a>
El nombre del componente o la aplicación para esta configuración de registro. Puede especificar el nombre de un componente de Greengrass u otro valor para identificar este grupo de registro.  
`minimumLogLevel`  <a name="log-manager-component-configuration-component-minimum-log-level"></a>
(Opcional) El nivel mínimo de mensajes de registro que se deben cargar. Este nivel mínimo se aplica solo si los registros de este componente utilizan un formato JSON específico, que se encuentra en el repositorio del [módulo de AWS IoT Greengrass registro](https://github.com/aws-greengrass/aws-greengrass-logging-java). GitHub  
Elija uno de los siguientes niveles de registro, que se enumeran aquí en orden de niveles:  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valor predeterminado: `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-component-disk-space-limit"></a>
(Opcional) El tamaño total máximo de todos los archivos de registro de este componente en la unidad en la que especifique `diskSpaceLimitUnit`. Cuando el tamaño total de los archivos de registro de este componente supere este tamaño total máximo, el software AWS IoT Greengrass Core elimina los archivos de registro más antiguos de este componente.  
Este parámetro está relacionado con el parámetro de [límite de tamaño de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) del [componente núcleo de Greengrass](greengrass-nucleus-component.md). El software AWS IoT Greengrass Core utiliza el mínimo de los dos valores como tamaño de registro total máximo para este componente.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Opcional) La unidad para `diskSpaceLimit`. Puede elegir entre las siguientes opciones:  
+ `KB`: kilobytes
+ `MB`: megabytes
+ `GB`: gigabytes
Valor predeterminado: `KB`  
`logFileDirectoryPath`  <a name="log-manager-component-configuration-component-log-file-dir-path"></a>
(Opcional) La ruta a la carpeta que contiene los archivos de registro de este componente.  
No es necesario especificar este parámetro para los componentes de Greengrass que imprimen en salida estándar (stdout) y error estándar (stderr).  
Predeterminado: `/greengrass/v2/logs`.  
`logFileRegex`  <a name="log-manager-component-configuration-component-log-file-regex"></a>
(Opcional) Expresión habitual que especifica el formato de nombre del archivo de registro que utiliza el componente o la aplicación. El componente administrador de registro utiliza esta expresión habitual para identificar los archivos de registro de la carpeta situada en `logFileDirectoryPath`.  
No es necesario especificar este parámetro para los componentes de Greengrass que imprimen en salida estándar (stdout) y error estándar (stderr).  
Si su componente o aplicación rota los archivos de registro, especifique una expresión habitual que coincida con los nombres de los archivos de registro rotados. Por ejemplo, puede especificar **hello\$1world\$1\$1\$1\$1w\$1.log** para cargar los registros de una aplicación de Hello World. El patrón `\\\\w*` coincide con cero o más caracteres de palabra, lo que incluye caracteres alfanuméricos y guiones bajos. Esta expresión habitual hace coincidir los archivos de registro con y sin marcas temporales en su nombre. En este ejemplo, el administrador de registro carga los siguientes archivos de registro:  
+ `hello_world.log`: el archivo de registro más reciente de la aplicación Hello World.
+ `hello_world_2020_12_15_17_0.log`: un archivo de registro más antiguo de la aplicación Hello World.
Predeterminado:`componentName\\\\w*.log`, donde *componentName* es el nombre del componente para esta configuración de registro.  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Opcional) Puede eliminar un archivo de registro después de que el componente del administrador de registros cargue los registros en CloudWatch Logs.  
Valor predeterminado: `false`  
`multiLineStartPattern`  <a name="log-manager-component-configuration-component-multi-line-start-pattern"></a>
(Opcional) Expresión habitual que identifica cuándo un mensaje de registro de una línea nueva es un mensaje de registro nuevo. Si la expresión regular no coincide con la nueva línea, el componente administrador de registros anexa la nueva línea al mensaje de registro de la línea anterior.  
De forma predeterminada, el componente administrador de registros comprueba si la línea comienza con un carácter de espacio en blanco, como un tabulador o un espacio. Si no es así, el administrador de registros trata esa línea como un nuevo mensaje de registro. De lo contrario, anexa esa línea al mensaje de registro actual. Este comportamiento garantiza que el componente administrador de registros no divida los mensajes que ocupan varias líneas, como los rastreos de pila.

 `periodicUploadIntervalSec`   
(Opcional) El periodo en segundos durante el que el componente administrador de registros comprueba si hay nuevos archivos de registro para cargar.  
Valor predeterminado: `300` (5 minutos)  
Mínimo: `0.000001` (1 microsegundo)

**Example Ejemplo: actualización de la combinación de configuraciones**  
El siguiente ejemplo de configuración especifica cargar los registros del sistema y los registros de los `com.example.HelloWorld` componentes en CloudWatch Logs.  

```
{
  "logsUploaderConfiguration": {
    "systemLogsConfiguration": {
      "uploadToCloudWatch": "true",
      "minimumLogLevel": "INFO",
      "diskSpaceLimit": "10",
      "diskSpaceLimitUnit": "MB",
      "deleteLogFileAfterCloudUpload": "false"
    },
    "componentLogsConfiguration": [
      {
        "componentName": "com.example.HelloWorld",
        "minimumLogLevel": "INFO",
        "diskSpaceLimit": "20",
        "diskSpaceLimitUnit": "MB",
        "deleteLogFileAfterCloudUpload": "false"
      }
    ]
  },
  "periodicUploadIntervalSec": "300"
}
```

------
#### [ v2.0.x ]

`logsUploaderConfiguration`  
(Opcional) La configuración de los registros que carga el componente administrador de registros. Este objeto contiene la siguiente información:    
`systemLogsConfiguration`  
(Opcional) La configuración de los registros del sistema del software AWS IoT Greengrass principal. Especifique esta configuración para permitir que el componente administrador de registros administre los registros del sistema. Este objeto contiene la siguiente información:    
`uploadToCloudWatch`  <a name="log-manager-component-configuration-system-upload-to-cloud-watch"></a>
(Opcional) Puede cargar los registros del sistema en CloudWatch Logs.  
Valor predeterminado: `false`  
`minimumLogLevel`  <a name="log-manager-component-configuration-system-minimum-log-level"></a>
(Opcional) El nivel mínimo de mensajes de registro que se deben cargar. Este nivel mínimo se aplica solo si configura el [componente núcleo de Greengrass](greengrass-nucleus-component.md) para generar registros en formato JSON. Para habilitar los registros en formato JSON, especifique `JSON` para el parámetro de [formato de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format) (`logging.format`).  
Elija uno de los siguientes niveles de registro, que se enumeran aquí en orden de niveles:  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valor predeterminado: `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-system-disk-space-limit"></a>
(Opcional) El tamaño total máximo de los archivos de registro del sistema Greengrass en la unidad en la que especifique `diskSpaceLimitUnit`. Cuando el tamaño total de los archivos de registro del sistema Greengrass supera este tamaño total máximo, el software AWS IoT Greengrass Core elimina los archivos de registro del sistema Greengrass más antiguos.  
Este parámetro equivale al parámetro de [límite de tamaño de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) del [componente núcleo de Greengrass](greengrass-nucleus-component.md). El software AWS IoT Greengrass Core utiliza el mínimo de los dos valores como tamaño máximo total del registro del sistema Greengrass.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Opcional) La unidad para `diskSpaceLimit`. Puede elegir entre las siguientes opciones:  
+ `KB`: kilobytes
+ `MB`: megabytes
+ `GB`: gigabytes
Valor predeterminado: `KB`  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Opcional) Puede eliminar un archivo de registro después de que el componente del administrador de registros cargue los registros en Logs. CloudWatch   
Valor predeterminado: `false`  
`componentLogsConfiguration`  
(Opcional) Una lista de las configuraciones de registro de los componentes del dispositivo principal. Cada configuración de esta lista define la configuración de registro de un componente o aplicación. El componente gestor de registros carga estos registros de componentes en Logs CloudWatch   
Cada objeto contiene la siguiente información:    
`componentName`  <a name="log-manager-component-configuration-component-component-name"></a>
El nombre del componente o la aplicación para esta configuración de registro. Puede especificar el nombre de un componente de Greengrass u otro valor para identificar este grupo de registro.  
`minimumLogLevel`  <a name="log-manager-component-configuration-component-minimum-log-level"></a>
(Opcional) El nivel mínimo de mensajes de registro que se deben cargar. Este nivel mínimo se aplica solo si los registros de este componente utilizan un formato JSON específico, que se encuentra en el repositorio del [módulo de AWS IoT Greengrass registro](https://github.com/aws-greengrass/aws-greengrass-logging-java). GitHub  
Elija uno de los siguientes niveles de registro, que se enumeran aquí en orden de niveles:  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valor predeterminado: `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-component-disk-space-limit"></a>
(Opcional) El tamaño total máximo de todos los archivos de registro de este componente en la unidad en la que especifique `diskSpaceLimitUnit`. Cuando el tamaño total de los archivos de registro de este componente supere este tamaño total máximo, el software AWS IoT Greengrass Core elimina los archivos de registro más antiguos de este componente.  
Este parámetro está relacionado con el parámetro de [límite de tamaño de registro](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) del [componente núcleo de Greengrass](greengrass-nucleus-component.md). El software AWS IoT Greengrass Core utiliza el mínimo de los dos valores como tamaño de registro total máximo para este componente.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Opcional) La unidad para `diskSpaceLimit`. Puede elegir entre las siguientes opciones:  
+ `KB`: kilobytes
+ `MB`: megabytes
+ `GB`: gigabytes
Valor predeterminado: `KB`  
`logFileDirectoryPath`  
La ruta a la carpeta que contiene los archivos de registro de este componente.  
Para cargar los registros de un componente de Greengrass, especifique **`/greengrass/v2`/logs** y remplace `/greengrass/v2` por su carpeta raíz de Greengrass.  
`logFileRegex`  
Expresión habitual que especifica el formato de nombre del archivo de registro que utiliza el componente o la aplicación. El componente administrador de registro utiliza esta expresión habitual para identificar los archivos de registro de la carpeta situada en `logFileDirectoryPath`.  
Para cargar los registros de un componente de Greengrass, especifique una expresión regular que coincida con los nombres de los archivos de registro rotados. Por ejemplo, puede especificar **com.example.HelloWorld\$1\$1w\$1.log** para cargar los registros de un componente Hello World. El patrón `\\w*` coincide con cero o más caracteres de palabra, lo que incluye caracteres alfanuméricos y guiones bajos. Esta expresión habitual hace coincidir los archivos de registro con y sin marcas temporales en su nombre. En este ejemplo, el administrador de registro carga los siguientes archivos de registro:  
+ `com.example.HelloWorld.log`: el archivo de registro más reciente del componente Hello World.
+ `com.example.HelloWorld_2020_12_15_17_0.log`: un archivo de registro más antiguo del componente Hello World. El núcleo de Greengrass agrega una marca temporal rotativa a los archivos de registro.  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Opcional) Puede eliminar un archivo de registro después de que el componente del administrador de registros cargue los registros en Logs. CloudWatch   
Valor predeterminado: `false`  
`multiLineStartPattern`  <a name="log-manager-component-configuration-component-multi-line-start-pattern"></a>
(Opcional) Expresión habitual que identifica cuándo un mensaje de registro de una línea nueva es un mensaje de registro nuevo. Si la expresión regular no coincide con la nueva línea, el componente administrador de registros anexa la nueva línea al mensaje de registro de la línea anterior.  
De forma predeterminada, el componente administrador de registros comprueba si la línea comienza con un carácter de espacio en blanco, como un tabulador o un espacio. Si no es así, el administrador de registros trata esa línea como un nuevo mensaje de registro. De lo contrario, anexa esa línea al mensaje de registro actual. Este comportamiento garantiza que el componente administrador de registros no divida los mensajes que ocupan varias líneas, como los rastreos de pila.

`periodicUploadIntervalSec`  
(Opcional) El periodo en segundos durante el que el componente administrador de registros comprueba si hay nuevos archivos de registro para cargar.  
Valor predeterminado: `300` (5 minutos)  
Mínimo: `0.000001` (1 microsegundo)

**Example Ejemplo: actualización de la combinación de configuraciones**  
El siguiente ejemplo de configuración especifica cargar los registros del sistema y los registros de los `com.example.HelloWorld` componentes en CloudWatch Logs.  

```
{
  "logsUploaderConfiguration": {
    "systemLogsConfiguration": {
      "uploadToCloudWatch": "true",
      "minimumLogLevel": "INFO",
      "diskSpaceLimit": "10",
      "diskSpaceLimitUnit": "MB",
      "deleteLogFileAfterCloudUpload": "false"
    },
    "componentLogsConfiguration": [
      {
        "componentName": "com.example.HelloWorld",
        "minimumLogLevel": "INFO",
        "logFileDirectoryPath": "/greengrass/v2/logs",
        "logFileRegex": "com.example.HelloWorld\\w*.log",
        "diskSpaceLimit": "20",
        "diskSpaceLimitUnit": "MB",
        "deleteLogFileAfterCloudUpload": "false"
      }
    ]
  },
  "periodicUploadIntervalSec": "300"
}
```

------

## De uso
<a name="log-manager-component-usage"></a>

El componente administrador de registros se carga en los siguientes grupos de registro y flujos de registro.

------
#### [ 2.1.0 and later ]<a name="log-manager-log-group-stream-format"></a>

**Nombre del grupo de registro**  

```
/aws/greengrass/componentType/region/componentName
```
El nombre del grupo de registro utiliza las siguientes variables:  
+ `componentType`: el tipo del componente, que puede ser uno de los siguientes:
  + `GreengrassSystemComponent`: este grupo de registro incluye los registros de los componentes del núcleo y del complemento, que se ejecutan en la misma JVM que el núcleo de Greengrass. El componente forma parte del [núcleo de Greengrass](greengrass-nucleus-component.md).
  + `UserComponent`: este grupo de registro incluye registros de componentes genéricos, componentes de Lambda y otras aplicaciones del dispositivo. El componente no forma parte del núcleo de Greengrass.

  Para obtener más información, consulte [Tipos de componentes](develop-greengrass-components.md#component-types).
+ `region`— La AWS región que utiliza el dispositivo principal.
+ `componentName`: el nombre del componente. En el caso de los registros del sistema, este valor es `System`.

**Nombre del flujo de registro**  

```
/date/thing/thingName
```
El nombre del flujo de registro utiliza las siguientes variables:  
+ `date`: la fecha del registro, por ejemplo, `2020/12/15`. El componente administrador de registros usa el formato `yyyy/MM/dd`.
+ `thingName`: el nombre del dispositivo principal.
Si el nombre de un objeto contiene dos puntos (`:`), el administrador de registros los sustituye por un signo más (`+`).

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

**Nombre del grupo de registro**  

```
/aws/greengrass/componentType/region/componentName
```
El nombre del grupo de registro utiliza las siguientes variables:  
+ `componentType`: el tipo del componente, que puede ser uno de los siguientes:
  + `GreengrassSystemComponent`: el componente forma parte del [núcleo de Greengrass](greengrass-nucleus-component.md).
  + `UserComponent`: el componente no forma parte del núcleo de Greengrass. El administrador de registros usa este tipo para los componentes de Greengrass y otras aplicaciones del dispositivo.
+ `region`— La AWS región que utiliza el dispositivo principal.
+ `componentName`: el nombre del componente. En el caso de los registros del sistema, este valor es `System`.

**Nombre del flujo de registro**  

```
/date/deploymentTargets/thingName
```
El nombre del flujo de registro utiliza las siguientes variables:  
+ `date`: la fecha del registro, por ejemplo, `2020/12/15`. El componente administrador de registros usa el formato `yyyy/MM/dd`.
+ `deploymentTargets`: los objetos cuyas implementaciones incluyen el componente. El componente administrador de registros separa cada objetivo mediante una barra oblicua. Si el componente se ejecuta en el dispositivo principal como resultado de una implementación local, este valor es `LOCAL_DEPLOYMENT`.

  Considere un ejemplo en el que tiene un dispositivo principal con nombre `MyGreengrassCore` y el dispositivo principal tiene dos implementaciones:
  + Una implementación dirigida al dispositivo principal, `MyGreengrassCore`.
  + Una implementación dirigida a un grupo de objetos con nombre `MyGreengrassCoreGroup`, que contiene el dispositivo principal.

  Los `deploymentTargets` de este dispositivo principal son `thing/MyGreengrassCore/thinggroup/MyGreengrassCoreGroup`.
+ `thingName`: el nombre del dispositivo principal.

------

### Formatos para las entradas de registro.
<a name="log-manager-entry-format"></a>

El núcleo de Greengrass escribe los archivos de registro en formato de cadena o JSON. En el caso de los registros del sistema, usted controla el formato configurando el campo `format` de la entrada `logging`. Puede encontrar la entrada `logging` en el archivo de configuración del componente núcleo de Greengrass. Para obtener más información, consulte la [Configuración del núcleo de Greengrass](https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-nucleus-component.html#greengrass-nucleus-component-configuration).

El formato de texto es de formato libre y acepta cualquier cadena. El siguiente mensaje del servicio de estado de la flota es un ejemplo de registro con formato de cadena:

```
2023-03-26T18:18:27.271Z [INFO] (pool-1-thread-2)
com.aws.greengrass.status.FleetStatusService: fss-status-update-published. 
Status update published to FSS. {trigger=CADENCE, serviceName=FleetStatusService, 
currentState=RUNNING}
```

Debe usar el formato JSON si quiere ver los registros con el comando [registros de la CLI de Greengrass](https://docs.aws.amazon.com/greengrass/v2/developerguide/gg-cli-logs.html) o interactuar con los registros mediante programación. En el siguiente ejemplo, se describe la forma JSON:

```
{
   "loggerName": <string>,
   "level": <"DEBUG" | "INFO" | "ERROR" | "TRACE" | "WARN">,
   "eventType": <string, optional>,
   "cause": <string, optional>,
   "contexts": {},
   "thread": <string>,
   "message": <string>,
   "timestamp": <epoch time> # Needs to be epoch time
}
```

Para controlar la salida de los registros de su componente, puede usar la opción de configuración `minimumLogLevel`. Para usar esta opción, el componente debe escribir sus entradas de registro en formato JSON. Debe usar el mismo formato que el archivo de registro del sistema.

## Archivo de registro local
<a name="log-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:\$1greengrass\$1v2* 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="log-manager-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.3.11  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.3.10  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.3.9  |  Versión actualizada para la versión 2.14.0 de Greengrass Nucleus.  | 
|  2.3.8  |  Versión actualizada para el lanzamiento de la versión 2.13.0 del núcleo de Greengrass.  | 
|  2.3.7  |  Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass.  | 
|  2.3.6  |  <a name="changelog-log-manager-2.3.6"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.3.5  |  <a name="changelog-log-manager-2.3.5"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/log-manager-component.html) Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass.  | 
|  2.3.4  |  <a name="changelog-log-manager-2.3.4"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.3.3  |  Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass.  | 
|  2.3.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.3.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.3.0  |   Recomendamos que actualice el núcleo de Greengrass a 2.9.1 cuando actualice el administrador de registros a 2.3.0.   [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.2.8  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.2.7  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.2.6  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.2.5  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.2.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.2.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.2.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.2.1  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.1.3  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.1.2  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.1.1  |  <a name="changelog-log-manager-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.1.0  |  <a name="changelog-log-manager-2.1.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.0.x  |  Versión inicial.  | 

# Componentes de machine learning
<a name="machine-learning-components"></a>

AWS IoT Greengrass proporciona los siguientes componentes de aprendizaje automático que puede implementar en dispositivos compatibles para [realizar inferencias de aprendizaje automático](perform-machine-learning-inference.md) mediante modelos entrenados en Amazon SageMaker AI o con sus propios modelos previamente entrenados que se almacenan en Amazon S3. <a name="ml-component-types"></a>

AWS proporciona las siguientes categorías de componentes de aprendizaje automático:
+ **Componente de modelo**: contiene modelos de machine learning como artefactos de Greengrass.
+ **Componente de tiempo de ejecución**: contiene el script que instala el marco de machine learning y sus dependencias en el dispositivo principal de Greengrass.
+ **Componente de inferencia**: contiene el código de inferencia e incluye las dependencias de los componentes para instalar el marco de machine learning y descargar modelos de machine learning previamente entrenados.

Puede utilizar el código de inferencia de muestra y los modelos previamente entrenados de los componentes AWS de aprendizaje automático proporcionados para realizar la clasificación de imágenes y la detección de objetos mediante DLR y Lite. TensorFlow Para realizar inferencias de machine learning personalizadas con sus propios modelos almacenados en Amazon S3 o, para utilizar un marco de machine learning diferente, puede utilizar las recetas de estos componentes públicos como plantillas para crear componentes de machine learning personalizados. Para obtener más información, consulte [Personalización de sus componentes de machine learning](ml-customization.md).

AWS IoT Greengrass también incluye un componente AWS proporcionado para gestionar la instalación y el ciclo de vida del agente SageMaker AI Edge Manager en los dispositivos principales de Greengrass. Con SageMaker AI Edge Manager, puede utilizar los modelos compilados por Amazon SageMaker AI NEO directamente en su dispositivo principal. Para obtener más información, consulte [Utilice Amazon SageMaker AI Edge Manager en los dispositivos principales de Greengrass](use-sagemaker-edge-manager.md).

En la siguiente tabla se enumeran los componentes de aprendizaje automático que están disponibles en AWS IoT Greengrass. 

**nota**  <a name="component-nucleus-dependency-update-note"></a>
Varios AWS de los componentes proporcionados dependen de versiones secundarias específicas del núcleo de Greengrass. Debido a esta dependencia, es necesario actualizar estos componentes al actualizar el núcleo de Greengrass a una nueva versión secundaria. Para obtener información sobre las versiones específicas del núcleo de las que depende cada componente, consulte el tema del componente correspondiente. Para más información sobre la actualización del núcleo, consulte [Actualización del software AWS IoT Greengrass Core (OTA)](update-greengrass-core-v2.md).

<a name="component-table-type-description"></a>Cuando un componente tiene un tipo de componente genérico y de Lambda, la versión actual del componente es del tipo genérico y la versión anterior del componente es del tipo de Lambda.


| Componente | Description (Descripción) | [Tipo de componente](develop-greengrass-components.md#component-types) | Sistema operativo admitido | [Código abierto](open-source.md) | 
| --- | --- | --- | --- | --- | 
| [SageMaker Administrador AI Edge](sagemaker-edge-manager-component.md) | Implementa el agente Amazon SageMaker AI Edge Manager en el dispositivo principal de Greengrass. | Genérico | Linux, Windows | No | 
| [Clasificación de imágenes de DLR](dlr-image-classification-component.md) | Componente de inferencia que utiliza el almacén de modelos de clasificación de imágenes de DLR y el componente de tiempo de ejecución de DLR como dependencias para instalar el DLR, descargar modelos de clasificación de imágenes de muestra y realizar inferencias de clasificación de imágenes en los dispositivos compatibles. | Genérico | Linux, Windows | No | 
| [Detección de objetos del DLR](dlr-object-detection-component.md) | Componente de inferencia que utiliza el almacén de modelos de detección de objetos del DLR y el componente de tiempo de ejecución del DLR como dependencias para instalar el DLR, descargar modelos de detección de objetos de muestra y realizar inferencias de detección de objetos en los dispositivos compatibles. | Genérico | Linux, Windows | No | 
| [Almacén de modelos de clasificación de imágenes de DLR](dlr-image-classification-model-store-component.md) | Componente de modelo que contiene ejemplos de ResNet -50 modelos de clasificación de imágenes como artefactos de Greengrass. | Genérico | Linux, Windows | No | 
| [Almacén de modelos de detección de objetos del DLR](dlr-object-detection-model-store-component.md) | Componente de modelo que contiene ejemplos de modelos de detección de YOLOv3 objetos como artefactos de Greengrass. | Genérico | Linux, Windows | No | 
| [Tiempo de ejecución de DLR](dlr-component.md) | Componente de tiempo de ejecución que contiene una cadena de instalación que se utiliza para instalar el DLR y sus dependencias en el dispositivo principal de Greengrass. | Genérico | Linux, Windows | No | 
| [TensorFlow Clasificación de imágenes Lite](tensorflow-lite-image-classification-component.md) | Componente de inferencia que utiliza el TensorFlow almacén de modelos de clasificación de imágenes de TensorFlow Lite y el componente de tiempo de ejecución de Lite como dependencias para instalar TensorFlow Lite, descargar modelos de clasificación de imágenes de muestra y realizar inferencias de clasificación de imágenes en dispositivos compatibles. | Genérico | Linux, Windows | No | 
| [TensorFlow Detección de objetos Lite](tensorflow-lite-object-detection-component.md) | Componente de inferencia que utiliza la tienda de modelos de detección de objetos de TensorFlow Lite y el componente de tiempo de ejecución de TensorFlow Lite como dependencias para instalar TensorFlow Lite, descargar modelos de detección de objetos de muestra y realizar inferencias de detección de objetos en dispositivos compatibles. | Genérico | Linux, Windows | No | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | Componente de modelo que contiene un modelo MobileNet v1 de muestra como artefacto de Greengrass. | Genérico | Linux, Windows | No | 
| [TensorFlow Tienda de modelos de detección de objetos Lite](tensorflow-lite-object-detection-model-store-component.md) | Componente de modelo que contiene un MobileNet modelo de muestra de detección de disparo único (SSD) como un artefacto de Greengrass. | Genérico | Linux, Windows | No | 
| [TensorFlow Tiempo de ejecución Lite](tensorflow-lite-component.md) | Componente de tiempo de ejecución que contiene un script de instalación que se utiliza para instalar TensorFlow Lite y sus dependencias en el dispositivo principal de Greengrass. | Genérico | Linux, Windows | No | 

# SageMaker Administrador AI Edge
<a name="sagemaker-edge-manager-component"></a>

**importante**  
SageMaker AI Edge Manager se suspendió el 26 de abril de 2024. Para obtener más información sobre cómo seguir implementando sus modelos en dispositivos periféricos, consulte el [final del ciclo de vida de SageMaker AI Edge Manager](https://docs.aws.amazon.com/sagemaker/latest/dg/edge-eol.html).

El componente Amazon SageMaker AI Edge Manager (`aws.greengrass.SageMakerEdgeManager`) instala el binario del agente SageMaker AI Edge Manager. 

SageMaker AI Edge Manager proporciona una gestión de modelos para dispositivos periféricos, de forma que pueda optimizar, proteger, supervisar y mantener los modelos de aprendizaje automático en flotas de dispositivos periféricos. El componente SageMaker AI Edge Manager instala y gestiona el ciclo de vida del agente SageMaker AI Edge Manager en su dispositivo principal. También puede usar SageMaker AI Edge Manager para empaquetar y usar modelos compilados por SageMaker AI NEO como componentes de modelos en los dispositivos principales de Greengrass. Para obtener más información sobre el uso del agente SageMaker AI Edge Manager en su dispositivo principal, consulte. [Utilice Amazon SageMaker AI Edge Manager en los dispositivos principales de Greengrass](use-sagemaker-edge-manager.md)

SageMaker El componente AI Edge Manager v1.3.x instala el agente binario de Edge Manager v1.20220822.836f3023. Para obtener más información sobre las versiones binarias del agente Administrador de periféricos, consulte [Agent administrador de periféricos.](https://docs.aws.amazon.com/sagemaker/latest/dg/edge-device-fleet-about)

**nota**  
El componente AI SageMaker Edge Manager solo está disponible en los siguientes casos Regiones de AWS:  
Este de EE. UU. (Ohio)
Este de EE. UU. (Norte de Virginia)
Oeste de EE. UU. (Oregón)
UE (Fráncfort)
UE (Irlanda)
Asia-Pacífico (Tokio)

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

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

Este componente tiene las siguientes versiones:
+ 1.3.x
+ 1.2.x
+ 1.1.x
+ 1.0.x

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

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="sagemaker-edge-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="sagemaker-edge-manager-component-requirements"></a>

Este componente tiene los siguientes requisitos:<a name="sm-edge-manager-component-reqs"></a>
+ <a name="sm-req-core-device"></a>Un dispositivo principal de Greengrass que se ejecuta en Amazon Linux 2, una plataforma de Linux basada en Debian (x86\$164 o Armv8) o Windows (x86\$164). Si no dispone de una, consulte [Tutorial: Introducción a AWS IoT Greengrass V2](getting-started.md).
+ <a name="sm-req-python"></a>[Python](https://www.python.org/downloads/) 3.6 o posterior, incluido `pip` para la versión de Python, instalado en el dispositivo principal.
+ El [rol del dispositivo de Greengrass](device-service-role.md) se configuró con lo siguiente: 
  + <a name="sm-req-iam-trust-relationship"></a>Una relación de confianza que permite a `credentials.iot.amazonaws.com` y a `sagemaker.amazonaws.com` asumir el rol, como se muestra en el siguiente ejemplo de política de IAM.

    ```
    { 
      "Version": "2012-10-17",		 	 	 
      "Statement": [ 
        { 
          "Effect": "Allow", 
          "Principal": {
            "Service": "credentials.iot.amazonaws.com"
           }, 
          "Action": "sts:AssumeRole" 
        },
        { 
          "Effect": "Allow", 
          "Principal": {
            "Service": "sagemaker.amazonaws.com"
          }, 
          "Action": "sts:AssumeRole" 
        } 
      ] 
    }
    ```
  + <a name="sm-req-iam-sagemanakeredgedevicefleetpolicy"></a>La política gestionada por [AmazonSageMakerEdgeDeviceFleetPolicy](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/service-role/AmazonSageMakerEdgeDeviceFleetPolicy)IAM.
  + <a name="sm-req-iam-s3-putobject"></a>La acción `s3:PutObject`, como se muestra en el siguiente ejemplo de política de IAM.

    ```
    {
      "Version": "2012-10-17",		 	 	 
      "Statement": [
        {
          "Action": [
            "s3:PutObject"
          ],
          "Resource": [
            "*"
          ],
          "Effect": "Allow"
        }
      ]
    }
    ```
+ <a name="sm-req-s3-bucket"></a>Un bucket de Amazon S3 creado en el mismo dispositivo principal de Greengrass Cuenta de AWS y Región de AWS en el mismo que él. SageMaker AI Edge Manager requiere un depósito S3 para crear una flota de dispositivos perimetrales y almacenar datos de muestra derivados de la ejecución de inferencias en su dispositivo. Para más información sobre la creación de buckets de S3, consulte [Introducción a Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/GetStartedWithS3.html).
+ <a name="sm-req-edge-device-fleet"></a>Una flota de dispositivos periféricos de SageMaker IA que utiliza el mismo alias de AWS IoT rol que su dispositivo principal de Greengrass. Para obtener más información, consulte [Creación de una flota de dispositivos de periferia](get-started-with-edge-manager-on-greengrass.md#create-edge-device-fleet-for-greengrass).
+ <a name="sm-req-edge-device"></a>Su dispositivo principal de Greengrass registrado como dispositivo perimetral en su flota de dispositivos SageMaker AI Edge. El nombre del dispositivo perimetral debe coincidir con el AWS IoT nombre del dispositivo principal. Para obtener más información, consulte [Registro del dispositivo principal de Greengrass](get-started-with-edge-manager-on-greengrass.md#register-greengrass-core-device-in-sme).

### Puntos de conexión y puertos
<a name="sagemaker-edge-manager-component-endpoints"></a>

Este componente debe poder realizar solicitudes salientes a los siguientes puntos de conexión y puertos, además de a los puntos de conexión y puertos necesarios para el funcionamiento básico. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).


| punto de enlace | Puerto | Obligatorio | Description (Descripción) | 
| --- | --- | --- | --- | 
|  `edge.sagemaker.region.amazonaws.com`  | 443 | Sí |  Comprueba el estado de registro del dispositivo y envía las métricas a SageMaker AI.  | 
|  `*.s3.amazonaws.com`  | 443 | Sí |  Cargue los datos de captura en el bucket de S3 que especifique. Puede sustituirlos por `*` con el nombre de cada bucket en el que publique los datos.  | 

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

Al implementar un componente, AWS IoT Greengrass también despliega 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](#sagemaker-edge-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**.

------
#### [ 1.3.5 and 1.3.6 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.3.5 y 1.3.6 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=0.0.0 | Rígido | 

------
#### [ 1.3.4 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=0.0.0 | Rígido | 

------
#### [ 1.3.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=0.0.0 | Rígido | 

------
#### [ 1.3.2 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=0.0.0 | Rígido | 

------
#### [ 1.3.1 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=0.0.0 | Rígido | 

------
#### [ 1.1.1 - 1.3.0 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.1.1 a 1.3.0 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=0.0.0 | Rígido | 

------
#### [ 1.1.0 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=0.0.0 | Rígido | 

------
#### [ 1.0.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=0.0.0 | Rígido | 

------
#### [ 1.0.1 and 1.0.2 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.0.1 y 1.0.2 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=0.0.0 | Rígido | 

------
#### [ 1.0.0 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=0.0.0 | Rígido | 

------

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="sagemaker-edge-manager-component-configuration"></a>

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

**nota**  
En esta sección, se describen los parámetros de configuración que se establecen en el componente. Para obtener más información sobre la configuración de SageMaker AI Edge Manager correspondiente, consulte [Edge Manager Agent](https://docs.aws.amazon.com/sagemaker/latest/dg/edge-device-fleet-about.html#edge-device-fleet-running-agent) en la *Guía para desarrolladores de Amazon SageMaker AI*.

`DeviceFleetName`  
El nombre de la flota de dispositivos SageMaker AI Edge Manager que contiene su dispositivo principal Greengrass.   
Al implementar este componente, debe especificar un valor para este parámetro en la actualización de configuración.

`BucketName`  
El nombre del bucket de S3 en donde se cargan los datos de inferencia capturados. El nombre del bucket debe contener la cadena `sagemaker`.   
Si se establece `CaptureDataDestination` en `Cloud`, o si se establece `CaptureDataPeriodicUpload` en `true`, debe especificar un valor para este parámetro en la actualización de la configuración al implementar este componente.  
La captura de datos es una función de SageMaker IA que se utiliza para cargar entradas de inferencia, resultados de inferencias y datos de inferencia adicionales a un bucket de S3 o a un directorio local para futuros análisis. Para obtener más información sobre el uso de datos de captura con SageMaker AI Edge Manager, consulte [Manage Model](https://docs.aws.amazon.com/sagemaker/latest/dg/edge-manage-model.html#edge-manage-model-capturedata) en la *Guía para desarrolladores de Amazon SageMaker AI*.

`CaptureDataBatchSize`  
(Opcional) El tamaño de un lote de solicitudes de datos de captura que gestiona el agente. Este valor debe ser menor que el tamaño de búfer que especifique en `CaptureDataBufferSize`. Le recomendamos que no exceda la mitad del tamaño del búfer.  
El agente gestiona un lote de solicitudes cuando el número de solicitudes del búfer es igual al `CaptureDataBatchSize` número o cuando `CaptureDataPushPeriodSeconds` transcurre el intervalo, lo que ocurra primero.  
Valor predeterminado: `10`

`CaptureDataBufferSize`  
(Opcional) El número máximo de solicitudes de datos de captura almacenadas en el búfer.  
Valor predeterminado: `30`

`CaptureDataDestination`  
(Opcional) El destino en el que se almacenan los datos capturados. Este parámetro puede tener uno de los siguientes valores:  
+ `Cloud`: carga los datos capturados en el bucket de S3 que especifique en `BucketName`.
+ `Disk`: escribe los datos capturados en el directorio de trabajo del componente. 
Si especifica `Disk`, también puede optar por cargar periódicamente los datos capturados en su bucket de S3 configurando `CaptureDataPeriodicUpload` en `true`.  
Valor predeterminado: `Cloud`

`CaptureDataPeriodicUpload`  
(Opcional) Valor de cadena que especifica si se deben cargar periódicamente los datos capturados. Los valores admitidos son `true` y `false`.  
Establezca este parámetro en `true` si ha establecido `CaptureDataDestination` en `Disk` y si también desea que el agente cargue periódicamente los datos capturados en su bucket de S3.  
Valor predeterminado: `false`

`CaptureDataPeriodicUploadPeriodSeconds`  
(Opcional) El intervalo en segundos en el que el agente de SageMaker AI Edge Manager carga los datos capturados en el depósito de S3. Si usa este parámetro, debe establecer `CaptureDataPeriodicUpload` en `true`.  
Valor predeterminado: `8`

`CaptureDataPushPeriodSeconds`  
(Opcional) El intervalo en segundos en el que el agente de SageMaker AI Edge Manager gestiona un lote de solicitudes de datos de captura desde el búfer.   
El agente gestiona un lote de solicitudes cuando el número de solicitudes del búfer es igual al `CaptureDataBatchSize` número o cuando `CaptureDataPushPeriodSeconds` transcurre el intervalo, lo que ocurra primero.  
Valor predeterminado: `4`

`CaptureDataBase64EmbedLimit`  
(Opcional) El tamaño máximo en bytes de los datos capturados que carga el agente de SageMaker AI Edge Manager.  
Valor predeterminado: `3072`

`FolderPrefix`  
(Opcional) El nombre de la carpeta en la que el agente escribe los datos capturados. Si se establece `CaptureDataDestination` en `Disk`, el agente crea la carpeta en el directorio especificado por `CaptureDataDiskPath`. Si se establece `CaptureDataDestination` en `Cloud`, o si se establece `CaptureDataPeriodicUpload` en `true`, el agente crea la carpeta en el bucket de S3.   
Valor predeterminado: `sme-capture`

`CaptureDataDiskPath`  
Esta función está disponible en la versión 1.1.0 y en las versiones posteriores del componente SageMaker AI Edge Manager.  
(Opcional) La ruta a la carpeta en la que el agente crea la carpeta de datos capturados. Si establece `CaptureDataDestination` en `Disk`, el agente crea la carpeta de datos capturados en este directorio. Si no especifica este valor, el agente crea la carpeta de datos capturados en el directorio de trabajo del componente. Utilice el parámetro `FolderPrefix` para especificar el nombre de la carpeta de datos capturados.  
Valor predeterminado: `/greengrass/v2/work/aws.greengrass.SageMakerEdgeManager/capture`

`LocalDataRootPath`  
Esta función está disponible en la versión 1.2.0 y en las versiones posteriores del componente SageMaker AI Edge Manager.  
(Opcional) La ruta en la que este componente almacena los siguientes datos en el dispositivo principal:  
+ La base de datos local para los datos de tiempo de ejecución cuando se configura `DbEnable` en `true`.
+ SageMaker Modelos compilados por AI NEO que este componente descarga automáticamente cuando se configura. `DeploymentEnable` `true`
Valor predeterminado: `/greengrass/v2/work/aws.greengrass.SageMakerEdgeManager`

`DbEnable`  
(Opcional) Puede habilitar este componente para almacenar los datos de tiempo de ejecución en una base de datos local para conservar los datos en caso de que el componente falle o el dispositivo se quede sin alimentación.  
Esta base de datos requiere 5 MB de almacenamiento en el sistema de archivos del dispositivo principal.  
Valor predeterminado: `false`

`DeploymentEnable`  
Esta función está disponible en la versión 1.2.0 y en las versiones posteriores del componente SageMaker AI Edge Manager.  
(Opcional) Puede habilitar este componente para recuperar automáticamente los modelos compilados por SageMaker AI NEO que cargue en Amazon S3. Después de cargar un modelo nuevo en Amazon S3, utilice SageMaker AI Studio o la API de SageMaker IA para implementar el nuevo modelo en este dispositivo principal. Al habilitar esta característica, puede implementar nuevos modelos en los dispositivos principales sin necesidad de crear una implementación de AWS IoT Greengrass .  
Para utilizar esta característica, debe configurar `DbEnable` en `true`. Esta característica utiliza la base de datos local para rastrear los modelos que recupera de la Nube de AWS.
Valor predeterminado: `false`

`DeploymentPollInterval`  
Esta función está disponible en la versión 1.2.0 y en las versiones posteriores del componente SageMaker AI Edge Manager.  
(Opcional) El tiempo (en minutos) entre el que este componente comprueba si hay nuevos modelos para descargar. Esta opción se aplica cuando se configura `DeploymentEnable` en `true`.  
Valor predeterminado: `1440` (un día)

`DLRBackendOptions`  
Esta función está disponible en la versión 1.2.0 y en las versiones posteriores del componente SageMaker AI Edge Manager.  
(Opcional) El tiempo de ejecución del DLR marca el tiempo de ejecución del DLR que utiliza este componente. Puede utilizar la siguiente marca:  
+ `TVM_TENSORRT_CACHE_DIR`: habilita el almacenamiento en caché del modelo TensorRT. Especifique una ruta absoluta a una carpeta existente que tenga permisos de lectura/escritura.
+ `TVM_TENSORRT_CACHE_DISK_SIZE_MB`: asigna el límite superior de la carpeta de caché del modelo TensorRT. Cuando el tamaño del directorio supera este límite, se eliminan los motores en caché que se utilizan menos. El valor predeterminado es 512 MB.
Por ejemplo, puede establecer este parámetro en el siguiente valor para habilitar el almacenamiento en caché del modelo TensorRT y limitar el tamaño de la caché a 800 MB.  

```
TVM_TENSORRT_CACHE_DIR=/data/secured_folder/trt/cache; TVM_TENSORRT_CACHE_DISK_SIZE_MB=800
```

`SagemakerEdgeLogVerbose`  
(Opcional) Valor de cadena que especifica si se debe habilitar el registro de depuración. Los valores admitidos son `true` y `false`.  
Valor predeterminado: `false`

`UnixSocketName`  
(Opcional) La ubicación del descriptor del archivo socket de SageMaker AI Edge Manager en el dispositivo principal.  
Valor predeterminado: `/tmp/aws.greengrass.SageMakerEdgeManager.sock`

**Example Ejemplo: actualización de la combinación de configuraciones**  
El siguiente ejemplo de configuración especifica que el dispositivo principal forma parte del bucket de S3 *MyEdgeDeviceFleet* y que el agente escribe los datos de captura tanto en el dispositivo como en un bucket de S3. Esta configuración también permite el registro de depuración.  

```
{
    "DeviceFleetName": "MyEdgeDeviceFleet",
    "BucketName": "amzn-s3-demo-bucket",
    "CaptureDataDestination": "Disk",
    "CaptureDataPeriodicUpload": "true",
    "SagemakerEdgeLogVerbose": "true"    
}
```

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

Este componente usa el siguiente archivo de registro.

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

```
/greengrass/v2/logs/aws.greengrass.SageMakerEdgeManager.log
```

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

```
C:\greengrass\v2\logs\aws.greengrass.SageMakerEdgeManager.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:\$1greengrass\$1v2* por la ruta a la carpeta AWS IoT Greengrass raíz.

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

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

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

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

------

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

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  1.3.6  |  Versión actualizada del lanzamiento del núcleo de Greengrass 2.12.5.  | 
|  1.3.5  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  1.3.4  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  1.3.3  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  1.3.2  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  1.3.1  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  1.3.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/sagemaker-edge-manager-component.html)  | 
|  1.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/sagemaker-edge-manager-component.html)  | 
|  1.1.1  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  1.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/sagemaker-edge-manager-component.html)  | 
|  1.0.3  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  1.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/sagemaker-edge-manager-component.html)  | 
|  1.0.1  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  1.0.0  |  Versión inicial.  | 

# Clasificación de imágenes de DLR
<a name="dlr-image-classification-component"></a>

El componente de clasificación de imágenes de DLR (`aws.greengrass.DLRImageClassification`) contiene un ejemplo de código de inferencia para realizar inferencias de clasificación de imágenes mediante el [tiempo de ejecución de aprendizaje profundo](https://github.com/neo-ai/neo-ai-dlr) y los modelos resnet-50. Este componente utiliza la variante [Almacén de modelos de clasificación de imágenes de DLR](dlr-image-classification-model-store-component.md) y los componentes [Tiempo de ejecución de DLR](dlr-component.md) como dependencias para descargar el DLR y los modelos de muestra. 

Para utilizar este componente de inferencia con un modelo de DLR entrenado de forma personalizada, [cree una versión personalizada](ml-customization.md#override-public-model-store) del componente almacén de modelos dependiente. Para usar su propio código de inferencia personalizado, puede usar la receta de este componente como plantilla para [crear un componente de inferencia personalizado.](ml-customization.md#create-inference-component)

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

## Versiones
<a name="dlr-image-classification-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.1.x
+ 2.0.x

## Tipo
<a name="dlr-image-classification-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="dlr-image-classification-component-os-support"></a>

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

## Requisitos
<a name="dlr-image-classification-component-requirements"></a>

Este componente tiene los siguientes requisitos:<a name="ml-component-requirements"></a>
+ En los dispositivos principales de Greengrass que ejecutan Amazon Linux 2 o Ubuntu 18.04, se instala en el dispositivo la versión 2.27 o posterior de la [Biblioteca C GNU](https://www.gnu.org/software/libc/) (glibc).
+ En los dispositivos ARMv7L, como Raspberry Pi, las dependencias para OpenCV-Python están instaladas en el dispositivo. Ejecute el siguiente comando para instalar las dependencias.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Los dispositivos Raspberry Pi que ejecutan el sistema operativo Bullseye de Raspberry Pi deben cumplir los siguientes requisitos:
  + NumPy 1.22.4 o una versión posterior instalada en el dispositivo. Raspberry Pi OS Bullseye incluye una versión anterior de NumPy, por lo que puede ejecutar el siguiente comando para actualizar NumPy el dispositivo.

    ```
    pip3 install --upgrade numpy
    ```
  + La pila de cámara antigua habilitada en el dispositivo. El sistema operativo Bullseye de Raspberry Pi incluye una nueva pila de cámara que está habilitada de forma predeterminada y no es compatible, por lo que debe activar la pila de cámara antigua.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Cómo activar la pila de cámara antigua**

    1. Ejecute el siguiente comando para abrir la herramienta de configuración de Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Seleccione **Opciones de interfaz**.

    1. Seleccione **Cámara antigua** para activar la pila de cámara antigua.

    1. Reinicie el Raspberry Pi.

## Dependencias
<a name="dlr-image-classification-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#dlr-image-classification-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.1.13 and 2.1.14 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.13 y 2.1.14 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | Flexible | 
| [Almacén de modelos de clasificación de imágenes de DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.12 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | Flexible | 
| [Almacén de modelos de clasificación de imágenes de DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.11 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | Flexible | 
| [Almacén de modelos de clasificación de imágenes de DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.10 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | Flexible | 
| [Almacén de modelos de clasificación de imágenes de DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.9 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | Flexible | 
| [Almacén de modelos de clasificación de imágenes de DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.8 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | Flexible | 
| [Almacén de modelos de clasificación de imágenes de DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.7 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | Flexible | 
| [Almacén de modelos de clasificación de imágenes de DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.6 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | Flexible | 
| [Almacén de modelos de clasificación de imágenes de DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.4 - 2.1.5 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.4 a 2.1.5 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | Flexible | 
| [Almacén de modelos de clasificación de imágenes de DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | Flexible | 
| [Almacén de modelos de clasificación de imágenes de DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.2 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | Flexible | 
| [Almacén de modelos de clasificación de imágenes de DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.1 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | Flexible | 
| [Almacén de modelos de clasificación de imágenes de DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | \$12.0.0 | Flexible | 
| Almacén de modelos de clasificación de imágenes de DLR | \$12.0.0 | Rígido | 
| DLR | \$11.3.0 | Flexible | 

------

## Configuración
<a name="dlr-image-classification-component-configuration"></a>

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

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

`accessControl`  
<a name="ml-config-accesscontrol-desc"></a>(Opcional) El objeto que contiene la [política de autorización](interprocess-communication.md#ipc-authorization-policies) que permite al componente publicar mensajes en el tema de notificaciones predeterminado.   
Predeterminado:   

```
{
   "aws.greengrass.ipc.mqttproxy": {
      "aws.greengrass.DLRImageClassification:mqttproxy:1": {
         "policyDescription": "Allows access to publish via topic ml/dlr/image-classification.",
         "operations": [
            "aws.greengrass#PublishToIoTCore"
         ],
         "resources": [
            "ml/dlr/image-classification"
         ]
      }
   }
}
```

`PublishResultsOnTopic`  
<a name="ml-config-publishresultsontopic-desc"></a>(Opcional) El tema sobre el que desea publicar los resultados de la inferencia. Si modifica este valor, también debe modificar el valor del `resources` en el parámetro `accessControl` para que coincida con el nombre del tema personalizado.  
Valor predeterminado: `ml/dlr/image-classification`

`Accelerator`  <a name="ml-config-accelerator"></a>
El acelerador que desea usar. Los valores admitidos son `cpu` y `gpu`.  
Los modelos de ejemplo del componente del modelo dependiente solo admiten la aceleración de la CPU. Para usar la aceleración de la GPU con un modelo personalizado diferente, [cree un componente de modelo personalizado](ml-customization.md#override-public-model-store) para anular el componente del modelo público.  
Valor predeterminado: `cpu`

`ImageDirectory`  
<a name="ml-config-imagedirectory-desc"></a>(Opcional) La ruta de la carpeta del dispositivo donde los componentes de inferencia leen las imágenes. Puede modificar este valor en cualquier ubicación del dispositivo a la que tenga read/write acceso.  
<a name="ml-config-imagedirectory-img-default"></a>Valor predeterminado: `/greengrass/v2/packages/artifacts-unarchived/component-name/image_classification/sample_images/`  
Si establece el valor de `UseCamera` en `true`, se ignora este parámetro de configuración. 

`ImageName`  
<a name="ml-config-imagename-desc"></a>(Opcional) El nombre de la imagen que el componente de inferencia utiliza como entrada para realizar una predicción. El componente busca la imagen en la carpeta especificada en `ImageDirectory`. De forma predeterminada, el componente usa la imagen de muestra en el directorio de imágenes predeterminado. AWS IoT Greengrass admite los siguientes formatos de imagen: `jpeg``jpg`,`png`, y`npy`.   
<a name="ml-config-imagename-img-default"></a>Valor predeterminado: `cat.jpeg`  
Si establece el valor de `UseCamera` en `true`, se ignora este parámetro de configuración. 

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
(Opcional) El tiempo en segundos entre cada predicción realizada por el código de inferencia. El código de inferencia de ejemplo se ejecuta indefinidamente y repite sus predicciones en el intervalo de tiempo especificado. Por ejemplo, puede cambiarlo por un intervalo más corto si desea utilizar imágenes tomadas por una cámara para realizar predicciones en tiempo real.  
Valor predeterminado: `3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>(Opcional) Los modelos que se utilizan en el componente de modelo público dependiente. Modifique este parámetro solo si anuló el componente del modelo público por un componente personalizado.   
Predeterminado:  

```
{
    "armv7l": "DLR-resnet50-armv7l-cpu-ImageClassification",
    "aarch64": "DLR-resnet50-aarch64-cpu-ImageClassification",
    "x86_64": "DLR-resnet50-x86_64-cpu-ImageClassification",
    "windows": "DLR-resnet50-win-cpu-ImageClassification"
}
```

`UseCamera`  <a name="ml-config-usecamera"></a>
(Opcional) El valor de cadena que define si se deben utilizar imágenes de una cámara conectada al dispositivo principal de Greengrass. Los valores admitidos son `true` y `false`.  
Si establece este valor en `true`, el código de inferencia de muestra accede a la cámara del dispositivo y ejecuta la inferencia localmente en la imagen capturada. Los valores de los parámetros `ImageName` y `ImageDirectory` se pasan por alto. Asegúrese de que el usuario que ejecuta este componente tenga read/write acceso a la ubicación en la que la cámara almacena las imágenes capturadas.  
Valor predeterminado: `false`  
Al ver la receta de este componente, el parámetro `UseCamera` de configuración no aparece en la configuración predeterminada. Sin embargo, puede modificar el valor de este parámetro en una [actualización de la combinación de configuraciones](update-component-configurations.md) al implementar el componente.   
Si establece `UseCamera` en `true`, también debe crear un enlace simbólico para permitir que el componente de inferencia acceda a la cámara desde el entorno virtual creado por el componente de tiempo de ejecución. Para obtener más información sobre cómo usar una cámara con los componentes de inferencia de muestra, consulte [Actualización de las configuraciones de los componentes](ml-tutorial-image-classification-camera.md).

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

`MLRootPath`  <a name="ml-config-mlrootpath"></a>
<a name="ml-config-mlrootpath-desc"></a>(Opcional) La ruta de la carpeta en los dispositivos principales de Linux donde los componentes de inferencia leen las imágenes y escriben los resultados de la inferencia. Puede modificar este valor en cualquier ubicación del dispositivo a la que tenga read/write acceso el usuario que ejecuta este componente.  
<a name="ml-config-mlrootpath-default-dlr"></a>Valor predeterminado: `/greengrass/v2/work/variant.DLR/greengrass_ml`  
<a name="ml-config-mlrootpath-default-tfl"></a>Valor predeterminado: `/greengrass/v2/work/variant.TensorFlowLite/greengrass_ml`

`Accelerator`  <a name="ml-config-accelerator"></a>
El acelerador que desea usar. Los valores admitidos son `cpu` y `gpu`.  
Los modelos de ejemplo del componente del modelo dependiente solo admiten la aceleración de la CPU. Para usar la aceleración de la GPU con un modelo personalizado diferente, [cree un componente de modelo personalizado](ml-customization.md#override-public-model-store) para anular el componente del modelo público.  
Valor predeterminado: `cpu`

`ImageName`  
<a name="ml-config-imagename-desc-dlr-1.3.0"></a>(Opcional) El nombre de la imagen que el componente de inferencia utiliza como entrada para realizar una predicción. El componente busca la imagen en la carpeta especificada en `ImageDirectory`. La ubicación predeterminada es`MLRootPath/images`. AWS IoT Greengrass admite los siguientes formatos de imagen: `jpeg``jpg`,`png`, y`npy`.   
<a name="ml-config-imagename-img-default"></a>Valor predeterminado: `cat.jpeg`

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
(Opcional) El tiempo en segundos entre cada predicción realizada por el código de inferencia. El código de inferencia de ejemplo se ejecuta indefinidamente y repite sus predicciones en el intervalo de tiempo especificado. Por ejemplo, puede cambiarlo por un intervalo más corto si desea utilizar imágenes tomadas por una cámara para realizar predicciones en tiempo real.  
Valor predeterminado: `3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>(Opcional) Los modelos que se utilizan en el componente de modelo público dependiente. Modifique este parámetro solo si anuló el componente del modelo público por un componente personalizado.   
Predeterminado:  

```
armv7l: "DLR-resnet50-armv7l-cpu-ImageClassification"
x86_64: "DLR-resnet50-x86_64-cpu-ImageClassification"
```

------

## Archivo de registro local
<a name="dlr-image-classification-component-log-file"></a>

Este componente usa el siguiente archivo de registro.

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

```
/greengrass/v2/logs/aws.greengrass.DLRImageClassification.log
```

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

```
C:\greengrass\v2\logs\aws.greengrass.DLRImageClassification.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:\$1greengrass\$1v2* por la ruta a la carpeta AWS IoT Greengrass raíz.

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

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

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

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

------

## Registros de cambios
<a name="dlr-image-classification-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.1.14  | Versión actualizada del lanzamiento del núcleo de Greengrass 2.12.5. | 
|  2.1.13  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.1.12  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.1.11  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.1.10  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.1.9  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.1.8  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.1.7  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.1.6  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.1.5  |  Componente publicado en su totalidad. Regiones de AWS  | 
|  2.1.4  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass. Esta versión no está disponible en Europa (Londres) (`eu-west-2`).  | 
|  2.1.3  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.1.2  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.1.1  |  <a name="changelog-dlr-image-classification-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/dlr-image-classification-component.html)  | 
|  2.0.4  |  Versión inicial.  | 

# Detección de objetos del DLR
<a name="dlr-object-detection-component"></a>

El componente de detección de objetos del DLR (`aws.greengrass.DLRObjectDetection`) contiene un ejemplo de código de inferencia para realizar inferencias de detección de objetos mediante el [tiempo de ejecución de aprendizaje profundo](https://github.com/neo-ai/neo-ai-dlr) y ejemplos de modelos previamente entrenados. Este componente utiliza la variante [Almacén de modelos de detección de objetos del DLR](dlr-object-detection-model-store-component.md) y los componentes [Tiempo de ejecución de DLR](dlr-component.md) como dependencias para descargar el DLR y los modelos de muestra. 

Para utilizar este componente de inferencia con un modelo de DLR entrenado de forma personalizada, [cree una versión personalizada](ml-customization.md#override-public-model-store) del componente almacén de modelos dependiente. Para usar su propio código de inferencia personalizado, puede usar la receta de este componente como plantilla para [crear un componente de inferencia personalizado.](ml-customization.md#create-inference-component)

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

## Versiones
<a name="dlr-object-detection-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.1.x
+ 2.0.x

## Tipo
<a name="dlr-object-detection-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="dlr-object-detection-component-os-support"></a>

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

## Requisitos
<a name="dlr-object-detection-component-requirements"></a>

Este componente tiene los siguientes requisitos:<a name="ml-component-requirements"></a>
+ En los dispositivos principales de Greengrass que ejecutan Amazon Linux 2 o Ubuntu 18.04, se instala en el dispositivo la versión 2.27 o posterior de la [Biblioteca C GNU](https://www.gnu.org/software/libc/) (glibc).
+ En los dispositivos ARMv7L, como Raspberry Pi, las dependencias para OpenCV-Python están instaladas en el dispositivo. Ejecute el siguiente comando para instalar las dependencias.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Los dispositivos Raspberry Pi que ejecutan el sistema operativo Bullseye de Raspberry Pi deben cumplir los siguientes requisitos:
  + NumPy 1.22.4 o una versión posterior instalada en el dispositivo. Raspberry Pi OS Bullseye incluye una versión anterior de NumPy, por lo que puede ejecutar el siguiente comando para actualizar NumPy el dispositivo.

    ```
    pip3 install --upgrade numpy
    ```
  + La pila de cámara antigua habilitada en el dispositivo. El sistema operativo Bullseye de Raspberry Pi incluye una nueva pila de cámara que está habilitada de forma predeterminada y no es compatible, por lo que debe activar la pila de cámara antigua.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Cómo activar la pila de cámara antigua**

    1. Ejecute el siguiente comando para abrir la herramienta de configuración de Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Seleccione **Opciones de interfaz**.

    1. Seleccione **Cámara antigua** para activar la pila de cámara antigua.

    1. Reinicie el Raspberry Pi.

## Dependencias
<a name="dlr-object-detection-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#dlr-object-detection-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.1.13 and 2.1.14 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.13 y 2.1.14 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | Flexible | 
| [Almacén de modelos de detección de objetos del DLR](dlr-object-detection-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.12 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | Flexible | 
| [Almacén de modelos de detección de objetos del DLR](dlr-object-detection-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.11 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | Flexible | 
| [Almacén de modelos de detección de objetos del DLR](dlr-object-detection-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.10 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | Flexible | 
| [Almacén de modelos de detección de objetos del DLR](dlr-object-detection-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.9 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | Flexible | 
| [Almacén de modelos de detección de objetos del DLR](dlr-object-detection-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.8 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | Flexible | 
| [Almacén de modelos de detección de objetos del DLR](dlr-object-detection-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.7 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | Flexible | 
| [Almacén de modelos de detección de objetos del DLR](dlr-object-detection-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.6 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | Flexible | 
| [Almacén de modelos de detección de objetos del DLR](dlr-object-detection-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.4 - 2.1.5 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.4 a 2.1.5 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | Flexible | 
| [Almacén de modelos de detección de objetos del DLR](dlr-object-detection-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | Flexible | 
| [Almacén de modelos de detección de objetos del DLR](dlr-object-detection-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.2 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | Flexible | 
| [Almacén de modelos de detección de objetos del DLR](dlr-object-detection-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

------
#### [ 2.1.1 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | Flexible | 
| [Almacén de modelos de detección de objetos del DLR](dlr-object-detection-model-store-component.md) | \$12.1.0 | Rígido | 
| [DLR](dlr-component.md) | \$11.6.0 | Rígido | 

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | \$12.0.0 | Flexible | 
| Almacén de modelos de detección de objetos del DLR | \$12.0.0 | Rígido | 
| DLR | \$11.3.0 | Flexible | 

------

## Configuración
<a name="dlr-object-detection-component-configuration"></a>

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

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

`accessControl`  
<a name="ml-config-accesscontrol-desc"></a>(Opcional) El objeto que contiene la [política de autorización](interprocess-communication.md#ipc-authorization-policies) que permite al componente publicar mensajes en el tema de notificaciones predeterminado.   
Predeterminado:   

```
{
   "aws.greengrass.ipc.mqttproxy": {
      "aws.greengrass.DLRObjectDetection:mqttproxy:1": {
         "policyDescription": "Allows access to publish via topic ml/dlr/object-detection.",
         "operations": [
            "aws.greengrass#PublishToIoTCore"
         ],
         "resources": [
            "ml/dlr/object-detection"
         ]
      }
   }
}
```

`PublishResultsOnTopic`  
<a name="ml-config-publishresultsontopic-desc"></a>(Opcional) El tema sobre el que desea publicar los resultados de la inferencia. Si modifica este valor, también debe modificar el valor del `resources` en el parámetro `accessControl` para que coincida con el nombre del tema personalizado.  
Valor predeterminado: `ml/dlr/object-detection`

`Accelerator`  <a name="ml-config-accelerator"></a>
El acelerador que desea usar. Los valores admitidos son `cpu` y `gpu`.  
Los modelos de ejemplo del componente del modelo dependiente solo admiten la aceleración de la CPU. Para usar la aceleración de la GPU con un modelo personalizado diferente, [cree un componente de modelo personalizado](ml-customization.md#override-public-model-store) para anular el componente del modelo público.  
Valor predeterminado: `cpu`

`ImageDirectory`  
<a name="ml-config-imagedirectory-desc"></a>(Opcional) La ruta de la carpeta del dispositivo donde los componentes de inferencia leen las imágenes. Puede modificar este valor en cualquier ubicación del dispositivo a la que tenga read/write acceso.  
<a name="ml-config-imagedirectory-obj-default"></a>Valor predeterminado: `/greengrass/v2/packages/artifacts-unarchived/component-name/object_detection/sample_images/`  
Si establece el valor de `UseCamera` en `true`, se ignora este parámetro de configuración. 

`ImageName`  
<a name="ml-config-imagename-desc"></a>(Opcional) El nombre de la imagen que el componente de inferencia utiliza como entrada para realizar una predicción. El componente busca la imagen en la carpeta especificada en `ImageDirectory`. De forma predeterminada, el componente usa la imagen de muestra en el directorio de imágenes predeterminado. AWS IoT Greengrass admite los siguientes formatos de imagen: `jpeg``jpg`,`png`, y`npy`.   
<a name="ml-config-imagename-obj-default"></a>Valor predeterminado: `objects.jpg`  
Si establece el valor de `UseCamera` en `true`, se ignora este parámetro de configuración. 

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
(Opcional) El tiempo en segundos entre cada predicción realizada por el código de inferencia. El código de inferencia de ejemplo se ejecuta indefinidamente y repite sus predicciones en el intervalo de tiempo especificado. Por ejemplo, puede cambiarlo por un intervalo más corto si desea utilizar imágenes tomadas por una cámara para realizar predicciones en tiempo real.  
Valor predeterminado: `3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>(Opcional) Los modelos que se utilizan en el componente de modelo público dependiente. Modifique este parámetro solo si anuló el componente del modelo público por un componente personalizado.   
Predeterminado:  

```
{
    "armv7l": "DLR-yolo3-armv7l-cpu-ObjectDetection",
    "aarch64": "DLR-yolo3-aarch64-gpu-ObjectDetection",
    "x86_64": "DLR-yolo3-x86_64-cpu-ObjectDetection",
    "windows": "DLR-resnet50-win-cpu-ObjectDetection"
}
```

`UseCamera`  <a name="ml-config-usecamera"></a>
(Opcional) El valor de cadena que define si se deben utilizar imágenes de una cámara conectada al dispositivo principal de Greengrass. Los valores admitidos son `true` y `false`.  
Si establece este valor en `true`, el código de inferencia de muestra accede a la cámara del dispositivo y ejecuta la inferencia localmente en la imagen capturada. Los valores de los parámetros `ImageName` y `ImageDirectory` se pasan por alto. Asegúrese de que el usuario que ejecuta este componente tenga read/write acceso a la ubicación en la que la cámara almacena las imágenes capturadas.  
Valor predeterminado: `false`  
Al ver la receta de este componente, el parámetro `UseCamera` de configuración no aparece en la configuración predeterminada. Sin embargo, puede modificar el valor de este parámetro en una [actualización de la combinación de configuraciones](update-component-configurations.md) al implementar el componente.   
Si establece `UseCamera` en `true`, también debe crear un enlace simbólico para permitir que el componente de inferencia acceda a la cámara desde el entorno virtual creado por el componente de tiempo de ejecución. Para obtener más información sobre cómo usar una cámara con los componentes de inferencia de muestra, consulte [Actualización de las configuraciones de los componentes](ml-tutorial-image-classification-camera.md).

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

`MLRootPath`  <a name="ml-config-mlrootpath"></a>
<a name="ml-config-mlrootpath-desc"></a>(Opcional) La ruta de la carpeta en los dispositivos principales de Linux donde los componentes de inferencia leen las imágenes y escriben los resultados de la inferencia. Puede modificar este valor en cualquier ubicación del dispositivo a la que tenga read/write acceso el usuario que ejecuta este componente.  
<a name="ml-config-mlrootpath-default-dlr"></a>Valor predeterminado: `/greengrass/v2/work/variant.DLR/greengrass_ml`  
<a name="ml-config-mlrootpath-default-tfl"></a>Valor predeterminado: `/greengrass/v2/work/variant.TensorFlowLite/greengrass_ml`

`Accelerator`  
No lo modifique. Actualmente, el único valor admitido para el acelerador es `cpu`, porque los modelos de los componentes del modelo dependiente se compilan únicamente para el acelerador de la CPU.

`ImageName`  
<a name="ml-config-imagename-desc-dlr-1.3.0"></a>(Opcional) El nombre de la imagen que el componente de inferencia utiliza como entrada para realizar una predicción. El componente busca la imagen en la carpeta especificada en `ImageDirectory`. La ubicación predeterminada es`MLRootPath/images`. AWS IoT Greengrass admite los siguientes formatos de imagen: `jpeg``jpg`,`png`, y`npy`.   
<a name="ml-config-imagename-obj-default"></a>Valor predeterminado: `objects.jpg`

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
(Opcional) El tiempo en segundos entre cada predicción realizada por el código de inferencia. El código de inferencia de ejemplo se ejecuta indefinidamente y repite sus predicciones en el intervalo de tiempo especificado. Por ejemplo, puede cambiarlo por un intervalo más corto si desea utilizar imágenes tomadas por una cámara para realizar predicciones en tiempo real.  
Valor predeterminado: `3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>(Opcional) Los modelos que se utilizan en el componente de modelo público dependiente. Modifique este parámetro solo si anuló el componente del modelo público por un componente personalizado.   
Predeterminado:  

```
{
    armv7l: "DLR-yolo3-armv7l-cpu-ObjectDetection",
    x86_64: "DLR-yolo3-x86_64-cpu-ObjectDetection"
}
```

------

## Archivo de registro local
<a name="dlr-object-detection-component-log-file"></a>

Este componente usa el siguiente archivo de registro.

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

```
/greengrass/v2/logs/aws.greengrass.DLRObjectDetection.log
```

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

```
C:\greengrass\v2\logs\aws.greengrass.DLRObjectDetection.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:\$1greengrass\$1v2* por la ruta a la carpeta AWS IoT Greengrass raíz.

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

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

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

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

------

## Registros de cambios
<a name="dlr-object-detection-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.1.14  | Versión actualizada del lanzamiento del núcleo de Greengrass 2.12.5. | 
|  2.1.13  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.1.12  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.1.11  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.1.10  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.1.9  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.1.8  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.1.7  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.1.6  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.1.5  |  Componente publicado en su totalidad. Regiones de AWS  | 
|  2.1.4  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass. Esta versión no está disponible en Europa (Londres) (`eu-west-2`).  | 
|  2.1.3  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.1.2  |  <a name="changelog-dlr-object-detection-2.1.2"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/dlr-object-detection-component.html)  | 
|  2.1.1  |  <a name="changelog-dlr-object-detection-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/dlr-object-detection-component.html)  | 
|  2.0.4  |  Versión inicial.  | 

# Almacén de modelos de clasificación de imágenes de DLR
<a name="dlr-image-classification-model-store-component"></a>

El almacén de modelos de clasificación de imágenes del DLR es un componente del modelo de aprendizaje automático que contiene ResNet -50 modelos previamente entrenados como artefactos de Greengrass. [Los modelos previamente entrenados que se utilizan en este componente se obtienen del [GluonCV Model Zoo y se compilan con AI Neo](https://cv.gluon.ai/model_zoo/index.html) Deep Learning Runtime. SageMaker ](https://github.com/neo-ai/neo-ai-dlr)

El componente de inferencia de [clasificación de imágenes de DLR](dlr-image-classification-component.md) utiliza este componente como una dependencia para el origen del modelo. Para utilizar un modelo de DLR entrenado de forma personalizada, [cree una versión personalizada](ml-customization.md#override-public-model-store) de este componente del modelo e incluya el modelo personalizado como un artefacto componente. Puede usar la receta de este componente como plantilla para crear componentes de modelo personalizados. 

**nota**  
El nombre del componente del almacén de modelos de clasificación de imágenes de DLR varía en función de su versión. El nombre del componente para la versión 2.1.x y las versiones posteriores es `variant.DLR.ImageClassification.ModelStore`. El nombre del componente de la versión 2.0.x es `variant.ImageClassification.ModelStore`.

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

## Versiones
<a name="dlr-image-classification-model-store-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.1.x (`variant.DLR.ImageClassification.ModelStore`) 
+ 2.0.x (`variant.ImageClassification.ModelStore`) 

## Tipo
<a name="dlr-image-classification-model-store-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="dlr-image-classification-model-store-component-os-support"></a>

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

## Requisitos
<a name="dlr-image-classification-model-store-component-requirements"></a>

Este componente tiene los siguientes requisitos:<a name="ml-component-requirements"></a>
+ En los dispositivos principales de Greengrass que ejecutan Amazon Linux 2 o Ubuntu 18.04, se instala en el dispositivo la versión 2.27 o posterior de la [Biblioteca C GNU](https://www.gnu.org/software/libc/) (glibc).
+ En los dispositivos ARMv7L, como Raspberry Pi, las dependencias para OpenCV-Python están instaladas en el dispositivo. Ejecute el siguiente comando para instalar las dependencias.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Los dispositivos Raspberry Pi que ejecutan el sistema operativo Bullseye de Raspberry Pi deben cumplir los siguientes requisitos:
  + NumPy 1.22.4 o una versión posterior instalada en el dispositivo. Raspberry Pi OS Bullseye incluye una versión anterior de NumPy, por lo que puede ejecutar el siguiente comando para actualizar NumPy el dispositivo.

    ```
    pip3 install --upgrade numpy
    ```
  + La pila de cámara antigua habilitada en el dispositivo. El sistema operativo Bullseye de Raspberry Pi incluye una nueva pila de cámara que está habilitada de forma predeterminada y no es compatible, por lo que debe activar la pila de cámara antigua.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Cómo activar la pila de cámara antigua**

    1. Ejecute el siguiente comando para abrir la herramienta de configuración de Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Seleccione **Opciones de interfaz**.

    1. Seleccione **Cámara antigua** para activar la pila de cámara antigua.

    1. Reinicie el Raspberry Pi.

## Dependencias
<a name="dlr-image-classification-model-store-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#dlr-image-classification-model-store-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.1.12 - 2.1.14 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.12 y 2.1.13 de este componente.


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

------
#### [ 2.1.11 ]

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


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

------
#### [ 2.1.10 ]

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


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

------
#### [ 2.1.9 ]

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


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

------
#### [ 2.1.8 ]

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


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

------
#### [ 2.1.7 ]

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


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

------
#### [ 2.1.6 ]

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


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

------
#### [ 2.1.5 ]

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


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

------
#### [ 2.1.4 ]

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


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

------
#### [ 2.1.3 ]

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


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

------
#### [ 2.1.2 ]

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


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

------
#### [ 2.1.1 ]

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


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

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | \$12.0.0 | Flexible | 

------

## Configuración
<a name="dlr-image-classification-model-store-component-configuration"></a>

Este componente no tiene ningún parámetro de configuración.

## Archivo de registro local
<a name="dlr-image-classification-model-store-component-log-file"></a>

Este componente no genera registros.

## Registros de cambios
<a name="dlr-image-classification-model-store-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.1.13  | Versión actualizada del lanzamiento del núcleo de Greengrass 2.12.5. | 
|  2.1.12  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.1.11  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.1.10  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.1.9  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.1.8  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.1.7  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.1.6  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.1.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/dlr-image-classification-model-store-component.html)  | 
|  2.1.4  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.1.3  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.1.2  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.1.1  |  <a name="changelog-dlr-image-classification-model-store-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/dlr-image-classification-model-store-component.html)  | 
|  2.0.4  |  Versión inicial.  | 

# Almacén de modelos de detección de objetos del DLR
<a name="dlr-object-detection-model-store-component"></a>

El almacén de modelos de detección de objetos del DLR es un componente del modelo de aprendizaje automático que contiene YOLOv3 modelos previamente entrenados como artefactos de Greengrass. [Los modelos de muestra utilizados en este componente se obtienen del [GluonCV Model Zoo](https://cv.gluon.ai/model_zoo/index.html) y se compilan con SageMaker AI Neo Deep Learning Runtime.](https://github.com/neo-ai/neo-ai-dlr)

El componente de inferencia de [detección de objetos del DLR](dlr-object-detection-component.md) utiliza este componente como dependencia del origen del modelo. Para utilizar un modelo de DLR entrenado de forma personalizada, [cree una versión personalizada](ml-customization.md#override-public-model-store) de este componente del modelo e incluya el modelo personalizado como un artefacto componente. Puede usar la receta de este componente como plantilla para crear componentes de modelo personalizados. 

**nota**  
El nombre del almacén de modelo de detección de objetos del DLR varía en función de su versión. El nombre del componente para la versión 2.1.x y las versiones posteriores es `variant.DLR.ObjectDetection.ModelStore`. El nombre del componente de la versión 2.0.x es `variant.ObjectDetection.ModelStore`.

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

## Versiones
<a name="dlr-object-detection-model-store-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.1.x 
+ 2.0.x

## Tipo
<a name="dlr-object-detection-model-store-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="dlr-object-detection-model-store-component-os-support"></a>

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

## Requisitos
<a name="dlr-object-detection-model-store-component-requirements"></a>

Este componente tiene los siguientes requisitos:<a name="ml-component-requirements"></a>
+ En los dispositivos principales de Greengrass que ejecutan Amazon Linux 2 o Ubuntu 18.04, se instala en el dispositivo la versión 2.27 o posterior de la [Biblioteca C GNU](https://www.gnu.org/software/libc/) (glibc).
+ En los dispositivos ARMv7L, como Raspberry Pi, las dependencias para OpenCV-Python están instaladas en el dispositivo. Ejecute el siguiente comando para instalar las dependencias.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Los dispositivos Raspberry Pi que ejecutan el sistema operativo Bullseye de Raspberry Pi deben cumplir los siguientes requisitos:
  + NumPy 1.22.4 o una versión posterior instalada en el dispositivo. Raspberry Pi OS Bullseye incluye una versión anterior de NumPy, por lo que puede ejecutar el siguiente comando para actualizar NumPy el dispositivo.

    ```
    pip3 install --upgrade numpy
    ```
  + La pila de cámara antigua habilitada en el dispositivo. El sistema operativo Bullseye de Raspberry Pi incluye una nueva pila de cámara que está habilitada de forma predeterminada y no es compatible, por lo que debe activar la pila de cámara antigua.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Cómo activar la pila de cámara antigua**

    1. Ejecute el siguiente comando para abrir la herramienta de configuración de Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Seleccione **Opciones de interfaz**.

    1. Seleccione **Cámara antigua** para activar la pila de cámara antigua.

    1. Reinicie el Raspberry Pi.

## Dependencias
<a name="dlr-object-detection-model-store-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#dlr-object-detection-model-store-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.1.13 and 2.1.14 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.13 y 2.1.14 de este componente.


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

------
#### [ 2.1.12 ]

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


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

------
#### [ 2.1.11 ]

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


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

------
#### [ 2.1.10 ]

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


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

------
#### [ 2.1.9 ]

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


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

------
#### [ 2.1.8 ]

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


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

------
#### [ 2.1.7 ]

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


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

------
#### [ 2.1.5 and 2.1.6 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.5 y 2.1.6 de este componente.


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

------
#### [ 2.1.4 ]

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


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

------
#### [ 2.1.3 ]

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


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

------
#### [ 2.1.2 ]

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


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

------
#### [ 2.1.1 ]

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


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

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | \$12.0.0 | Flexible | 

------

## Configuración
<a name="dlr-object-detection-model-store-component-configuration"></a>

Este componente no tiene ningún parámetro de configuración.

## Archivo de registro local
<a name="dlr-object-detection-model-store-component-log-file"></a>

Este componente no genera registros.

## Registros de cambios
<a name="dlr-object-detection-model-store-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.1.14  |  Versión actualizada del lanzamiento del núcleo de Greengrass 2.12.5.  | 
|  2.1.13  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.1.12  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.1.11  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.1.10  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.1.9  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.1.8  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.1.7  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.1.6  |  Añade un modelo de CPU para solucionar un problema en los dispositivos Armv8 (). AArch64  | 
|  2.1.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/dlr-object-detection-model-store-component.html)  | 
|  2.1.4  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.1.3  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.1.2  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.1.1  |  <a name="changelog-dlr-object-detection-model-store-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/dlr-object-detection-model-store-component.html) | 
|  2.0.4  |  Versión inicial.  | 

# Tiempo de ejecución de DLR
<a name="dlr-component"></a>

El componente de tiempo de ejecución de DLR (`variant.DLR`) contiene un script que instala el [tiempo de ejecución de aprendizaje profundo](https://github.com/neo-ai/neo-ai-dlr) (DLR) y sus dependencias en un entorno virtual del dispositivo. Los componentes [Clasificación de imágenes de DLR](dlr-image-classification-component.md) y [Detección de objetos del DLR](dlr-object-detection-component.md) utilizan este componente como dependencia para instalar el DLR. La versión del componente 1.6.x instala el DLR versión 1.6.0 y la versión del componente 1.3.x instala el DLR versión 1.3.0. 

Para usar un tiempo de ejecución diferente, puede usar la receta de este componente como plantilla para [crear un componente de machine learning personalizado](ml-customization.md). 

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

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

Este componente tiene las siguientes versiones:
+ 1.6.x
+ 1.3.x

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

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="dlr-component-os-support"></a>

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

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

Este componente tiene los siguientes requisitos:<a name="ml-component-requirements"></a>
+ En los dispositivos principales de Greengrass que ejecutan Amazon Linux 2 o Ubuntu 18.04, se instala en el dispositivo la versión 2.27 o posterior de la [Biblioteca C GNU](https://www.gnu.org/software/libc/) (glibc).
+ En los dispositivos ARMv7L, como Raspberry Pi, las dependencias para OpenCV-Python están instaladas en el dispositivo. Ejecute el siguiente comando para instalar las dependencias.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Los dispositivos Raspberry Pi que ejecutan el sistema operativo Bullseye de Raspberry Pi deben cumplir los siguientes requisitos:
  + NumPy 1.22.4 o una versión posterior instalada en el dispositivo. Raspberry Pi OS Bullseye incluye una versión anterior de NumPy, por lo que puede ejecutar el siguiente comando para actualizar NumPy el dispositivo.

    ```
    pip3 install --upgrade numpy
    ```
  + La pila de cámara antigua habilitada en el dispositivo. El sistema operativo Bullseye de Raspberry Pi incluye una nueva pila de cámara que está habilitada de forma predeterminada y no es compatible, por lo que debe activar la pila de cámara antigua.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Cómo activar la pila de cámara antigua**

    1. Ejecute el siguiente comando para abrir la herramienta de configuración de Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Seleccione **Opciones de interfaz**.

    1. Seleccione **Cámara antigua** para activar la pila de cámara antigua.

    1. Reinicie el Raspberry Pi.

### Puntos de conexión y puertos
<a name="dlr-component-endpoints"></a>

De forma predeterminada, este componente utiliza un script de instalación para instalar los paquetes mediante los comandos `apt`, `yum`, `brew` y `pip` en función de la plataforma que utilice el dispositivo principal. Este componente debe poder realizar solicitudes salientes a varios índices y repositorios de paquetes para ejecutar el script de instalación. Para permitir que el tráfico saliente de este componente pase por un proxy o firewall, debe identificar los puntos de conexión de los índices y repositorios de paquetes a los que se conecta el dispositivo principal para realizar la instalación.

Tenga en cuenta lo siguiente al identificar los puntos de conexión necesarios para el script de instalación de este componente:
+ Los puntos de conexión dependen de la plataforma del dispositivo principal. Por ejemplo, un dispositivo principal que ejecuta Ubuntu usa `apt` en lugar de `yum` o `brew`. Además, los dispositivos que usan el mismo índice de paquetes pueden tener listas de orígenes diferentes, por lo que pueden recuperar paquetes de diferentes repositorios.
+ Los puntos de conexión pueden diferir entre varios dispositivos que utilizan el mismo índice de paquetes, ya que cada dispositivo tiene sus propias listas de orígenes que definen dónde recuperar los paquetes.
+ Los puntos de conexión pueden cambiar con el tiempo. Cada índice URLs de paquetes proporciona los repositorios en los que se descargan los paquetes, y el propietario de un paquete puede cambiar lo que proporciona URLs el índice de paquetes.

Para obtener más información sobre las dependencias que instala este componente y sobre cómo deshabilitar el script de instalación, consulte el [UseInstaller](#dlr-component-config-useinstaller-term)parámetro de configuración.

Para obtener más información sobre los puntos de conexión y los puertos necesarios para el funcionamiento básico, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).

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

Al implementar un componente, AWS IoT Greengrass también despliega 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](#dlr-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**.

------
#### [ 1.6.11 - 1.6.16 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.6.11 a 1.6.16 de este componente.


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

------
#### [ 1.6.10 ]

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


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

------
#### [ 1.6.9 ]

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


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

------
#### [ 1.6.8 ]

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


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

------
#### [ 1.6.6 and 1.6.7 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.6.6 y 1.6.7 de este componente.


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

------
#### [ 1.6.4 and 1.6.5 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.6.4 y 1.6.5 de este componente.


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

------
#### [ 1.6.3 ]

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


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

------
#### [ 1.6.2 ]

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


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

------
#### [ 1.6.1 ]

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


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

------
#### [ 1.3.x ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | \$12.0.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="dlr-component-configuration"></a>

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

`MLRootPath`  
<a name="ml-config-mlrootpath-desc"></a>(Opcional) La ruta de la carpeta en los dispositivos principales de Linux donde los componentes de inferencia leen las imágenes y escriben los resultados de la inferencia. Puede modificar este valor en cualquier ubicación del dispositivo a la que tenga read/write acceso el usuario que ejecuta este componente.  
<a name="ml-config-mlrootpath-default-dlr"></a>Valor predeterminado: `/greengrass/v2/work/variant.DLR/greengrass_ml`

`WindowsMLRootPath`  
Esta característica está disponible en la versión 1.6.6 y posteriores de este componente.  
<a name="ml-config-windowsmlrootpath-desc"></a>(Opcional) La ruta de la carpeta del dispositivo principal de Windows donde los componentes de inferencia leen las imágenes y escriben los resultados de la inferencia. Puede modificar este valor en cualquier ubicación del dispositivo a la que tenga read/write acceso el usuario que ejecuta este componente.  
<a name="ml-config-windowsmlrootpath-default-dlr"></a>Valor predeterminado: `C:\greengrass\v2\\work\\variant.DLR\\greengrass_ml`

  `UseInstaller`   
<a name="ml-config-useinstaller-desc-dlr"></a>(Opcional) Valor de cadena que define si se debe utilizar el script de instalación de este componente para instalar el DLR y sus dependencias. Los valores admitidos son `true` y `false`.   <a name="ml-config-useinstaller-libraries-dlr"></a>

Establezca este valor en `false` si desea utilizar un script personalizado para la instalación del DLR o si desea incluir las dependencias del tiempo de ejecución en una imagen de Linux prediseñada. Para usar este componente con los componentes AWS de inferencia de DLR proporcionados, instale las siguientes bibliotecas, incluidas las dependencias, y póngalas `ggc_user` a disposición del usuario del sistema, por ejemplo, el que ejecuta los componentes de ML.
+ [Python](https://www.python.org/downloads/) 3.7 o posterior, incluido `pip` para su versión de Python.
+ Versión 1.6.0 del [tiempo de ejecución de aprendizaje profundo](https://github.com/neo-ai/neo-ai-dlr)
+ [NumPy](https://numpy.org/install/).
+ [OpenCV-Python](https://pypi.org/project/opencv-python/).
+ [SDK para dispositivos con AWS IoT v2 para Python](https://github.com/aws/aws-iot-device-sdk-python-v2).
+ [AWS Python en tiempo de ejecución común (CRT)](https://github.com/awslabs/aws-crt-python).
+ [Picamera](https://picamera.readthedocs.io/en/release-1.13/) (solo para dispositivos Raspberry Pi).
+ [`awscam`módulo](https://docs.aws.amazon.com/deeplens/latest/dg/deeplens-library-awscam-module.html) (para AWS DeepLens dispositivos).
+ libGL (para dispositivos Linux)
<a name="ml-config-useinstaller-default"></a>Valor predeterminado: `true`

## De uso
<a name="dlr-component-usage"></a>

Utilice este componente con el parámetro de configuración `UseInstaller` establecido en `true` para instalar el DLR y sus dependencias en el dispositivo. El componente configura un entorno virtual en el dispositivo que incluye el OpenCV NumPy y las bibliotecas necesarias para el DLR. 

**nota**  <a name="ml-installer-component-usage-note"></a>
El script de instalación de este componente también instala las versiones más recientes de las bibliotecas de sistema adicionales necesarias para configurar el entorno virtual en el dispositivo y utilizar el marco de machine learning instalado. Esto podría actualizar las bibliotecas del sistema existentes en el dispositivo. Consulte la siguiente tabla para ver la lista de bibliotecas que instala este componente para cada sistema operativo compatible. Si desea personalizar este proceso de instalación, defina el parámetro de configuración `UseInstaller` en `false` y desarrolle su propio script de instalación.


| Plataforma | Bibliotecas instaladas en el sistema del dispositivo | Bibliotecas instaladas en el entorno virtual | 
| --- | --- | --- | 
| Armv7l | build-essential, cmake, ca-certificates, git | setuptools, wheel | 
| Amazon Linux 2 | mesa-libGL | Ninguno | 
| Ubuntu | wget | Ninguno | 

Al implementar el componente de inferencia, este componente de tiempo de ejecución comprueba primero si el dispositivo ya tiene instalado el DLR y sus dependencias y, de no ser así, los instala por usted. 

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

Este componente usa el siguiente archivo de registro.

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

```
/greengrass/v2/logs/variant.DLR.log
```

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

```
C:\greengrass\v2\logs\variant.DLR.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:\$1greengrass\$1v2* por la ruta a la AWS IoT Greengrass carpeta raíz.

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

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

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

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

------

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

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  1.6.16  |  Versión actualizada para la versión 2.12.5 del núcleo de Greengrass.  | 
|  1.6.12  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/dlr-component.html)  | 
|  1.6.11  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  1.6.10  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  1.6.9  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  1.6.8  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  1.6.7  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/dlr-component.html)  | 
|  1.6.6  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/dlr-component.html)  | 
|  1.6.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/dlr-component.html)  | 
|  1.6.4  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  1.6.3  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  1.6.2  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  1.6.1  |  <a name="changelog-dlr-1.6.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/dlr-component.html)  | 
|  1.3.2  |  Versión inicial. Instala DLR versión 1.3.0.  | 

# TensorFlow Clasificación de imágenes Lite
<a name="tensorflow-lite-image-classification-component"></a>

El componente de clasificación de imágenes de TensorFlow Lite (`aws.greengrass.TensorFlowLiteImageClassification`) contiene un ejemplo de código de inferencia para realizar inferencias de clasificación de imágenes mediante el tiempo de ejecución de [TensorFlow Lite](https://www.tensorflow.org/lite/guide/python) y un ejemplo de modelo cuantificado MobileNet 1.0 previamente entrenado. Este componente utiliza la variante [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) y los [TensorFlow Tiempo de ejecución Lite](tensorflow-lite-component.md) componentes como dependencias para descargar el motor de ejecución de TensorFlow Lite y el modelo de muestra.

Para usar este componente de inferencia con un modelo TensorFlow Lite personalizado, [cree una versión personalizada del componente de la tienda](ml-customization.md#override-public-model-store) de modelos dependiente. Para usar su propio código de inferencia personalizado, puede usar la receta de este componente como plantilla para [crear un componente de inferencia personalizado.](ml-customization.md#create-inference-component)

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

## Versiones
<a name="tensorflow-lite-image-classification-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.1.x

## Tipo
<a name="tensorflow-lite-image-classification-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="tensorflow-lite-image-classification-component-os-support"></a>

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

## Requisitos
<a name="tensorflow-lite-image-classification-component-requirements"></a>

Este componente tiene los siguientes requisitos:<a name="ml-component-requirements"></a>
+ En los dispositivos principales de Greengrass que ejecutan Amazon Linux 2 o Ubuntu 18.04, se instala en el dispositivo la versión 2.27 o posterior de la [Biblioteca C GNU](https://www.gnu.org/software/libc/) (glibc).
+ En los dispositivos ARMv7L, como Raspberry Pi, las dependencias para OpenCV-Python están instaladas en el dispositivo. Ejecute el siguiente comando para instalar las dependencias.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Los dispositivos Raspberry Pi que ejecutan el sistema operativo Bullseye de Raspberry Pi deben cumplir los siguientes requisitos:
  + NumPy 1.22.4 o una versión posterior instalada en el dispositivo. El sistema operativo Bullseye de Raspberry Pi incluye una versión anterior de NumPy, por lo que puede ejecutar el siguiente comando para actualizar NumPy el dispositivo.

    ```
    pip3 install --upgrade numpy
    ```
  + La pila de cámara antigua habilitada en el dispositivo. El sistema operativo Bullseye de Raspberry Pi incluye una nueva pila de cámara que está habilitada de forma predeterminada y no es compatible, por lo que debe activar la pila de cámara antigua.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Cómo activar la pila de cámara antigua**

    1. Ejecute el siguiente comando para abrir la herramienta de configuración de Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Seleccione **Opciones de interfaz**.

    1. Seleccione **Cámara antigua** para activar la pila de cámara antigua.

    1. Reinicie el Raspberry Pi.

## Dependencias
<a name="tensorflow-lite-image-classification-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#tensorflow-lite-image-classification-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.1.11 and 2.1.12 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.11 y 2.1.12 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.10 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.9 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.8 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.7 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.6 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.5 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.4 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.2 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.1 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------

## Configuración
<a name="tensorflow-lite-image-classification-component-configuration"></a>

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

`accessControl`  
<a name="ml-config-accesscontrol-desc"></a>(Opcional) El objeto que contiene la [política de autorización](interprocess-communication.md#ipc-authorization-policies) que permite al componente publicar mensajes en el tema de notificaciones predeterminado.   
Predeterminado:   

```
{
   "aws.greengrass.ipc.mqttproxy": {
      "aws.greengrass.TensorFlowLiteImageClassification:mqttproxy:1": {
         "policyDescription": "Allows access to publish via topic ml/tflite/image-classification.",
         "operations": [
            "aws.greengrass#PublishToIoTCore"
         ],
         "resources": [
            "ml/tflite/image-classification"
         ]
      }
   }
}
```

`PublishResultsOnTopic`  
<a name="ml-config-publishresultsontopic-desc"></a>(Opcional) El tema sobre el que desea publicar los resultados de la inferencia. Si modifica este valor, también debe modificar el valor del `resources` en el parámetro `accessControl` para que coincida con el nombre del tema personalizado.  
Valor predeterminado: `ml/tflite/image-classification`

`Accelerator`  <a name="ml-config-accelerator"></a>
El acelerador que desea usar. Los valores admitidos son `cpu` y `gpu`.  
Los modelos de ejemplo del componente del modelo dependiente solo admiten la aceleración de la CPU. Para usar la aceleración de la GPU con un modelo personalizado diferente, [cree un componente de modelo personalizado](ml-customization.md#override-public-model-store) para anular el componente del modelo público.  
Valor predeterminado: `cpu`

`ImageDirectory`  
<a name="ml-config-imagedirectory-desc"></a>(Opcional) La ruta de la carpeta del dispositivo donde los componentes de inferencia leen las imágenes. Puede modificar este valor en cualquier ubicación del dispositivo a la que tenga read/write acceso.  
<a name="ml-config-imagedirectory-img-default"></a>Valor predeterminado: `/greengrass/v2/packages/artifacts-unarchived/component-name/image_classification/sample_images/`  
Si establece el valor de `UseCamera` en `true`, se ignora este parámetro de configuración. 

`ImageName`  
<a name="ml-config-imagename-desc"></a>(Opcional) El nombre de la imagen que el componente de inferencia utiliza como entrada para realizar una predicción. El componente busca la imagen en la carpeta especificada en `ImageDirectory`. De forma predeterminada, el componente usa la imagen de muestra en el directorio de imágenes predeterminado. AWS IoT Greengrass admite los siguientes formatos de imagen: `jpeg``jpg`,`png`, y`npy`.   
<a name="ml-config-imagename-img-default"></a>Valor predeterminado: `cat.jpeg`  
Si establece el valor de `UseCamera` en `true`, se ignora este parámetro de configuración. 

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
(Opcional) El tiempo en segundos entre cada predicción realizada por el código de inferencia. El código de inferencia de ejemplo se ejecuta indefinidamente y repite sus predicciones en el intervalo de tiempo especificado. Por ejemplo, puede cambiarlo por un intervalo más corto si desea utilizar imágenes tomadas por una cámara para realizar predicciones en tiempo real.  
Valor predeterminado: `3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>(Opcional) Los modelos que se utilizan en el componente de modelo público dependiente. Modifique este parámetro solo si anuló el componente del modelo público por un componente personalizado.   
Predeterminado:  

```
{
    "model": "TensorFlowLite-Mobilenet"
}
```

`UseCamera`  <a name="ml-config-usecamera"></a>
(Opcional) El valor de cadena que define si se deben utilizar imágenes de una cámara conectada al dispositivo principal de Greengrass. Los valores admitidos son `true` y `false`.  
Si establece este valor en `true`, el código de inferencia de muestra accede a la cámara del dispositivo y ejecuta la inferencia localmente en la imagen capturada. Los valores de los parámetros `ImageName` y `ImageDirectory` se pasan por alto. Asegúrese de que el usuario que ejecuta este componente tenga read/write acceso a la ubicación en la que la cámara almacena las imágenes capturadas.  
Valor predeterminado: `false`  
Al ver la receta de este componente, el parámetro `UseCamera` de configuración no aparece en la configuración predeterminada. Sin embargo, puede modificar el valor de este parámetro en una [actualización de la combinación de configuraciones](update-component-configurations.md) al implementar el componente.   
Si establece `UseCamera` en `true`, también debe crear un enlace simbólico para permitir que el componente de inferencia acceda a la cámara desde el entorno virtual creado por el componente de tiempo de ejecución. Para obtener más información sobre cómo usar una cámara con los componentes de inferencia de muestra, consulte [Actualización de las configuraciones de los componentes](ml-tutorial-image-classification-camera.md).

## Archivo de registro local
<a name="tensorflow-lite-image-classification-component-log-file"></a>

Este componente usa el siguiente archivo de registro.

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

```
/greengrass/v2/logs/aws.greengrass.TensorFlowLiteImageClassification.log
```

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

```
C:\greengrass\v2\logs\aws.greengrass.TensorFlowLiteImageClassification.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:\$1greengrass\$1v2* por la ruta a la carpeta AWS IoT Greengrass raíz.

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

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

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

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

------

## Registros de cambios
<a name="tensorflow-lite-image-classification-component-changelog"></a>

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


|  Versión  |  Cambios  | 
| --- | --- | 
|  2.1.12  |  Versión actualizada del lanzamiento del núcleo de Greengrass 2.12.5.  | 
|  2.1.11  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.1.10  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.1.9  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.1.8  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.1.7  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.1.6  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.1.5  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.1.4  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.1.3  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.1.2  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.1.1  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.1.0  |  Versión inicial.  | 

# TensorFlow Detección de objetos Lite
<a name="tensorflow-lite-object-detection-component"></a>

El componente de detección de objetos TensorFlow Lite (`aws.greengrass.TensorFlowLiteObjectDetection`) contiene un ejemplo de código de inferencia para realizar inferencias de detección de objetos con [TensorFlow Lite](https://www.tensorflow.org/lite/guide/python) y un ejemplo del modelo de detección de un solo disparo (SSD) MobileNet 1.0 previamente entrenado. Este componente utiliza la variante [TensorFlow Tienda de modelos de detección de objetos Lite](tensorflow-lite-object-detection-model-store-component.md) y los [TensorFlow Tiempo de ejecución Lite](tensorflow-lite-component.md) componentes como dependencias para descargar TensorFlow Lite y el modelo de muestra. 

Para usar este componente de inferencia con un modelo TensorFlow Lite personalizado, puede [crear una versión personalizada del componente de la tienda](ml-customization.md#override-public-model-store) de modelos dependiente. Para usar su propio código de inferencia personalizado, use la receta de este componente como plantilla para [crear un componente de inferencia personalizado](ml-customization.md#create-inference-component).

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

## Versiones
<a name="tensorflow-lite-object-detection-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.1.x

## Tipo
<a name="tensorflow-lite-object-detection-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="tensorflow-lite-object-detection-component-os-support"></a>

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

## Requisitos
<a name="tensorflow-lite-object-detection-component-requirements"></a>

Este componente tiene los siguientes requisitos:<a name="ml-component-requirements"></a>
+ En los dispositivos principales de Greengrass que ejecutan Amazon Linux 2 o Ubuntu 18.04, se instala en el dispositivo la versión 2.27 o posterior de la [Biblioteca C GNU](https://www.gnu.org/software/libc/) (glibc).
+ En los dispositivos ARMv7L, como Raspberry Pi, las dependencias para OpenCV-Python están instaladas en el dispositivo. Ejecute el siguiente comando para instalar las dependencias.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Los dispositivos Raspberry Pi que ejecutan el sistema operativo Bullseye de Raspberry Pi deben cumplir los siguientes requisitos:
  + NumPy 1.22.4 o una versión posterior instalada en el dispositivo. Raspberry Pi OS Bullseye incluye una versión anterior de NumPy, por lo que puede ejecutar el siguiente comando para actualizar NumPy el dispositivo.

    ```
    pip3 install --upgrade numpy
    ```
  + La pila de cámara antigua habilitada en el dispositivo. El sistema operativo Bullseye de Raspberry Pi incluye una nueva pila de cámara que está habilitada de forma predeterminada y no es compatible, por lo que debe activar la pila de cámara antigua.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Cómo activar la pila de cámara antigua**

    1. Ejecute el siguiente comando para abrir la herramienta de configuración de Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Seleccione **Opciones de interfaz**.

    1. Seleccione **Cámara antigua** para activar la pila de cámara antigua.

    1. Reinicie el Raspberry Pi.

## Dependencias
<a name="tensorflow-lite-object-detection-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#tensorflow-lite-object-detection-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.1.11 and 2.1.12 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.11 y 2.1.12 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.10 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.9 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.8 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.7 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.6 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.5 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.4 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.2 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------
#### [ 2.1.1 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | Flexible | 
| [TensorFlow Tienda de modelos de clasificación de imágenes Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | Rígido | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | Rígido | 

------

## Configuración
<a name="tensorflow-lite-object-detection-component-configuration"></a>

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

`accessControl`  
<a name="ml-config-accesscontrol-desc"></a>(Opcional) El objeto que contiene la [política de autorización](interprocess-communication.md#ipc-authorization-policies) que permite al componente publicar mensajes en el tema de notificaciones predeterminado.   
Predeterminado:   

```
{
   "aws.greengrass.ipc.mqttproxy": {
      "aws.greengrass.TensorFlowLiteObjectDetection:mqttproxy:1": {
         "policyDescription": "Allows access to publish via topic ml/tflite/object-detection.",
         "operations": [
            "aws.greengrass#PublishToIoTCore"
         ],
         "resources": [
            "ml/tflite/object-detection"
         ]
      }
   }
}
```

`PublishResultsOnTopic`  
<a name="ml-config-publishresultsontopic-desc"></a>(Opcional) El tema sobre el que desea publicar los resultados de la inferencia. Si modifica este valor, también debe modificar el valor del `resources` en el parámetro `accessControl` para que coincida con el nombre del tema personalizado.  
Valor predeterminado: `ml/tflite/object-detection`

`Accelerator`  <a name="ml-config-accelerator"></a>
El acelerador que desea usar. Los valores admitidos son `cpu` y `gpu`.  
Los modelos de ejemplo del componente del modelo dependiente solo admiten la aceleración de la CPU. Para usar la aceleración de la GPU con un modelo personalizado diferente, [cree un componente de modelo personalizado](ml-customization.md#override-public-model-store) para anular el componente del modelo público.  
Valor predeterminado: `cpu`

`ImageDirectory`  
<a name="ml-config-imagedirectory-desc"></a>(Opcional) La ruta de la carpeta del dispositivo donde los componentes de inferencia leen las imágenes. Puede modificar este valor en cualquier ubicación del dispositivo a la que tenga read/write acceso.  
<a name="ml-config-imagedirectory-obj-default"></a>Valor predeterminado: `/greengrass/v2/packages/artifacts-unarchived/component-name/object_detection/sample_images/`  
Si establece el valor de `UseCamera` en `true`, se ignora este parámetro de configuración. 

`ImageName`  
<a name="ml-config-imagename-desc"></a>(Opcional) El nombre de la imagen que el componente de inferencia utiliza como entrada para realizar una predicción. El componente busca la imagen en la carpeta especificada en `ImageDirectory`. De forma predeterminada, el componente usa la imagen de muestra en el directorio de imágenes predeterminado. AWS IoT Greengrass admite los siguientes formatos de imagen: `jpeg``jpg`,`png`, y`npy`.   
<a name="ml-config-imagename-obj-default"></a>Valor predeterminado: `objects.jpg`  
Si establece el valor de `UseCamera` en `true`, se ignora este parámetro de configuración. 

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
(Opcional) El tiempo en segundos entre cada predicción realizada por el código de inferencia. El código de inferencia de ejemplo se ejecuta indefinidamente y repite sus predicciones en el intervalo de tiempo especificado. Por ejemplo, puede cambiarlo por un intervalo más corto si desea utilizar imágenes tomadas por una cámara para realizar predicciones en tiempo real.  
Valor predeterminado: `3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>(Opcional) Los modelos que se utilizan en el componente de modelo público dependiente. Modifique este parámetro solo si anuló el componente del modelo público por un componente personalizado.   
Predeterminado:  

```
{
    "model": "TensorFlowLite-SSD"
}
```

`UseCamera`  <a name="ml-config-usecamera"></a>
(Opcional) El valor de cadena que define si se deben utilizar imágenes de una cámara conectada al dispositivo principal de Greengrass. Los valores admitidos son `true` y `false`.  
Si establece este valor en `true`, el código de inferencia de muestra accede a la cámara del dispositivo y ejecuta la inferencia localmente en la imagen capturada. Los valores de los parámetros `ImageName` y `ImageDirectory` se pasan por alto. Asegúrese de que el usuario que ejecuta este componente tenga read/write acceso a la ubicación en la que la cámara almacena las imágenes capturadas.  
Valor predeterminado: `false`  
Al ver la receta de este componente, el parámetro `UseCamera` de configuración no aparece en la configuración predeterminada. Sin embargo, puede modificar el valor de este parámetro en una [actualización de la combinación de configuraciones](update-component-configurations.md) al implementar el componente.   
Si establece `UseCamera` en `true`, también debe crear un enlace simbólico para permitir que el componente de inferencia acceda a la cámara desde el entorno virtual creado por el componente de tiempo de ejecución. Para obtener más información sobre cómo usar una cámara con los componentes de inferencia de muestra, consulte [Actualización de las configuraciones de los componentes](ml-tutorial-image-classification-camera.md).

**nota**  <a name="ml-config-not-visible-note"></a>
Al ver la receta de este componente, el parámetro `UseCamera` de configuración no aparece en la configuración predeterminada. Sin embargo, puede modificar el valor de este parámetro en una [actualización de la combinación de configuraciones](update-component-configurations.md) al implementar el componente.   
Si establece `UseCamera` en `true`, también debe crear un enlace simbólico para permitir que el componente de inferencia acceda a la cámara desde el entorno virtual creado por el componente de tiempo de ejecución. Para obtener más información sobre cómo usar una cámara con los componentes de inferencia de muestra, consulte [Actualización de las configuraciones de los componentes](ml-tutorial-image-classification-camera.md).

## Archivo de registro local
<a name="tensorflow-lite-object-detection-component-log-file"></a>

Este componente usa el siguiente archivo de registro.

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

```
/greengrass/v2/logs/aws.greengrass.TensorFlowLiteObjectDetection.log
```

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

```
C:\greengrass\v2\logs\aws.greengrass.TensorFlowLiteObjectDetection.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:\$1greengrass\$1v2* por la ruta a la carpeta AWS IoT Greengrass raíz.

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

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

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

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

------

## Registros de cambios
<a name="tensorflow-lite-object-detection-component-changelog"></a>

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


|  Versión  |  Cambios  | 
| --- | --- | 
|  2.1.12  |  Versión actualizada del lanzamiento del núcleo de Greengrass 2.12.5.  | 
|  2.1.11  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.1.10  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.1.9  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.1.8  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.1.7  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.1.6  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.1.5  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.1.4  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.1.3  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.1.2  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.1.1  |  <a name="changelog-tensorflow-lite-object-detection-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/tensorflow-lite-object-detection-component.html)  | 
|  2.1.0  |  Versión inicial.  | 

# TensorFlow Tienda de modelos de clasificación de imágenes Lite
<a name="tensorflow-lite-image-classification-model-store-component"></a>

El almacén de modelos de clasificación de imágenes TensorFlow Lite (`variant.TensorFlowLite.ImageClassification.ModelStore`) es un componente del modelo de aprendizaje automático que contiene un modelo MobileNet v1 previamente entrenado como artefacto de Greengrass. [El modelo de muestra utilizado en este componente se obtiene del [TensorFlowHub](https://tfhub.dev/) y se implementa con Lite. TensorFlow ](https://www.tensorflow.org/lite/guide/python)

El componente [TensorFlow Clasificación de imágenes Lite](tensorflow-lite-image-classification-component.md) de inferencia usa este componente como una dependencia para el origen del modelo. Para usar un modelo TensorFlow Lite personalizado, [cree una versión personalizada](ml-customization.md#override-public-model-store) de este componente del modelo e incluya su modelo personalizado como un artefacto componente. Puede usar la receta de este componente como plantilla para crear componentes de modelo personalizados. 

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

## Versiones
<a name="tensorflow-lite-image-classification-model-store-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.1.x

## Tipo
<a name="tensorflow-lite-image-classification-model-store-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="tensorflow-lite-image-classification-model-store-component-os-support"></a>

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

## Requisitos
<a name="tensorflow-lite-image-classification-model-store-component-requirements"></a>

Este componente tiene los siguientes requisitos:<a name="ml-component-requirements"></a>
+ En los dispositivos principales de Greengrass que ejecutan Amazon Linux 2 o Ubuntu 18.04, se instala en el dispositivo la versión 2.27 o posterior de la [Biblioteca C GNU](https://www.gnu.org/software/libc/) (glibc).
+ En los dispositivos ARMv7L, como Raspberry Pi, las dependencias para OpenCV-Python están instaladas en el dispositivo. Ejecute el siguiente comando para instalar las dependencias.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Los dispositivos Raspberry Pi que ejecutan el sistema operativo Bullseye de Raspberry Pi deben cumplir los siguientes requisitos:
  + NumPy 1.22.4 o una versión posterior instalada en el dispositivo. Raspberry Pi OS Bullseye incluye una versión anterior de NumPy, por lo que puede ejecutar el siguiente comando para actualizar NumPy el dispositivo.

    ```
    pip3 install --upgrade numpy
    ```
  + La pila de cámara antigua habilitada en el dispositivo. El sistema operativo Bullseye de Raspberry Pi incluye una nueva pila de cámara que está habilitada de forma predeterminada y no es compatible, por lo que debe activar la pila de cámara antigua.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Cómo activar la pila de cámara antigua**

    1. Ejecute el siguiente comando para abrir la herramienta de configuración de Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Seleccione **Opciones de interfaz**.

    1. Seleccione **Cámara antigua** para activar la pila de cámara antigua.

    1. Reinicie el Raspberry Pi.

## Dependencias
<a name="tensorflow-lite-image-classification-model-store-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#tensorflow-lite-image-classification-model-store-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.1.11 and 2.1.12  ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.11 y 2.1.12 de este componente.


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

------
#### [ 2.1.10 ]

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


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

------
#### [ 2.1.9 ]

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


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

------
#### [ 2.1.8 ]

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


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

------
#### [ 2.1.7 ]

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


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

------
#### [ 2.1.6 ]

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


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

------
#### [ 2.1.5 ]

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


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

------
#### [ 2.1.4 ]

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


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

------
#### [ 2.1.3 ]

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


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

------
#### [ 2.1.2 ]

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


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

------
#### [ 2.1.1 ]

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


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

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

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


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

------

## Configuración
<a name="tensorflow-lite-image-classification-model-store-component-configuration"></a>

Este componente no tiene ningún parámetro de configuración.

## Archivo de registro local
<a name="tensorflow-lite-image-classification-model-store-component-log-file"></a>

Este componente no genera registros.

## Registros de cambios
<a name="tensorflow-lite-image-classification-model-store-component-changelog"></a>

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


|  Versión  |  Cambios  | 
| --- | --- | 
|  2.1.12  |  Versión actualizada del lanzamiento del núcleo de Greengrass 2.12.5.  | 
|  2.1.11  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.1.10  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.1.9  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.1.8  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.1.7  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.1.6  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.1.5  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.1.4  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.1.3  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.1.2  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.1.1  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.1.0  |  Versión inicial.  | 

# TensorFlow Tienda de modelos de detección de objetos Lite
<a name="tensorflow-lite-object-detection-model-store-component"></a>

El almacén de modelos de detección de objetos TensorFlow Lite (`variant.TensorFlowLite.ObjectDetection.ModelStore`) es un componente del modelo de aprendizaje automático que contiene un modelo de detección de disparo único (SSD) previamente entrenado como un MobileNet artefacto de Greengrass. [El modelo de muestra utilizado en este componente se obtiene del [TensorFlow Hub](https://tfhub.dev/) y se implementa con Lite. TensorFlow ](https://www.tensorflow.org/lite/guide/python)

El componente de inferencia [de detección de objetos de TensorFlow Lite](tensorflow-lite-object-detection-component.md) utiliza este componente como una dependencia para la fuente del modelo. Para usar un modelo TensorFlow Lite personalizado, [cree una versión personalizada](ml-customization.md#override-public-model-store) de este componente del modelo e incluya su modelo personalizado como un artefacto componente. Puede usar la receta de este componente como plantilla para crear componentes de modelo personalizados. 

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

## Versiones
<a name="tensorflow-lite-object-detection-model-store-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.1.x

## Tipo
<a name="tensorflow-lite-object-detection-model-store-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="tensorflow-lite-object-detection-model-store-component-os-support"></a>

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

## Requisitos
<a name="tensorflow-lite-object-detection-model-store-component-requirements"></a>

Este componente tiene los siguientes requisitos:<a name="ml-component-requirements"></a>
+ En los dispositivos principales de Greengrass que ejecutan Amazon Linux 2 o Ubuntu 18.04, se instala en el dispositivo la versión 2.27 o posterior de la [Biblioteca C GNU](https://www.gnu.org/software/libc/) (glibc).
+ En los dispositivos ARMv7L, como Raspberry Pi, las dependencias para OpenCV-Python están instaladas en el dispositivo. Ejecute el siguiente comando para instalar las dependencias.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Los dispositivos Raspberry Pi que ejecutan el sistema operativo Bullseye de Raspberry Pi deben cumplir los siguientes requisitos:
  + NumPy 1.22.4 o una versión posterior instalada en el dispositivo. Raspberry Pi OS Bullseye incluye una versión anterior de NumPy, por lo que puede ejecutar el siguiente comando para actualizar NumPy el dispositivo.

    ```
    pip3 install --upgrade numpy
    ```
  + La pila de cámara antigua habilitada en el dispositivo. El sistema operativo Bullseye de Raspberry Pi incluye una nueva pila de cámara que está habilitada de forma predeterminada y no es compatible, por lo que debe activar la pila de cámara antigua.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Cómo activar la pila de cámara antigua**

    1. Ejecute el siguiente comando para abrir la herramienta de configuración de Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Seleccione **Opciones de interfaz**.

    1. Seleccione **Cámara antigua** para activar la pila de cámara antigua.

    1. Reinicie el Raspberry Pi.

## Dependencias
<a name="tensorflow-lite-object-detection-model-store-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#tensorflow-lite-object-detection-model-store-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.1.11 and 2.1.12 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.11 y 2.1.12 de este componente.


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

------
#### [ 2.1.10 ]

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


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

------
#### [ 2.1.9 ]

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


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

------
#### [ 2.1.8 ]

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


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

------
#### [ 2.1.7 ]

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


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

------
#### [ 2.1.6 ]

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


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

------
#### [ 2.1.5 ]

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


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

------
#### [ 2.1.4 ]

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


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

------
#### [ 2.1.3 ]

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


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

------
#### [ 2.1.2 ]

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


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

------
#### [ 2.1.1 ]

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


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

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

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


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

------

## Configuración
<a name="tensorflow-lite-object-detection-model-store-component-configuration"></a>

Este componente no tiene ningún parámetro de configuración.

## Archivo de registro local
<a name="tensorflow-lite-object-detection-model-store-component-log-file"></a>

Este componente no genera registros.

## Registros de cambios
<a name="tensorflow-lite-object-detection-model-store-component-changelog"></a>

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


|  Versión  |  Cambios  | 
| --- | --- | 
|  2.1.12  |  Versión actualizada del lanzamiento del núcleo de Greengrass 2.12.5.  | 
|  2.1.11  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.1.10  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.1.9  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.1.8  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.1.7  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.1.6  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.1.5  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.1.4  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.1.3  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.1.2  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.1.1  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.1.0  |  Versión inicial.  | 

# TensorFlow Tiempo de ejecución Lite
<a name="tensorflow-lite-component"></a>

El componente de tiempo de ejecución de TensorFlow Lite (`variant.TensorFlowLite`) contiene un script que instala la versión 2.5.0 de [TensorFlow Lite](https://www.tensorflow.org/lite/guide/python) y sus dependencias en un entorno virtual del dispositivo. El TensorFlow componente de [clasificación de imágenes](tensorflow-lite-image-classification-component.md) y [detección de objetos de TensorFlow Lite](tensorflow-lite-object-detection-component.md) utilizan este componente de tiempo de ejecución como una dependencia para instalar Lite. TensorFlow 

**nota**  
TensorFlow El componente de tiempo de ejecución de Lite, versión 2.5.6 y versiones posteriores, reinstala las instalaciones existentes del entorno de ejecución de TensorFlow Lite y sus dependencias. Esta reinstalación ayuda a garantizar que el dispositivo principal ejecute versiones compatibles de Lite y sus dependencias. TensorFlow 

Para usar un tiempo de ejecución diferente, puede usar la receta de este componente como plantilla para [crear un componente de machine learning personalizado](ml-customization.md).

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

## Versiones
<a name="tensorflow-lite-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.5.x

## Tipo
<a name="tensorflow-lite-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="tensorflow-lite-component-os-support"></a>

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

## Requisitos
<a name="tensorflow-lite-component-requirements"></a>

Este componente tiene los siguientes requisitos:<a name="ml-component-requirements"></a>
+ En los dispositivos principales de Greengrass que ejecutan Amazon Linux 2 o Ubuntu 18.04, se instala en el dispositivo la versión 2.27 o posterior de la [Biblioteca C GNU](https://www.gnu.org/software/libc/) (glibc).
+ En los dispositivos ARMv7L, como Raspberry Pi, las dependencias para OpenCV-Python están instaladas en el dispositivo. Ejecute el siguiente comando para instalar las dependencias.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Los dispositivos Raspberry Pi que ejecutan el sistema operativo Bullseye de Raspberry Pi deben cumplir los siguientes requisitos:
  + NumPy 1.22.4 o una versión posterior instalada en el dispositivo. Raspberry Pi OS Bullseye incluye una versión anterior de NumPy, por lo que puede ejecutar el siguiente comando para actualizar NumPy el dispositivo.

    ```
    pip3 install --upgrade numpy
    ```
  + La pila de cámara antigua habilitada en el dispositivo. El sistema operativo Bullseye de Raspberry Pi incluye una nueva pila de cámara que está habilitada de forma predeterminada y no es compatible, por lo que debe activar la pila de cámara antigua.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Cómo activar la pila de cámara antigua**

    1. Ejecute el siguiente comando para abrir la herramienta de configuración de Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Seleccione **Opciones de interfaz**.

    1. Seleccione **Cámara antigua** para activar la pila de cámara antigua.

    1. Reinicie el Raspberry Pi.

### Puntos de conexión y puertos
<a name="tensorflow-lite-component-endpoints"></a>

De forma predeterminada, este componente utiliza un script de instalación para instalar los paquetes mediante los comandos `apt`, `yum`, `brew` y `pip` en función de la plataforma que utilice el dispositivo principal. Este componente debe poder realizar solicitudes salientes a varios índices y repositorios de paquetes para ejecutar el script de instalación. Para permitir que el tráfico saliente de este componente pase por un proxy o firewall, debe identificar los puntos de conexión de los índices y repositorios de paquetes a los que se conecta el dispositivo principal para realizar la instalación.

Tenga en cuenta lo siguiente al identificar los puntos de conexión necesarios para el script de instalación de este componente:
+ Los puntos de conexión dependen de la plataforma del dispositivo principal. Por ejemplo, un dispositivo principal que ejecuta Ubuntu usa `apt` en lugar de `yum` o `brew`. Además, los dispositivos que usan el mismo índice de paquetes pueden tener listas de orígenes diferentes, por lo que pueden recuperar paquetes de diferentes repositorios.
+ Los puntos de conexión pueden diferir entre varios dispositivos que utilizan el mismo índice de paquetes, ya que cada dispositivo tiene sus propias listas de orígenes que definen dónde recuperar los paquetes.
+ Los puntos de conexión pueden cambiar con el tiempo. Cada índice URLs de paquetes proporciona los repositorios en los que se descargan los paquetes, y el propietario de un paquete puede cambiar lo que proporciona URLs el índice de paquetes.

Para obtener más información sobre las dependencias que instala este componente y sobre cómo deshabilitar el script de instalación, consulte el [UseInstaller](#tensorflow-lite-component-config-useinstaller-term)parámetro de configuración.

Para obtener más información sobre los puntos de conexión y los puertos necesarios para el funcionamiento básico, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).

## Dependencias
<a name="tensorflow-lite-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#tensorflow-lite-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.5.14 and 2.5.15 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.5.14 y 2.5.15 de este componente.


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

------
#### [ 2.5.13 ]

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


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

------
#### [ 2.5.12 ]

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


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

------
#### [ 2.5.11 ]

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


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

------
#### [ 2.5.10 ]

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


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

------
#### [ 2.5.9 ]

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


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

------
#### [ 2.5.8 ]

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


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

------
#### [ 2.5.5 - 2.5.7 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.5.5 a 2.5.7 de este componente.


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

------
#### [ 2.5.3 and 2.5.4 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.5.3 y 2.5.4 de este componente.


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

------
#### [ 2.5.2 ]

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


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

------
#### [ 2.5.1 ]

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


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

------
#### [ 2.5.0 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.2.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="tensorflow-lite-component-configuration"></a>

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

`MLRootPath`  
<a name="ml-config-mlrootpath-desc"></a>(Opcional) La ruta de la carpeta en los dispositivos principales de Linux donde los componentes de inferencia leen las imágenes y escriben los resultados de la inferencia. Puede modificar este valor en cualquier ubicación del dispositivo a la que tenga read/write acceso el usuario que ejecuta este componente.  
<a name="ml-config-mlrootpath-default-tfl"></a>Valor predeterminado: `/greengrass/v2/work/variant.TensorFlowLite/greengrass_ml`

`WindowsMLRootPath`  
Esta característica está disponible en la versión 1.6.6 y posteriores de este componente.  
<a name="ml-config-windowsmlrootpath-desc"></a>(Opcional) La ruta de la carpeta del dispositivo principal de Windows donde los componentes de inferencia leen las imágenes y escriben los resultados de la inferencia. Puede modificar este valor en cualquier ubicación del dispositivo a la que tenga read/write acceso el usuario que ejecuta este componente.  
<a name="ml-config-windowsmlrootpath-default-dlr"></a>Valor predeterminado: `C:\greengrass\v2\\work\\variant.DLR\\greengrass_ml`

  `UseInstaller`   
<a name="ml-config-useinstaller-desc-tfl"></a>(Opcional) Valor de cadena que define si se debe utilizar el script de instalación de este componente para instalar TensorFlow Lite y sus dependencias. Los valores admitidos son `true` y `false`.   <a name="ml-config-useinstaller-libraries-tfl"></a>

Establezca este valor `false` si desea utilizar un script personalizado para la instalación de TensorFlow Lite o si desea incluir las dependencias del tiempo de ejecución en una imagen de Linux prediseñada. Para usar este componente con los componentes AWS de inferencia de TensorFlow Lite proporcionados, instale las siguientes bibliotecas, incluidas las dependencias, y póngalas a disposición del usuario del sistema, por ejemplo, el que ejecuta los componentes de `ggc_user` ML.
+ [Python](https://www.python.org/downloads/) 3.8 o posterior, incluso `pip` para su versión de Python
+ [TensorFlow Lite v2.5.0](https://www.tensorflow.org/lite/guide/python)
+ [NumPy](https://numpy.org/install/)
+ [OpenCV-Python](https://pypi.org/project/opencv-python/)
+ [SDK para dispositivos con AWS IoT v2 para Python](https://github.com/aws/aws-iot-device-sdk-python-v2)
+ [AWS Python en tiempo de ejecución común (CRT)](https://github.com/awslabs/aws-crt-python)
+ [Picamera](https://picamera.readthedocs.io/en/release-1.13/) (para dispositivos Raspberry Pi)
+ [`awscam`módulo](https://docs.aws.amazon.com/deeplens/latest/dg/deeplens-library-awscam-module.html) (para AWS DeepLens dispositivos)
+ libGL (para dispositivos Linux)
<a name="ml-config-useinstaller-default"></a>Valor predeterminado: `true`

## De uso
<a name="tensorflow-lite-component-usage"></a>

Utilice este componente con el parámetro de `UseInstaller` configuración establecido en `true` para instalar TensorFlow Lite y sus dependencias en el dispositivo. El componente configura un entorno virtual en el dispositivo que incluye el OpenCV NumPy y las bibliotecas necesarias para Lite. TensorFlow 

**nota**  <a name="ml-installer-component-usage-note"></a>
El script de instalación de este componente también instala las versiones más recientes de las bibliotecas de sistema adicionales necesarias para configurar el entorno virtual en el dispositivo y utilizar el marco de machine learning instalado. Esto podría actualizar las bibliotecas del sistema existentes en el dispositivo. Consulte la siguiente tabla para ver la lista de bibliotecas que instala este componente para cada sistema operativo compatible. Si desea personalizar este proceso de instalación, defina el parámetro de configuración `UseInstaller` en `false` y desarrolle su propio script de instalación.


| Plataforma | Bibliotecas instaladas en el sistema del dispositivo | Bibliotecas instaladas en el entorno virtual | 
| --- | --- | --- | 
| Armv7l | build-essential, cmake, ca-certificates, git | setuptools, wheel | 
| Amazon Linux 2 | mesa-libGL | Ninguno | 
| Ubuntu | wget | Ninguno | 

Al implementar el componente de inferencia, este componente de tiempo de ejecución comprueba primero si el dispositivo ya tiene instalado TensorFlow Lite y sus dependencias. De lo contrario, el componente de tiempo de ejecución los instala automáticamente. 

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

Este componente usa el siguiente archivo de registro.

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

```
/greengrass/v2/logs/variant.TensorFlowLite.log
```

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

```
C:\greengrass\v2\logs\variant.TensorFlowLite.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:\$1greengrass\$1v2* por la ruta a la AWS IoT Greengrass carpeta raíz.

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

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

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

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

------

## Registros de cambios
<a name="tensorflow-lite-component-changelog"></a>

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


|  Versión  |  Cambios  | 
| --- | --- | 
|  2.5.15  |  Versión actualizada del lanzamiento del núcleo de Greengrass 2.12.5.  | 
|  2.5.14  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.5.13  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.5.12  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.5.11  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.5.10  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.5.9  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.5.8  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.5.7  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/tensorflow-lite-component.html)  | 
|  2.5.6  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/tensorflow-lite-component.html)  | 
|  2.5.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/tensorflow-lite-component.html)  | 
|  2.5.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/tensorflow-lite-component.html)  | 
|  2.5.3  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.5.2  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.5.1  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.5.0  |  Versión inicial.  | 

# Adaptador de protocolo Modbus-RTU
<a name="modbus-rtu-protocol-adapter-component"></a>

El componente adaptador de protocolo Modbus-RTU (`aws.greengrass.Modbus`) recopila información de los dispositivos Modbus RTU locales.

Para solicitar información a un dispositivo Modbus RTU local con este componente, publique un mensaje en el tema al que está suscrito este componente. En el mensaje, especifique la solicitud de Modbus RTU que se va a enviar a un dispositivo. A continuación, este componente publica una respuesta que contiene el resultado de la solicitud de Modbus RTU.

**nota**  
Este componente proporciona una funcionalidad similar a la del conector adaptador del protocolo Modbus RTU de la V1. AWS IoT Greengrass Para obtener más información, consulte [Conector del adaptador de protocolo Modbus RTU](https://docs.aws.amazon.com/greengrass/latest/developerguide/modbus-protocol-adapter-connector.html) en la *Guía para desarrolladores de AWS IoT Greengrass V1*.

**Topics**
+ [Versiones](#modbus-rtu-protocol-adapter-component-versions)
+ [Tipo](#modbus-rtu-protocol-adapter-component-type)
+ [Sistema operativo](#modbus-rtu-protocol-adapter-component-os-support)
+ [Requisitos](#modbus-rtu-protocol-adapter-component-requirements)
+ [Dependencias](#modbus-rtu-protocol-adapter-component-dependencies)
+ [Configuración](#modbus-rtu-protocol-adapter-component-configuration)
+ [Datos de entrada](#modbus-rtu-protocol-adapter-component-input-data)
+ [Datos de salida](#modbus-rtu-protocol-adapter-component-output-data)
+ [Solicitudes y respuestas de Modbus RTU](#modbus-rtu-protocol-adapter-component-requests-responses)
+ [Archivo de registro local](#modbus-rtu-protocol-adapter-component-log-file)
+ [Licencias](#modbus-rtu-protocol-adapter-component-licenses)
+ [Registros de cambios](#modbus-rtu-protocol-adapter-component-changelog)

## Versiones
<a name="modbus-rtu-protocol-adapter-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.1.x
+ 2.0.x

## Tipo
<a name="modbus-rtu-protocol-adapter-component-type"></a>

<a name="public-component-type-lambda"></a>Este <a name="public-component-type-lambda-phrase"></a>componente es un componente de Lambda (`aws.greengrass.lambda`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta la función de Lambda de este componente mediante el [componente lanzador de Lambda](lambda-launcher-component.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="modbus-rtu-protocol-adapter-component-os-support"></a>

Este componente solo se puede instalar en los dispositivos principales de Linux.

## Requisitos
<a name="modbus-rtu-protocol-adapter-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ <a name="core-device-lambda-function-requirements"></a>El dispositivo principal debe cumplir los requisitos para ejecutar las funciones de Lambda. Si desea que el dispositivo principal ejecute funciones de Lambda en contenedores, el dispositivo debe cumplir los requisitos para hacerlo. Para obtener más información, consulte [Requisitos de la función de Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ <a name="public-component-python3-requirement"></a>Versión 3.7 de [Python](https://www.python.org/) instalada en el dispositivo principal y agregada a la variable de entorno PATH.
+ Una conexión física entre el dispositivo AWS IoT Greengrass principal y los dispositivos Modbus. El dispositivo principal debe ser conectado físicamente a la red de Modbus RTU a través de un puerto de serie (por ejemplo, un puerto USB).
+ <a name="connector-component-legacy-subscription-router-dependency"></a>Para recibir los datos de salida de este componente, debe combinar la siguiente actualización de configuración para el [componente del enrutador de suscripción antiguo](legacy-subscription-router-component.md) (`aws.greengrass.LegacySubscriptionRouter`) cuando implemente este componente. Esta configuración especifica el tema en el que este componente publica las respuestas.

------
#### [ Legacy subscription router v2.1.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-modbus": {
        "id": "aws-greengrass-modbus",
        "source": "component:aws.greengrass.Modbus",
        "subject": "modbus/adapter/response",
        "target": "cloud"
      }
    }
  }
  ```

------
#### [ Legacy subscription router v2.0.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-modbus": {
        "id": "aws-greengrass-modbus",
        "source": "arn:aws:lambda:region:aws:function:aws-greengrass-modbus:version",
        "subject": "modbus/adapter/response",
        "target": "cloud"
      }
    }
  }
  ```<a name="connector-component-legacy-subscription-router-dependency-replace"></a>
  + *region*Sustitúyalo por el Región de AWS que utilice.
  + *version*Sustitúyala por la versión de la función Lambda que ejecuta este componente. Para encontrar la versión de la función de Lambda, debe ver la receta de la versión de este componente que desee implementar. Abra la página de detalles de este componente en la [consola de AWS IoT Greengrass](https://console.aws.amazon.com//greengrass) y busque el par clave-valor de la **función de Lambda**. Este par clave-valor contiene el nombre y la versión de la función de Lambda.

**importante**  <a name="connector-component-legacy-subscription-router-dependency-note"></a>
Debe actualizar la versión de la función de Lambda en el enrutador de suscripción antiguo cada vez que implemente este componente. Esto garantiza que utilice la versión correcta de la función de Lambda para la versión del componente que implemente.

------

  <a name="connector-component-create-deployments"></a>Para obtener más información, consulte [Crear implementaciones](create-deployments.md).
+ Se admite la ejecución del adaptador de protocolo Modbus-RTU en una VPC.

## Dependencias
<a name="modbus-rtu-protocol-adapter-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#modbus-rtu-protocol-adapter-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.1.11 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.16.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.10 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 =2.0.0 <2.15.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.9 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.14.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.8 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.7 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.6 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.4 and 2.1.5 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.4 y 2.1.5 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.2 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.1 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.8 and 2.1.0 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.8 y 2.1.0 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.7 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.6 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.4 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.3 <2.1.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | >=1.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | >=1.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=1.0.0  | Rígido | 

------

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="modbus-rtu-protocol-adapter-component-configuration"></a>

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

**nota**  <a name="connector-component-lambda-parameters"></a>
La configuración predeterminada de este componente incluye los parámetros de la función de Lambda. Le recomendamos que edite solo los siguientes parámetros para configurar este componente en sus dispositivos.

------
#### [ v2.1.x ]

`lambdaParams`  
Un objeto que contiene los parámetros de la función de Lambda de este componente. Este objeto contiene la siguiente información:    
`EnvironmentVariables`  
Un objeto que contiene los parámetros de la función de Lambda. Este objeto contiene la siguiente información:    
`ModbusLocalPort`  <a name="modbus-rtu-protocol-adapter-configuration-modbuslocalport"></a>
La ruta absoluta del puerto de serie físico de Modbus en el dispositivo principal, como `/dev/ttyS2`.  
Para ejecutar este componente en un contenedor, debe definir esta ruta como un dispositivo del sistema (en `containerParams.devices`) al que pueda acceder el componente. Este componente se ejecuta en un contenedor de forma predeterminada.  
Este componente debe tener acceso al dispositivo. read/write   
`ModbusBaudRate`  
(Opcional) Un valor de cadena que especifica la velocidad en baudios para la comunicación en serie con los dispositivos Modbus TCP locales.  
Valor predeterminado: `9600`  
`ModbusByteSize`  
(Opcional) Un valor de cadena que especifica el tamaño de un byte en la comunicación en serie con los dispositivos Modbus TCP locales. Elija `5`, `6`, `7` o `8` bits.  
Valor predeterminado: `8`  
`ModbusParity`  
(Opcional) El modo de paridad que se utilizará para verificar la integridad de los datos en la comunicación en serie con los dispositivos Modbus TCP locales.  
+ `E`: verifique la integridad de los datos con una paridad uniforme.
+ `O`: verifique la integridad de los datos con una paridad impar.
+ `N`: no verifique la integridad de los datos.
Valor predeterminado: `N`  
`ModbusStopBits`  
(Opcional) Un valor de cadena que especifica el número de bits que indican el final de un byte en la comunicación en serie con los dispositivos Modbus TCP locales.  
Valor predeterminado: `1`

`containerMode`  <a name="modbus-rtu-protocol-adapter-configuration-containermode"></a>
(Opcional) El modo de almacenamiento en contenedores de este componente. Puede elegir entre las siguientes opciones:  
+ `GreengrassContainer`— El componente se ejecuta en un entorno de ejecución aislado dentro del AWS IoT Greengrass contenedor.

  Si especifica esta opción, debe especificar un dispositivo del sistema (en `containerParams.devices`) para que el contenedor acceda al dispositivo Modbus.
+ `NoContainer`: el componente no se ejecuta en un entorno de tiempo de ejecución aislado.
Valor predeterminado: `GreengrassContainer`

`containerParams`  <a name="modbus-rtu-protocol-adapter-configuration-containerparams"></a>
<a name="connector-component-container-params-description"></a>(Opcional) Un objeto que contiene los parámetros de contenedor de este componente. El componente utiliza estos parámetros si se especifica `GreengrassContainer` para `containerMode`.  
Este objeto contiene la siguiente información:    
`memorySize`  
<a name="connector-component-container-params-memory-size-description"></a>(Opcional) La cantidad de memoria (en kilobytes) que se va a asignar al componente.  
Predeterminado de 512 MB (525 312 KB).  
`devices`  
(Opcional) Objeto que especifica los dispositivos del sistema a los que puede acceder el componente en un contenedor.  
Para ejecutar este componente en un contenedor, debe especificar el dispositivo del sistema que configura en la variable de entorno `ModbusLocalPort`.
Este objeto contiene la siguiente información:    
`0`: se trata de un índice de matriz en forma de cadena.  
Un objeto que contiene la siguiente información:    
`path`  
La ruta al dispositivo del sistema en el dispositivo principal. Debe tener el mismo valor que el valor para el que se configure para `ModbusLocalPort`.  
`permission`  
(Opcional) El permiso para acceder al dispositivo del sistema desde el contenedor. Este valor debe ser `rw` el que especifique que el componente tiene read/write acceso al dispositivo del sistema.  
Valor predeterminado: `rw`  
`addGroupOwner`  
(Opcional) Si desea agregar o no el grupo de sistemas que ejecuta el componente como propietario del dispositivo del sistema.  
Valor predeterminado: `true`

`pubsubTopics`  <a name="connector-component-pubsub-topics-parameter"></a>
(Opcional) Un objeto que contiene los temas a los que el componente se suscribe para recibir mensajes. Puede especificar cada tema y si el componente se suscribe a los temas de MQTT AWS IoT Core o a los temas locales publish/subscribe .  
Este objeto contiene la siguiente información:    
`0`: se trata de un índice de matriz en forma de cadena.  
Un objeto que contiene la siguiente información:    
`type`  
(Opcional) El tipo de publish/subscribe mensajes que utiliza este componente para suscribirse a los mensajes. Puede elegir entre las siguientes opciones:  
+ `PUB_SUB` — Suscribirse a la mensajería de publicación/suscripción local. Si elige esta opción, el tema no podrá contener caracteres comodín de MQTT. Para obtener más información sobre cómo enviar mensajes desde un componente personalizado cuando especifique esta opción, consulte [Publicar/suscribir mensajes locales](ipc-publish-subscribe.md).
+ `IOT_CORE`— Suscríbase a los mensajes de AWS IoT Core MQTT. Si elige esta opción, el tema puede contener caracteres comodín de MQTT. Para obtener más información sobre cómo enviar mensajes desde componentes personalizados cuando especifique esta opción, consulte [Publicar/suscribir mensajes MQTT AWS IoT Core](ipc-iot-core-mqtt.md).
Valor predeterminado: `PUB_SUB`  
`topic`  
(Opcional) El tema al que se suscribe el componente para recibir mensajes. Si especifica `IotCore` para `type`, puede usar los comodines de MQTT (`+` y `#`) en este tema.

**Example Ejemplo: actualización de la combinación de configuraciones (modo en contenedor)**  <a name="modbus-rtu-protocol-adapter-configuration-example-container-mode"></a>

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "ModbusLocalPort": "/dev/ttyS2"
    }
  },
  "containerMode": "GreengrassContainer",
  "containerParams": {
    "devices": {
      "0": {
        "path": "/dev/ttyS2",
        "permission": "rw",
        "addGroupOwner": true
      }
    }
  }
}
```

**Example Ejemplo: actualización de la combinación de configuraciones (modo sin contenedor)**  <a name="modbus-rtu-protocol-adapter-configuration-example-no-container-mode"></a>

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "ModbusLocalPort": "/dev/ttyS2"
    }
  },
  "containerMode": "NoContainer"
}
```

------
#### [ v2.0.x ]

`lambdaParams`  
Un objeto que contiene los parámetros de la función de Lambda de este componente. Este objeto contiene la siguiente información:    
`EnvironmentVariables`  
Un objeto que contiene los parámetros de la función de Lambda. Este objeto contiene la siguiente información:    
`ModbusLocalPort`  <a name="modbus-rtu-protocol-adapter-configuration-modbuslocalport"></a>
La ruta absoluta del puerto de serie físico de Modbus en el dispositivo principal, como `/dev/ttyS2`.  
Para ejecutar este componente en un contenedor, debe definir esta ruta como un dispositivo del sistema (en `containerParams.devices`) al que pueda acceder el componente. Este componente se ejecuta en un contenedor de forma predeterminada.  
Este componente debe tener read/write acceso al dispositivo.

`containerMode`  <a name="modbus-rtu-protocol-adapter-configuration-containermode"></a>
(Opcional) El modo de almacenamiento en contenedores de este componente. Puede elegir entre las siguientes opciones:  
+ `GreengrassContainer`— El componente se ejecuta en un entorno de ejecución aislado dentro del AWS IoT Greengrass contenedor.

  Si especifica esta opción, debe especificar un dispositivo del sistema (en `containerParams.devices`) para que el contenedor acceda al dispositivo Modbus.
+ `NoContainer`: el componente no se ejecuta en un entorno de tiempo de ejecución aislado.
Valor predeterminado: `GreengrassContainer`

`containerParams`  <a name="modbus-rtu-protocol-adapter-configuration-containerparams"></a>
<a name="connector-component-container-params-description"></a>(Opcional) Un objeto que contiene los parámetros de contenedor de este componente. El componente utiliza estos parámetros si se especifica `GreengrassContainer` para `containerMode`.  
Este objeto contiene la siguiente información:    
`memorySize`  
<a name="connector-component-container-params-memory-size-description"></a>(Opcional) La cantidad de memoria (en kilobytes) que se va a asignar al componente.  
Predeterminado de 512 MB (525 312 KB).  
`devices`  
(Opcional) Objeto que especifica los dispositivos del sistema a los que puede acceder el componente en un contenedor.  
Para ejecutar este componente en un contenedor, debe especificar el dispositivo del sistema que configura en la variable de entorno `ModbusLocalPort`.
Este objeto contiene la siguiente información:    
`0`: se trata de un índice de matriz en forma de cadena.  
Un objeto que contiene la siguiente información:    
`path`  
La ruta al dispositivo del sistema en el dispositivo principal. Debe tener el mismo valor que el valor para el que se configure para `ModbusLocalPort`.  
`permission`  
(Opcional) El permiso para acceder al dispositivo del sistema desde el contenedor. Este valor debe ser `rw` el que especifique que el componente tiene read/write acceso al dispositivo del sistema.  
Valor predeterminado: `rw`  
`addGroupOwner`  
(Opcional) Si desea agregar o no el grupo de sistemas que ejecuta el componente como propietario del dispositivo del sistema.  
Valor predeterminado: `true`

`pubsubTopics`  <a name="connector-component-pubsub-topics-parameter"></a>
(Opcional) Un objeto que contiene los temas a los que el componente se suscribe para recibir mensajes. Puede especificar cada tema y si el componente se suscribe a los temas de MQTT AWS IoT Core o a los temas locales publish/subscribe .  
Este objeto contiene la siguiente información:    
`0`: se trata de un índice de matriz en forma de cadena.  
Un objeto que contiene la siguiente información:    
`type`  
(Opcional) El tipo de publish/subscribe mensajes que utiliza este componente para suscribirse a los mensajes. Puede elegir entre las siguientes opciones:  
+ `PUB_SUB` — Suscribirse a la mensajería de publicación/suscripción local. Si elige esta opción, el tema no podrá contener caracteres comodín de MQTT. Para obtener más información sobre cómo enviar mensajes desde un componente personalizado cuando especifique esta opción, consulte [Publicar/suscribir mensajes locales](ipc-publish-subscribe.md).
+ `IOT_CORE`— Suscríbase a los mensajes de AWS IoT Core MQTT. Si elige esta opción, el tema puede contener caracteres comodín de MQTT. Para obtener más información sobre cómo enviar mensajes desde componentes personalizados cuando especifique esta opción, consulte [Publicar/suscribir mensajes MQTT AWS IoT Core](ipc-iot-core-mqtt.md).
Valor predeterminado: `PUB_SUB`  
`topic`  
(Opcional) El tema al que se suscribe el componente para recibir mensajes. Si especifica `IotCore` para `type`, puede usar los comodines de MQTT (`+` y `#`) en este tema.

**Example Ejemplo: actualización de la combinación de configuraciones (modo en contenedor)**  <a name="modbus-rtu-protocol-adapter-configuration-example-container-mode"></a>

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "ModbusLocalPort": "/dev/ttyS2"
    }
  },
  "containerMode": "GreengrassContainer",
  "containerParams": {
    "devices": {
      "0": {
        "path": "/dev/ttyS2",
        "permission": "rw",
        "addGroupOwner": true
      }
    }
  }
}
```

**Example Ejemplo: actualización de la combinación de configuraciones (modo sin contenedor)**  <a name="modbus-rtu-protocol-adapter-configuration-example-no-container-mode"></a>

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "ModbusLocalPort": "/dev/ttyS2"
    }
  },
  "containerMode": "NoContainer"
}
```

------

## Datos de entrada
<a name="modbus-rtu-protocol-adapter-component-input-data"></a>

Este componente acepta los parámetros de solicitud de Modbus RTU relacionados con el tema siguiente y envía la solicitud de Modbus RTU al dispositivo. <a name="connector-component-local-publish"></a>De forma predeterminada, este componente se suscribe a los mensajes locales publish/subscribe . Para obtener más información sobre cómo publicar mensajes en este componente desde sus componentes personalizados, consulte [Publicar/suscribir mensajes locales](ipc-publish-subscribe.md). 

**Tema predeterminado (publicación/suscripción local):** `modbus/adapter/request`

<a name="connector-component-input-properties"></a>El mensaje acepta las siguientes propiedades. Los mensajes de entrada deben tener un formato JSON válido.

`request`  
Los parámetros de la solicitud de Modbus RTU que se van a enviar.  
La forma del mensaje de solicitud depende del tipo de solicitud de Modbus RTU que representa. Las siguientes propiedades son necesarias para todas las solicitudes.  
Tipo: `object` que contiene la siguiente información:    
`operation`  
El nombre de la operación que se va a ejecutar. Por ejemplo, especifique `ReadCoilsRequest` para leer las bobinas de un dispositivo Modbus RTU. Para obtener más información acerca de las operaciones permitidas, consulte [Solicitudes y respuestas de Modbus RTU](#modbus-rtu-protocol-adapter-component-requests-responses).  
Tipo: `string`  
`device`  
El dispositivo de destino de la solicitud.  
El valor debe ser un número entero entre `0` y `247`.  
Tipo: `integer`
El resto de los parámetros que se incluirán en la solicitud dependen de la operación. Este componente gestiona la [comprobación de redundancia cíclica (CRC)](https://en.wikipedia.org/wiki/Cyclic_redundancy_check) para verificar las solicitudes de datos por usted.  
Si la solicitud incluye una propiedad `address`, debe especificar su valor como un número entero. Por ejemplo, `"address": 1`.

`id`  <a name="connector-component-input-property-id"></a>
Un ID arbitrario para la solicitud. Use esta propiedad para asignar una solicitud de entrada a una respuesta de salida. Si especifica esta propiedad, el componente establece la propiedad `id` en el objeto de respuesta para este valor.  
Tipo: `string`

**Example Ejemplo de entrada: Solicitud de lectura de salidas digitales (coils)**  

```
{
  "request": {
    "operation": "ReadCoilsRequest",
    "device": 1,
    "address": 1,
    "count": 1
  },
  "id": "MyRequest"
}
```

## Datos de salida
<a name="modbus-rtu-protocol-adapter-component-output-data"></a>

 <a name="connector-component-output-data"></a>Este componente publica las respuestas como datos de salida sobre el siguiente tema MQTT de forma predeterminada. Debe especificar este tema como parte de `subject` en la configuración del [componente antiguo del enrutador de suscripciones](legacy-subscription-router-component.md). Para obtener más información sobre cómo suscribirse a los mensajes sobre este tema en sus componentes personalizados, consulte [Publicar/suscribir mensajes MQTT AWS IoT Core](ipc-iot-core-mqtt.md). 

**Tema predeterminado (AWS IoT Core MQTT):** `modbus/adapter/response`

La forma del mensaje de respuesta depende de la operación de solicitud y del estado de la respuesta. Para ver ejemplos, consulte [Solicitudes y respuestas de ejemplo](#modbus-rtu-protocol-adapter-component-examples).

Cada respuesta incluye las siguientes propiedades:

`response`  
La respuesta del dispositivo Modbus RTU.  
Tipo: `object` que contiene la siguiente información:    
`status`  
El estado de la solicitud. El estado puede ser uno de los siguientes valores:  
+ `Success`: la solicitud es válida, el componente envía la solicitud a la red de Modbus RTU y la red de Modbus RTU devuelve una respuesta.
+ `Exception`: la solicitud es válida, el componente envía la solicitud a la red de Modbus RTU y la red de Modbus RTU devuelve una excepción. Para obtener más información, consulte [Estado de respuesta: excepción](#modbus-rtu-protocol-adapter-component-response-exception).
+ `No Response`: la solicitud no era válida y el componente detecta el error antes de que la solicitud se envíe a través de la red de Modbus RTU. Para obtener más información, consulte [Estado de respuesta: sin respuesta](#modbus-rtu-protocol-adapter-component-response-noresponse).  
`operation`  
La operación que solicitó el componente.  
`device`  
El dispositivo al que el componente envió la solicitud.  
`payload`  
La respuesta del dispositivo Modbus RTU. Si `status` es `No Response`, este objeto contiene únicamente una propiedad `error` con la descripción de error (por ejemplo, `[Input/Output] No Response received from the remote unit`).

`id`  
El identificador de la solicitud, que puede utilizar para identificar qué respuesta corresponde a qué solicitud.

**nota**  
Una respuesta para una operación de escritura es simplemente un eco de la solicitud. Aunque no se devuelve información significante para las respuestas de escritura, se recomienda comprobar el estado de la respuesta para verificar si la solicitud tiene éxito o falla.

**Example Ejemplo de salida: Correcto**  

```
{
  "response" : {
    "status" : "success",
    "device": 1,
    "operation": "ReadCoilsRequest",
    "payload": {
      "function_code": 1,
      "bits": [1]
    }
  },
  "id" : "MyRequest"
}
```

**Example Ejemplo de salida: Error**  

```
{
  "response" : {
    "status" : "fail",
    "error_message": "Internal Error",
    "error": "Exception",
    "device": 1,
    "operation": "ReadCoilsRequest",
    "payload": {
      "function_code": 129,
      "exception_code": 2
    }
  },
  "id" : "MyRequest"
}
```

Para obtener más ejemplos, consulte [Solicitudes y respuestas de ejemplo](#modbus-rtu-protocol-adapter-component-examples).

## Solicitudes y respuestas de Modbus RTU
<a name="modbus-rtu-protocol-adapter-component-requests-responses"></a>

Este conector acepta los parámetros de solicitud de Modbus RTU como [datos de entrada](#modbus-rtu-protocol-adapter-component-input-data) y publica las respuestas como [datos de salida](#modbus-rtu-protocol-adapter-component-output-data).

Se admiten las siguientes operaciones comunes.


| Nombre de la operación en la solicitud | Código de característica en la respuesta | 
| --- | --- | 
| ReadCoilsRequest | 01 | 
| ReadDiscreteInputsRequest | 02 | 
| ReadHoldingRegistersRequest | 03 | 
| ReadInputRegistersRequest | 04 | 
| WriteSingleCoilRequest | 05 | 
| WriteSingleRegisterRequest | 06 | 
| WriteMultipleCoilsRequest | 15 | 
| WriteMultipleRegistersRequest | 16 | 
| MaskWriteRegisterRequest | 22 | 
| ReadWriteMultipleRegistersRequest | 23 | 

### Solicitudes y respuestas de ejemplo
<a name="modbus-rtu-protocol-adapter-component-examples"></a>

A continuación, se muestran ejemplos de solicitudes y respuestas de las operaciones compatibles.

Leer bobinas  
**Ejemplo de solicitud:**  

```
{
  "request": {
    "operation": "ReadCoilsRequest",
    "device": 1,
    "address": 1,
    "count": 1
  },
  "id": "TestRequest"
}
```
**Ejemplo de respuesta:**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "ReadCoilsRequest",
    "payload": {
      "function_code": 1,
      "bits": [1]
    }
  },
  "id" : "TestRequest"
}
```

Leer entradas discretas  
**Ejemplo de solicitud:**  

```
{
  "request": {
    "operation": "ReadDiscreteInputsRequest",
    "device": 1,
    "address": 1,
    "count": 1
  },
  "id": "TestRequest"
}
```
**Ejemplo de respuesta:**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "ReadDiscreteInputsRequest",
    "payload": {
      "function_code": 2,
      "bits": [1]
    }
  },
  "id" : "TestRequest"
}
```

Leer registros mantenidos  
**Ejemplo de solicitud:**  

```
{
  "request": {
    "operation": "ReadHoldingRegistersRequest",
    "device": 1,
    "address": 1,
    "count": 1
  },
  "id": "TestRequest"
}
```
**Ejemplo de respuesta:**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "ReadHoldingRegistersRequest",
    "payload": {
      "function_code": 3,
      "registers": [20,30]
    }
  },
  "id" : "TestRequest"
}
```

Leer registros de entrada  
**Ejemplo de solicitud:**  

```
{
  "request": {
    "operation": "ReadInputRegistersRequest",
    "device": 1,
    "address": 1,
    "count": 1
  },
  "id": "TestRequest"
}
```

Escribir una única bobina  
**Ejemplo de solicitud:**  

```
{
  "request": {
    "operation": "WriteSingleCoilRequest",
    "device": 1,
    "address": 1,
    "value": 1
  },
  "id": "TestRequest"
}
```
**Ejemplo de respuesta:**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "WriteSingleCoilRequest",
    "payload": {
      "function_code": 5,
      "address": 1,
      "value": true
    }
  },
  "id" : "TestRequest"
}
```

Escribir un único registro  
**Ejemplo de solicitud:**  

```
{
  "request": {
    "operation": "WriteSingleRegisterRequest",
    "device": 1,
    "address": 1,
    "value": 1
  },
  "id": "TestRequest"
}
```

Escribir varias bobinas  
**Ejemplo de solicitud:**  

```
{
  "request": {
    "operation": "WriteMultipleCoilsRequest",
    "device": 1,
    "address": 1,
    "values": [1,0,0,1]
  },
  "id": "TestRequest"
}
```
**Ejemplo de respuesta:**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "WriteMultipleCoilsRequest",
    "payload": {
      "function_code": 15,
      "address": 1,
      "count": 4
    }
  },
  "id" : "TestRequest"
}
```

Escribir varios registros  
**Ejemplo de solicitud:**  

```
{
  "request": {
    "operation": "WriteMultipleRegistersRequest",
    "device": 1,
    "address": 1,
    "values": [20,30,10]
  },
  "id": "TestRequest"
}
```
**Ejemplo de respuesta:**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "WriteMultipleRegistersRequest",
    "payload": {
      "function_code": 23,
      "address": 1,
      "count": 3
    }
  },
  "id" : "TestRequest"
}
```

Enmascarar el registro de escritura  
**Ejemplo de solicitud:**  

```
{
  "request": {
    "operation": "MaskWriteRegisterRequest",
    "device": 1,
    "address": 1,
    "and_mask": 175,
    "or_mask": 1
  },
  "id": "TestRequest"
}
```
**Ejemplo de respuesta:**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "MaskWriteRegisterRequest",
    "payload": {
      "function_code": 22,
      "and_mask": 0,
      "or_mask": 8
    }
  },
  "id" : "TestRequest"
}
```

Leer y escribir varios registros  
**Ejemplo de solicitud:**  

```
{
  "request": {
    "operation": "ReadWriteMultipleRegistersRequest",
    "device": 1,
    "read_address": 1,
    "read_count": 2,
    "write_address": 3,
    "write_registers": [20,30,40]
  },
  "id": "TestRequest"
}
```
**Ejemplo de respuesta:**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "ReadWriteMultipleRegistersRequest",
    "payload": {
      "function_code": 23,
      "registers": [10,20,10,20]
    }
  },
  "id" : "TestRequest"
}
```
La respuesta incluye los registros que lee el componente.

### Estado de respuesta: excepción
<a name="modbus-rtu-protocol-adapter-component-response-exception"></a>

Las excepciones pueden producirse cuando el formato de la solicitud es válido, pero la solicitud no se completó correctamente. En este caso, la respuesta contiene la siguiente información:
+ `status` se establece en `Exception`.
+ `function_code` equivale al código de la característica de la solicitud \$1 128.
+ `exception_code` contiene el código de excepción. Para obtener más información, consulte los códigos de excepción de Modbus.

**Ejemplo:**

```
{
  "response": {
    "status": "fail",
    "error_message": "Internal Error",
    "error": "Exception",
    "device": 1,
    "operation": "ReadCoilsRequest",
    "payload": {
      "function_code": 129,
      "exception_code": 2
    }
  },
  "id": "TestRequest"
}
```

### Estado de respuesta: sin respuesta
<a name="modbus-rtu-protocol-adapter-component-response-noresponse"></a>

Este conector realiza las comprobaciones de validación de la solicitud de Modbus. Por ejemplo, comprueba los formatos no válidos y los campos que faltan. Si no se supera la validación, el conector no envía la solicitud. En su lugar, devuelve una respuesta que contiene la siguiente información:
+ `status` se establece en `No Response`.
+ `error` contiene el motivo del error.
+ `error_message` contiene el mensaje de error.

**Ejemplos:**

```
{
  "response": {
    "status": "fail",
    "error_message": "Invalid address field. Expected <type 'int'>, got <type 'str'>",
    "error": "No Response",
    "device": 1,
    "operation": "ReadCoilsRequest",
    "payload": {
      "error": "Invalid address field. Expected Expected <type 'int'>, got <type 'str'>"
    }
  },
  "id": "TestRequest"
}
```

Si la solicitud selecciona como destino un dispositivo inexistente o si la red de Modbus RTU no funciona, es posible que aparezca una respuesta `ModbusIOException`, que utiliza el formato de respuesta No.

```
{
  "response": {
    "status": "fail",
    "error_message": "[Input/Output] No Response received from the remote unit",
    "error": "No Response",
    "device": 1,
    "operation": "ReadCoilsRequest",
    "payload": {
      "error": "[Input/Output] No Response received from the remote unit"
    }
  },
  "id": "TestRequest"
}
```

## Archivo de registro local
<a name="modbus-rtu-protocol-adapter-component-log-file"></a>

Este componente usa el siguiente archivo de registro.

```
/greengrass/v2/logs/aws.greengrass.Modbus.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. `/greengrass/v2`Sustitúyalo por la ruta a la carpeta AWS IoT Greengrass raíz.

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

## Licencias
<a name="modbus-rtu-protocol-adapter-component-licenses"></a>

Este componente incluye las siguientes licencias o software de terceros:
+ Licencia [pymodbus](https://github.com/riptideio/pymodbus/blob/master/README.rst)/BSD
+ Licencia [pyserial](https://github.com/pyserial/pyserial)/BSD

<a name="component-core-software-license"></a>Este conector se publica en el [Contrato de Licencia de Software de Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Registros de cambios
<a name="modbus-rtu-protocol-adapter-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.1.11  | Versión actualizada para la versión 2.15.0 de Greengrass nucleus. | 
|  2.1.10  | Versión actualizada para la versión 2.14.0 de Greengrass nucleus. | 
|  2.1.9  | Versión actualizada para el lanzamiento de la versión 2.13.0 del núcleo de Greengrass. | 
|  2.1.8  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.1.7  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.1.6  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.1.5  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/modbus-rtu-protocol-adapter-component.html) | 
|  2.1.4  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.1.3  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.1.2  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.1.1  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/modbus-rtu-protocol-adapter-component.html)  | 
|  2.0.8  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.0.7  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.0.6  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.0.5  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.0.4  |  Versión actualizada para el lanzamiento de la versión 2.1.0 del núcleo de Greengrass.  | 
|  2.0.3  |  Versión inicial.  | 

# Puente MQTT
<a name="mqtt-bridge-component"></a>

El componente puente MQTT (`aws.greengrass.clientdevices.mqtt.Bridge`) transmite mensajes MQTT entre los dispositivos cliente, la publicación/suscripción local de Greengrass y. AWS IoT Core Puede utilizar este componente para actuar sobre los mensajes MQTT de los dispositivos de cliente en componentes personalizados y sincronizar los dispositivos de cliente con la Nube de AWS.

**nota**  <a name="client-device-component-context"></a>
Los dispositivos de cliente son dispositivos IoT locales que se conectan a un dispositivo principal de Greengrass para enviar mensajes MQTT y datos para su procesamiento. Para obtener más información, consulte [Interacción con dispositivos IoT locales](interact-with-local-iot-devices.md).

Puede usar este componente para retransmitir mensajes entre los siguientes agentes de mensajes:
+ MQTT local: el agente MQTT local maneja los mensajes entre los dispositivos de cliente y un dispositivo principal.
+ Local publish/subscribe : el agente de mensajes local de Greengrass gestiona los mensajes entre los componentes de un dispositivo central. Para obtener más información acerca de cómo interactuar con estos mensajes en los componentes de Greengrass, consulte [Publicar/suscribir mensajes locales](ipc-publish-subscribe.md).
+ AWS IoT Core — El broker AWS IoT Core MQTT gestiona los mensajes entre dispositivos y Nube de AWS destinos de IoT. Para obtener más información acerca de cómo interactuar con estos mensajes en los componentes de Greengrass, consulte [Publicar/suscribir mensajes MQTT AWS IoT Core](ipc-iot-core-mqtt.md).
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información acerca de la configuración de MQTT en los dispositivos principales, consulte [Configuración de los tiempos de espera y los ajustes de caché de MQTT](configure-greengrass-core-v2.md#configure-mqtt).

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

## Versiones
<a name="mqtt-bridge-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Tipo
<a name="mqtt-bridge-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="mqtt-bridge-component-os-support"></a>

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

## Requisitos
<a name="mqtt-bridge-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ Si configura el componente agente MQTT del dispositivo principal para que utilice un puerto que no sea el puerto 8883 predeterminado, debe usar el puente de MQTT versión 2.1.0 o posterior. Configúrelo para que se conecte al puerto en el que opera el agente.
+ Se admite la ejecución del componente puente de MQTT en una VPC.

## Dependencias
<a name="mqtt-bridge-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#mqtt-bridge-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.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 | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.6.0 | Rígido | 

------
#### [ 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 | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.5.0 | Rígido | 

------
#### [ 2.2.5 and 2.2.6 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.2.5 y 2.2.6 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.5.0 | Rígido | 

------
#### [ 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 | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.4.0 | Rígido | 

------
#### [ 2.2.0 – 2.2.2 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.2.0 a 2.2.2 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.3.0 | Rígido | 

------
#### [ 2.1.1 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.0.0 <2.2.0 | Rígido | 

------
#### [ 2.0.0 to 2.1.0 ]

En la siguiente tabla, se muestra las dependencias de las versiones 2.0.0 a 2.1.0 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.0.0 <2.1.0 | Rígido | 

------

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="mqtt-bridge-component-configuration"></a>

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

------
#### [ 2.3.0 – 2.3.2 ]

`mqttTopicMapping`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-description"></a>Las asignaciones de temas que desea unir. Este componente se suscribe a los mensajes del tema de origen y publica los mensajes que recibe en el tema de destino. Cada asignación de temas define el tema, el tipo de origen y el tipo de destino.  
Este objeto contiene la siguiente información:    
`topicMappingNameKey`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-name-key-description"></a>El nombre de esta asignación de temas. *topicMappingNameKey*Sustitúyalo por un nombre que ayude a identificar el mapeo de este tema.  
Este objeto contiene la siguiente información:    
`topic`  
El tema o filtro de temas que sirve de puente entre los agentes de origen y de destino.  
Puede utilizar los caracteres comodín de temas MQTT `+` y `#` para transmitir mensajes en todos los temas que coincidan con un filtro de temas. Para obtener más información, consulte [Temas MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) en la *Guía para desarrolladores de AWS IoT Core *.  
Para usar comodines de temas de MQTT con el agente `Pubsub` de origen, debe usar la versión 2.6.0 o posterior del [componente núcleo de Greengrass.](greengrass-nucleus-component.md)  
`targetTopicPrefix`  
El prefijo que se agrega al tema de destino cuando este componente transmite el mensaje.  
`source`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-source"></a>
El agente de mensajes de origen. Puede elegir entre las siguientes opciones:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: el agente MQTT local donde se comunican los dispositivos de cliente.
+ `Pubsub`— El agente de publish/subscribe mensajes local de Greengrass.
+ `IotCore`— El intermediario de mensajes AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información acerca de la configuración de MQTT en los dispositivos principales, consulte [Configuración de los tiempos de espera y los ajustes de caché de MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source` y `target` deben ser diferentes.  
`target`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-target"></a>
El agente de mensajes de destino. Puede elegir entre las siguientes opciones:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: el agente MQTT local donde se comunican los dispositivos de cliente.
+ `Pubsub`— El agente de publish/subscribe mensajes local de Greengrass.
+ `IotCore`— El intermediario de mensajes AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información acerca de la configuración de MQTT en los dispositivos principales, consulte [Configuración de los tiempos de espera y los ajustes de caché de MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source` y `target` deben ser diferentes.

mqtt5 RouteOptions  
(Opcional) Ofrece opciones para configurar las asignaciones de temas a fin de unir los mensajes del tema de origen al tema de destino.  
Este objeto contiene la siguiente información:    
*mqtt5RouteOptionsNameKey*  
El nombre de las opciones de ruta de una asignación de temas. *mqtt5RouteOptionsNameKey*Sustitúyala por la coincidencia *topicMappingNameKey* definida en el `mqttTopicMapping` campo.  
Este objeto contiene la siguiente información:    
noLocal  
(Opcional) Cuando está activado, el puente no reenvía los mensajes sobre un tema que haya publicado el propio puente. Utilice esta opción para evitar los bucles, de la siguiente manera:  

```
{
    "mqtt5RouteOptions": {
        "toIoTCore": {
            "noLocal": true
        }
    },
    "mqttTopicMapping": {
        "toIoTCore": {
            "topic": "device",
            "source": "LocalMqtt",
            "target": "IotCore"
        },
        "toLocal": {
            "topic": "device",
            "source": "IotCore",
            "target": "LocalMqtt"
        }
    }
}
```
`noLocal` solo se admite en las rutas en las que `source` es `LocalMqtt`.  
Predeterminado: false  
retainAsPublished  
(Opcional) Cuando está habilitado, los mensajes reenviados por el puente tienen la misma marca `retain` que los mensajes publicados en el agente para esa ruta.  
`retainAsPublished` solo se admite en las rutas en las que `source` es `LocalMqtt`.  
Predeterminado: false

mqtt  
(Opcional) Configuración del protocolo MQTT para comunicarse con el agente local.    
versión  
(Opcional) La versión del protocolo MQTT utilizada por el puente para comunicarse con el agente local. Debe ser la misma que la versión de MQTT seleccionada en la configuración del núcleo.   
Elija una de las siguientes opciones:   
+ `mqtt3`
+ `mqtt5`
Debe implementar un agente MQTT cuando el campo `source` o `target` del objeto `mqttTopicMapping` esté establecido en `LocalMqtt`. Si elige la opción `mqtt5`, debe usar el [Agente MQTT 5 (EMQX)](mqtt-broker-emqx-component.md).  
Valor predeterminado: `mqtt3`  
ackTimeoutSeconds  
(Opcional) Intervalo de tiempo para esperar a que lleguen los paquetes PUBACK, SUBACK o UNSUBACK antes de que se produzca un error en la operación.  
Predeterminado: 60  
connAckTimeoutSrta.  
(Opcional) Intervalo de tiempo para esperar un paquete CONNACK antes de cerrar la conexión.  
Valor predeterminado: 20 000 (20 segundos)  
pingTimeoutMs  
(Opcional) El tiempo en milisegundos que el puente espera a recibir un mensaje PINGACK del agente local. Si la espera supera el tiempo de espera, el puente se cierra y vuelve a abrir la conexión MQTT. Este valor debe ser inferior a `keepAliveTimeoutSeconds`.  
Valor predeterminado: 30 000 (30 segundos)  
keepAliveTimeoutSegundos  
(Opcional) El tiempo en segundos que transcurre entre cada mensaje PING que envía el puente para mantener activa la conexión MQTT. El valor debe ser mayor que `pingTimeoutMs`.  
Predeterminado: 60  
maxReconnectDelaySra.  
(Opcional) Tiempo máximo en segundos que MQTT se vuelve a conectar.  
Valor predeterminado: 30 000 (30 segundos)  
minReconnectDelaySra.  
(Opcional) Tiempo mínimo en segundos para que MQTT se vuelva a conectar.  
receiveMaximum  
(Opcional) La cantidad máxima de paquetes QoS1 no confirmados que puede enviar el puente.  
Predeterminado: 100  
maximumPacketSize  
El número máximo de bytes que el cliente aceptará para un paquete MQTT.  
Predeterminado: nulo (sin límite)  
sessionExpiryInterval  
(Opcional) La cantidad de tiempo en segundos que puede solicitar para que dure una sesión entre el puente y el agente local.  
Predeterminado: 4294967295 (la sesión nunca caduca)

`brokerUri`  <a name="mqtt-bridge-component-configuration-broker-uri"></a>
(Opcional) El URI del agente MQTT local. Debe especificar este parámetro si configura el agente MQTT para que utilice un puerto diferente al puerto predeterminado 8883. Utilice el siguiente formato y *port* sustitúyalo por el puerto en el que opera el broker MQTT:`ssl://localhost:port`.  
Valor predeterminado: `ssl://localhost:8883`

startupTimeoutSeconds  
(Opcional) El tiempo máximo en segundos para que se inicie el componente. El estado del componente cambia a `BROKEN` si supera este tiempo de espera.  
Valor predeterminado: `120`

**Example Ejemplo: actualización de la combinación de configuraciones**  <a name="mqtt-bridge-component-configuration-example-with-prefix"></a>
El siguiente ejemplo de archivo de configuración especifica lo siguiente:  
+ Transmita mensajes desde los dispositivos cliente a AWS IoT Core temas que coincidan con el filtro de `clients/+/hello/world` temas.
+ Transmita los mensajes de los dispositivos cliente a los dispositivos locales publish/subscribe sobre los temas que coincidan con el `clients/+/detections` filtro de temas y añada el `events/input/` prefijo al tema de destino. El tema de destino resultante coincide con el filtro de temas `events/input/clients/+/detections`.
+ Transmita los mensajes desde los dispositivos cliente a AWS IoT Core temas que coincidan con el filtro de temas y añada el `$aws/rules/StatusUpdateRule/` prefijo al `clients/+/status` tema de destino. En este ejemplo, se transmiten estos mensajes directamente a una [regla AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html) denominada `StatusUpdateRule` para la reducción de costos mediante la [ingesta básica](https://docs.aws.amazon.com/iot/latest/developerguide/iot-basic-ingest.html).

```
{
  "mqttTopicMapping": {
    "ClientDeviceHelloWorld": {
      "topic": "clients/+/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    },
    "ClientDeviceEvents": {
      "topic": "clients/+/detections",
      "targetTopicPrefix": "events/input/",
      "source": "LocalMqtt",
      "target": "Pubsub"
    },
    "ClientDeviceCloudStatusUpdate": {
      "topic": "clients/+/status",
      "targetTopicPrefix": "$aws/rules/StatusUpdateRule/",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

**Example Ejemplo: configuración de MQTT 5**  
El siguiente ejemplo de archivo de configuración actualiza lo siguiente:  
+ Permite que el puente utilice el protocolo MQTT 5 con el agente local.
+ Configura MQTT para retenerlo como configuración publicada para la asignación de temas `ClientDeviceHelloWorld`.

```
{
  "mqttTopicMapping": {
    "ClientDeviceHelloWorld": {
      "topic": "clients/+/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  },
  "mqtt5RouteOptions": {
    "ClientDeviceHelloWorld": {
      "retainAsPublished": true
    }
  },
  "mqtt": {
    "version": "mqtt5"
  }
}
```

------
#### [ 2.2.6 ]

`mqttTopicMapping`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-description"></a>Las asignaciones de temas que desea unir. Este componente se suscribe a los mensajes del tema de origen y publica los mensajes que recibe en el tema de destino. Cada asignación de temas define el tema, el tipo de origen y el tipo de destino.  
Este objeto contiene la siguiente información:    
`topicMappingNameKey`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-name-key-description"></a>El nombre de esta asignación de temas. *topicMappingNameKey*Sustitúyalo por un nombre que te ayude a identificar este mapeo de temas.  
Este objeto contiene la siguiente información:    
`topic`  
El tema o filtro de temas que sirve de puente entre los agentes de origen y de destino.  
Puede utilizar los caracteres comodín de temas MQTT `+` y `#` para transmitir mensajes en todos los temas que coincidan con un filtro de temas. Para obtener más información, consulte [Temas MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) en la *Guía para desarrolladores de AWS IoT Core *.  
Para usar comodines de temas de MQTT con el agente `Pubsub` de origen, debe usar la versión 2.6.0 o posterior del [componente núcleo de Greengrass.](greengrass-nucleus-component.md)  
`targetTopicPrefix`  
El prefijo que se agrega al tema de destino cuando este componente transmite el mensaje.  
`source`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-source"></a>
El agente de mensajes de origen. Puede elegir entre las siguientes opciones:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: el agente MQTT local donde se comunican los dispositivos de cliente.
+ `Pubsub`— El agente de publish/subscribe mensajes local de Greengrass.
+ `IotCore`— El intermediario de mensajes AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información acerca de la configuración de MQTT en los dispositivos principales, consulte [Configuración de los tiempos de espera y los ajustes de caché de MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source` y `target` deben ser diferentes.  
`target`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-target"></a>
El agente de mensajes de destino. Puede elegir entre las siguientes opciones:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: el agente MQTT local donde se comunican los dispositivos de cliente.
+ `Pubsub`— El agente de publish/subscribe mensajes local de Greengrass.
+ `IotCore`— El intermediario de mensajes AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información acerca de la configuración de MQTT en los dispositivos principales, consulte [Configuración de los tiempos de espera y los ajustes de caché de MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source` y `target` deben ser diferentes.

`brokerUri`  <a name="mqtt-bridge-component-configuration-broker-uri"></a>
(Opcional) El URI del agente MQTT local. Debe especificar este parámetro si configura el agente MQTT para que utilice un puerto diferente al puerto predeterminado 8883. Utilice el siguiente formato y sustitúyalo por *port* el puerto en el que opera el broker MQTT:. `ssl://localhost:port`  
Valor predeterminado: `ssl://localhost:8883`

startupTimeoutSeconds  
(Opcional) El tiempo máximo en segundos para que se inicie el componente. El estado del componente cambia a `BROKEN` si supera este tiempo de espera.  
Valor predeterminado: `120`

**Example Ejemplo: actualización de la combinación de configuraciones**  <a name="mqtt-bridge-component-configuration-example-with-prefix"></a>
El siguiente ejemplo de archivo de configuración especifica lo siguiente:  
+ Transmita mensajes desde los dispositivos cliente a AWS IoT Core temas que coincidan con el filtro de `clients/+/hello/world` temas.
+ Transmita los mensajes de los dispositivos cliente a los dispositivos locales publish/subscribe sobre los temas que coincidan con el `clients/+/detections` filtro de temas y añada el `events/input/` prefijo al tema de destino. El tema de destino resultante coincide con el filtro de temas `events/input/clients/+/detections`.
+ Transmita los mensajes desde los dispositivos cliente a AWS IoT Core temas que coincidan con el filtro de temas y añada el `$aws/rules/StatusUpdateRule/` prefijo al `clients/+/status` tema de destino. En este ejemplo, se transmiten estos mensajes directamente a una [regla AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html) denominada `StatusUpdateRule` para la reducción de costos mediante la [ingesta básica](https://docs.aws.amazon.com/iot/latest/developerguide/iot-basic-ingest.html).

```
{
  "mqttTopicMapping": {
    "ClientDeviceHelloWorld": {
      "topic": "clients/+/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    },
    "ClientDeviceEvents": {
      "topic": "clients/+/detections",
      "targetTopicPrefix": "events/input/",
      "source": "LocalMqtt",
      "target": "Pubsub"
    },
    "ClientDeviceCloudStatusUpdate": {
      "topic": "clients/+/status",
      "targetTopicPrefix": "$aws/rules/StatusUpdateRule/",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

------
#### [ 2.2.0 - 2.2.5 ]

`mqttTopicMapping`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-description"></a>Las asignaciones de temas que desea unir. Este componente se suscribe a los mensajes del tema de origen y publica los mensajes que recibe en el tema de destino. Cada asignación de temas define el tema, el tipo de origen y el tipo de destino.  
Este objeto contiene la siguiente información:    
`topicMappingNameKey`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-name-key-description"></a>El nombre de esta asignación de temas. *topicMappingNameKey*Sustitúyalo por un nombre que te ayude a identificar este mapeo de temas.  
Este objeto contiene la siguiente información:    
`topic`  
El tema o filtro de temas que sirve de puente entre los agentes de origen y de destino.  
Puede utilizar los caracteres comodín de temas MQTT `+` y `#` para transmitir mensajes en todos los temas que coincidan con un filtro de temas. Para obtener más información, consulte [Temas MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) en la *Guía para desarrolladores de AWS IoT Core *.  
Para usar comodines de temas de MQTT con el agente `Pubsub` de origen, debe usar la versión 2.6.0 o posterior del [componente núcleo de Greengrass.](greengrass-nucleus-component.md)  
`targetTopicPrefix`  
El prefijo que se agrega al tema de destino cuando este componente transmite el mensaje.  
`source`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-source"></a>
El agente de mensajes de origen. Puede elegir entre las siguientes opciones:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: el agente MQTT local donde se comunican los dispositivos de cliente.
+ `Pubsub`— El agente de publish/subscribe mensajes local de Greengrass.
+ `IotCore`— El intermediario de mensajes AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información acerca de la configuración de MQTT en los dispositivos principales, consulte [Configuración de los tiempos de espera y los ajustes de caché de MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source` y `target` deben ser diferentes.  
`target`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-target"></a>
El agente de mensajes de destino. Puede elegir entre las siguientes opciones:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: el agente MQTT local donde se comunican los dispositivos de cliente.
+ `Pubsub`— El agente de publish/subscribe mensajes local de Greengrass.
+ `IotCore`— El intermediario de mensajes AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información acerca de la configuración de MQTT en los dispositivos principales, consulte [Configuración de los tiempos de espera y los ajustes de caché de MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source` y `target` deben ser diferentes.

`brokerUri`  <a name="mqtt-bridge-component-configuration-broker-uri"></a>
(Opcional) El URI del agente MQTT local. Debe especificar este parámetro si configura el agente MQTT para que utilice un puerto diferente al puerto predeterminado 8883. Utilice el siguiente formato y sustitúyalo por *port* el puerto en el que opera el broker MQTT:. `ssl://localhost:port`  
Valor predeterminado: `ssl://localhost:8883`

**Example Ejemplo: actualización de la combinación de configuraciones**  <a name="mqtt-bridge-component-configuration-example-with-prefix"></a>
El siguiente ejemplo de archivo de configuración especifica lo siguiente:  
+ Transmita mensajes desde los dispositivos cliente a AWS IoT Core temas que coincidan con el filtro de `clients/+/hello/world` temas.
+ Transmita los mensajes de los dispositivos cliente a los dispositivos locales publish/subscribe sobre los temas que coincidan con el `clients/+/detections` filtro de temas y añada el `events/input/` prefijo al tema de destino. El tema de destino resultante coincide con el filtro de temas `events/input/clients/+/detections`.
+ Transmita los mensajes desde los dispositivos cliente a AWS IoT Core temas que coincidan con el filtro de temas y añada el `$aws/rules/StatusUpdateRule/` prefijo al `clients/+/status` tema de destino. En este ejemplo, se transmiten estos mensajes directamente a una [regla AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html) denominada `StatusUpdateRule` para la reducción de costos mediante la [ingesta básica](https://docs.aws.amazon.com/iot/latest/developerguide/iot-basic-ingest.html).

```
{
  "mqttTopicMapping": {
    "ClientDeviceHelloWorld": {
      "topic": "clients/+/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    },
    "ClientDeviceEvents": {
      "topic": "clients/+/detections",
      "targetTopicPrefix": "events/input/",
      "source": "LocalMqtt",
      "target": "Pubsub"
    },
    "ClientDeviceCloudStatusUpdate": {
      "topic": "clients/+/status",
      "targetTopicPrefix": "$aws/rules/StatusUpdateRule/",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

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

`mqttTopicMapping`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping"></a>
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-description"></a>Las asignaciones de temas que desea unir. Este componente se suscribe a los mensajes del tema de origen y publica los mensajes que recibe en el tema de destino. Cada asignación de temas define el tema, el tipo de origen y el tipo de destino.  
Este objeto contiene la siguiente información:    
`topicMappingNameKey`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-name-key-description"></a>El nombre de esta asignación de temas. *topicMappingNameKey*Sustitúyalo por un nombre que te ayude a identificar este mapeo de temas.  
Este objeto contiene la siguiente información:    
`topic`  
El tema o filtro de temas que sirve de puente entre los agentes de origen y de destino.  
Si especifica el agente `LocalMqtt` o `IotCore` de origen, puede utilizar los caracteres comodín de temas MQTT `+` y `#` para retransmitir mensajes sobre todos los temas que coincidan con un filtro de temas. Para obtener más información, consulte [Temas MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) en la *Guía para desarrolladores de AWS IoT Core *.  
`source`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-source"></a>
El agente de mensajes de origen. Puede elegir entre las siguientes opciones:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: el agente MQTT local donde se comunican los dispositivos de cliente.
+ `Pubsub`— El agente de publish/subscribe mensajes local de Greengrass.
+ `IotCore`— El intermediario de mensajes AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información acerca de la configuración de MQTT en los dispositivos principales, consulte [Configuración de los tiempos de espera y los ajustes de caché de MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source` y `target` deben ser diferentes.  
`target`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-target"></a>
El agente de mensajes de destino. Puede elegir entre las siguientes opciones:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: el agente MQTT local donde se comunican los dispositivos de cliente.
+ `Pubsub`— El agente de publish/subscribe mensajes local de Greengrass.
+ `IotCore`— El intermediario de mensajes AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información acerca de la configuración de MQTT en los dispositivos principales, consulte [Configuración de los tiempos de espera y los ajustes de caché de MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source` y `target` deben ser diferentes.

`brokerUri`  <a name="mqtt-bridge-component-configuration-broker-uri"></a>
(Opcional) El URI del agente MQTT local. Debe especificar este parámetro si configura el agente MQTT para que utilice un puerto diferente al puerto predeterminado 8883. Utilice el siguiente formato y sustitúyalo por *port* el puerto en el que opera el broker MQTT:. `ssl://localhost:port`  
Valor predeterminado: `ssl://localhost:8883`

**Example Ejemplo: actualización de la combinación de configuraciones**  <a name="mqtt-bridge-component-configuration-example-no-prefix"></a>
El siguiente ejemplo de actualización de configuración especifica la retransmisión de mensajes desde los dispositivos cliente a los AWS IoT Core `clients/MyClientDevice2/hello/world` temas `clients/MyClientDevice1/hello/world` y.  

```
{
  "mqttTopicMapping": {
    "ClientDevice1HelloWorld": {
      "topic": "clients/MyClientDevice1/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    },
    "ClientDevice2HelloWorld": {
      "topic": "clients/MyClientDevice2/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

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

`mqttTopicMapping`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping"></a>
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-description"></a>Las asignaciones de temas que desea unir. Este componente se suscribe a los mensajes del tema de origen y publica los mensajes que recibe en el tema de destino. Cada asignación de temas define el tema, el tipo de origen y el tipo de destino.  
Este objeto contiene la siguiente información:    
`topicMappingNameKey`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-name-key-description"></a>El nombre de esta asignación de temas. *topicMappingNameKey*Sustitúyalo por un nombre que ayude a identificar este mapeo de temas.  
Este objeto contiene la siguiente información:    
`topic`  
El tema o filtro de temas que sirve de puente entre los agentes de origen y de destino.  
Si especifica el agente `LocalMqtt` o `IotCore` de origen, puede utilizar los caracteres comodín de temas MQTT `+` y `#` para retransmitir mensajes sobre todos los temas que coincidan con un filtro de temas. Para obtener más información, consulte [Temas MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) en la *Guía para desarrolladores de AWS IoT Core *.  
`source`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-source"></a>
El agente de mensajes de origen. Puede elegir entre las siguientes opciones:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: el agente MQTT local donde se comunican los dispositivos de cliente.
+ `Pubsub`— El agente de publish/subscribe mensajes local de Greengrass.
+ `IotCore`— El intermediario de mensajes AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información acerca de la configuración de MQTT en los dispositivos principales, consulte [Configuración de los tiempos de espera y los ajustes de caché de MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source` y `target` deben ser diferentes.  
`target`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-target"></a>
El agente de mensajes de destino. Puede elegir entre las siguientes opciones:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: el agente MQTT local donde se comunican los dispositivos de cliente.
+ `Pubsub`— El agente de publish/subscribe mensajes local de Greengrass.
+ `IotCore`— El intermediario de mensajes AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información acerca de la configuración de MQTT en los dispositivos principales, consulte [Configuración de los tiempos de espera y los ajustes de caché de MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source` y `target` deben ser diferentes.

**Example Ejemplo: actualización de la combinación de configuraciones**  <a name="mqtt-bridge-component-configuration-example-no-prefix"></a>
El siguiente ejemplo de actualización de configuración especifica la retransmisión de mensajes desde los dispositivos cliente a los AWS IoT Core temas `clients/MyClientDevice1/hello/world` y`clients/MyClientDevice2/hello/world`.  

```
{
  "mqttTopicMapping": {
    "ClientDevice1HelloWorld": {
      "topic": "clients/MyClientDevice1/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    },
    "ClientDevice2HelloWorld": {
      "topic": "clients/MyClientDevice2/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

------

## Archivo de registro local
<a name="mqtt-bridge-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:\$1greengrass\$1v2* 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="mqtt-bridge-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.3.2  |  Versión actualizada para la versión 2.5.0 de [autenticación de dispositivos de cliente](client-device-auth-component.md).  | 
| 2.3.1 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
| 2.3.0 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.2.6  |  <a name="changelog-mqtt-bridge-2.2.6"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.2.5  |  Versión actualizada para la versión 2.4.0 de [autenticación de dispositivos de cliente](client-device-auth-component.md).  | 
|  2.2.4  |  Versión actualizada para la versión 2.3.0 de [autenticación de dispositivos de cliente](client-device-auth-component.md) de Greengrass.  | 
|  2.2.3  |  Esta versión contiene correcciones de errores y mejoras.  | 
|  2.2.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.2.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.2.0  |  <a name="changelog-mqtt-bridge-2.2.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.1.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.0.1  |  Esta versión incluye correcciones de errores y mejoras.  | 
|  2.0.0  |  Versión inicial.  | 

# Agente MQTT 3.1.1 (Moquette)
<a name="mqtt-broker-moquette-component"></a>

El componente agente MQTT de Moquette (`aws.greengrass.clientdevices.mqtt.Moquette`) gestiona los mensajes MQTT entre los dispositivos de cliente y un dispositivo principal de Greengrass. Este componente proporciona una versión modificada del [agente MQTT de Moquette](https://github.com/moquette-io/moquette). Implemente este agente MQTT para ejecutar un agente de MQTT ligero. Para más información sobre cómo elegir un agente MQTT, consulte [Elección de un agente MQTT](choose-local-mqtt-broker.md).

Este agente implementa el protocolo MQTT 3.1.1. Incluye compatibilidad con mensajes retenidos por QoS 0, QoS 1, QoS 2 y sesiones persistentes.

**nota**  <a name="client-device-component-context"></a>
Los dispositivos de cliente son dispositivos IoT locales que se conectan a un dispositivo principal de Greengrass para enviar mensajes MQTT y datos para su procesamiento. Para obtener más información, consulte [Interacción con dispositivos IoT locales](interact-with-local-iot-devices.md).

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

## Versiones
<a name="mqtt-broker-moquette-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Tipo
<a name="mqtt-broker-moquette-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="mqtt-broker-moquette-component-os-support"></a>

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

## Requisitos
<a name="mqtt-broker-moquette-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ El dispositivo principal debe poder aceptar conexiones en el puerto en el que opera el agente MQTT. Este componente ejecuta el agente MQTT en el puerto 8883 de forma predeterminada. O puede especificar un puerto diferente al configurar este componente.

  <a name="mqtt-broker-configuration-mqtt-bridge-requirement"></a>Si especifica un puerto diferente y utiliza el [componente de puente MQTT](mqtt-bridge-component.md) para retransmitir mensajes MQTT a otros intermediarios, debe utilizar el puente de MQTT versión 2.1.0 o posterior. Configúrelo para que use el puerto en el que opera el agente MQTT.

  <a name="mqtt-broker-configuration-ip-detector-requirement"></a>Si especifica un puerto diferente y utiliza el [componente IP detector](ip-detector-component.md) para administrar los puntos de conexión del agente MQTT, debe utilizar la versión 2.1.0 o posterior del detector IP. Configúrelo para que informe el puerto en el que opera el agente MQTT.
+ El componente de agente MQTT de Moquette puede ejecutarse en una VPC.

## Dependencias
<a name="mqtt-broker-moquette-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#mqtt-broker-moquette-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.7 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.6.0 | Rígido | 

------
#### [ 2.3.2 – 2.3.6 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.3.2 a 2.3.6 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.5.0 | Rígido | 

------
#### [ 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 | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.4.0 | Rígido | 

------
#### [ 2.2.0 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.3.0 | Rígido | 

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.0.0 <2.2.0 | Rígido | 

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

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.0 a 2.0.2 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.0.0 <2.1.0 | Rígido | 

------

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="mqtt-broker-moquette-component-configuration"></a>

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

`moquette`  
(Opcional) La configuración del [agente MQTT de Moquette](https://github.com/moquette-io/moquette) que se va a utilizar. Puede configurar las opciones de configuración de Moquette en este componente. Para obtener más información, consulte los comentarios en línea en el [archivo de configuración de Moquette](https://github.com/moquette-io/moquette/blob/main/distribution/src/main/resources/moquette.conf).  
Este objeto contiene la siguiente información:    
`ssl_port`  
(Opcional) El puerto en el que opera el agente de MQTT.  
<a name="mqtt-broker-configuration-mqtt-bridge-requirement"></a>Si especifica un puerto diferente y utiliza el [componente de puente MQTT](mqtt-bridge-component.md) para retransmitir mensajes MQTT a otros intermediarios, debe utilizar el puente de MQTT versión 2.1.0 o posterior. Configúrelo para que use el puerto en el que opera el agente MQTT.  
<a name="mqtt-broker-configuration-ip-detector-requirement"></a>Si especifica un puerto diferente y utiliza el [componente IP detector](ip-detector-component.md) para administrar los puntos de conexión del agente MQTT, debe utilizar la versión 2.1.0 o posterior del detector IP. Configúrelo para que informe el puerto en el que opera el agente MQTT.
Valor predeterminado: `8883`  
`host`  
(Opcional) La interfaz a la que se enlaza el agente MQTT. Por ejemplo, puede cambiar este parámetro para que el agente MQTT se vincule únicamente a una red local específica.  
Predeterminado: `0.0.0.0` (enlaza con todas las interfaces de red)

startupTimeoutSeconds  
(Opcional) El tiempo máximo en segundos para que se inicie el componente. El estado del componente cambia a `BROKEN` si supera este tiempo de espera.  
Valor predeterminado: `120`

**Example Ejemplo: actualización de la combinación de configuraciones**  
El siguiente ejemplo de configuración especifica el funcionamiento del agente de MQTT en el puerto 443.  

```
{
  "moquette": {
    "ssl_port": "443"
  }
}
```

## Archivo de registro local
<a name="mqtt-broker-moquette-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:\$1greengrass\$1v2* 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="mqtt-broker-moquette-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.3.7  |  Versión actualizada para la versión 2.5.0 de [autenticación de dispositivos de cliente](client-device-auth-component.md).  | 
|  2.3.6  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.3.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.3.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.3.3  |  <a name="changelog-mqtt-broker-moquette-2.3.3"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.3.2  |  Versión actualizada para la versión 2.4.0 de [autenticación de dispositivos de cliente](client-device-auth-component.md).  | 
|  2.3.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.3.0  |  Se agregó compatibilidad con las cadenas de certificados.  | 
|  2.2.0  |  Versión actualizada para la versión 2.2.0 de [autenticación de dispositivos de cliente](client-device-auth-component.md).  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.0.1  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.0.0  |  Versión inicial.  | 

# Agente MQTT 5 (EMQX)
<a name="mqtt-broker-emqx-component"></a>

El componente agente MQTT de EMQX (`aws.greengrass.clientdevices.mqtt.EMQX`) gestiona los mensajes MQTT entre los dispositivos de cliente y un dispositivo principal de Greengrass. Este componente proporciona una versión modificada del [agente EMQX MQTT 5.0.](https://www.emqx.com/en/mqtt/mqtt5) Implemente el agente MQTT para usar las características de MQTT 5 en la comunicación entre los dispositivos de cliente y el dispositivo principal. Para más información sobre cómo elegir un agente MQTT, consulte [Elección de un agente MQTT](choose-local-mqtt-broker.md).

Este agente implementa el protocolo MQTT 5.0. Incluye compatibilidad con intervalos de expiración de sesiones y mensajes, propiedades de usuario, suscripciones compartidas, alias de temas y más. MQTT 5 es compatible con versiones anteriores de MQTT 3.1.1, por lo que si ejecuta [el agente Moquette MQTT 3.1.1](mqtt-broker-moquette-component.md), puede reemplazarlo con el agente EMQX MQTT 5 y los dispositivos de cliente pueden continuar conectándose y funcionando normalmente.

<a name="note-local-mqtt-broker-mqtt-5-features"></a>

**nota**  <a name="client-device-component-context"></a>
Los dispositivos de cliente son dispositivos IoT locales que se conectan a un dispositivo principal de Greengrass para enviar mensajes MQTT y datos para su procesamiento. Para obtener más información, consulte [Interacción con dispositivos IoT locales](interact-with-local-iot-devices.md).

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

## Versiones
<a name="mqtt-broker-emqx-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.0.x
+ 1.2.x
+ 1.1.x
+ 1.0.x

## Tipo
<a name="mqtt-broker-emqx-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="mqtt-broker-emqx-component-os-support"></a>

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

## Requisitos
<a name="mqtt-broker-emqx-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ El dispositivo principal debe poder aceptar conexiones en el puerto en el que opera el agente MQTT. Este componente ejecuta el agente MQTT en el puerto 8883 de forma predeterminada. O puede especificar un puerto diferente al configurar este componente.

  <a name="mqtt-broker-configuration-mqtt-bridge-requirement"></a>Si especifica un puerto diferente y utiliza el [componente de puente MQTT](mqtt-bridge-component.md) para retransmitir mensajes MQTT a otros intermediarios, debe utilizar el puente de MQTT versión 2.1.0 o posterior. Configúrelo para que use el puerto en el que opera el agente MQTT.

  <a name="mqtt-broker-configuration-ip-detector-requirement"></a>Si especifica un puerto diferente y utiliza el [componente IP detector](ip-detector-component.md) para administrar los puntos de conexión del agente MQTT, debe utilizar la versión 2.1.0 o posterior del detector IP. Configúrelo para que informe el puerto en el que opera el agente MQTT.
+ En los dispositivos principales de Linux, Docker se instala y configura en el dispositivo principal:
  + <a name="docker-engine-requirement"></a>Versión 1.9.1 o posterior de [Docker Engine](https://docs.docker.com/engine/) instalada en el dispositivo principal de Greengrass. La versión 20.10 es la última versión que se ha comprobado que funciona con el software AWS IoT Greengrass Core. Debe instalar Docker directamente en el dispositivo principal antes de implementar componentes que ejecuten contenedores de Docker.
  + <a name="docker-daemon-requirement"></a>El daemon de Docker se inició y se ejecutó en el dispositivo principal antes de implementar este componente. 
  + El usuario del sistema que ejecuta este componente debe tener permisos de administrador o raíz. Como alternativa, puede ejecutar este componente como usuario del sistema en el grupo `docker` y configurar la opción `requiresPrivileges` de este componente `false` para ejecutar el agente MQTT de EQMX sin privilegios.
+ Se admite la ejecución del componente agente MQTT de EMQX en una VPC.
+ No se admite el componente agente MQTT de EMQX en la plataforma `armv7`.

## Dependencias
<a name="mqtt-broker-emqx-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#mqtt-broker-emqx-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.0.2 – 2.0.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.6.0 | Flexible | 

------
#### [ 2.0.1 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.6.0 | Rígido | 

------
#### [ 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 | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.5.0 | Rígido | 

------
#### [ 1.2.2 – 1.2.3 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.2.2 a 1.2.3 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.5.0 | Rígido | 

------
#### [ 1.2.0 and 1.2.1 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.2.0 y 1.2.1 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.4.0 | Rígido | 

------
#### [ 1.0.0 and 1.1.0 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.0.0 y 1.1.0 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.3.0 | Rígido | 

------

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="mqtt-broker-emqx-component-configuration"></a>

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

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

**importante**  
Si utiliza la versión 2 del componente agente MQTT 5 (EMQX), debe actualizar el archivo de configuración. Los archivos de configuración de la versión 1 no funcionan con la versión 2.

emqxConfig  
 (Opcional) La configuración del agente [EMQX MQTT](https://www.emqx.io/docs/en/v5.1/configuration/configuration.html) que se va a utilizar. Puede configurar las opciones de configuración de EMQX en este componente.  
Cuando se utiliza el agente EMQX, Greengrass utiliza una configuración predeterminada. Esta configuración se utiliza a menos que la modifique mediante este campo.  
La modificación de los siguientes ajustes de configuración provoca el reinicio del componente agente EMQX. Se aplican otros cambios de configuración sin reiniciar el componente.  
+ `emqxConfig/cluster`
+ `emqxConfig/node`
+ `emqxConfig/rpc`
`aws.greengrass.clientdevices.mqtt.EMQX` permite configurar opciones sensibles a la seguridad. Estas incluyen la configuración de TLS, la autenticación y los proveedores de autorización. Recomendamos la configuración predeterminada que utiliza la autenticación TLS mutua y el proveedor de autenticación de dispositivos de cliente Greengrass.

**Example Ejemplo: configuración predeterminada**  
El siguiente ejemplo muestra los valores predeterminados establecidos para el agente MQTT 5 (EMQX). Puede anular estos parámetros mediante el ajuste de configuración `emqxConfig`.  

```
{
  "authorization": {
    "no_match": "deny",
    "sources": []
  },
  "node": {
    "cookie": "<placeholder>"
  }, 
  "listeners": {
     "ssl": {
       "default": {
         "ssl_options": {
           "keyfile": "{work:path}\\data\\key.pem",
           "certfile": "{work:path}\\data\\cert.pem",
           "cacertfile": null,
           "verify": "verify_peer",
           "versions": ["tlsv1.3", "tlsv1.2"],
           "fail_if_no_peer_cert": true
         }
       }
     },
     "tcp": {
       "default": {
         "enabled": false
       }
     },
     "ws": {
       "default": {
         "enabled": false
       }
     },
     "wss": {
       "default": {
         "enabled": false
       }
     }
  },
  "plugins": {
    "states": [{"name_vsn": "gg-1.0.0", "enable": true}],
    "install_dir": "plugins"
  }
}
```

authMode  
(Opcional) Establece el proveedor de autorización del agente. Puede ser uno de los siguientes valores:  
+ `enabled`: (predeterminado) utilice el proveedor de autenticación y autorización de Greengrass.
+ `bypass_on_failure`: utilice el proveedor de autenticación de Greengrass y, a continuación, utilice los demás proveedores de autenticación de la cadena de proveedores de EMQX si Greengrass deniega la autenticación o la autorización.
+ `bypass`: el proveedor de Greengrass está deshabilitado. La cadena de proveedores de EMQX gestiona la autenticación y la autorización.

`requiresPrivilege`  
(Opcional) En los dispositivos principales de Linux, puede especificar que se ejecute el agente de MQTT EMQX sin privilegios de administrador o raíz. Si establece esta opción en `false`, el usuario del sistema que ejecute este componente debe ser miembro del grupo `docker`.  
Valor predeterminado: `true`

`startupTimeoutSeconds`  
(Opcional) El tiempo máximo en segundos para que se inicie el agente de MQTT EMQX. El estado del componente cambia a `BROKEN` si supera este tiempo de espera.  
Valor predeterminado: `90`

`ipcTimeoutSeconds`  
(Opcional) El tiempo máximo en segundos que tarda el componente en esperar a que el núcleo de Greengrass responda a las solicitudes de comunicación entre procesos (IPC). Aumente este número si este componente informa de errores de tiempo de espera al comprobar si un dispositivo de cliente está autorizado.  
Valor predeterminado: `5`

`crtLogLevel`  
(Opcional) El nivel de registro de la biblioteca AWS Common Runtime (CRT).  
El valor predeterminado es el nivel de registro del agente de MQTT EMQX (`log.level` en `emqx`).

`restartIdentifier`  
(Opcional) Configure esta opción para reiniciar el agente de MQTT EMQX. Cuando este valor de configuración cambia, este componente reinicia el agente de MQTT. Puede utilizar esta opción para forzar la desconexión de los dispositivos de cliente.

`dockerOptions`  
(Opcional) Configure esta opción solo en los sistemas operativos Linux para agregar parámetros a la línea de comandos de Docker. Por ejemplo, para asignar puertos adicionales, utilice el parámetro `-p` de Docker:  

```
"-p 1883:1883"
```

**Example Ejemplo: actualizar un archivo de configuración de la versión 1.x a la versión 2.x**  
El siguiente ejemplo muestra los cambios necesarios para actualizar un archivo de configuración de la versión 1.x a la versión 2.x.  
El archivo de configuración de la versión 1.x:  

```
{
    "emqx": {
        "listener.ssl.external": "443",
        "listener.ssl.external.max_connections": "1024000",
        "listener.ssl.external.max_conn_rate": "500",
        "listener.ssl.external.rate_limit": "50KB,5s",
        "listener.ssl.external.handshake_timeout": "15s",
        "log.level": "warning"
    },
    "mergeConfigurationFiles": {
        "etc/plugins/aws_greengrass_emqx_auth.conf": "auth_mode=enabled\n use_greengrass_managed_certificates=true\n"
    }
}
```
El archivo de configuración equivalente para la versión 2:  

```
{
    "emqxConfig": {
        "listeners": {
            "ssl": {
                "default": {
                   "bind": "8883",
                   "max_connections": "1024000",
                   "max_conn_rate": "500",
                   "ssl_options": {
                        "handshake_timeout": "15s"
                   }
                }
            }
        },
        "log": {
            "console": {
              "enable": true,
              "level": "warning"
            }
        }
    },
    "authMode": "enabled"
}
```
No hay ningún equivalente a la entrada `listener.ssl.external.rate_limit` de configuración. La opción `use_greengrass_managed_certificates` de configuración se ha eliminado.

**Example Ejemplo: establecer un puerto nuevo para el agente**  
El siguiente ejemplo cambia el puerto en el que opera el agente de MQTT del 8883 predeterminado al puerto 1234. Si utiliza Linux, incluya el campo `dockerOptions`.  

```
{
  "emqxConfig": {
    "listeners": {
      "ssl": {
        "default": {
          "bind": 1234
        }
      }
    }
  },
  "dockerOptions": "-p 1234:1234"
}
```

**Example Ejemplo: ajustar el nivel de registro del agente de MQTT**  
El siguiente ejemplo cambia el nivel de registro del agente de MQTT a `debug`. Puede elegir entre los siguientes niveles de registro:  
+ `debug`
+ `info`
+ `notice`
+ `warning`
+ `error`
+ `critical`
+ `alert`
+ `emergency`
El nivel de registro predeterminado es `warning`.  

```
{
  "emqxConfig": {
    "log": {
      "console": {
         "level": "debug"
      }
    }
  }
}
```

**Example Ejemplo: habilitar el panel de EMQX**  
El siguiente ejemplo habilita el panel de EMQX para que pueda monitorear y administrar su agente. Si utiliza Linux, incluya el campo `dockerOptions`.   

```
{
  "emqxConfig": {
    "dashboard": {
      "listeners": {
        "http": {
          "bind": 18083
        }
      }
    }
  },
  "dockerOptions": "-p 18083:18083"
}
```

------
#### [ 1.0.0 - 1.2.2 ]

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

`emqx`  
(Opcional) La configuración del agente [EMQX MQTT](https://www.emqx.io/docs/en/v4.4/configuration/configuration.html) que se va a utilizar. Puede configurar un subconjunto de opciones de configuración de EMQX en este componente.  
Este objeto contiene la siguiente información:    
`listener.ssl.external`  
(Opcional) El puerto en el que opera el agente de MQTT.  
<a name="mqtt-broker-configuration-mqtt-bridge-requirement"></a>Si especifica un puerto diferente y utiliza el [componente de puente MQTT](mqtt-bridge-component.md) para retransmitir mensajes MQTT a otros intermediarios, debe utilizar el puente de MQTT versión 2.1.0 o posterior. Configúrelo para que use el puerto en el que opera el agente MQTT.  
<a name="mqtt-broker-configuration-ip-detector-requirement"></a>Si especifica un puerto diferente y utiliza el [componente IP detector](ip-detector-component.md) para administrar los puntos de conexión del agente MQTT, debe utilizar la versión 2.1.0 o posterior del detector IP. Configúrelo para que informe el puerto en el que opera el agente MQTT.
Valor predeterminado: `8883`  
`listener.ssl.external.max_connections`  
(Opcional) el número máximo de conexiones simultáneas que admite el agente MQTT.  
Valor predeterminado: `1024000`  
`listener.ssl.external.max_conn_rate`  
(Opcional) El número máximo de conexiones nuevas por segundo que puede recibir el agente de MQTT.  
Valor predeterminado: `500`  
`listener.ssl.external.rate_limit`  
(Opcional) El límite de ancho de banda para todas las conexiones al agente de MQTT. Especifique el ancho de banda y la duración de ese ancho de banda separados por una coma (`,`) en el siguiente formato: `bandwidth,duration`. Por ejemplo, puede especificar `50KB,5s` para limitar el agente de MQTT a 50 kilobytes (KB) de datos cada 5 segundos.  
`listener.ssl.external.handshake_timeout`  
(Opcional) El tiempo que espera el agente de MQTT para terminar de autenticar una nueva conexión.  
Valor predeterminado: `15s`  
`mqtt.max_packet_size`  
(Opcional) El tamaño máximo de un mensaje MQTT.  
Predeterminado: `268435455` (256 MB menos 1)  
`log.level`  
(Opcional) El nivel de registro del agente de MQTT. Puede elegir entre las siguientes opciones:  
+ `debug`
+ `info`
+ `notice`
+ `warning`
+ `error`
+ `critical`
+ `alert`
+ `emergency`
El nivel de registro predeterminado es `warning`.

`requiresPrivilege`  
(Opcional) En los dispositivos principales de Linux, puede especificar que se ejecute el agente de MQTT EMQX sin privilegios de administrador o raíz. Si establece esta opción en `false`, el usuario del sistema que ejecute este componente debe ser miembro del grupo `docker`.  
Valor predeterminado: `true`

`startupTimeoutSeconds`  
(Opcional) El tiempo máximo en segundos para que se inicie el agente de MQTT EMQX. El estado del componente cambia a `BROKEN` si supera este tiempo de espera.  
Valor predeterminado: `90`

`ipcTimeoutSeconds`  
(Opcional) El tiempo máximo en segundos que tarda el componente en esperar a que el núcleo de Greengrass responda a las solicitudes de comunicación entre procesos (IPC). Aumente este número si este componente informa de errores de tiempo de espera al comprobar si un dispositivo de cliente está autorizado.  
Valor predeterminado: `5`

`crtLogLevel`  
(Opcional) El nivel de registro de la biblioteca AWS Common Runtime (CRT).  
El valor predeterminado es el nivel de registro del agente de MQTT EMQX (`log.level` en `emqx`).

`restartIdentifier`  
(Opcional) Configure esta opción para reiniciar el agente de MQTT EMQX. Cuando este valor de configuración cambia, este componente reinicia el agente de MQTT. Puede utilizar esta opción para forzar la desconexión de los dispositivos de cliente.

`dockerOptions`  
(Opcional) Configure esta opción solo en los sistemas operativos Linux para agregar parámetros a la línea de comandos de Docker. Por ejemplo, para asignar puertos adicionales, utilice el parámetro `-p` de Docker:  

```
"-p 1883:1883"
```

`mergeConfigurationFiles`  
(Opcional) Configure esta opción para agregar o anular los valores predeterminados de los archivos de configuración de EMQX especificados. Para obtener información sobre los archivos de configuración y sus formatos, consulte [Configuración](https://www.emqx.io/docs/en/v4.4/configuration/configuration.html) en la *documentación de EMQX 4.0*. Los valores que especifique se adjuntan al archivo de configuración.   
El siguiente ejemplo actualiza el archivo `etc/emqx.conf`.  

```
"mergeConfigurationFiles": {
    "etc/emqx.conf": "broker.sys_interval=30s\nbroker.sys_heartbeat=10s"
},
```
Además de los archivos de configuración compatibles con EMQX, Greengrass admite un archivo que configura el complemento de autenticación de Greengrass para EMQX llamado `etc/plugins/aws_greengrass_emqx_auth.conf`. Hay dos opciones compatibles: `auth_mode` y `use_greengrass_managed_certificates`. Para usar otro proveedor de autenticación, defina la opción `auth_mode` en una de las siguientes opciones:  
+ `enabled`: (predeterminado) utilice el proveedor de autenticación y autorización de Greengrass.
+ `bypass_on_failure`: utilice el proveedor de autenticación de Greengrass y, a continuación, utilice los demás proveedores de autenticación de la cadena de proveedores de EMQX si Greengrass deniega la autenticación o la autorización.
+ `bypass`: el proveedor de Greengrass está deshabilitado. La cadena de proveedores de EMQX gestiona la autenticación y la autorización.
Si `use_greengrass_managed_certificates` es `true`, esta opción indica que Greengrass administra los certificados TLS del agente. Si `false`, indica que proporciona los certificados a través de otro origen.  
En el siguiente ejemplo, se actualizan los valores predeterminados del archivo `etc/plugins/aws_greengrass_emqx_auth.conf` de configuración.  

```
"mergeConfigurationFiles": {
    "etc/plugins/aws_greengrass_emqx_auth.conf": "auth_mode=enabled\n use_greengrass_managed_certificates=true\n"
  },
```
`aws.greengrass.clientdevices.mqtt.EMQX` permite configurar opciones sensibles a la seguridad. Estas incluyen la configuración de TLS, la autenticación y los proveedores de autorización. La configuración recomendada es la configuración predeterminada que utiliza autenticación TLS mutua y el proveedor de autenticación de dispositivo de cliente de Greengrass.

`replaceConfigurationFiles`  
(Opcional) Configure esta opción para reemplazar los archivos de configuración de EMQX especificados. Los valores que especifique reemplazan todo el archivo de configuración existente. No puede especificar el archivo `etc/emqx.conf` en esta sección. Debe usar `mergeConfigurationFile` para modificar `etc/emqx.conf`.

**Example Ejemplo: actualización de la combinación de configuraciones**  
El siguiente ejemplo de configuración especifica el funcionamiento del agente de MQTT en el puerto 443.  

```
{
  "emqx": {
    "listener.ssl.external": "443",
    "listener.ssl.external.max_connections": "1024000",
    "listener.ssl.external.max_conn_rate": "500",
    "listener.ssl.external.rate_limit": "50KB,5s",
    "listener.ssl.external.handshake_timeout": "15s",
    "log.level": "warning"
  },
  "requiresPrivilege": "true",
  "startupTimeoutSeconds": "90",
  "ipcTimeoutSeconds": "5"
}
```

------

## Archivo de registro local
<a name="mqtt-broker-emqx-component-log-file"></a>

Este componente usa el siguiente archivo de registro.

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

```
/greengrass/v2/logs/aws.greengrass.clientdevices.mqtt.EMQX.log
```

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

```
C:\greengrass\v2\logs\aws.greengrass.clientdevices.mqtt.EMQX.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:\$1greengrass\$1v2* por la ruta a la carpeta AWS IoT Greengrass raíz.

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

  ```
  sudo tail -f /greengrass/v2/logs/aws.greengrass.clientdevices.mqtt.EMQX.log
  ```

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

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.clientdevices.mqtt.EMQX.log -Tail 10 -Wait
  ```

------

## Licencias
<a name="mqtt-broker-emqx-component-licenses"></a>

En los sistemas operativos Windows, este software incluye código distribuido según los [términos de licencia del software de Microsoft: Microsoft Visual Studio Community 2022](https://visualstudio.microsoft.com/license-terms/vs2022-ga-community). Al descargar este software, acepta los términos de licencia del código.

<a name="component-core-software-license"></a>Este conector se publica en el [Contrato de Licencia de Software de Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Registros de cambios
<a name="mqtt-broker-emqx-component-changelog"></a>

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

------
#### [ v2.x ]


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.0.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
|  2.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
|  2.0.1  |  Versión actualizada para la versión 2.5.0 de [autenticación de dispositivos de cliente](client-device-auth-component.md).  | 
| 2.0.0 | Esta versión del agente MQTT 5 (EMQX) espera parámetros de configuración diferentes a los de la versión 1.x. Si utiliza una configuración no predeterminada para la versión 1.x, debe actualizar la configuración del componente para la versión 2.x. Para obtener más información, consulte [Configuración](#mqtt-broker-emqx-component-configuration). [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-emqx-component.html) | 

------
#### [ v1.x ]


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  1.2.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
|  1.2.2  |  Versión actualizada para la versión 2.4.0 de [autenticación de dispositivos de cliente](client-device-auth-component.md).  | 
|  1.2.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
|  1.2.0  |  Se agregó compatibilidad con las cadenas de certificados.  | 
|  1.1.0  | <a name="changelog-emqx-1.1.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-emqx-component.html) | 
|  1.0.1  |  Corrige un problema durante el protocolo de enlace TLS que provocaba que algunos clientes MQTT no pudieran conectarse.  | 
|  1.0.0  |  Versión inicial.  | 

------

# Emisor de telemetría del núcleo
<a name="nucleus-emitter-component"></a>

El componente emisor de telemetría nuclear (`aws.greengrass.telemetry.NucleusEmitter`) recopila datos de telemetría de salud del sistema y los publica continuamente sobre un tema local y otro sobre el MQTT. AWS IoT Core Este componente le permite recopilar la telemetría del sistema en tiempo real en sus dispositivos principales de Greengrass. Para obtener información sobre el agente de telemetría de Greengrass que publica los datos de telemetría del sistema en Amazon, consulte. EventBridge [Recopile datos de telemetría del estado del sistema de los dispositivos principales AWS IoT Greengrass](telemetry.md)

De forma predeterminada, el componente emisor de telemetría del núcleo publica los datos de telemetría cada 60 segundos en el siguiente tema local. publish/subscribe 

```
$local/greengrass/telemetry
```

De forma predeterminada, el componente emisor de telemetría nuclear no se publica en ningún tema de MQTT. AWS IoT Core Puede configurar este componente para que se publique en un tema de AWS IoT Core MQTT al implementarlo. [El uso de un tema de MQTT para publicar datos en el Nube de AWS está sujeto a AWS IoT Core los precios.](https://aws.amazon.com/iot-core/pricing/)

<a name="greengrass-software-catalog-influxdb-telemetry-publisher"></a>AWS IoT Greengrass proporciona varios [componentes comunitarios](greengrass-software-catalog.md) para ayudarlo a analizar y visualizar los datos de telemetría localmente en su dispositivo principal mediante InfluxDB y Grafana. Estos componentes utilizan datos de telemetría del componente emisor de núcleo. Para obtener más información, consulte el archivo README para el [componente publicador de InfluxDB](https://github.com/awslabs/aws-greengrass-labs-telemetry-influxdbpublisher).

**Topics**
+ [Versiones](#nucleus-emitter-component-versions)
+ [Tipo](#nucleus-emitter-component-type)
+ [Sistema operativo](#nucleus-emitter-component-os-support)
+ [Dependencias](#nucleus-emitter-component-dependencies)
+ [Configuración](#nucleus-emitter-component-configuration)
+ [Datos de salida](#nucleus-emitter-component-output-data)
+ [De uso](#nucleus-emitter-component-usage)
+ [Archivo de registro local](#nucleus-emitter-component-log-file)
+ [Registros de cambios](#nucleus-emitter-component-changelog)

## Versiones
<a name="nucleus-emitter-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 1.0.x

## Tipo
<a name="nucleus-emitter-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="nucleus-emitter-component-os-support"></a>

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

## Dependencias
<a name="nucleus-emitter-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#nucleus-emitter-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**.

------
#### [ 1.0.12 ]

La siguiente tabla muestra las dependencias de la versión 1.0.12 de este componente.


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

------
#### [ 1.0.11 ]

La siguiente tabla muestra las dependencias de la versión 1.0.11 de este componente.


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

------
#### [ 1.0.10 ]

LEn la siguiente tabla, se muestran las dependencias de la versión 1.0.10 de este componente.


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

------
#### [ 1.0.9 ]

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


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

------
#### [ 1.0.8 ]

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


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

------
#### [ 1.0.7 ]

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


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

------
#### [ 1.0.6 ]

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


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

------
#### [ 1.0.5 ]

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


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

------
#### [ 1.0.4 ]

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


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

------
#### [ 1.0.3 ]

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


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

------
#### [ 1.0.2 ]

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


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

------
#### [ 1.0.1 ]

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


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

------
#### [ 1.0.0 ]

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


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

------

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="nucleus-emitter-component-configuration"></a>

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

`pubSubPublish`  
(Opcional) Define si se deben publicar los datos de telemetría en el tema `$local/greengrass/telemetry`. Los valores admitidos son `true` y `false`.  
Valor predeterminado: `true`

`mqttTopic`  
(Opcional) El tema de AWS IoT Core MQTT en el que este componente publica datos de telemetría.  
Establezca este valor en el tema AWS IoT Core MQTT en el que desee publicar los datos de telemetría. Cuando este valor está vacío, el emisor del núcleo no publica los datos de telemetría en la Nube de AWS.   
[El uso de un tema de MQTT para publicar datos en el Nube de AWS está sujeto a los precios.AWS IoT Core](https://aws.amazon.com/iot-core/pricing/)
Valor predeterminado: `""`

`telemetryPublishIntervalMs`  
(Opcional) Cantidad de tiempo (en milisegundos) que el componente publica los datos de telemetría. Si establece este valor por debajo del valor mínimo admitido, el componente utilizará el valor mínimo en su lugar.  
Los intervalos de publicación más bajos dan como resultado un mayor uso de la CPU en el dispositivo principal. Le recomendamos empezar con el intervalo de publicación predeterminado y ajustarlo en función del uso de la CPU del dispositivo.
Mínimo: `500`  
Valor predeterminado: `60000`

**Example Ejemplo: actualización de la combinación de configuraciones**  
El siguiente ejemplo muestra un ejemplo de actualización de combinación de configuraciones que permite publicar datos de telemetría cada 5 segundos en el `$local/greengrass/telemetry` tema y en el tema MQTT. `greengrass/myTelemetry` AWS IoT Core   

```
{
  "pubSubPublish": "true",
  "mqttTopic": "greengrass/myTelemetry",
  "telemetryPublishIntervalMs": 5000
}
```

## Datos de salida
<a name="nucleus-emitter-component-output-data"></a>

Este componente publica las métricas de telemetría como una matriz JSON en el tema siguiente. 

**Tema local:** `$local/greengrass/telemetry`

Si lo desea, puede optar por publicar también las métricas de telemetría en un tema de MQTT. AWS IoT Core Para obtener más información, consulte [Temas de MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) en la *Guía para desarrolladores de AWS IoT Core *.

**Example Datos de ejemplo**  

```
[
  {
    "A": "Average",
    "N": "CpuUsage",
    "NS": "SystemMetrics",
    "TS": 1627597331445,
    "U": "Percent",
    "V": 26.21981271562346
  },
  {
    "A": "Count",
    "N": "TotalNumberOfFDs",
    "NS": "SystemMetrics",
    "TS": 1627597331445,
    "U": "Count",
    "V": 7316
  },
  {
    "A": "Count",
    "N": "SystemMemUsage",
    "NS": "SystemMetrics",
    "TS": 1627597331445,
    "U": "Megabytes",
    "V": 10098
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsStarting",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 0
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsInstalled",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 0
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsStateless",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 0
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsStopping",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 0
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsBroken",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 0
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsRunning",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 7
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsErrored",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 0
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsNew",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 0
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsFinished",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 2
  }
]
```<a name="telemetry-json-array-config"></a>

La matriz de salida contiene una lista de métricas que tienen las siguientes propiedades:

`A`  
El tipo de agregación de las métricas.   
Para la métrica `CpuUsage`, esta propiedad se establece en `Average` porque el valor publicado de la métrica es la cantidad media de uso de la CPU desde el último evento de publicación.  
Para el resto de las métricas, el emisor del núcleo no agrega el valor de la métrica y esta propiedad se establece en `Count`.

`N`  
El nombre de la métrica.

`NS`  
Espacio de nombres de la métrica.

`TS`  
Marca temporal del momento en que se recopilaron los datos.

`U`  
La unidad del valor métrico.

`V`  
El valor de la métrica de . 

El emisor del núcleo publica las siguientes métricas:


| Name | Description (Descripción) | 
| --- | --- | 
|  **System (Sistema)**  | 
|  `SystemMemUsage`  |  La cantidad de memoria que utilizan actualmente todas las aplicaciones del dispositivo principal de Greengrass, incluido el sistema operativo.  | 
|  `CpuUsage`  |  La cantidad de CPU que utilizan actualmente todas las aplicaciones del dispositivo principal de Greengrass, incluido el sistema operativo.  | 
|  `TotalNumberOfFDs`  |  El número de descriptores de archivos almacenados por el sistema operativo del dispositivo principal de Greengrass. Un descriptor de archivo identifica exclusivamente un archivo abierto.  | 
|  **Núcleo de Greengrass**  | 
|  `NumberOfComponentsRunning`  |  El número de componentes que se ejecutan en el dispositivo principal de Greengrass.  | 
|  `NumberOfComponentsErrored`  |  El número de componentes que están en estado de error en el dispositivo principal de Greengrass.  | 
|  `NumberOfComponentsInstalled`  |  El número de componentes instalados en el dispositivo principal de Greengrass.  | 
|  `NumberOfComponentsStarting`  |  El número de componentes que se inician en el dispositivo principal de Greengrass.  | 
|  `NumberOfComponentsNew`  |  El número de componentes nuevos en el dispositivo principal de Greengrass.  | 
|  `NumberOfComponentsStopping`  |  El número de componentes que se detienen en el dispositivo principal de Greengrass.  | 
|  `NumberOfComponentsFinished`  |  El número de componentes terminados en el dispositivo principal de Greengrass.  | 
|  `NumberOfComponentsBroken`  |  El número de componentes dañados en el dispositivo principal de Greengrass.  | 
|  `NumberOfComponentsStateless`  |  El número de componentes sin estado en el dispositivo principal de Greengrass.  | 

## De uso
<a name="nucleus-emitter-component-usage"></a>

Para utilizar los datos de telemetría del estado del sistema, puede crear componentes personalizados que se adapten a los temas en los que el emisor del núcleo publica los datos de telemetría y que reaccionen a esos datos según sea necesario. Como el componente emisor del núcleo ofrece la opción de publicar datos de telemetría en un tema local, puede suscribirse a ese tema y utilizar los datos publicados para actuar de forma local en su dispositivo principal. De este modo, el dispositivo principal puede reaccionar a los datos de telemetría incluso cuando su conectividad a la nube sea limitada.

Por ejemplo, puede configurar un componente que escuche el tema `$local/greengrass/telemetry` en busca de datos de telemetría y envíe los datos al componente del administrador de flujos para transmitir sus datos a la Nube de AWS. Para obtener más información sobre cómo crear este componente, consulte [Publicar/suscribir mensajes locales](ipc-publish-subscribe.md) y [Creación de componentes personalizados que usen el administrador de flujos](use-stream-manager-in-custom-components.md).

## Archivo de registro local
<a name="nucleus-emitter-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:\$1greengrass\$1v2* por la ruta a la AWS IoT Greengrass carpeta 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="nucleus-emitter-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  1.0.12  |  Versión actualizada para la versión 2.16.0 de Greengrass nucleus.  | 
|  1.0.11  | Versión actualizada para la versión 2.15.0 de Greengrass nucleus. | 
|  1.0.10  | Versión actualizada para la versión 2.14.0 de Greengrass nucleus. | 
|  1.0.9  | Versión actualizada para el lanzamiento de la versión 2.13.0 del núcleo de Greengrass. | 
|  1.0.8  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  1.0.7  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  1.0.6  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  1.0.5  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  1.0.4  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  1.0.3  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  1.0.2  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  1.0.1  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  1.0.0  |  Versión inicial.  | 

# Proveedor PKCS\$111
<a name="pkcs11-provider-component"></a>

El componente proveedor PKCS\$111 (`aws.greengrass.crypto.Pkcs11Provider`) le permite configurar el software AWS IoT Greengrass Core para utilizar un módulo de seguridad de hardware (HSM) a través de la [interfaz PKCS\$111](https://en.wikipedia.org/wiki/PKCS_11). Esta característica le permite almacenar de forma segura los archivos de certificados y claves privadas para que no queden expuestos ni duplicados en el software. Para obtener más información, consulte [Integración de la seguridad de hardware](hardware-security.md).

Para aprovisionar un dispositivo principal de Greengrass que almacene su certificado y su clave privada en un HSM, debe especificar este componente como un complemento de aprovisionamiento al instalar el software Core. AWS IoT Greengrass Para obtener más información, consulte [Instale el software AWS IoT Greengrass principal con aprovisionamiento manual de recursos](manual-installation.md).

AWS IoT Greengrass proporciona este componente como un archivo JAR que puede descargar para especificarlo como complemento de aprovisionamiento durante la instalación. Puede descargar la última versión del archivo JAR del componente en la siguiente URL: [https://d2s8p88vqu9w66.cloudfront. net/releases/Pkcs11Provider/aws.greengrass.crypto.pkcs11Provider-latest.jar](https://d2s8p88vqu9w66.cloudfront.net/releases/Pkcs11Provider/aws.greengrass.crypto.Pkcs11Provider-latest.jar).

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

## Versiones
<a name="pkcs11-provider-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.0.x

## Tipo
<a name="pkcs11-provider-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="pkcs11-provider-component-os-support"></a>

Este componente solo se puede instalar en los dispositivos principales de Linux.

## Requisitos
<a name="pkcs11-provider-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ <a name="hardware-security-module-requirements-key"></a>Un módulo de seguridad de hardware que admite el esquema de firmas [PKCS\$11 versión 1.5](https://tools.ietf.org/html/rfc2313) y claves RSA con un tamaño de clave RSA-2048 (o mayor) o claves ECC.
**nota**  <a name="hardware-security-module-requirements-key-notes"></a>
Para utilizar un módulo de seguridad de hardware con claves ECC, debe utilizar la versión del [núcleo de Greengrass](greengrass-nucleus-component.md) 2.5.6 o posterior.  
Para usar un módulo de seguridad de hardware y el [administrador de secretos](secret-manager-component.md), debe usar un módulo de seguridad de hardware con claves RSA.
+ <a name="hardware-security-module-requirements-pkcs11-provider-library"></a>Una biblioteca de proveedores de PKCS \$111 que el software AWS IoT Greengrass principal puede cargar en tiempo de ejecución (mediante libdl) para invocar las funciones de PKCS \$111. La biblioteca de proveedores PKCS\$111 debe implementar las siguientes operaciones de la API de PKCS\$111:
  + `C_Initialize`
  + `C_Finalize`
  + `C_GetSlotList`
  + `C_GetSlotInfo`
  + `C_GetTokenInfo`
  + `C_OpenSession`
  + `C_GetSessionInfo`
  + `C_CloseSession`
  + `C_Login`
  + `C_Logout`
  + `C_GetAttributeValue`
  + `C_FindObjectsInit`
  + `C_FindObjects`
  + `C_FindObjectsFinal`
  + `C_DecryptInit`
  + `C_Decrypt`
  + `C_DecryptUpdate`
  + `C_DecryptFinal`
  + `C_SignInit`
  + `C_Sign`
  + `C_SignUpdate`
  + `C_SignFinal`
  + `C_GetMechanismList`
  + `C_GetMechanismInfo`
  + `C_GetInfo`
  + `C_GetFunctionList`
+ <a name="hardware-security-module-requirements-slot-label"></a>El módulo de hardware debe resolverlo la etiqueta de ranura, tal y como se define en la especificación de PKCS\$111.
+ <a name="hardware-security-module-requirements-private-key-and-certificate"></a>Debe almacenar la clave privada y el certificado en el HSM, en la misma ranura, y deben usar la misma etiqueta de objeto e ID de objeto, si el HSM admite el objeto. IDs
+ <a name="hardware-security-module-requirements-object-label"></a>El certificado y la clave privada debe poder resolverla con etiquetas de objeto.
+ <a name="hardware-security-module-requirements-private-key-permissions"></a>La clave privada debe tener los siguientes permisos:
  + `sign`
  + `decrypt`
+ <a name="hardware-security-module-requirements-secret-manager-permissions"></a>(Opcional) Para usar el [componente administrador de secretos](secret-manager-component.md), debe usar la versión 2.1.0 o posterior y la clave privada debe tener los siguientes permisos:
  + `unwrap`
  + `wrap`
+ <a name="hardware-security-module-requirements-environment-variable"></a>(Opcional) Si utiliza la TPM2 biblioteca y ejecuta el núcleo de Greengrass como servicio, debe proporcionar una variable de entorno con la ubicación del almacén PKCS \$111. El siguiente ejemplo es un archivo de servicio de systemd con la variable de entorno requerida:

  ```
  [Unit]
  Description=Greengrass Core
  After=network.target
  
  [Service]
  Type=simple
  PIDFile=/var/run/greengrass.pid
  Environment=TPM2_PKCS11_STORE=/path/to/store/directory
  RemainAfterExit=no
  Restart=on-failure
  RestartSec=10
  ExecStart=/bin/sh /greengrass/v2/alts/current/distro/bin/loader
  
  [Install]
  WantedBy=multi-user.target
  ```

## Dependencias
<a name="pkcs11-provider-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#pkcs11-provider-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.0.11 ]

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


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

------
#### [ 2.0.10 ]

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


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

------
#### [ 2.0.9 ]

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


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

------
#### [ 2.0.8 ]

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


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

------
#### [ 2.0.7 ]

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


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

------
#### [ 2.0.6 ]

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


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

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

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


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

------
#### [ 2.0.4 ]

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


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

------
#### [ 2.0.3 ]

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


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

------
#### [ 2.0.2 ]

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


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

------
#### [ 2.0.1 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.5.3 <2.7.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.5.3 <2.6.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="pkcs11-provider-component-configuration"></a>

Este componente ofrece los siguientes parámetros de configuración que puede personalizar cuando implemente el componente.<a name="pkcs11-provider-component-configuration-parameters"></a>

`name`  
Un nombre para la configuración de PKCS\$111.

`library`  
La ruta absoluta del archivo a la biblioteca de la implementación de PKCS \$111 que el software Core puede cargar con libdl. AWS IoT Greengrass 

`slot`  
El ID de la ranura que contiene la clave privada y el certificado del dispositivo. Este valor es diferente del índice o la etiqueta de la ranura.

`userPin`  
El PIN del usuario que se utiliza para acceder a la ranura.

**Example Ejemplo: actualización de la combinación de configuraciones**  

```
{
  "name": "softhsm_pkcs11",
  "library": "/usr/lib/softhsm/libsofthsm2.so",
  "slot": 1,
  "userPin": "1234"
}
```

## Archivo de registro local
<a name="pkcs11-provider-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:\$1greengrass\$1v2* 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="pkcs11-provider-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.0.11  |  Versión actualizada para la versión 2.16.0 de Greengrass nucleus.  | 
|  2.0.10  | Versión actualizada para el lanzamiento de la versión 2.15.0 de Greengrass nucleus. | 
|  2.0.9  | Versión actualizada para la versión 2.14.0 de Greengrass Nucleus. | 
|  2.0.8  | Versión actualizada para el lanzamiento de la versión 2.13.0 del núcleo de Greengrass. | 
|  2.0.7  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.0.6  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.0.5  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.0.4  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.0.3  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.0.2  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.0.1  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.0.0  |  Versión inicial.  | 

# Administrador de secretos
<a name="secret-manager-component"></a>

El componente administrador de secretos (`aws.greengrass.SecretManager`) implementa secretos desde AWS Secrets Manager a los dispositivos principales de Greengrass. Utilice este componente para utilizar de forma segura las credenciales, como las contraseñas, en los componentes personalizados de sus dispositivos principales de Greengrass. Para obtener más información acerca de Secrets Manager, consulte [¿Qué es AWS Secrets Manager?](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) en la *Guía del usuario de AWS Secrets Manager *.

Para acceder a los secretos de este componente en sus componentes personalizados de Greengrass, utilice la [GetSecretValue](ipc-secret-manager.md#ipc-operation-getsecretvalue)operación de. SDK para dispositivos con AWS IoT Para obtener más información, consulte [Úselo SDK para dispositivos con AWS IoT para comunicarse con el núcleo de Greengrass, otros componentes y AWS IoT CoreComuníquese con el núcleo de Greengrass, otros componentes y AWS IoT Core](interprocess-communication.md) y [Recupere valores secretos](ipc-secret-manager.md).

Este componente cifra los secretos del dispositivo principal para mantener sus credenciales y contraseñas seguras hasta que necesite usarlas. Utiliza la clave privada del dispositivo principal para cifrar y descifrar los secretos.

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

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

Este componente tiene las siguientes versiones:
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Tipo
<a name="secret-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="secret-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="secret-manager-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ El [rol del dispositivo de Greengrass](device-service-role.md) debe permitir la acción `secretsmanager:GetSecretValue`, tal como se muestra en la siguiente política de IAM de ejemplo.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "secretsmanager:GetSecretValue"
        ],
        "Effect": "Allow",
        "Resource": [
        "arn:aws:secretsmanager:us-east-1:123456789012:secret:MySecret"
        ]
      }
    ]
  }
  ```

------

  ```
  ```
**nota**  
Si utiliza una AWS Key Management Service clave gestionada por el cliente para cifrar los secretos, la función del dispositivo también debe permitir la acción. `kms:Decrypt`

  Para obtener más información sobre las políticas de IAM para el administrador de secretos, consulte los siguientes temas en la *Guía del usuario de AWS Secrets Manager *:
  + [Autenticación y control de acceso para AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access.html)
  + [Acciones, recursos y claves de contexto que puede utilizar en una política de IAM o política de secretos para AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/reference_iam-permissions.html)
+ Los componentes personalizados deben definir una política de autorización que permita a `aws.greengrass#GetSecretValue` obtener los secretos que se almacenan con este componente. En esta política de autorización, puede restringir el acceso de los componentes a secretos específicos. Para obtener más información, consulte [Autorización de IPC del administrador de secretos](ipc-secret-manager.md#ipc-secret-manager-authorization).
+ (Opcional) Si almacena la clave privada y el certificado del dispositivo principal en un [módulo de seguridad de hardware](hardware-security.md) (HSM), el HSM debe admitir las claves RSA, la clave privada debe tener el permiso `unwrap` y la clave pública debe tener el permiso `wrap`.

### Puntos de conexión y puertos
<a name="secret-manager-component-endpoints"></a>

Este componente debe poder realizar solicitudes salientes a los siguientes puntos de conexión y puertos, además de a los puntos de conexión y puertos necesarios para el funcionamiento básico. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).


| punto de enlace | Puerto | Obligatorio | Description (Descripción) | 
| --- | --- | --- | --- | 
|  `secretsmanager.region.amazonaws.com`  | 443 | Sí |  Descargue los secretos del dispositivo principal.  | 

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

Al implementar un componente, AWS IoT Greengrass también despliega 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](#secret-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.2.7 ]

En la siguiente tabla, se muestran las dependencias de la versión 2.2.7 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.2.6 ]

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


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

------
#### [ 2.2.2 – 2.2.5 ]

La siguiente tabla muestra las dependencias de las versiones 2.2.2 a 2.2.5 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.2.0 ]

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


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

------
#### [ 2.1.7 – 2.1.8 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.7 y 2.1.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.1.6 ]

En la siguiente tabla, se muestran las dependencias de la versión 2.1.6 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.1.5 ]

En la siguiente tabla, se muestran las dependencias de la versión 2.1.5 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.1.4 ]

En la siguiente tabla, se muestran las dependencias de la versión 2.1.4 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.1.3 ]

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


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

------
#### [ 2.1.2 ]

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


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

------
#### [ 2.1.1 ]

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


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

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

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


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

------
#### [ 2.0.9 ]

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


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

------
#### [ 2.0.8 ]

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


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

------
#### [ 2.0.7 ]

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


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

------
#### [ 2.0.6 ]

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


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

------
#### [ 2.0.4 and 2.0.5 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.3 <2.1.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="secret-manager-component-configuration"></a>

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

`periodicRefreshIntervalMin` (opcional)  
El intervalo en minutos en el que este componente sincroniza los secretos configurados en el dispositivo principal con los valores secretos más recientes del servicio. AWS Secrets Manager Si este intervalo no está configurado, el administrador de secretos no actualizará los secretos configurados periódicamente.  

```
{
  "cloudSecrets": [
    {
      "arn": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyGreengrassSecret-abcdef"
    }
  ],
  "periodicRefreshIntervalMin" : 60
}
```

`cloudSecrets`  
Una lista de los secretos del administrador de secretos para implementarlos en el dispositivo principal. Puede especificar etiquetas para definir qué versiones de cada secreto se van a implementar. Si no especifica ninguna versión, este componente implementa la versión con la etiqueta `AWSCURRENT` provisional adjunta. Para obtener más información, consulte [Etiquetas provisionales](https://docs.aws.amazon.com/secretsmanager/latest/userguide/terms-concepts.html#term_staging-label) en la *Guía del usuario de AWS Secrets Manager *.  
El componente de administrador de secretos almacena en caché los secretos de forma local. Si el valor secreto cambia en el administrador de secretos, este componente no recupera automáticamente el nuevo valor. Para actualizar la copia local, asigne una nueva etiqueta al secreto y configure este componente para recuperar el secreto identificado por la nueva etiqueta.  
Cada objeto contiene la siguiente información:    
`arn`  
El ARN del secreto a implementar. El ARN del secreto puede ser un ARN completo o parcial. Para un ARN, le recomendamos que especifique un ARN completo en lugar de un ARN parcial. Para obtener más información, consulte [Búsqueda de un secreto a partir de un ARN parcial](https://docs.aws.amazon.com/secretsmanager/latest/userguide/troubleshoot.html#ARN_secretnamehyphen). El siguiente es un ejemplo de un ARN completo y un ARN parcial:  
+ ARN completo: `arn:aws:secretsmanager:us-east-2:111122223333:secret:SecretName-abcdef`
+ ARN parcial: `arn:aws:secretsmanager:us-east-2:111122223333:secret:SecretName`  
`labels`  
(Opcional) Una lista de etiquetas para identificar las versiones del secreto que se van a implementar en el dispositivo principal.  
Cada etiqueta debe ser una cadena.

**Example Ejemplo: actualización de la combinación de configuraciones**  

```
{
  "cloudSecrets": [
    {
      "arn": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyGreengrassSecret-abcdef"
    }
  ]
}
```

## Archivo de registro local
<a name="secret-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:\$1greengrass\$1v2* 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="secret-manager-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.2.7  |  Versión actualizada para la versión 2.16.0 de Greengrass nucleus.  | 
|  2.2.6  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.2.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.2.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.2.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.2.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.2.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.1.8  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.1.7  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.1.6  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.1.5  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.1.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.1.3  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.1.2  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.1.1  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.0.9  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.0.8  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.0.7  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.0.6  |  Versión actualizada para el lanzamiento de la versión 2.1.0 del núcleo de Greengrass.  | 
|  2.0.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.0.4  |  Versión inicial.  | 

# Tunelización segura
<a name="secure-tunneling-component"></a>

Con el componente `aws.greengrass.SecureTunneling`, puede establecer una comunicación bidireccional segura con un dispositivo principal de Greengrass ubicado detrás de firewalls restringidos.

Por ejemplo, imagine que tiene un dispositivo principal de Greengrass detrás de un firewall que prohíbe todas las conexiones entrantes. La tunelización segura utiliza MQTT para transferir un token de acceso al dispositivo y, a continuación, se utiliza para establecer una conexión SSH con el dispositivo WebSockets a través del firewall. Con este túnel AWS IoT administrado, puede abrir la conexión SSH necesaria para su dispositivo. *Para obtener más información sobre el uso de la tunelización AWS IoT segura para conectarse a dispositivos remotos, consulte la tunelización [AWS IoT segura](https://docs.aws.amazon.com/iot/latest/developerguide/secure-tunneling.html) en la Guía para desarrolladores.AWS IoT *

Este componente se suscribe al agente de mensajes AWS IoT Core MQTT sobre el `$aws/things/greengrass-core-device/tunnels/notify` tema para recibir notificaciones de tunelización segura.

**Topics**
+ [Versiones](#secure-tunneling-component-versions)
+ [Tipo](#secure-tunneling-component-type)
+ [Sistema operativo](#secure-tunneling-component-os-support)
+ [Requisitos](#secure-tunneling-component-requirements)
+ [Dependencias](#secure-tunneling-component-dependencies)
+ [Configuración](#secure-tunneling-component-configuration)
+ [Archivo de registro local](#secure-tunneling-component-log-file)
+ [Licencias](#secure-tunneling-component-licenses)
+ [De uso](#secure-tunneling-component-usage)
+ [Véase también](#secure-tunneling-component-see-also)
+ [Registros de cambios](#secure-tunneling-component-changelog)

## Versiones
<a name="secure-tunneling-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 1.1.x
+ 1.0.x

## Tipo
<a name="secure-tunneling-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="secure-tunneling-component-os-support"></a>

Este componente solo se puede instalar en los dispositivos principales de Linux.

Arquitecturas:
+ Armv71
+ AArch64Armv8 ()
+ x86\$164

## Requisitos
<a name="secure-tunneling-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ Mínimo 32 MB de espacio en disco disponible para el componente de tunelización segura. Este requisito no incluye el software principal de Greengrass ni otros componentes que se ejecuten en el mismo dispositivo.
+ Mínimo 16 MB de RAM disponible para el componente de tunelización segura. Este requisito no incluye el software principal de Greengrass ni otros componentes que se ejecuten en el mismo dispositivo. Para obtener más información, consulte [Control de la asignación de memoria con las opciones de JVM](configure-greengrass-core-v2.md#jvm-tuning).
+ Se requiere la versión 2.25 o posterior de la biblioteca C GNU (glibc) con un núcleo de Linux 3.2 o posterior para el componente de tunelización segura, versión 1.0.12 o posterior. No se admiten las versiones del sistema operativo y las bibliotecas que hayan superado su fecha de fin de vida útil. Debe utilizar un sistema operativo y bibliotecas compatibles a largo plazo.
+ Tanto el sistema operativo como el motor de ejecución de Java deben estar instalados en 64 bits.
+ [Python](https://www.python.org/) 3.5 o posterior instalado en el dispositivo principal de Greengrass y agregado a la variable de entorno PATH.
+ `libcrypto.so.1.1` instalado en el dispositivo principal de Greengrass y agregado a la variable de entorno PATH.
+ Tráfico saliente abierto en el puerto 443 del dispositivo principal de Greengrass.
+ Active la compatibilidad con el servicio de comunicación que desee utilizar para comunicarse con el dispositivo principal de Greengrass. Por ejemplo, para abrir una conexión SSH con el dispositivo, debe activar SSH en ese dispositivo.

### Puntos de conexión y puertos
<a name="secure-tunneling-component-endpoints"></a>

 Este componente debe poder realizar solicitudes salientes a los siguientes puntos de conexión y puertos, además de a los puntos de conexión y puertos necesarios para el funcionamiento básico. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).


| punto de enlace | Puerto | Obligatorio | Description (Descripción) | 
| --- | --- | --- | --- | 
|  `data.tunneling.iot.region.amazonaws.com`  | 443 | Sí |  Establezca túneles seguros.  | 

## Dependencias
<a name="secure-tunneling-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#secure-tunneling-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**.

------
#### [ 1.0.19 – 1.1.3 ]

En la siguiente tabla se enumeran las dependencias de las versiones 1.0.19 a 1.1.3 de este componente.


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

------
#### [ 1.0.18 ]

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


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

------
#### [ 1.0.16 – 1.0.17 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.0.16 a 1.0.17 de este componente.


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

------
#### [ 1.0.14 – 1.0.15 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.0.14 a 1.0.15 de este componente.


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

------
#### [ 1.0.11 – 1.0.13 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.0.11 a 1.0.13 de este componente.


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

------
#### [ 1.0.10 ]

LEn la siguiente tabla, se muestran las dependencias de la versión 1.0.10 de este componente.


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

------
#### [ 1.0.9 ]

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


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

------
#### [ 1.0.8 ]

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


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

------
#### [ 1.0.5 - 1.0.7 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.0.5 a 1.0.7 de este componente.


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

------
#### [ 1.0.4 ]

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


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

------
#### [ 1.0.3 ]

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


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

------
#### [ 1.0.2 ]

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


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

------
#### [ 1.0.1 ]

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


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

------
#### [ 1.0.0 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.3 <2.1.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="secure-tunneling-component-configuration"></a>

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

`OS_DIST_INFO`  
(Opcional) El sistema operativo del dispositivo principal. De forma predeterminada, el componente intenta identificar automáticamente el sistema operativo que se ejecuta en el dispositivo principal. Si el componente no se inicia con el valor predeterminado, utilice este valor para especificar el sistema operativo. Para ver una lista completa de los sistemas operativos admitidos, consulte [Requisitos de los dispositivos](greengrass-nucleus-component.md#greengrass-v2-requirements).  
Este valor puede ser uno de los siguientes: `auto`, `ubuntu`, `amzn2`, `raspberrypi`.  
Valor predeterminado: `auto`

`accessControl`  
(Opcional) El objeto que contiene la [política de autorización](interprocess-communication.md#ipc-authorization-policies) que permite al componente suscribir mensajes en el tema de notificaciones de túnel seguro.   
No modifique este parámetro de configuración si la implementación se dirige a un grupo de objetos. Si su implementación se dirige a un dispositivo principal individual y desea restringir su suscripción al tema del dispositivo, especifique el nombre del objeto del dispositivo principal. En e valor `resources` de la política de autorización del dispositivo, sustituya el comodín del tema MQTT por el nombre del objeto del dispositivo. 

```
{
  "aws.greengrass.ipc.mqttproxy": {
    "aws.iot.SecureTunneling:mqttproxy:1": {
      "policyDescription": "Access to tunnel notification pubsub topic",
      "operations": [
        "aws.greengrass#SubscribeToIoTCore"
      ],
      "resources": [
        "$aws/things/+/tunnels/notify"
      ]
    }
  }
}
```

**Example Ejemplo: actualización de la combinación de configuraciones**  
El siguiente ejemplo de configuración especifica que se debe permitir que este componente abra túneles seguros en un dispositivo principal denominado **MyGreengrassCore** que ejecuta Ubuntu.  

```
{
  "OS_DIST_INFO": "ubuntu",
  "accessControl": {
    "aws.greengrass.ipc.mqttproxy": {
      "aws.iot.SecureTunneling:mqttproxy:1": {
        "policyDescription": "Access to tunnel notification pubsub topic",
        "operations": [
          "aws.greengrass#SubscribeToIoTCore"
        ],
        "resources": [
          "$aws/things/MyGreengrassCore/tunnels/notify"
        ]
      }
    }
  }
}
```

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

Este componente usa el siguiente archivo de registro.

```
/greengrass/v2/logs/aws.greengrass.SecureTunneling.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. `/greengrass/v2`Sustitúyala por la ruta a la carpeta raíz AWS IoT Greengrass .

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

## Licencias
<a name="secure-tunneling-component-licenses"></a>

Este componente incluye las siguientes licencias o software de terceros:
+ AWS IoT Licencia de [cliente](https://github.com/awslabs/aws-iot-device-client) de dispositivo/Apache 2.0
+ [AWS IoT Device SDK para Java](https://github.com/aws/aws-greengrass-core-sdk-java/)/Apache License 2.0
+ [gson](https://github.com/google/gson)/Apache License 2.0
+ [log4j](https://logging.apache.org/log4j/2.x/)/Apache License 2.0
+ [slf4j](http://www.slf4j.org/)/Apache License 2.0

## De uso
<a name="secure-tunneling-component-usage"></a>

Para usar el componente de tunelización segura en su dispositivo, haga lo siguiente:

1. Implemente el componente de tunelización segura en su dispositivo.

1. Abra la [consola de AWS IoT](https://console.aws.amazon.com/iot). En el menú de la izquierda, seleccione **Acciones remotas** y, a continuación, seleccione **Túneles seguros**.

1. Cree un túnel para su dispositivo de Greengrass. 

1. Descargue el token de acceso al origen.

1. Use el proxy local con el token de acceso al origen para conectarse a su destino. Para obtener más información, consulte [Cómo usar el proxy local](https://docs.aws.amazon.com/iot/latest/developerguide/how-use-local-proxy.html) en la *Guía del usuario de AWS IoT *.

## Véase también
<a name="secure-tunneling-component-see-also"></a>
+ [AWS IoT tunelización segura en la guía](https://docs.aws.amazon.com/iot/latest/developerguide/secure-tunneling.html) *para desarrolladores AWS IoT *
+ [Cómo usar el proxy local](https://docs.aws.amazon.com/iot/latest/developerguide/how-use-local-proxy.html) *en la Guía para desarrolladores de AWS IoT *

## Registros de cambios
<a name="secure-tunneling-component-changelog"></a>

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  1.1.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.1.2  |   Esta versión ya no está disponible. Las mejoras de esta versión están disponibles en versiones posteriores de este componente.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.1.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.0.19  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secure-tunneling-component.html)  Si utiliza el proxy local de tunelización segura como cliente de origen del túnel, no actualice el componente a esta versión hasta que también haya actualizado el proxy local a la versión 3.1.1 o posterior.   | 
|  1.0.18  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  1.0.17  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.0.16  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  1.0.15  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.0.14  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  1.0.13  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.0.12  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.0.11  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  1.0.10  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  1.0.9  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  1.0.8  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  1.0.7  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.0.6  |  Esta versión contiene correcciones de errores.  | 
|  1.0.5  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  1.0.4  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  1.0.3  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  1.0.2  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  1.0.1  |  Versión actualizada para el lanzamiento de la versión 2.1.0 del núcleo de Greengrass.  | 
|  1.0.0  |  Versión inicial.  | 

# 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 administrador 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 despliega 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 ]

La siguiente tabla muestra 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 ]

La siguiente tabla muestra 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 ]

La siguiente tabla muestra 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 y el dispositivo principal. AWS IoT Core   
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 AWS IoT Core en 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 que se dirigen a dispositivos principales individuales. Esta sombra denominada 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 sombra *thingName* para esta configuración de sombra.    
`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ía actualizaciones ocultas desde el servicio paralelo local al Nube de AWS e ignora las actualizaciones ocultas del 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.   
Valor predeterminado: 100 solicitudes por segundo  
`maxTotalLocalRequestsRate`  
(Opcional) El número máximo de solicitudes de IPC locales por segundo que se envían al dispositivo principal.   
Valor predeterminado: 200 solicitudes por segundo  
`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 usted 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 AWS IoT Core en 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 que se dirigen a dispositivos principales individuales. Esta sombra denominada 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 sombra *thingName* para esta configuración de sombra.    
`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ía actualizaciones ocultas desde el servicio paralelo local al Nube de AWS e ignora las actualizaciones ocultas del 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.   
Valor predeterminado: 100 solicitudes por segundo  
`maxTotalLocalRequestsRate`  
(Opcional) El número máximo de solicitudes de IPC locales por segundo que se envían al dispositivo principal.   
Valor predeterminado: 200 solicitudes por segundo  
`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 usted 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 AWS IoT Core en 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 que se dirigen a dispositivos principales individuales. Esta sombra denominada 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 sombra *thingName* para esta configuración de sombra.    
`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.   
Valor predeterminado: 100 solicitudes por segundo  
`maxTotalLocalRequestsRate`  
(Opcional) El número máximo de solicitudes de IPC locales por segundo que se envían al dispositivo principal.   
Valor predeterminado: 200 solicitudes por segundo  
`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 usted 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 que se dirigen a dispositivos principales individuales. Esta sombra denominada 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 sombra *thingName* para esta configuración de sombra.    
`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.   
Valor predeterminado: 100 solicitudes por segundo  
`maxTotalLocalRequestsRate`  
(Opcional) El número máximo de solicitudes de IPC locales por segundo que se envían al dispositivo principal.   
Valor predeterminado: 200 solicitudes por segundo  
`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 usted 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:\$1greengrass\$1v2* 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.13  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.12  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.11  | Versión actualizada para el lanzamiento de 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  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.7  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.6  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  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>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.3.3  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.3.2  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.1  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.0  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.2.4  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  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>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.1.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  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  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.0.3  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  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.  | 

# Amazon SNS
<a name="sns-component"></a>

El componente Amazon SNS (`aws.greengrass.SNS`) publica mensajes en un tema de Amazon Simple Notification Service (Amazon SNS). Puede usar este componente para enviar eventos desde los dispositivos principales de Greengrass a servidores web, direcciones de correo electrónico y otros suscriptores de mensajes. Para obtener más información, consulte [¿Qué es Amazon SNS?](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) en la *Guía para desarrolladores de Amazon Simple Notification Service*.

Para publicar en un tema de Amazon SNS con este componente, publique un mensaje en un tema al que se suscriba este componente. De forma predeterminada, este componente se suscribe al tema `sns/message` [de publicación/suscripción local](ipc-publish-subscribe.md). Puede especificar otros temas, incluidos los de AWS IoT Core MQTT, al implementar este componente.

En su componente personalizado, puede que desee implementar una lógica de filtrado o formato para procesar los mensajes de otros orígenes antes de publicarlos en este componente. Esto le permite centralizar la lógica de procesamiento de mensajes en un único componente.

**nota**  
Este componente proporciona una funcionalidad similar a la del conector Amazon SNS de la versión 1. AWS IoT Greengrass Para obtener información, consulte [Amazon SNS connector](https://docs.aws.amazon.com/greengrass/latest/developerguide/sns-connector.html) en la *Guía para desarrolladores de AWS IoT Greengrass V1*.

**Topics**
+ [Versiones](#sns-component-versions)
+ [Tipo](#sns-component-type)
+ [Sistema operativo](#sns-component-os-support)
+ [Requisitos](#sns-component-requirements)
+ [Dependencias](#sns-component-dependencies)
+ [Configuración](#sns-component-configuration)
+ [Datos de entrada](#sns-component-input-data)
+ [Datos de salida](#sns-component-output-data)
+ [Archivo de registro local](#sns-component-log-file)
+ [Licencias](#sns-component-licenses)
+ [Registros de cambios](#sns-component-changelog)

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

Este componente tiene las siguientes versiones:
+ 2.1.x
+ 2.0.x

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

<a name="public-component-type-lambda"></a>Este <a name="public-component-type-lambda-phrase"></a>componente es un componente de Lambda (`aws.greengrass.lambda`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta la función de Lambda de este componente mediante el [componente lanzador de Lambda](lambda-launcher-component.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="sns-component-os-support"></a>

Este componente solo se puede instalar en los dispositivos principales de Linux.

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

Este componente tiene los siguientes requisitos:
+ <a name="core-device-lambda-function-requirements"></a>El dispositivo principal debe cumplir los requisitos para ejecutar las funciones de Lambda. Si desea que el dispositivo principal ejecute funciones de Lambda en contenedores, el dispositivo debe cumplir los requisitos para hacerlo. Para obtener más información, consulte [Requisitos de la función de Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ <a name="public-component-python3-requirement"></a>Versión 3.7 de [Python](https://www.python.org/) instalada en el dispositivo principal y agregada a la variable de entorno PATH.
+ Un tema de Amazon SNS. Para obtener instrucciones, consulte el [tema Creación de un tema de Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-create-topic.html) en la *Guía para desarrolladores de Amazon Simple Notification Service*.
+ El [rol del dispositivo de Greengrass](device-service-role.md) debe permitir la acción `sns:Publish`, tal como se muestra en la siguiente política de IAM de ejemplo.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "sns:Publish"
        ],
        "Effect": "Allow",
        "Resource": [
          "arn:aws:sns:us-east-1:123456789012:topic-name"
        ]
      }
    ]
  }
  ```

------

  Puede anular dinámicamente el tema predeterminado en la carga útil del mensaje de entrada para este componente. Si su aplicación utiliza esta característica, la política de IAM debe incluir todos los temas de destino como recursos. Puede conceder acceso granular o condicional a recursos (por ejemplo, utilizando un esquema de nomenclatura con comodín `*`)
+ <a name="connector-component-legacy-subscription-router-dependency"></a>Para recibir los datos de salida de este componente, debe combinar la siguiente actualización de configuración para el [componente del enrutador de suscripción antiguo](legacy-subscription-router-component.md) (`aws.greengrass.LegacySubscriptionRouter`) cuando implemente este componente. Esta configuración especifica el tema en el que este componente publica las respuestas.

------
#### [ Legacy subscription router v2.1.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-sns": {
        "id": "aws-greengrass-sns",
        "source": "component:aws.greengrass.SNS",
        "subject": "sns/message/status",
        "target": "cloud"
      }
    }
  }
  ```

------
#### [ Legacy subscription router v2.0.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-sns": {
        "id": "aws-greengrass-sns",
        "source": "arn:aws:lambda:region:aws:function:aws-greengrass-sns:version",
        "subject": "sns/message/status",
        "target": "cloud"
      }
    }
  }
  ```<a name="connector-component-legacy-subscription-router-dependency-replace"></a>
  + *region*Sustitúyalo por el Región de AWS que utilice.
  + *version*Sustitúyala por la versión de la función Lambda que ejecuta este componente. Para encontrar la versión de la función de Lambda, debe ver la receta de la versión de este componente que desee implementar. Abra la página de detalles de este componente en la [consola de AWS IoT Greengrass](https://console.aws.amazon.com//greengrass) y busque el par clave-valor de la **función de Lambda**. Este par clave-valor contiene el nombre y la versión de la función de Lambda.

**importante**  <a name="connector-component-legacy-subscription-router-dependency-note"></a>
Debe actualizar la versión de la función de Lambda en el enrutador de suscripción antiguo cada vez que implemente este componente. Esto garantiza que utilice la versión correcta de la función de Lambda para la versión del componente que implemente.

------

  <a name="connector-component-create-deployments"></a>Para obtener más información, consulte [Crear implementaciones](create-deployments.md).
+ Se admite la ejecución del componente Amazon SNS en una VPC. Para implementar este componente en una VPC, se requiere lo siguiente.
  + El componente Amazon SNS debe tener una conectividad con `sns.region.amazonaws.com` que tenga el punto de conexión de VPC de `com.amazonaws.us-east-1.sns`.

### Puntos de conexión y puertos
<a name="sns-component-endpoints"></a>

Este componente debe poder realizar solicitudes salientes a los siguientes puntos de conexión y puertos, además de a los puntos de conexión y puertos necesarios para el funcionamiento básico. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).


| punto de enlace | Puerto | Obligatorio | Description (Descripción) | 
| --- | --- | --- | --- | 
|  `sns.region.amazonaws.com`  | 443 | Sí |  Publicar mensajes en Amazon SNS.  | 

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

Al implementar un componente, AWS IoT Greengrass también despliega 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](#sns-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.1.10 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.16.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.9 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 =2.0.0 <2.15.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.8 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.14.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.7 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.6 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.5 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.4 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.2 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.1.1 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.8 - 2.1.0 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.8 y 2.1.0 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.7 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.6 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.4 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | ^2.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

------
#### [ 2.0.3 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.0.3 <2.1.0  | Rígido | 
| [Lanzador de Lambda](lambda-launcher-component.md) | >=1.0.0  | Rígido | 
| [Tiempos de ejecución de Lambda](lambda-runtimes-component.md) | >=1.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=1.0.0  | Rígido | 

------

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="sns-component-configuration"></a>

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

**nota**  <a name="connector-component-lambda-parameters"></a>
La configuración predeterminada de este componente incluye los parámetros de la función de Lambda. Le recomendamos que edite solo los siguientes parámetros para configurar este componente en sus dispositivos.

`lambdaParams`  
Un objeto que contiene los parámetros de la función de Lambda de este componente. Este objeto contiene la siguiente información:    
`EnvironmentVariables`  
Un objeto que contiene los parámetros de la función de Lambda. Este objeto contiene la siguiente información:    
`DEFAULT_SNS_ARN`  
El ARN del tema predeterminado de Amazon SNS en el que este componente publica los mensajes. Puede anular el tema de destino con la propiedad `sns_topic_arn` en la carga útil de mensajes de entrada.

`containerMode`  <a name="connector-component-container-mode-parameter"></a>
(Opcional) El modo de almacenamiento en contenedores de este componente. Puede elegir entre las siguientes opciones:  <a name="lambda-function-component-container-mode-parameter"></a>
+ `NoContainer`: el componente no se ejecuta en un entorno de tiempo de ejecución aislado.
+ `GreengrassContainer`— El componente se ejecuta en un entorno de ejecución aislado dentro del contenedor. AWS IoT Greengrass 
Valor predeterminado: `GreengrassContainer`

`containerParams`  
<a name="connector-component-container-params-description"></a>(Opcional) Un objeto que contiene los parámetros de contenedor de este componente. El componente utiliza estos parámetros si se especifica `GreengrassContainer` para `containerMode`.  
Este objeto contiene la siguiente información:    
`memorySize`  
<a name="connector-component-container-params-memory-size-description"></a>(Opcional) La cantidad de memoria (en kilobytes) que se va a asignar al componente.  
Predeterminado de 512 MB (525 312 KB).

`pubsubTopics`  <a name="connector-component-pubsub-topics-parameter"></a>
(Opcional) Un objeto que contiene los temas a los que el componente se suscribe para recibir mensajes. Puede especificar cada tema y si el componente se suscribe a temas de MQTT AWS IoT Core o a temas locales publish/subscribe .  
Este objeto contiene la siguiente información:    
`0`: se trata de un índice de matriz en forma de cadena.  
Un objeto que contiene la siguiente información:    
`type`  
(Opcional) El tipo de publish/subscribe mensajes que utiliza este componente para suscribirse a los mensajes. Puede elegir entre las siguientes opciones:  
+ `PUB_SUB` — Suscribirse a la mensajería de publicación/suscripción local. Si elige esta opción, el tema no podrá contener caracteres comodín de MQTT. Para obtener más información sobre cómo enviar mensajes desde un componente personalizado cuando especifique esta opción, consulte [Publicar/suscribir mensajes locales](ipc-publish-subscribe.md).
+ `IOT_CORE`— Suscríbase a los mensajes de AWS IoT Core MQTT. Si elige esta opción, el tema puede contener caracteres comodín de MQTT. Para obtener más información sobre cómo enviar mensajes desde componentes personalizados cuando especifique esta opción, consulte [Publicar/suscribir mensajes MQTT AWS IoT Core](ipc-iot-core-mqtt.md).
Valor predeterminado: `PUB_SUB`  
`topic`  
(Opcional) El tema al que se suscribe el componente para recibir mensajes. Si especifica `IotCore` para `type`, puede usar los comodines de MQTT (`+` y `#`) en este tema.

**Example Ejemplo: actualización de la combinación de configuraciones (modo en contenedor)**  

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "DEFAULT_SNS_ARN": "arn:aws:sns:us-west-2:123456789012:mytopic"
    }
  },
  "containerMode": "GreengrassContainer"
}
```

**Example Ejemplo: actualización de la combinación de configuraciones (modo sin contenedor)**  

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "DEFAULT_SNS_ARN": "arn:aws:sns:us-west-2:123456789012:mytopic"
    }
  },
  "containerMode": "NoContainer"
}
```

## Datos de entrada
<a name="sns-component-input-data"></a>

Este componente acepta mensajes sobre el siguiente tema y publica el mensaje tal cual en el tema de Amazon SNS de destino. <a name="connector-component-local-publish"></a>De forma predeterminada, este componente se suscribe a los mensajes locales publish/subscribe . Para obtener más información sobre cómo publicar mensajes en este componente desde sus componentes personalizados, consulte [Publicar/suscribir mensajes locales](ipc-publish-subscribe.md). 

**Tema predeterminado (publicación/suscripción local):** `sns/message`

<a name="connector-component-input-properties"></a>El mensaje acepta las siguientes propiedades. Los mensajes de entrada deben tener un formato JSON válido.

`request`  
Información sobre los mensajes que se envían al tema de Amazon SNS.  
Tipo: `object` que contiene la siguiente información:    
`message`  
El contenido del mensaje como una cadena.  
Para enviar un objeto JSON, serialícelo como una cadena y especifique `json` para la propiedad `message_structure`.  
Tipo: `string`  
`subject`  
(Opcional) El asunto del mensaje.  
Tipo: `string`  
El asunto puede ser texto ASCII y tener hasta 100 caracteres. Debe empezar por una letra, un número o un signo de puntuación. No debe incluir saltos de línea ni caracteres de control.  
`sns_topic_arn`  
(Opcional) El ARN del tema de Amazon SNS en el que este componente publica los mensajes. Especifique esta propiedad para anular el tema predeterminado de Amazon SNS.  
Tipo: `string`  
`message_structure`  
(Opcional) La estructura del mensaje. Especifique `json` que se envíe un mensaje JSON que se serialice como una cadena en la propiedad `content`.  
Tipo: `string`  
Valores válidos: `json`

`id`  <a name="connector-component-input-property-id"></a>
Un ID arbitrario para la solicitud. Use esta propiedad para asignar una solicitud de entrada a una respuesta de salida. Si especifica esta propiedad, el componente establece la propiedad `id` en el objeto de respuesta para este valor.  
Tipo: `string`

**nota**  
El tamaño del mensaje puede ser de 256 KB como máximo.

**Example Ejemplo de entrada: mensaje en cadena**  

```
{
  "request": {
    "subject": "Message subject",
    "message": "Message data",
    "sns_topic_arn": "arn:aws:sns:region:account-id:topic2-name"
  },
  "id": "request123"
}
```

**Example Ejemplo de entrada: mensaje JSON**  

```
{
  "request": {
    "subject": "Message subject",
    "message": "{ \"default\": \"Message data\" }",
    "message_structure": "json"
  },
  "id": "request123"
}
```

## Datos de salida
<a name="sns-component-output-data"></a>

 <a name="connector-component-output-data"></a>Este componente publica las respuestas como datos de salida sobre el siguiente tema MQTT de forma predeterminada. Debe especificar este tema como parte de `subject` en la configuración del [componente antiguo del enrutador de suscripciones](legacy-subscription-router-component.md). Para obtener más información sobre cómo suscribirse a los mensajes sobre este tema en sus componentes personalizados, consulte [Publicar/suscribir mensajes MQTT AWS IoT Core](ipc-iot-core-mqtt.md). 

**Tema predeterminado (AWS IoT Core MQTT):** `sns/message/status`

**Example Ejemplo de salida: Correcto**  

```
{
  "response": {
    "sns_message_id": "f80a81bc-f44c-56f2-a0f0-d5af6a727c8a",
    "status": "success"
  },
  "id": "request123"
}
```

**Example Ejemplo de salida: Error**  

```
{
  "response" : {
    "error": "InvalidInputException",
    "error_message": "SNS Topic Arn is invalid",
    "status": "fail"
  },
  "id": "request123"
}
```

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

Este componente usa el siguiente archivo de registro.

```
/greengrass/v2/logs/aws.greengrass.SNS.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. `/greengrass/v2`Sustitúyalo por la ruta a la carpeta AWS IoT Greengrass raíz.

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

## Licencias
<a name="sns-component-licenses"></a>

Este componente incluye las siguientes licencias o software de terceros:<a name="boto-3-licenses"></a>
+ [AWS SDK para Python (Boto3)](https://pypi.org/project/boto3/)/Apache License 2.0
+ [botocore](https://pypi.org/project/botocore/)/Apache License 2.0
+ [dateutil](https://pypi.org/project/python-dateutil/1.4/)/PSF License
+ [docutils](https://pypi.org/project/docutils/)/BSD License, GNU General Public License (GPL), Python Software Foundation License, Public Domain
+ [jmespath](https://pypi.org/project/jmespath/)/MIT License
+ [s3transfer](https://pypi.org/project/s3transfer/)/Apache License 2.0
+ [urllib3](https://pypi.org/project/urllib3/)/MIT License

<a name="component-core-software-license"></a>Este conector se publica en el [Contrato de Licencia de Software de Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

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

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


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.1.10  | Versión actualizada para la versión 2.15.0 de Greengrass nucleus. | 
|  2.1.9  | Versión actualizada para la versión 2.14.0 de Greengrass nucleus. | 
|  2.1.8  | Versión actualizada para el lanzamiento de la versión 2.13.0 del núcleo de Greengrass. | 
|  2.1.7  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.1.6  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.1.5  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.1.4  | Versión actualizada para el lanzamiento de la versión 2.9.0 del núcleo de Greengrass. | 
|  2.1.3  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.1.2  |  Versión actualizada para el lanzamiento de la versión 2.7.0 del núcleo de Greengrass.  | 
|  2.1.1  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/sns-component.html)  | 
|  2.0.8  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
|  2.0.7  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.0.6  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.0.5  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.0.4  |  Versión actualizada para el lanzamiento de la versión 2.1.0 del núcleo de Greengrass.  | 
|  2.0.3  |  Versión inicial.  | 

# Administrador de flujos
<a name="stream-manager-component"></a>

El componente administrador de flujos (`aws.greengrass.StreamManager`) le permite procesar flujos de datos para transferirlos Nube de AWS desde los dispositivos principales de Greengrass.

Para obtener más información acerca de cómo configurar y usar el administrador de flujos en componentes personalizados, consulte [Administración de flujos de datos en los dispositivos principales de Greengrass](manage-data-streams.md).

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

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

Este componente tiene las siguientes versiones:
+ 2.2.x
+ 2.1.x
+ 2.0.x

**nota**  <a name="stream-manager-upgrade-note"></a>
Si usa el administrador de flujos para exportar datos a la nube, no puede actualizar la versión 2.0.7 del componente de administrador de flujos a una versión entre la 2.0.8 y la 2.0.11. Si implementa el administrador de flujos por primera vez, le recomendamos que implemente la última versión del componente administrador de flujos.

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

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="stream-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="stream-manager-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ La [función de intercambio de fichas](device-service-role.md) debe permitir el acceso a los Nube de AWS destinos que utilice con el administrador de transmisiones. Para obtener más información, consulte lo siguiente:<a name="export-destinations-links"></a>
  + [AWS IoT Analytics canales](stream-export-configurations.md#export-to-iot-analytics)
  + [Amazon Kinesis Data Streams](stream-export-configurations.md#export-to-kinesis)
  + [AWS IoT SiteWise propiedades de los activos](stream-export-configurations.md#export-to-iot-sitewise)
  + [Objetos de Amazon S3](stream-export-configurations.md#export-to-s3)
+ Se admite la ejecución del componente administrador de flujos en una VPC. Para implementar este componente en una VPC, se requiere lo siguiente.
  + El componente del administrador de transmisiones debe tener conectividad con el AWS servicio en el que publicas los datos.
    + Amazon S3: `com.amazonaws.region.s3`
    + Amazon Kinesis Data Streams: `com.amazonaws.region.kinesis-streams`
    + AWS IoT SiteWise: `com.amazonaws.region.iotsitewise.data`
  + Si publica datos en Amazon S3 en la región `us-east-1`, este componente intentará utilizar el punto de conexión global de S3 de forma predeterminada; sin embargo, este punto de conexión no está disponible a través del punto de conexión de la interfaz de VPC de Amazon S3. Para obtener más información, consulte [Restricciones y limitaciones AWS PrivateLink de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/privatelink-interface-endpoints.html#privatelink-limitations). Para resolver este problema, puede elegir entre las siguientes opciones.
    + Configure el componente de administrador de flujos para que utilice el punto de conexión S3 de la región `us-east-1`, configurando `-Daws.s3UseUsEast1RegionalEndpoint=regional` en `JVM_ARGS`.
    + Cree un punto de conexión de VPC de puerta de enlace de Amazon S3 en lugar de un punto de conexión de VPC de interfaz de Amazon S3. Los puntos de conexión de la puerta de enlace S3 permiten el acceso al punto de conexión global de S3. Para obtener más información, consulte [Creación de un punto de conexión de un gateway](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-s3.html#create-gateway-endpoint-s3).

### Puntos de conexión y puertos
<a name="stream-manager-component-endpoints"></a>

Este componente debe poder realizar solicitudes salientes a los siguientes puntos de conexión y puertos, además de a los puntos de conexión y puertos necesarios para el funcionamiento básico. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).


| punto de enlace | Puerto | Obligatorio | Description (Descripción) | 
| --- | --- | --- | --- | 
|  `iotanalytics.region.amazonaws.com`  | 443 | No |  Obligatorio si publicas datos en AWS IoT Analytics.  | 
|  `kinesis.region.amazonaws.com`  | 443 | No |  Obligatorio si publica datos en Firehose.  | 
|  `data.iotsitewise.region.amazonaws.com`  | 443 | No |  Obligatorio si publicas datos en AWS IoT SiteWise.  | 
|  `*.s3.amazonaws.com`  | 443 | No |  Obligatorio si publica datos en buckets de S3. Puede sustituirlos por `*` con el nombre de cada bucket en el que publique los datos.  | 

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

Al implementar un componente, AWS IoT Greengrass también despliega 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](#stream-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.1.3 – 2.2.1 ]

En la siguiente tabla se enumeran las dependencias de las versiones 2.1.3 a 2.2.1 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.0 <3.0.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) |  >=0.0.0  | Rígido | 

------
#### [ 2.1.11 – 2.1.12 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.11 a 2.1.10 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.0 <2.13.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) |  >=0.0.0  | Rígido | 

------
#### [ 2.1.9 – 2.1.10 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.9 a 2.1.10 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.0 <2.12.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) |  >=0.0.0  | Rígido | 

------
#### [ 2.1.5 – 2.1.8 ]

En l a siguiente tabla, se muestran las dependencias de las versiones 2.1.5 a 2.1.8 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.0 <2.11.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) |  >=0.0.0  | Rígido | 

------
#### [ 2.1.2 – 2.1.4 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.1.2 a 2.1.4 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.0 <2.10.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) |  >=0.0.0  | Rígido | 

------
#### [ 2.1.1 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.0 <2.9.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) |  >=0.0.0  | Rígido | 

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

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.0 <2.8.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) |  >=0.0.0  | Rígido | 

------
#### [ 2.0.15 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.0 <2.7.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) |  >=0.0.0  | Rígido | 

------
#### [ 2.0.13 and 2.0.14 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.13 y 2.0.14 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.0 <2.6.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) |  >=0.0.0  | Rígido | 

------
#### [ 2.0.11 and 2.0.12 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.11 y 2.0.12 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.0 <2.5.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) |  >=0.0.0  | Rígido | 

------
#### [ 2.0.10 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.0 <2.4.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) |  >=0.0.0  | Rígido | 

------
#### [ 2.0.9 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.0 <2.3.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) |  >=0.0.0  | Rígido | 

------
#### [ 2.0.8 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.0 <2.2.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) |  >=0.0.0  | Rígido | 

------
#### [ 2.0.7 ]

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


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) |  >=2.0.3 <2.1.0  | Flexible | 
| [Servicio de intercambio de token](token-exchange-service-component.md) |  >=0.0.0  | Rígido | 

------

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="stream-manager-component-configuration"></a>

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

`STREAM_MANAGER_STORE_ROOT_DIR`  
(Opcional) La ruta absoluta del directorio local utilizado para almacenar flujos. Este valor debe comenzar con una barra inclinada (por ejemplo, `/data`).  
<a name="stream-manager-store-root-dir-parameter-folder-requirements"></a>Debe especificar una carpeta existente y el [usuario del sistema que ejecuta el componente de administrador de flujos](configure-greengrass-core-v2.md#configure-component-user) debe tener permisos para leer y escribir en esta carpeta. Por ejemplo, puede ejecutar los siguientes comandos para crear y configurar una carpeta, `/var/greengrass/streams`, que especifique como carpeta raíz del administrador de flujos. Estos comandos permiten al usuario predeterminado del sistema, `ggc_user`, leer y escribir en esta carpeta.  

```
sudo mkdir /var/greengrass/streams
sudo chown ggc_user /var/greengrass/streams
sudo chmod 700 /var/greengrass/streams
```
Valor predeterminado: `/greengrass/v2/work/aws.greengrass.StreamManager`

`STREAM_MANAGER_SERVER_PORT`  
(Opcional) El número de puerto local utilizado para comunicarse con el administrador de flujos.  
Puede especificar `0` para usar un puerto disponible asignado al azar.  
Valor predeterminado: `8088`

`STREAM_MANAGER_AUTHENTICATE_CLIENT`  
(Opcional) Puede hacer que sea obligatorio que los clientes se autentiquen antes de poder interactuar con administrador de flujos. El SDK del administrador de flujos controla la interacción entre los clientes y el administrador de flujos. Este parámetro determina qué clientes pueden llamar al SDK del administrador de flujos para trabajar con flujos. Para obtener más información, consulte [Autenticación del cliente con el administrador de flujos](manage-data-streams.md#stream-manager-security-client-authentication).  
Si especifica `true`, el SDK del administrador de flujos solo permite como clientes los componentes de Greengrass.  
Si especifica `false`, el SDK del administrador de flujos permite que todos los procesos del dispositivo principal sean clientes.  
Valor predeterminado: `true`

`STREAM_MANAGER_EXPORTER_MAX_BANDWIDTH`  
(Opcional) El ancho de banda máximo promedio (en kilobits por segundo) que el administrador de flujos puede utilizar para exportar datos.  
Valor predeterminado: sin límite

`STREAM_MANAGER_EXPORTER_THREAD_POOL_SIZE`  
(Opcional) Cantidad máxima de subprocesos activos que el administrador de flujos puede utilizar para exportar datos.  
El tamaño óptimo depende del hardware, el volumen de secuencias y la cantidad planificada de secuencias de exportación. Si la velocidad de exportación es lenta, puede ajustar esta configuración para encontrar el tamaño óptimo para su hardware y su caso de negocio. La CPU y la memoria del hardware del dispositivo principal son factores limitantes. Para comenzar, puede intentar establecer este valor igual a la cantidad de núcleos de procesador en el dispositivo.  
Tenga cuidado de no establecer un tamaño superior al que admite el hardware. Cada flujo utiliza recursos de hardware, por lo que debe intentar limitar la cantidad de flujos de exportación en dispositivos restringidos.  
Predeterminado: 5 subprocesos

`STREAM_MANAGER_EXPORTER_S3_DESTINATION_MULTIPART_UPLOAD_MIN_PART_SIZE_BYTES`  
(Opcional) El tamaño mínimo (en bytes) de una parte en una carga multiparte a Amazon S3. El administrador de flujos utiliza esta configuración y el tamaño del archivo de entrada para determinar cómo agrupar los datos en una solicitud PUT de varias partes.  
El administrador de flujos usa la propiedad de flujos `sizeThresholdForMultipartUploadBytes` para determinar si se debe exportar a Amazon S3 como una carga única o multiparte. Los componentes de AWS IoT Greengrass pueden establecer este umbral cuando crean un flujo que se exporta a Amazon S3.
Valor predeterminado: `5242880` (5 MB). Es el valor mínimo permitido.

`LOG_LEVEL`  
(Opcional) El nivel de registro del componente. Elija uno de los siguientes niveles de registro, que se enumeran aquí en orden de niveles:  
+ `TRACE`
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valor predeterminado: `INFO`

`JVM_ARGS`  
(Opcional) Argumentos personalizados de la máquina virtual de Java para pasar al administrador de flujos al inicio. Separe varios argumentos por espacios.  
Utilice este parámetro sólo cuando deba anular la configuración predeterminada utilizada por la JVM. Por ejemplo, puede que necesite aumentar el tamaño predeterminado del montón si planea exportar un gran número de secuencias.

`startupTimeoutSeconds`  
(Opcional) El tiempo máximo en segundos para que se inicie el componente. El estado del componente cambia a `ERRORED` si supera este tiempo de espera.  
Valor predeterminado: `120`

**Example Ejemplo: actualización de la combinación de configuraciones**  
El siguiente ejemplo de configuración especifica el uso de un puerto no predeterminado.  

```
{
  "STREAM_MANAGER_SERVER_PORT": "18088"
}
```

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

Este componente usa el siguiente archivo de registro.

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

```
/greengrass/v2/logs/aws.greengrass.StreamManager.log
```

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

```
C:\greengrass\v2\logs\aws.greengrass.StreamManager.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:\$1greengrass\$1v2* por la ruta a la AWS IoT Greengrass carpeta raíz.

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

  ```
  sudo tail -f /greengrass/v2/logs/aws.greengrass.StreamManager.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.StreamManager.log -Tail 10 -Wait
  ```

------

## Registros de cambios
<a name="stream-manager-component-changelog"></a>

En la siguiente tabla, se describen los cambios en cada versión del componente.


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.2.1  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/stream-manager-component.html) | 
|  2.2.0  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/stream-manager-component.html) | 
|  2.1.13  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/stream-manager-component.html) | 
|  2.1.12  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/stream-manager-component.html) | 
|  2.1.11  | Versión actualizada para el lanzamiento de la versión 2.12.0 del núcleo de Greengrass. | 
|  2.1.10  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.1.9  | Versión actualizada para el lanzamiento de la versión 2.11.0 del núcleo de Greengrass. | 
|  2.1.8  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.1.7  |  <a name="changelog-stream-manager-2.1.7"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.1.6  |  <a name="changelog-stream-manager-2.1.6"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.1.5  | Versión actualizada para el lanzamiento de la versión 2.10.0 del núcleo de Greengrass. | 
|  2.1.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.1.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.1.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.1.1  | Versión actualizada para el lanzamiento de la versión 2.8.0 del núcleo de Greengrass. | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.0.15  |  Versión actualizada para el lanzamiento de la versión 2.6.0 del núcleo de Greengrass.  | 
|  2.0.14  |  Esta versión contiene correcciones de errores y mejoras.  | 
|  2.0.13  |  Versión actualizada para el lanzamiento de la versión 2.5.0 del núcleo de Greengrass.  | 
| 2.0.12 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.0.11  |  Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.  | 
|  2.0.10  |  Versión actualizada para el lanzamiento de la versión 2.3.0 del núcleo de Greengrass.  | 
|  2.0.9  |  Versión actualizada para el lanzamiento de la versión 2.2.0 del núcleo de Greengrass.  | 
|  2.0.8  |  Versión actualizada para el lanzamiento de la versión 2.1.0 del núcleo de Greengrass.  | 
|  2.0.7  |  Versión inicial.  | 

# Reenviador de registros del sistema
<a name="system-log-forwarder-component"></a>

El reenviador de registros del sistema (`aws.greengrass.SystemLogForwarder`) carga los registros activos del sistema directamente a Amazon CloudWatch mediante la API CloudWatch HTTPS.

**importante**  
Este componente solo reenviará los registros de systemd-journald generados durante el tiempo de ejecución. Para obtener más información sobre los registros de systemd-journald, consulte [systemd-journald](https://www.freedesktop.org/software/systemd/man/latest/systemd-journald.service.html) y [journalctl](https://www.freedesktop.org/software/systemd/man/latest/journalctl.html#).

**nota**  
Este componente requiere permisos específicos para crear y administrar grupos de CloudWatch registros y transmisiones.

**Topics**
+ [Versiones](#system-log-forwarder-component-versions)
+ [Tipo](#system-log-forwarder-component-type)
+ [Sistema operativo](#system-log-forwarder-component-os-support)
+ [Requisitos](#system-log-forwarder-component-requirements)
+ [Puntos de conexión y puertos](#system-log-forwarder-component-endpoints)
+ [Dependencias](#system-log-forwarder-component-dependencies)
+ [Configuración](#system-log-forwarder-component-configuration)
+ [Registros de cambios](#system-log-forwarder-component-changelog)

## Versiones
<a name="system-log-forwarder-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.1.x
+ 2.0.x

## Tipo
<a name="system-log-forwarder-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="system-log-forwarder-component-os-support"></a>

Este componente debe instalarse en sistemas Linux basados en systemd.

## Requisitos
<a name="system-log-forwarder-component-requirements"></a>

Este componente tiene los siguientes requisitos:

El componente requiere acceso para crear grupos de registros y transmisiones CloudWatch , así como permiso para realizar la llamada PutLogEvents HTTP. Debe agregar, como mínimo, los siguientes permisos de política al alias de rol de su dispositivo de Greengrass:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
    {
      "Effect": "Allow",
      "Action": ["logs:CreateLogGroup"],
      "Resource": "arn:aws:logs:us-east-1:111122223333:log-group:greengrass/systemLogs:*"
    },
    {
      "Effect": "Allow",
      "Action": ["logs:CreateLogStream", "logs:PutLogEvents"],
      "Resource": "arn:aws:logs:us-east-1:111122223333:log-group:greengrass/systemLogs:log-stream:${credentials-iot:ThingName}"
    }
  ]
}
```

------

**nota**  
Para obtener más información, consulte la página de [Github](https://github.com/aws-greengrass/aws-greengrass-system-log-forwarder) del reenviador de registros del sistema.

## Puntos de conexión y puertos
<a name="system-log-forwarder-component-endpoints"></a>

Este componente debe poder realizar solicitudes salientes a los siguientes puntos de conexión y puertos, además de a los puntos de conexión y puertos necesarios para el funcionamiento básico. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).


| punto de enlace | Puerto | Obligatorio | Description (Descripción) | 
| --- | --- | --- | --- | 
|  `logs.region.amazonaws.com`  | 443 | No |  Es obligatorio si escribes CloudWatch registros en Logs.  | 

## Dependencias
<a name="system-log-forwarder-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#system-log-forwarder-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.1.x ]

La siguiente tabla muestra las dependencias de la versión 2.1.x de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | Mayor or igual a 2.0.0 | Rígido | 
| [Versión lite del núcleo de Greengrass](greengrass-nucleus-lite-component.md) | >=2.3.0 | Flexible | 

------
#### [ 2.0.x ]

En la siguiente tabla, se muestran las dependencias de la versión 2.0.x de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | Mayor or igual a 2.0.0 | Rígido | 

------

## Configuración
<a name="system-log-forwarder-component-configuration"></a>

Este componente ofrece los siguientes parámetros de configuración que puede personalizar cuando implemente el componente.

------
#### [ 2.0.x-2.1.x ]

`maxUploadIntervalSec`  
El periodo máximo durante el cual el reenviador de registros del sistema intentará cargar los registros. Dado que el reenviador de registros cargará los registros cuando la memoria se llene, es posible que siga cargando con más frecuencia que la cadencia máxima configurada.

`maxRetriesCount`  
Cantidad de veces que el reenviador de registros del sistema intentará volver a intentar un error HTTP transitorio.

`bufferCapacity`  
Tamaño del búfer circular para el almacenamiento de registros en memoria.

`logGroup`  
La ruta de inicio de sesión. CloudWatch

`logStream`  
El CloudWatch LogStream.

`filters`  
Mapa de configuraciones de filtros para el dispositivo principal.    
`services`  
Lista de filtros de nombres de servicio que el reenviador de registros del sistema utilizará para determinar los registros que se cargarán. Un registro solo se cargará si el servicio desde el que se originó coincide con al menos uno de los filtros de esta lista. Los filtros de esta lista pueden ser una cadena con la que el nombre del servicio debe coincidir, o puede ser una cadena que termina en \$1, lo que significa que el prefijo debe coincidir.  
Valor predeterminado: `[ggl.*]`  
Un registro solo se cargará si el servicio desde el que se originó coincide con al menos uno de los filtros de esta lista.
Si se utiliza el valor \$1, se incluirán todos los servicios disponibles.

**Example Ejemplo de configuración:**  
El siguiente ejemplo filtrará los registros por todos los servicios incluidos en la versión lite del núcleo de Greengrass.  

```
{
    "maxUploadIntervalSec": 300,
    "maxRetriesCount": 3,
    "bufferCapacity": 1048576,
    "logGroup": "greengrass/systemLogs",
    "logStream": "deviceName",
    "filters": {
        "services": ["ggl.*"]
    }
}
```

------

## Registros de cambios
<a name="system-log-forwarder-component-changelog"></a>

En la siguiente tabla, se describen los cambios en cada versión del componente.


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/system-log-forwarder-component.html)  | 
|  2.0.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/system-log-forwarder-component.html)  | 
|  2.0.0  |  Versión inicial.  | 

# Agente de Systems Manager
<a name="systems-manager-agent-component"></a>

El componente AWS Systems Manager Agent (`aws.greengrass.SystemsManagerAgent`) instala el agente de Systems Manager para que pueda administrar los dispositivos principales con Systems Manager. Systems Manager es un AWS servicio que puede utilizar para ver y controlar su infraestructura AWS, incluidas las EC2 instancias de Amazon, los servidores y máquinas virtuales locales (VMs) y los dispositivos periféricos. Systems Manager le permite ver los datos operativos, automatizar las tareas operativas y mantener la seguridad y la conformidad. Para obtener más información, consulte [¿Qué es? AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html) y [Acerca de Systems Manager Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/prereqs-ssm-agent.html) en la *Guía AWS Systems Manager del usuario*.

<a name="about-systems-manager-capabilities"></a>Las herramientas y características de Systems Manager se denominan *capacidades*. Los dispositivos principales de Greengrass admiten todas las capacidades de Systems Manager. Para obtener más información sobre estas capacidades y sobre cómo usar Systems Manager para administrar los dispositivos principales, consulte [Capacidades de Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/features.html) en la *Guía del usuario de AWS Systems Manager *.

**Topics**
+ [Versiones](#systems-manager-agent-component-versions)
+ [Tipo](#systems-manager-agent-component-type)
+ [Sistema operativo](#systems-manager-agent-component-os-support)
+ [Requisitos](#systems-manager-agent-component-requirements)
+ [Dependencias](#systems-manager-agent-component-dependencies)
+ [Configuración](#systems-manager-agent-component-configuration)
+ [Archivo de registro local](#systems-manager-agent-component-log-file)
+ [Véase también](#systems-manager-agent-component-see-also)
+ [Registros de cambios](#systems-manager-agent-component-changelog)

## Versiones
<a name="systems-manager-agent-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 1.3.x
+ 1.2.x
+ 1.1.x
+ 1.0.x

## Tipo
<a name="systems-manager-agent-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="systems-manager-agent-component-os-support"></a>

Este componente solo se puede instalar en los dispositivos principales de Linux.

## Requisitos
<a name="systems-manager-agent-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ Un dispositivo principal de Greengrass que se ejecuta en una plataforma Linux de 64 bits: Armv8 () AArch64 o x86\$164.
+ Debe tener una función de servicio AWS Identity and Access Management (IAM) que pueda asumir Systems Manager. Esta función debe incluir la política SSMManaged InstanceCore gestionada por [Amazon](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore) o una política personalizada que defina permisos equivalentes. Para obtener más información, consulte [Creación de un rol de servicio de IAM para dispositivos periféricos](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-setting-up-edge-devices.html#systems-manager-setting-up-edge-devices-service-role) en la *Guía del usuario de AWS Systems Manager *.

  Al implementar este componente, debe especificar el nombre de este rol para el parámetro de configuración `SSMRegistrationRole`.
+ El [rol de dispositivo de Greengrass](device-service-role.md) debe permitir las acciones `ssm:AddTagsToResource` y`ssm:RegisterManagedInstance`. El rol de dispositivo también debe permitir la acción `iam:PassRole` del rol de servicio de IAM que cumpla con el requisito anterior. El siguiente ejemplo de política de IAM concede estos permisos.

  ```
  {
    "Version": "2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "iam:PassRole"
        ],
        "Effect": "Allow",
        "Resource": [
          "arn:aws:iam::account-id:role/SSMServiceRole"
        ]
      },
      {
        "Action": [
          "ssm:AddTagsToResource",
          "ssm:RegisterManagedInstance"
        ],
        "Effect": "Allow",
        "Resource": "*"
      }
    ]
  }
  ```

### Puntos de conexión y puertos
<a name="systems-manager-agent-component-endpoints"></a>

Este componente debe poder realizar solicitudes salientes a los siguientes puntos de conexión y puertos, además de a los puntos de conexión y puertos necesarios para el funcionamiento básico. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).


| punto de enlace | Puerto | Obligatorio | Description (Descripción) | 
| --- | --- | --- | --- | 
|  `ec2messages.region.amazonaws.com`  | 443 | Sí |  Comuníquese con el servicio de Systems Manager en la Nube de AWS.  | 
|  `ssm.region.amazonaws.com`  | 443 | Sí |  Registre el dispositivo principal como un nodo administrado por Systems Manager.  | 
|  `ssmmessages.region.amazonaws.com`  | 443 | Sí |  Comuníquese con Session Manager, una capacidad de Systems Manager, en la Nube de AWS.  | 

Para obtener más información, consulte [Referencia: ec2messages, ssmmessages y otras llamadas a la API](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-setting-up-messageAPIs.html) en la *Guía del usuario de AWS Systems Manager *.

## Dependencias
<a name="systems-manager-agent-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#systems-manager-agent-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**.

En la siguiente tabla se enumeran las dependencias de las versiones 1.0.0 a 1.3.0 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Servicio de intercambio de token](token-exchange-service-component.md) |  >=2.0.0 <3.0.0 | Rígido | 

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="systems-manager-agent-component-configuration"></a>

Este componente ofrece los siguientes parámetros de configuración que puede personalizar cuando implemente el componente.

`SSMRegistrationRole`  
La función de servicio de IAM que puede asumir Systems Manager y que incluye la política SSMManaged InstanceCore gestionada por [Amazon](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore) o una política personalizada que defina permisos equivalentes. Para obtener más información, consulte [Creación de un rol de servicio de IAM para dispositivos periféricos](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-setting-up-edge-devices-service-role.html) en la *Guía del usuario de AWS Systems Manager *.

`SSMOverrideExistingRegistration`  
(Opcional) Si el dispositivo principal ya ejecuta el Agente de Systems Manager registrado con una activación híbrida, puede anular el registro del Agente de Systems Manager existente del dispositivo. Defina esta opción en `true` para registrar el dispositivo principal como nodo administrado mediante el Agente de Systems Manager que proporciona este componente.  
Esta opción solo se aplica a los dispositivos que están registrados con una activación híbrida. Si el dispositivo principal se ejecuta en una EC2 instancia de Amazon con el Agente de Systems Manager instalado y un rol de perfil de instancia configurado, el ID de nodo gestionado existente de la EC2 instancia de Amazon empieza por`i-`. Al instalar el componente Agente de Systems Manager, el agente de Systems Manager registra un nuevo nodo administrado cuyo identificador empieza por `mi-` en lugar de `i-`. A continuación, puede utilizar el nodo administrado cuyo ID comienza con `mi-` para administrar el dispositivo principal con Systems Manager.
Valor predeterminado: `false`

`SSMResourceTags`  
(Opcional) Las etiquetas que se van a agregar al nodo administrado por Systems Manager que este componente crea para el dispositivo principal. Puede usar estas etiquetas para administrar grupos de dispositivos principales con Systems Manager. Por ejemplo, puede ejecutar un comando en todos los dispositivos que tengan una etiqueta que especifique.  
Especifique una lista en la que cada etiqueta sea un objeto con una `Key` y un `Value`. Por ejemplo, el siguiente valor de `SSMResourceTags` indica a este componente que establezca la etiqueta **Owner** en **richard-roe** en el nodo administrado del dispositivo principal.  

```
[
  {
    "Key": "Owner",
    "Value": "richard-roe"
  }
]
```
Este componente ignora estas etiquetas si el nodo administrado ya existe y `SSMOverrideExistingRegistration` es `false`.

**Example Ejemplo: actualización de la combinación de configuraciones**  
El siguiente ejemplo de configuración especifica el uso de un rol de servicio denominado `SSMServiceRole` para permitir que el dispositivo principal se registre y se comunique con Systems Manager.  

```
{
  "SSMRegistrationRole": "SSMServiceRole",
  "SSMOverrideExistingRegistration": false,
  "SSMResourceTags": [
    {
      "Key": "Owner",
      "Value": "richard-roe"
    },
    {
      "Key": "Team",
      "Value": "solar"
    }
  ]
}
```

## Archivo de registro local
<a name="systems-manager-agent-component-log-file"></a>

El software del Agente de Systems Manager escribe los registros en una carpeta fuera de la carpeta raíz de Greengrass. Para obtener más información, consulte [Visualización de registros de Systems Manager Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-agent-logs.html) en la *Guía del usuario de AWS Systems Manager *.

El componente Agente de Systems Manager utiliza scripts de intérprete de comandos para instalar, iniciar y detener el agente de Systems Manager. Puede encontrar el resultado de estos scripts en el siguiente archivo de registro.

```
/greengrass/v2/logs/aws.greengrass.SystemsManagerAgent.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. `/greengrass/v2`Sustitúyalo por la ruta a la carpeta AWS IoT Greengrass raíz.

  ```
  sudo tail -f /greengrass/v2/logs/aws.greengrass.SystemsManagerAgent.log
  ```

## Véase también
<a name="systems-manager-agent-component-see-also"></a>
+ [Administración de los dispositivos principales de Greengrass con AWS Systems Manager](manage-with-systems-manager.md)
+ ¿[Qué es AWS Systems Manager?](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html) en la * Guía del usuario de AWS Systems Manager *
+ [Información del Agente de Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/prereqs-ssm-agent.html) en la *Guía del usuario de AWS Systems Manager *

## Registros de cambios
<a name="systems-manager-agent-component-changelog"></a>

En la siguiente tabla, se describen los cambios en cada versión del componente.


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  1.3.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/systems-manager-agent-component.html)  | 
|  1.2.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/systems-manager-agent-component.html)  | 
|  1.2.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/systems-manager-agent-component.html)  | 
|  1.1.0  |  Esta versión contiene correcciones de errores y mejoras.  | 
|  1.0.0  |  Versión inicial.  | 

# Servicio de intercambio de token
<a name="token-exchange-service-component"></a>

El componente del servicio de intercambio de tokens (`aws.greengrass.TokenExchangeService`) proporciona AWS credenciales que puede usar para interactuar con AWS los servicios de sus componentes personalizados.

El servicio de intercambio de fichas se ejecuta como un servidor local. Este servidor local se conecta al proveedor de AWS IoT credenciales mediante el alias de AWS IoT rol que usted configura en el componente [core core de Greengrass.](greengrass-nucleus-component.md) El componente proporciona dos variables de entorno, `AWS_CONTAINER_CREDENTIALS_FULL_URI` y `AWS_CONTAINER_AUTHORIZATION_TOKEN`. `AWS_CONTAINER_CREDENTIALS_FULL_URI` define el URI de este servidor local. Cuando un componente crea un cliente AWS SDK, el cliente reconoce esta variable de entorno URI y utiliza el token que contiene `AWS_CONTAINER_AUTHORIZATION_TOKEN` para conectarse al servicio de intercambio de fichas y recuperar AWS las credenciales. Esto permite que los dispositivos principales de Greengrass llamen a las operaciones de servicio de AWS . Para obtener más información sobre cómo utilizar este componente en componentes personalizados, consulte [Interacción con servicios de AWS](interact-with-aws-services.md).

**importante**  <a name="token-exchange-service-aws-sdk-requirement"></a>
El 13 de julio de 2016 se agregó el AWS SDKs soporte para adquirir AWS credenciales de esta manera. Su componente debe usar una versión AWS del SDK que se haya creado en esa fecha o después. Para obtener más información, consulte [Uso de un AWS SDK compatible](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html#task-iam-roles-minimum-sdk) en la *Guía para desarrolladores de Amazon Elastic Container Service*.

**nota**  
Los componentes que utilizan la cadena de credenciales AWS predeterminada pueden descubrir y utilizar otras fuentes de credenciales, si existen. Dentro del Amazon Elastic Container Service (Amazon ECS), las credenciales de contenedor prevalecerán `AWS_CONTAINER_CREDENTIALS_FULL_URI` sobre `AWS_CONTAINER_CREDENTIALS_RELATIVE_URI` las credenciales, lo que significa que las credenciales del servicio de intercambio de fichas pueden no funcionar en Amazon Elastic Container Service (Amazon ECS). Para obtener más información, consulte los proveedores de [credenciales estandarizados](https://docs.aws.amazon.com/sdkref/latest/guide/standardized-credentials.html) 

**Topics**
+ [Versiones](#token-exchange-service-component-versions)
+ [Tipo](#token-exchange-service-component-type)
+ [Sistema operativo](#token-exchange-service-component-os-support)
+ [Dependencias](#token-exchange-service-component-dependencies)
+ [Configuración](#token-exchange-service-component-configuration)
+ [Archivo de registro local](#token-exchange-service-component-log-file)
+ [Registros de cambios](#token-exchange-service-component-changelog)

## Versiones
<a name="token-exchange-service-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.0.x

## Tipo
<a name="token-exchange-service-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="token-exchange-service-component-os-support"></a>

Este componente se puede instalar en los dispositivos principales que ejecutan los siguientes sistemas operativos:
+ Linux
+ Windows

## Dependencias
<a name="token-exchange-service-component-dependencies"></a>

Este componente no tiene ninguna dependencia.

## Configuración
<a name="token-exchange-service-component-configuration"></a>

Este componente ofrece los siguientes parámetros de configuración que puede personalizar cuando implemente el componente.

`port`  
Puerto que se utilizará para las conexiones del servicio de intercambio de token. El servicio de intercambio de tokens se reiniciará tras los cambios en la configuración del puerto.

`credentialRetryInSec`  
Especifica los intervalos de reintento en segundos cuando Token Exchange Service detecta errores en la solicitud de credenciales.    
`clientError`  
El intervalo de reintento en segundos para los errores del cliente (4 xx códigos de estado HTTP).  
Valor predeterminado: `120`  
Valores válidos: de `10` a `42900`  
`serverError`  
El intervalo de reintento en segundos para los errores del servidor (5 xx códigos de estado HTTP).  
Valor predeterminado: `60`  
Valores válidos: de `10` a `42900`  
`unknownError`  
El intervalo de reintento en segundos para errores desconocidos (errores de conexión y códigos de estado HTTP fuera de los rangos 4xx y 5xx).  
Valor predeterminado: `300`  
Valores válidos: de `10` a `42900`

**Example Ejemplo: actualización de la combinación de configuraciones**  

```
{
   "port": 2020,
   "credentialRetryInSec": {
    "clientError": 30,
    "serverError": 45,
    "unknownError": 60
   }
}
```

## Archivo de registro local
<a name="token-exchange-service-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:\$1greengrass\$1v2* por la ruta a la AWS IoT Greengrass carpeta 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="token-exchange-service-component-changelog"></a>

En la siguiente tabla, se describen los cambios en cada versión del componente.


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  2.0.3  |  Versión inicial.  | 

# Colector IoT SiteWise OPC UA
<a name="iotsitewise-opcua-collector-component"></a>

El componente recopilador SiteWise OPC UA de IoT (`aws.iot.SiteWiseEdgeCollectorOpcua`) permite que AWS IoT SiteWise las pasarelas recopilen datos de los servidores OPC UA locales.

Con este componente, AWS IoT SiteWise las pasarelas se pueden conectar a varios servidores OPC UA. *Para obtener más información sobre AWS IoT SiteWise las puertas de enlace, consulte [Uso AWS IoT SiteWise en el borde en la Guía](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/gateways-ggv2.html) del AWS IoT SiteWise usuario.*

**Topics**
+ [Versiones](#iotsitewise-opcua-collector-component-versions)
+ [Tipo](#iotsitewise-opcua-collector-component-type)
+ [Sistema operativo](#iotsitewise-opcua-collector-component-os-support)
+ [Requisitos](#iotsitewise-opcua-collector-component-requirements)
+ [Dependencias](#iotsitewise-opcua-collector-component-dependencies)
+ [Configuración](#iotsitewise-opcua-collector-component-configuration)
+ [Datos de entrada](#iotsitewise-opcua-collector-component-input-data)
+ [Datos de salida](#iotsitewise-opcua-collector-component-output-data)
+ [Archivo de registro local](#iotsitewise-opcua-collector-component-log-file)
+ [Licencias](#iotsitewise-opcua-collector-component-licenses)
+ [Registros de cambios](#iotsitewise-opcua-collector-component-changelog)
+ [Véase también](#iotsitewise-opcua-collector-component-see-also)

## Versiones
<a name="iotsitewise-opcua-collector-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 3.1.x
+ 3.0.x
+ 2.6.x
+ 2.5.x
+ 2.4.x
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Tipo
<a name="iotsitewise-opcua-collector-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="iotsitewise-opcua-collector-component-os-support"></a>

Este componente se puede instalar en los dispositivos principales que ejecutan los siguientes sistemas operativos:
+ Linux
+ Windows

## Requisitos
<a name="iotsitewise-opcua-collector-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ El dispositivo principal de Greengrass debe ejecutarse en una de las siguientes plataformas:
  + sistema operativo: Ubuntu 20.04 o posterior

    arquitectura: x86\$164 (AMD64) o (Aarch64) ARMv8 
  + sistema operativo: Red Hat Enterprise Linux (RHEL) 8

    arquitectura: x86\$164 () o (Aarch64) AMD64 ARMv8 
  + sistema operativo: Amazon Linux 2

    arquitectura: x86\$164 () o (Aarch64) AMD64 ARMv8 
  + sistema operativo: Debian 11

    arquitectura: x86\$164 () o (Aarch64) AMD64 ARMv8 
  + sistema operativo: Windows Server 2019 o posterior

    arquitectura: x86\$164 () AMD64
+ El dispositivo principal de Greengrass debe permitir la conectividad de red saliente a los servidores OPC UA.

## Dependencias
<a name="iotsitewise-opcua-collector-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#iotsitewise-opcua-collector-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**.

En la tabla siguiente, se muestran las dependencias de todas las versiones de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.3.0 <3.0.0 | Rígido | 
| [Administrador de flujos](stream-manager-component.md) | >2.0.10<3.0.0 | Rígido | 
| [Administrador de secretos](secret-manager-component.md) | >=2.0.8 <3.0.0 | Rígido | 

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="iotsitewise-opcua-collector-component-configuration"></a>

Este componente no tiene ningún parámetro de configuración.

Puede usar la AWS IoT SiteWise consola o la API para configurar el componente recopilador IoT SiteWise OPC UA. *Para obtener más información, consulte el [Paso 4: Agregar orígenes de datos (opcional)](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/create-gateway-ggv2.html#add-data-sources-console) en la Guía del usuario de AWS IoT SiteWise *.

## Datos de entrada
<a name="iotsitewise-opcua-collector-component-input-data"></a>

Este componente solo acepta datos en los siguientes formatos; todos los demás se ignorarán y descartarán. La siguiente tabla asigna los tipos de datos del OPC UA a sus SiteWise equivalentes.


|  **SiteWise data type**  |  **Tipo de datos OPC UA**  |  **Descripción**  | 
| --- | --- | --- | 
|  `STRING`  |  `String` `Guid` `XmlElement`  |  Una cadena con una longitud máxima de 1024 bytes.  | 
|  `INTEGER`  |  `SByte` `Byte` `Int16` `UInt16` `Int32` `UInt32`\$1 `Int64`\$1  |  Un entero de 32 bits firmado con un intervalo de `-2,147,483,648 to 2,147,483,647`.  | 
|  `DOUBLE`  |  `UInt32`\$1 `Int64`\$1 `Float` `Double`  |  Un número de coma flotante con un intervalo de `–10^100 to 10^100` y precisión doble `IEEE 754`.  | 
|  `BOOLEAN`  |  `Boolean`  |  `true` o bien `false`.  | 

\$1 Para los tipos de datos OPC UA `UInt32` y`Int64`, su tipo de SiteWise datos será `INTEGER` si SiteWise es capaz de representar su valor; de lo contrario, lo será. `DOUBLE`

## Datos de salida
<a name="iotsitewise-opcua-collector-component-output-data"></a>



Este componente escribe `BatchPutAssetPropertyValue` mensajes en el administrador de AWS IoT Greengrass transmisiones. Para obtener más información, consulta [BatchPutAssetPropertyValue](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_BatchPutAssetPropertyValue.html) en la *AWS IoT SiteWise Referencia de la API de *.

## Archivo de registro local
<a name="iotsitewise-opcua-collector-component-log-file"></a>

Este componente usa el siguiente archivo de registro.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.iot.SiteWiseEdgeCollectorOpcua.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.iot.SiteWiseEdgeCollectorOpcua.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:\$1greengrass\$1v2* por la ruta a la carpeta AWS IoT Greengrass raíz.

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/aws.iot.SiteWiseEdgeCollectorOpcua.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.iot.SiteWiseEdgeCollectorOpcua.log -Tail 10 -Wait
  ```

------

## Licencias
<a name="iotsitewise-opcua-collector-component-licenses"></a>

<a name="component-core-software-license"></a>Este conector se publica en el [Contrato de Licencia de Software de Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Registros de cambios
<a name="iotsitewise-opcua-collector-component-changelog"></a>

En la siguiente tabla, se describen los cambios en cada versión del componente.


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
| 3.1.0 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
| 3.0.3 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
| 3.0.2 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
| 3.0.1 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
| 3.0.0 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
| 2.6.0 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
| 2.5.1 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
| 2.5.0 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
|  2.4.2  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html) | 
|  2.4.1  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html) | 
|  2.4.0  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
|  2.3.0  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html) | 
|  2.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html) [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
|  2.1.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html) [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
|  2.1.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
|  2.0.3  |  Mejoras y correcciones de errores  | 
|  2.0.2  |  Se corrigieron errores y se mejoró la sincronización de prioridad de los activos con periferia.  | 
|  2.0.1  |  Versión inicial.  | 

## Véase también
<a name="iotsitewise-opcua-collector-component-see-also"></a>
+ [¿Qué es? AWS IoT SiteWise](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/what-is-sitewise.html) en la *Guía AWS IoT SiteWise del usuario*.

# Simulador de fuente de datos IoT SiteWise OPC UA
<a name="iotsitewise-opcua-data-source-simulator-component"></a>

El componente simulador de fuente de datos SiteWise OPC UA de IoT (`aws.iot.SiteWiseEdgeOpcuaDataSourceSimulator`) inicia un servidor OPC UA local que genera datos de muestra. Utilice este servidor OPC UA para simular una fuente de datos leída por el [componente recopilador SiteWise OPC UA de IoT](iotsitewise-opcua-collector-component.md) en una AWS IoT SiteWise puerta de enlace. A continuación, puede explorar las AWS IoT SiteWise características con estos datos de ejemplo. Para obtener más información sobre AWS IoT SiteWise las puertas de enlace, consulte [Uso AWS IoT SiteWise en el borde](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/gateways-ggv2.html) en la *Guía del AWS IoT SiteWise usuario*.

**Topics**
+ [Versiones](#iotsitewise-opcua-data-source-simulator-component-versions)
+ [Tipo](#iotsitewise-opcua-data-source-simulator-component-type)
+ [Sistema operativo](#iotsitewise-opcua-data-source-simulator-component-os-support)
+ [Requisitos](#iotsitewise-opcua-data-source-simulator-component-requirements)
+ [Dependencias](#iotsitewise-opcua-data-source-simulator-component-dependencies)
+ [Configuración](#iotsitewise-opcua-data-source-simulator-component-configuration)
+ [Archivo de registro local](#iotsitewise-opcua-data-source-simulator-component-log-file)
+ [Registros de cambios](#iotsitewise-opcua-data-source-simulator-component-changelog)
+ [Véase también](#iotsitewise-opcua-data-source-simulator-component-see-also)

## Versiones
<a name="iotsitewise-opcua-data-source-simulator-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 1.0.x

## Tipo
<a name="iotsitewise-opcua-data-source-simulator-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="iotsitewise-opcua-data-source-simulator-component-os-support"></a>

Este componente se puede instalar en los dispositivos principales que ejecutan los siguientes sistemas operativos:
+ Linux
+ Windows

## Requisitos
<a name="iotsitewise-opcua-data-source-simulator-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ El dispositivo principal de Greengrass debe poder utilizar el puerto 4840 del host local. El servidor OPC UA local de este componente se ejecuta en este puerto.

## Dependencias
<a name="iotsitewise-opcua-data-source-simulator-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#iotsitewise-opcua-data-source-simulator-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**.

En la tabla siguiente, se muestran las dependencias de todas las versiones de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.3.0 <3.0.0 | Rígido | 

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="iotsitewise-opcua-data-source-simulator-component-configuration"></a>

Este componente no tiene ningún parámetro de configuración.

## Archivo de registro local
<a name="iotsitewise-opcua-data-source-simulator-component-log-file"></a>

Este componente usa el siguiente archivo de registro.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.iot.SiteWiseEdgeOpcuaDataSourceSimulator.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.iot.SiteWiseEdgeOpcuaDataSourceSimulator.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:\$1greengrass\$1v2* por la ruta a la carpeta AWS IoT Greengrass raíz.

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/aws.iot.SiteWiseEdgeOpcuaDataSourceSimulator.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.iot.SiteWiseEdgeOpcuaDataSourceSimulator.log -Tail 10 -Wait
  ```

------

## Registros de cambios
<a name="iotsitewise-opcua-data-source-simulator-component-changelog"></a>

En la siguiente tabla, se describen los cambios en cada versión del componente.


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
|  1.0.0  |  Versión inicial. Agrega compatibilidad con Windows Server 2016 o posterior.  | 

## Véase también
<a name="iotsitewise-opcua-data-source-simulator-component-see-also"></a>
+ [¿Qué es AWS IoT SiteWise?](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/what-is-sitewise.html) en la *Guía AWS IoT SiteWise del usuario*.

# SiteWise Publicador de IoT
<a name="iotsitewise-publisher-component"></a>

El componente SiteWise publicador de IoT (`aws.iot.SiteWiseEdgePublisher`) permite a AWS IoT SiteWise las pasarelas exportar datos del borde al Nube de AWS.

Para obtener más información sobre AWS IoT SiteWise las puertas de enlace, consulte [Uso AWS IoT SiteWise en el borde](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/gateways-ggv2.html) en la Guía del *AWS IoT SiteWise usuario*.

**Topics**
+ [Versiones](#iotsitewise-publisher-component-versions)
+ [Tipo](#iotsitewise-publisher-component-type)
+ [Sistema operativo](#iotsitewise-publisher-component-os-support)
+ [Requisitos](#iotsitewise-publisher-component-requirements)
+ [Dependencias](#iotsitewise-publisher-component-dependencies)
+ [Configuración](#iotsitewise-publisher-component-configuration)
+ [Datos de entrada](#iotsitewise-publisher-component-input-data)
+ [Archivo de registro local](#iotsitewise-publisher-component-log-file)
+ [Solución de problemas y depuración](#iotsitewise-publisher-component-debug)
+ [Licencias](#iotsitewise-publisher-component-licenses)
+ [Registros de cambios](#iotsitewise-publisher-component-changelog)
+ [Véase también](#iotsitewise-publisher-component-see-also)

## Versiones
<a name="iotsitewise-publisher-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 4.1.x
+ 4.0.x
+ 3.2.x
+ 3.1.x
+ 3.0.x
+ 2.4.x
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Tipo
<a name="iotsitewise-publisher-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="iotsitewise-publisher-component-os-support"></a>

Este componente se puede instalar en los dispositivos principales que ejecutan los siguientes sistemas operativos:
+ Linux
+ Windows

## Requisitos
<a name="iotsitewise-publisher-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ El dispositivo principal de Greengrass debe ejecutarse en una de las siguientes plataformas:
  + sistema operativo: Ubuntu 18.04 o posterior

    arquitectura: x86\$164 () o (Aarch64) AMD64 ARMv8 
  + sistema operativo: Red Hat Enterprise Linux (RHEL) 8

    arquitectura: x86\$164 () o (Aarch64) AMD64 ARMv8 
  + sistema operativo: Amazon Linux 2

    arquitectura: x86\$164 () o (Aarch64) AMD64 ARMv8 
  + sistema operativo: Debian 11

    arquitectura: x86\$164 () o (Aarch64) AMD64 ARMv8 
  + sistema operativo: Windows Server 2019 o posterior

    arquitectura: x86\$164 () AMD64
+ El dispositivo principal de Greengrass debe estar conectado a Internet.
+ El dispositivo principal de Greengrass debe estar autorizado para realizar la acción `iotsitewise:BatchPutAssetPropertyValue`. Para obtener más información, consulte [Autorizar los dispositivos principales para que interactúen con los servicios](https://docs.aws.amazon.com/greengrass/v2/developerguide/device-service-role.html). AWS   
**Example política de permisos**  

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Effect": "Allow",
              "Action": "iotsitewise:BatchPutAssetPropertyValue",
              "Resource": "*"
          }
      ]
  }
  ```

------

### Puntos de conexión y puertos
<a name="iotsitewise-publisher-component-endpoints"></a>

Este componente debe poder realizar solicitudes salientes a los siguientes puntos de conexión y puertos, además de a los puntos de conexión y puertos necesarios para el funcionamiento básico. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).


| punto de enlace | Puerto | Obligatorio | Description (Descripción) | 
| --- | --- | --- | --- | 
|  `data.iotsitewise.region.amazonaws.com`  | 443 | Sí |  Publique datos en AWS IoT SiteWise.  | 

## Dependencias
<a name="iotsitewise-publisher-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#iotsitewise-publisher-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**.

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.x a 2.2.x de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Núcleo de Greengrass](greengrass-nucleus-component.md) | >=2.3.0<3.0.0 | Rígido | 
| [Administrador de flujos](stream-manager-component.md) | >=2.0.10<3.0.0 | Rígido | 

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="iotsitewise-publisher-component-configuration"></a>

Este componente no tiene ningún parámetro de configuración.

Puede usar la AWS IoT SiteWise consola o la API para configurar el componente de SiteWise editor de IoT. Para obtener más información, consulte el [Paso 3: Configurar el publicador (opcional)](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/create-gateway-ggv2.html#configure-publisher) en la *Guía del usuario de AWS IoT SiteWise *.

## Datos de entrada
<a name="iotsitewise-publisher-component-input-data"></a>



Este componente lee `PutAssetPropertyValueEntry` los mensajes del administrador de AWS IoT Greengrass transmisiones. Para obtener más información, consulta [PutAssetPropertyValueEntry](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_PutAssetPropertyValueEntry.html) en la *AWS IoT SiteWise Referencia de la API de *.

## Archivo de registro local
<a name="iotsitewise-publisher-component-log-file"></a>

Este componente usa el siguiente archivo de registro.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.iot.SiteWiseEdgePublisher.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.iot.SiteWiseEdgePublisher.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:\$1greengrass\$1v2* por la ruta a la carpeta AWS IoT Greengrass raíz.

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/aws.iot.SiteWiseEdgePublisher.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.iot.SiteWiseEdgePublisher.log -Tail 10 -Wait
  ```

------

## Solución de problemas y depuración
<a name="iotsitewise-publisher-component-debug"></a>

Este componente incluye un registro de nuevos eventos para ayudar a los clientes a identificar y solucionar problemas. El archivo de registro es independiente del archivo de registro local y se encuentra en la siguiente ubicación. Sustituya `/greengrass/v2` o *C:\$1greengrass\$1v2* por la ruta a la carpeta AWS IoT Greengrass raíz.

------
#### [ Linux ]

```
/greengrass/v2/work/aws.iot.SiteWiseEdgePublisher/logs/IotSiteWisePublisherEvents.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\work\aws.iot.SiteWiseEdgePublisher\logs\IotSiteWisePublisherEvents.log
```

------

Este registro incluye información detallada e instrucciones de solución de errores. Se proporciona información sobre solución de problemas, junto con los diagnósticos, una descripción de cómo solucionar el problema y, a veces, enlaces a más información. La información de diagnóstico incluye lo siguiente:
+ Nivel de gravedad
+ Timestamp
+ Información adicional específica del evento

**Example Registro de ejemplo**  

```
accountBeingThrottled:
  Summary: Data upload speed slowed due to quota limits
  Level: WARN
  Timestamp: '2023-06-09T21:30:24.654Z'
  Description: The IoT SiteWise Publisher is limited to the "Rate of data points ingested"
    quota for a customers account. See the associated documentation and associated
    metric for the number of requests that were limited for more information. Note
    that this may be temporary and not require any change, although if the issue continues
    you may need to request an increase for the mentioned quota.
  FurtherInformation:
  - https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html
  - https://docs.aws.amazon.com/iot-sitewise/latest/userguide/troubleshooting-gateway.html#gateway-issue-data-streams
  AssociatedMetrics:
  - Name: TotalErrorCount
    Description: The total number of errors of this type that occurred.
    Value: 327724.0
  AssociatedData:
  - Name: AggregatePropertyAliases
    Description: The aggregated property aliases of the throttled data.
    FileLocation: /greengrass/v2/work/aws.iot.SiteWiseEdgePublisher/./logs/data/AggregatePropertyAliases_1686346224654.log
```

## Licencias
<a name="iotsitewise-publisher-component-licenses"></a>

<a name="component-core-software-license"></a>Este conector se publica en el [Contrato de Licencia de Software de Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Registros de cambios
<a name="iotsitewise-publisher-component-changelog"></a>

En la siguiente tabla, se describen los cambios en cada versión del componente.


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
| 4.1.4 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
| 4.1.3 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
| 4.1.2 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
| 4.1.1 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
| 4.1.0 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html) [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  4.0.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  4.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  4.0.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  4.0.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  3.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  3.1.4  |   La versión 3.1.4 se discontinuó el 20 de febrero de 2025. Las mejoras de esta versión están disponibles en versiones posteriores de este componente.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  3.1.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  3.1.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  3.1.1  |   La versión 3.1.1 se suspendió el 12 de marzo de 2024. Las mejoras de esta versión están disponibles en versiones posteriores de este componente.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  3.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  3.0.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.4.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.4.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.3.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.3.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.3.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.2.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.2.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.2.1  |   Esta versión no admite la configuración de proxy HTTP. La versión 2.2.2 y más recientes reintroducen compatibilidad con esta característica.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.2.0  |   Esta versión no admite la configuración de proxy HTTP. La versión 2.2.2 y más recientes reintroducen compatibilidad con esta característica.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.1.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.1.3  |   Esta versión ya no está disponible, excepto en las regiones EE.UU. Este (Ohio), Canadá (Central) AWS GovCloud y (EE.UU. Este). Esta versión de componente requiere la versión 11 o posterior de Java para ejecutarse. Las mejoras de esta versión están disponibles en versiones posteriores de este componente.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.1.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.1.1  |  Mejoras y correcciones de errores  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.0.2  |  Mejoras y correcciones de errores  | 
|  2.0.1  |  Versión inicial.  | 

## Véase también
<a name="iotsitewise-publisher-component-see-also"></a>
+ [¿Qué es AWS IoT SiteWise?](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/what-is-sitewise.html) en la *Guía AWS IoT SiteWise del usuario*.

# SiteWise Procesador IoT
<a name="iotsitewise-processor-component"></a>

El componente de SiteWise procesador de IoT (`aws.iot.SiteWiseEdgeProcessor`) permite que las pasarelas AWS IoT SiteWise Classic Streams V2 procesen datos en la periferia.

Con este componente, AWS IoT SiteWise las pasarelas pueden utilizar modelos de activos y activos para procesar datos en los dispositivos de pasarela. Para obtener más información sobre AWS IoT SiteWise las puertas de enlace, consulte [Uso AWS IoT SiteWise en el borde](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/gateways-ggv2.html) en la Guía del *AWS IoT SiteWise usuario*.

**nota**  
La característica del paquete de procesamiento de datos (DPP) dejará de estar abierta a nuevos clientes a partir del 7 de noviembre de 2025. Si desea utilizar el DPP, regístrese antes de esa fecha. Los clientes existentes pueden seguir utilizando el servicio con normalidad. Para obtener más información, consulte [Data processing pack availability change](https://docs.aws.amazon.com/iot-sitewise/latest/appguide/iotsitewise-dpp-availability-change.html) en la *Guía del usuario de AWS IoT SiteWise *.

**Topics**
+ [Versiones](#iotsitewise-processor-component-versions)
+ [Tipo](#iotsitewise-processor-component-type)
+ [Sistema operativo](#iotsitewise-processor-component-os-support)
+ [Requisitos](#iotsitewise-processor-component-requirements)
+ [Dependencias](#iotsitewise-processor-component-dependencies)
+ [Configuración](#iotsitewise-processor-component-configuration)
+ [Archivo de registro local](#iotsitewise-processor-component-log-file)
+ [Licencias](#iotsitewise-processor-component-licenses)
+ [Registros de cambios](#iotsitewise-processor-component-changelog)
+ [Véase también](#iotsitewise-processor-component-see-also)

## Versiones
<a name="iotsitewise-processor-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 3.5.x
+ 3.4.x
+ 3.3.x
+ 3.2.x
+ 3.1.x
+ 3.0.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Tipo
<a name="iotsitewise-processor-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<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="iotsitewise-processor-component-os-support"></a>

Este componente se puede instalar en los dispositivos principales que ejecutan los siguientes sistemas operativos:
+ Linux
+ Windows

## Requisitos
<a name="iotsitewise-processor-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ El dispositivo principal de Greengrass debe ejecutarse en una de las siguientes plataformas:
  + sistema operativo: Ubuntu 20.04 o posterior

    arquitectura: x86\$164 () AMD64
  + sistema operativo: Red Hat Enterprise Linux (RHEL) 8

    arquitectura: x86\$164 () AMD64
  + sistema operativo: Amazon Linux 2

    arquitectura: x86\$164 () AMD64
  + sistema operativo: Windows Server 2019 o posterior

    arquitectura: x86\$164 () AMD64
  + sistema operativo: Debian 11 (Bullseye) o posterior

    arquitectura: x86\$164 () AMD64
+ El dispositivo principal de Greengrass debe permitir tráfico entrante en el puerto 443.
+ El dispositivo principal de Greengrass debe permitir tráfico saliente en los puertos 443 y 8883.
+ Los siguientes puertos están reservados para su uso por AWS IoT SiteWise: 80, 443, 3001, 4569, 4572, 8000, 8081, 8082, 8084, 8085, 8086, 8445, 9000, 9500, 11080 y 50010. El uso de un puerto reservado para el tráfico puede causar la terminación de la conexión.
**nota**  
El puerto 8087 solo es necesario para la versión 2.0.15 y versiones posteriores de este componente.
+ El [rol de dispositivo de Greengrass](https://docs.aws.amazon.com/greengrass/v2/developerguide/device-service-role.html) debe tener permisos que le permitan usar AWS IoT SiteWise puertas de enlace en sus dispositivos. AWS IoT Greengrass V2 Para obtener más información, consulte [Requisitos](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/configure-gateway-ggv2.html#gateway-requirements) en la *Guía del usuario de AWS IoT SiteWise *.

### Puntos de conexión y puertos
<a name="iotsitewise-processor-component-endpoints"></a>

Este componente debe poder realizar solicitudes salientes a los siguientes puntos de conexión y puertos, además de a los puntos de conexión y puertos necesarios para el funcionamiento básico. Para obtener más información, consulte [Cómo permitir el tráfico del dispositivo a través de un proxy o firewall](allow-device-traffic.md).


| punto de enlace | Puerto | Obligatorio | Description (Descripción) | 
| --- | --- | --- | --- | 
|  `model.iotsitewise.region.amazonaws.com`  | 443 | Sí |  Obtenga información sobre sus AWS IoT SiteWise activos y modelos de activos.  | 
|  `edge.iotsitewise.region.amazonaws.com`  | 443 | Sí |  Obtenga información sobre la configuración de la AWS IoT SiteWise puerta de enlace del dispositivo principal.  | 
|  `ecr.region.amazonaws.com`  | 443 | Sí |  Descargue las imágenes de Docker de AWS IoT SiteWise Edge Gateway desde Amazon Elastic Container Registry.  | 
|  `iot.region.amazonaws.com`  | 443 | Sí |  Obtenga puntos de conexión de dispositivos para su Cuenta de AWS.  | 
|  `sts.region.amazonaws.com`  | 443 | Sí |  Obtenga el ID de su. Cuenta de AWS  | 
|  `monitor.iotsitewise.region.amazonaws.com`  | 443 | No |  Obligatorio si accedes a los AWS IoT SiteWise Monitor portales desde el dispositivo principal.  | 

## Dependencias
<a name="iotsitewise-processor-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega 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](#iotsitewise-processor-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**.

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.x a 2.1.x de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Servicio de intercambio de token](token-exchange-service-component.md) | >=2.0.3 <3.0.0 | Rígido | 
| [Administrador de flujos](stream-manager-component.md) | >=2.0.10 <3.0.0 | Rígido | 
| [CLI de Greengrass](greengrass-cli-component.md) | >=2.3.0 <3.0.0 | Rígido | 

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="iotsitewise-processor-component-configuration"></a>

Este componente no tiene ningún parámetro de configuración.

## Archivo de registro local
<a name="iotsitewise-processor-component-log-file"></a>

Este componente usa el siguiente archivo de registro.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.iot.SiteWiseEdgeProcessor.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.iot.SiteWiseEdgeProcessor.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:\$1greengrass\$1v2* por la ruta a la carpeta AWS IoT Greengrass raíz.

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/aws.iot.SiteWiseEdgeProcessor.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.iot.SiteWiseEdgeProcessor.log -Tail 10 -Wait
  ```

------

## Licencias
<a name="iotsitewise-processor-component-licenses"></a>

Este componente incluye las siguientes licencias o software de terceros:

### Licencias de terceros
<a name="w2ab1c24b8d120c25b5b1b1"></a>
+ Apache 2.0
+ MIT
+ Cláusula BSD-2
+ Cláusula BSD-3
+ CDDL-1.0
+ CDDL-1.1
+ ISC
+ Zlib
+ GPL-3.0 con excepción de la GCC
+ Dominio público
+ Python 2.0
+ Unicode-DFS-2015
+ Cláusula BSD-1
+ OpenSSL
+ EPL-1.0
+ EPL-2.0
+ GPL-2.0- with-classpath-exception
+ MPL-2.0
+ CC0-1.0
+ JSON

<a name="component-core-software-license"></a>Este conector se publica en el [Contrato de Licencia de Software de Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Registros de cambios
<a name="iotsitewise-processor-component-changelog"></a>

En la siguiente tabla, se describen los cambios en cada versión del componente.


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
| 3.5.1 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 3.4.0 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 3.3.1 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 3.3.0 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html) [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html) | 
|  3.2.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  3.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  3.1.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  3.1.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  3.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  3.0.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.2.1 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.37 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.35 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.34 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.33 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.32 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.31 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.29 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.28 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.24 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.23 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2.1.21  |   La actualización de la versión 2.0.x a la versión 2.1.x provocará la pérdida de datos locales.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2.0.16  |  Esta versión contiene correcciones de errores y mejoras.  | 
|  2.0.15  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2.0.14  |  Esta versión contiene correcciones de errores y mejoras.  | 
|  2.0.13  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2.0.9  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2.0.7  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2.0.6  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2.0.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2.0.2  |  Versión inicial.  | 

## Véase también
<a name="iotsitewise-processor-component-see-also"></a>
+ [¿Qué es? AWS IoT SiteWise](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/what-is-sitewise.html) en la *Guía AWS IoT SiteWise del usuario*.