

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

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

O componente de CloudWatch métricas da Amazon (`aws.greengrass.Cloudwatch`) publica métricas personalizadas dos principais dispositivos do Greengrass na Amazon. CloudWatch O componente permite que os componentes publiquem CloudWatch métricas, que você pode usar para monitorar e analisar o ambiente do dispositivo principal do Greengrass. Para obter mais informações, consulte [Usando CloudWatch métricas da Amazon](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/working_with_metrics.html) no *Guia CloudWatch do usuário da Amazon*.

Para publicar uma CloudWatch métrica com esse componente, publique uma mensagem em um tópico em que esse componente se inscreva. Por padrão, esse componente está inscrito no tópico [local de publicação/assinatura](ipc-publish-subscribe.md) do `cloudwatch/metric/put`. Você pode especificar outros tópicos, incluindo tópicos do AWS IoT Core MQTT, ao implantar esse componente.

Esse componente agrupa métricas que estão no mesmo namespace e as publica em intervalos regulares. CloudWatch 

**nota**  
Esse componente fornece funcionalidade semelhante ao conector de CloudWatch métricas na AWS IoT Greengrass V1. Para obter mais informações, consulte o [conector de CloudWatch métricas](https://docs.aws.amazon.com/greengrass/latest/developerguide/cloudwatch-metrics-connector.html) no *Guia do desenvolvedor AWS IoT Greengrass V1*.

**Topics**
+ [Versões](#cloudwatch-metrics-component-versions)
+ [Tipo](#cloudwatch-metrics-component-type)
+ [Sistema operacional](#cloudwatch-metrics-component-os-support)
+ [Requisitos](#cloudwatch-metrics-component-requirements)
+ [Dependências](#cloudwatch-metrics-component-dependencies)
+ [Configuração](#cloudwatch-metrics-component-configuration)
+ [Dados de entrada](#cloudwatch-metrics-component-input-data)
+ [Dados de saída](#cloudwatch-metrics-component-output-data)
+ [Licenças](#cloudwatch-metrics-component-licenses)
+ [Arquivo de log local](#cloudwatch-metrics-component-log-file)
+ [Changelog](#cloudwatch-metrics-component-changelog)
+ [Consulte também](#cloudwatch-metrics-component-see-also)

## Versões
<a name="cloudwatch-metrics-component-versions"></a>

Esse componente tem as seguintes versões:
+ 4.0.x
+ 3.2.x
+ 3.1.x
+ 3.0.x
+ 2.1.x
+ 2.0.x

Para informações sobre alterações em cada versão do componente, consulte [changelog](#cloudwatch-metrics-component-changelog).

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

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

<a name="public-component-type-generic"></a>Esse <a name="public-component-type-generic-phrase"></a>é um componente genérico (`aws.greengrass.generic`). O [Greengrass nucleus](greengrass-nucleus-component.md) executa os scripts do ciclo de vida do componente.

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

<a name="public-component-type-lambda"></a>Esse <a name="public-component-type-lambda-phrase"></a>é um componente do Lambda (`aws.greengrass.lambda`).. O [Greengrass nucleus](greengrass-nucleus-component.md) executa a função do Lambda desse componente usando o [componente inicializador do Lambda](lambda-launcher-component.md).

------

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

## Sistema operacional
<a name="cloudwatch-metrics-component-os-support"></a>

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

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

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

Esse componente pode ser instalado somente nos dispositivos principais do Linux.

------

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

Esse componente tem os seguintes requisitos:

------
#### [ v4.x - v3.x ]
+ <a name="public-component-python3-requirement"></a>[Python](https://www.python.org/) versão 3.7 instalado no dispositivo de núcleo e adicionado à variável de ambiente PATH.
+ As seguintes bibliotecas Python, incluindo quaisquer dependências, devem estar instaladas e disponíveis para o usuário que executa o componente:
  + [AWS IoT Device SDK v2 para Python](https://github.com/aws/aws-iot-device-sdk-python-v2)
  + [AWS SDK para Python (Boto3)](http://boto.readthedocs.org/en/latest/ref/)
**nota**  
Você pode definir a `UseInstaller` configuração `true` para instalar essas bibliotecas automaticamente no ambiente Python fornecido.
+ O [perfil do dispositivo do Greengrass](device-service-role.md) deve permitir a ação `cloudwatch:PutMetricData`, conforme mostrado no exemplo de política do IAM a seguir.

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

****  

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

------

  Para obter mais informações, consulte a [referência de CloudWatch permissões](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/permissions-reference-cw.html) da *Amazon no Guia CloudWatch do usuário da Amazon*.

------
#### [ 2.x ]
+ <a name="core-device-lambda-function-requirements"></a>O dispositivo principal deve atender aos requisitos para executar as funções do Lambda. Se você deseja que o dispositivo principal execute funções do Lambda em contêiner, o dispositivo deve atender aos requisitos para isso. Para obter mais informações, consulte [Requisitos da função do Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ <a name="public-component-python3-requirement"></a>[Python](https://www.python.org/) versão 3.7 instalado no dispositivo de núcleo e adicionado à variável de ambiente PATH.
+ O [perfil do dispositivo do Greengrass](device-service-role.md) deve permitir a ação `cloudwatch:PutMetricData`, conforme mostrado no exemplo de política do IAM a seguir.

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

****  

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

------

  Para obter mais informações, consulte a [referência de CloudWatch permissões](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/permissions-reference-cw.html) da *Amazon no Guia CloudWatch do usuário da Amazon*.
+ <a name="connector-component-legacy-subscription-router-dependency"></a>Para receber os dados de saída desse componente, é necessário mesclar a seguinte atualização de configuração no [componente legado de roteador de assinatura](legacy-subscription-router-component.md) (`aws.greengrass.LegacySubscriptionRouter`) ao implantar esse componente. Essa configuração especifica o tópico em que esse componente publica as respostas.

------
#### [ 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*Substitua pelo Região da AWS que você usa.
  + *version*Substitua pela versão da função Lambda que esse componente executa. Para encontrar a versão da função do Lambda, é necessário visualizar a fórmula da versão desse componente que deseja implantar. Abra a página de detalhes do componente no [console do AWS IoT Greengrass](https://console.aws.amazon.com//greengrass) e procure o par de chave/valor da **função do Lambda**. Esse par de chave/valor contém o nome e a versão da função do Lambda.

**Importante**  <a name="connector-component-legacy-subscription-router-dependency-note"></a>
É necessário atualizar a versão da função do Lambda no roteador de assinatura legado sempre que implantar esse componente. Isso garante que você use a versão correta da função do Lambda em relação à do componente que é implantado.

------

  <a name="connector-component-create-deployments"></a>Para obter mais informações, consulte [Criar implantações](create-deployments.md).

------

### Endpoints e portas
<a name="cloudwatch-metrics-component-endpoints"></a>

Esse componente precisa ser capaz de realizar solicitações de saída para os endpoints e portas a seguir, além dos endpoints e portas necessários para a operação básica. Para obter mais informações, consulte [Permitir o tráfego de dispositivos por meio de um proxy ou firewall](allow-device-traffic.md).


| Endpoint | Porta | Obrigatório | Description | 
| --- | --- | --- | --- | 
|  `monitoring.region.amazonaws.com`  | 443 | Sim |   CloudWatch Métricas de upload.  | 

## Dependências
<a name="cloudwatch-metrics-component-dependencies"></a>

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

------
#### [ 4.0.0 - 3.0.0 ]

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


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <3.0.0 | Flexível | 
| [Token Exchange Service](token-exchange-service-component.md) | >=0.0.0 | Rígido | 

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

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


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <3.0.0  | Rígido | 
| [Inicializador do Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Lambda runtimes](lambda-runtimes-component.md) | ^2.0.0  | Flexível | 
| [Token Exchange Service](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

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

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


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <3.0.0  | Rígido | 
| [Inicializador do Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Lambda runtimes](lambda-runtimes-component.md) | ^2.0.0  | Flexível | 
| [Token Exchange Service](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

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

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


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0  | Rígido | 
| [Inicializador do Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Lambda runtimes](lambda-runtimes-component.md) | ^2.0.0  | Flexível | 
| [Token Exchange Service](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

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

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


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0  | Rígido | 
| [Inicializador do Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Lambda runtimes](lambda-runtimes-component.md) | ^2.0.0  | Flexível | 
| [Token Exchange Service](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

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

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


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0  | Rígido | 
| [Inicializador do Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Lambda runtimes](lambda-runtimes-component.md) | ^2.0.0  | Flexível | 
| [Token Exchange Service](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

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

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


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0  | Rígido | 
| [Inicializador do Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Lambda runtimes](lambda-runtimes-component.md) | ^2.0.0  | Flexível | 
| [Token Exchange Service](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

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

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


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0  | Rígido | 
| [Inicializador do Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Lambda runtimes](lambda-runtimes-component.md) | ^2.0.0  | Flexível | 
| [Token Exchange Service](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

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

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


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0  | Rígido | 
| [Inicializador do Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Lambda runtimes](lambda-runtimes-component.md) | ^2.0.0  | Flexível | 
| [Token Exchange Service](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

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

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


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0  | Rígido | 
| [Inicializador do Lambda](lambda-launcher-component.md) | ^2.0.0  | Rígido | 
| [Lambda runtimes](lambda-runtimes-component.md) | ^2.0.0  | Flexível | 
| [Token Exchange Service](token-exchange-service-component.md) | ^2.0.0  | Rígido | 

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

A tabela a seguir lista as dependências para a versão 2.0.3 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Greengrass nucleus](greengrass-nucleus-component.md) | >=2.0.3 <2.1.0  | Rígido | 
| [Inicializador do Lambda](lambda-launcher-component.md) | >=1.0.0  | Rígido | 
| [Lambda runtimes](lambda-runtimes-component.md) | >=1.0.0  | Flexível | 
| [Token Exchange Service](token-exchange-service-component.md) | >=1.0.0  | Rígido | 

------

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

## Configuração
<a name="cloudwatch-metrics-component-configuration"></a>

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

------
#### [ v4.x ]

 `PublishInterval`   
(Opcional) O número máximo de segundos a aguardar antes que o componente publique métricas em lote para um determinado namespace. Para configurar o componente para publicar métricas à medida que as recebe, ou seja, sem agrupamento em lotes, especifique `0`.  
O componente é publicado CloudWatch após receber 20 métricas no mesmo namespace ou após o intervalo especificado por você.  
O componente não especifica a ordem na qual os eventos são publicados.
Esse valor pode ser de no máximo 900 segundos.  
Padrão: 10 segundos

 `MaxMetricsToRetain`   
(Opcional) O número máximo de métricas em todos os namespaces a serem salvas na memória antes que o componente as substitua por métricas mais novas.  
Esse limite se aplica quando o dispositivo principal não tem uma conexão com a Internet, então o componente armazena em buffer as métricas para publicar posteriormente. Quando o buffer está cheio, o componente substitui as métricas mais antigas por outras mais recentes. Métricas em um determinado namespace substituem apenas métricas no mesmo namespace.  
Se o processo de host do componente for interrompido, o componente não salvará as métricas. Isso pode ocorrer durante a implantação ou quando o dispositivo é reiniciado, por exemplo.
Esse valor deve ser de pelo menos 2.000 métricas.  
Padrão: 5.000 métricas

`InputTopic`  
(Opcional) O tópico que o componente assina para receber mensagens. Se você especificar `true` para `PubSubToIoTCore`, poderá usar curingas MQTT (\$1 e \$1) nesse tópico.  
Padrão: `cloudwatch/metric/put`

`OutputTopic`  
(Opcional) O tópico no qual o componente publica respostas de status.  
Padrão: `cloudwatch/metric/put/status`

`PubSubToIoTCore`  
(Opcional) Valor da string que define se é necessário publicar e assinar tópicos do MQTT do AWS IoT Core . Os valores compatíveis são `true` e `false`.  
Padrão: `false`

`LogLevel`  
(Opcional) O nível de registro em log do componente. Escolha entre os seguintes níveis de log, listados aqui em ordem de nível:  
+ `DEBUG`
+ `INFO`
+ `WARNING`
+ `ERROR`
+ `CRITICAL`
Padrão: `INFO`

 `UseInstaller`   
(Opcional) Valor booleano que define se o script do instalador deve ser usado para instalar as dependências do Python desse componente no ambiente Python fornecido.  
Defina esse valor `true` para instalar automaticamente as dependências do Python desse componente. Quando definido como`false`, você deve instalar as seguintes bibliotecas, incluindo quaisquer dependências, e disponibilizá-las para o ambiente Python fornecido ao usuário que executa o componente.  
+ [AWS IoT Device SDK v2 para Python](https://github.com/aws/aws-iot-device-sdk-python-v2)
+ [AWS SDK para Python (Boto3)](http://boto.readthedocs.org/en/latest/ref/)
Padrão: `false`

`PublishRegion`  
(Opcional) O Região da AWS para o qual publicar CloudWatch métricas. Esse valor substitui a região padrão do dispositivo principal. Este parâmetro é necessário apenas para métricas entre regiões.

`accessControl`  
(Opcional) O objeto que contém a [política de autorização](interprocess-communication.md#ipc-authorization-policies) que permite ao componente publicar e assinar os tópicos especificados. Se você especificar valores personalizados para `InputTopic` e `OutputTopic`, será preciso atualizar os valores dos recursos nesse objeto.   
Padrão:   

```
{
  "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 Exemplo: atualização da mesclagem de configuração**  

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

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

 `PublishInterval`   
(Opcional) O número máximo de segundos a aguardar antes que o componente publique métricas em lote para um determinado namespace. Para configurar o componente para publicar métricas à medida que as recebe, ou seja, sem agrupamento em lotes, especifique `0`.  
O componente é publicado CloudWatch após receber 20 métricas no mesmo namespace ou após o intervalo especificado por você.  
O componente não especifica a ordem na qual os eventos são publicados.
Esse valor pode ser de no máximo 900 segundos.  
Padrão: 10 segundos

 `MaxMetricsToRetain`   
(Opcional) O número máximo de métricas em todos os namespaces a serem salvas na memória antes que o componente as substitua por métricas mais novas.  
Esse limite se aplica quando o dispositivo principal não tem uma conexão com a Internet, então o componente armazena em buffer as métricas para publicar posteriormente. Quando o buffer está cheio, o componente substitui as métricas mais antigas por outras mais recentes. Métricas em um determinado namespace substituem apenas métricas no mesmo namespace.  
Se o processo de host do componente for interrompido, o componente não salvará as métricas. Isso pode ocorrer durante a implantação ou quando o dispositivo é reiniciado, por exemplo.
Esse valor deve ser de pelo menos 2.000 métricas.  
Padrão: 5.000 métricas

`InputTopic`  
(Opcional) O tópico que o componente assina para receber mensagens. Se você especificar `true` para `PubSubToIoTCore`, poderá usar curingas MQTT (\$1 e \$1) nesse tópico.  
Padrão: `cloudwatch/metric/put`

`OutputTopic`  
(Opcional) O tópico no qual o componente publica respostas de status.  
Padrão: `cloudwatch/metric/put/status`

`PubSubToIoTCore`  
(Opcional) Valor da string que define se é necessário publicar e assinar tópicos do MQTT do AWS IoT Core . Os valores compatíveis são `true` e `false`.  
Padrão: `false`

`LogLevel`  
(Opcional) O nível de registro em log do componente. Escolha entre os seguintes níveis de log, listados aqui em ordem de nível:  
+ `DEBUG`
+ `INFO`
+ `WARNING`
+ `ERROR`
+ `CRITICAL`
Padrão: `INFO`

`UseInstaller`  
(Opcional) Valor booleano que define se o script do instalador deve ser usado para instalar as dependências do Python desse componente no ambiente Python fornecido.  
Defina esse valor `false` para usar um script personalizado ou instalar dependências manualmente. Quando definido como`false`, você deve instalar as seguintes bibliotecas, incluindo quaisquer dependências, e disponibilizá-las para o ambiente Python fornecido ao usuário que executa o componente.  
+ [AWS IoT Device SDK v2 para Python](https://github.com/aws/aws-iot-device-sdk-python-v2)
+ [AWS SDK para Python (Boto3)](http://boto.readthedocs.org/en/latest/ref/)
Padrão: `true`

`PublishRegion`  
(Opcional) O Região da AWS para o qual publicar CloudWatch métricas. Esse valor substitui a região padrão do dispositivo principal. Este parâmetro é necessário apenas para métricas entre regiões.

`accessControl`  
(Opcional) O objeto que contém a [política de autorização](interprocess-communication.md#ipc-authorization-policies) que permite ao componente publicar e assinar os tópicos especificados. Se você especificar valores personalizados para `InputTopic` e `OutputTopic`, será preciso atualizar os valores dos recursos nesse objeto.   
Padrão:   

```
{
  "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 Exemplo: atualização da mesclagem de configuração**  

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

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

**nota**  <a name="connector-component-lambda-parameters"></a>
A configuração padrão desse componente inclui parâmetros da função do Lambda. Recomendamos que você edite somente os parâmetros a seguir para configurar esse componente em seus dispositivos.

 `lambdaParams`   
Um objeto que contém os parâmetros para a função do Lambda desse componente. Esse objeto contém as informações a seguir:    
 `EnvironmentVariables`   
Um objeto que contém os parâmetros da função do Lambda. Esse objeto contém as informações a seguir:    
 `PUBLISH_INTERVAL`   
(Opcional) O número máximo de segundos a aguardar antes que o componente publique métricas em lote para um determinado namespace. Para configurar o componente para publicar métricas à medida que as recebe, ou seja, sem agrupamento em lotes, especifique `0`.  
O componente é publicado CloudWatch após receber 20 métricas no mesmo namespace ou após o intervalo especificado por você.  
O componente não garante a ordem em que os eventos são publicados.
Esse valor pode ser de no máximo 900 segundos.  
Padrão: 10 segundos  
 `MAX_METRICS_TO_RETAIN`   
(Opcional) O número máximo de métricas em todos os namespaces a serem salvas na memória antes que o componente as substitua por métricas mais novas.  
Esse limite se aplica quando o dispositivo principal não tem uma conexão com a Internet, então o componente armazena em buffer as métricas para publicar posteriormente. Quando o buffer está cheio, o componente substitui as métricas mais antigas por outras mais recentes. Métricas em um determinado namespace substituem apenas métricas no mesmo namespace.  
Se o processo de host do componente for interrompido, o componente não salvará as métricas. Isso pode ocorrer durante a implantação ou quando o dispositivo é reiniciado, por exemplo.
Esse valor deve ser de pelo menos 2.000 métricas.  
Padrão: 5.000 métricas  
 `PUBLISH_REGION`   
(Opcional) O Região da AWS para o qual publicar CloudWatch métricas. Esse valor substitui a região padrão do dispositivo principal. Este parâmetro é necessário apenas para métricas entre regiões.

`containerMode`  <a name="connector-component-container-mode-parameter"></a>
(Opcional) O modo de conteinerização desse componente. Escolha uma das seguintes opções:  <a name="lambda-function-component-container-mode-parameter"></a>
+ `NoContainer`; o componente não é executado em um ambiente de runtime isolado.
+ `GreengrassContainer`— O componente é executado em um ambiente de execução isolado dentro do AWS IoT Greengrass contêiner.
Padrão: `GreengrassContainer`

 `containerParams`   
<a name="connector-component-container-params-description"></a>(Opcional) Um objeto que contém os parâmetros de contêiner para esse componente. O componente usará esses parâmetros se você especificar `GreengrassContainer` para `containerMode`.  
Esse objeto contém as informações a seguir:    
 `memorySize`   
<a name="connector-component-container-params-memory-size-description"></a>(Opcional) A quantidade de memória (em kilobytes) a ser alocada para o componente.  
O padrão é de 64 MB (65.535 KB).

`pubsubTopics`  <a name="connector-component-pubsub-topics-parameter"></a>
(Opcional) Um objeto que contém os tópicos que o componente assina para receber mensagens. Você pode especificar cada tópico e se o componente se inscreve nos tópicos do MQTT AWS IoT Core ou nos tópicos locais publish/subscribe .  
Esse objeto contém as informações a seguir:    
`0`: este é um índice de matriz como uma string.  
Um objeto que contém as seguintes informações:    
`type`  
(Opcional) O tipo de publish/subscribe mensagem que esse componente usa para assinar mensagens. Escolha uma das seguintes opções:  
+ `PUB_SUB` – Assine mensagens locais de publicar/assinar. Se escolher essa opção, o tópico não poderá conter curingas MQTT. Para obter mais informações sobre como enviar mensagens do componente personalizado quando você especifica essa opção, consulte [Publicar/assinar mensagens locais](ipc-publish-subscribe.md).
+ `IOT_CORE`— Assine as mensagens do AWS IoT Core MQTT. Se você escolher essa opção, o tópico poderá conter curingas do MQTT. Para obter mais informações sobre como enviar mensagens de componentes personalizados quando você especifica essa opção, consulte [Publique/assine mensagens MQTT AWS IoT Core](ipc-iot-core-mqtt.md).
Padrão: `PUB_SUB`  
`topic`  
(Opcional) O tópico que o componente assina para receber mensagens. Se você especificar `IotCore` para `type`, poderá usar curingas MQTT (`+` e `#`) neste tópico.

**Example Exemplo: atualização da mesclagem de configuração (modo de contêiner)**  

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

**Example Exemplo: atualização da mesclagem de configuração (sem modo de contêiner)**  

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

------

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

Esse componente aceita métricas no tópico a seguir e as publica em. CloudWatch <a name="connector-component-local-publish"></a>Por padrão, esse componente assina publish/subscribe mensagens locais. Para obter mais informações sobre como publicar mensagens nesse componente a partir de seus componentes personalizados, consulte [Publicar/assinar mensagens locais](ipc-publish-subscribe.md). 

A partir da versão v3.0.0 do componente, você tem a opção de configurar esse componente para assinar um tópico MQTT definindo o parâmetro de configuração `PubSubToIoTCore` como `true`. Para obter mais informações sobre como publicar mensagens em um tópico MQTT nos componentes personalizados, consulte [Publique/assine mensagens MQTT AWS IoT Core](ipc-iot-core-mqtt.md).

 **Tópico padrão:** `cloudwatch/metric/put` 

<a name="connector-component-input-properties"></a>A mensagem aceita as propriedades a seguir. As mensagens de entrada devem estar no formato JSON.

 `request`   
A métrica nessa mensagem.  
O objeto de solicitação contém os dados de métrica para publicação no CloudWatch. Os valores de métrica devem atender às especificações da operação [https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_PutMetricData.html](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_PutMetricData.html).  
Tipo: o `object` que contém as seguintes informações:    
 `namespace`   
O namespace definido pelo usuário para os dados métricos nessa solicitação. CloudWatch usa namespaces como contêineres para pontos de dados métricos.  
Você não pode especificar um namespace que comece com a string reservada `AWS/`.
Digite: `string`  
Padrão válido: `[^:].*`  
 `metricData`   
Os dados para a métrica.  
Tipo: o `object` que contém as seguintes informações:    
 `metricName`   
O nome da métrica.  
Tipo: `string`  
 `value`   
O valor para a métrica.  
CloudWatch rejeita valores muito pequenos ou muito grandes. O valor deve estar entre `8.515920e-109` e `1.174271e+108` (Base 10) ou `2e-360` e `2e360` (Base 2). CloudWatch não suporta valores especiais como `NaN``+Infinity`, `-Infinity` e.
Tipo: `double`  
 `dimensions`   
(Opcional) As dimensões da métrica. As dimensões fornecem informações adicionais sobre a métrica e seus dados. Uma métrica pode definir até 10 dimensões.  
Esse componente inclui, automaticamente, uma dimensão chamada `coreName`, em que o valor é o nome do núcleo do dispositivo.  
Tipo: o `array` de objetos que contêm, cada um, as seguintes informações:    
 `name`   
(Opcional) O nome da dimensão.  
Tipo: `string`  
 `value`   
(Opcional) O valor da dimensão.  
Tipo: `string`  
 `timestamp`   
(Opcional) O horário em que os dados métricos foram recebidos, expresso em segundos no horário de época do Unix.  
O padrão é a hora em que o componente recebe a mensagem.  
Tipo: `double`  
Se você usar entre as versões 2.0.3 e 2.0.7 deste componente, recomendamos que recupere o carimbo de data/hora separadamente para cada métrica ao enviar várias métricas de uma única fonte. Não use uma variável para armazenar o timestamp.  
 `unit`   
(Opcional) A unidade da 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`  
O padrão é `None`.

**nota**  
Todas as cotas que se aplicam à CloudWatch `PutMetricData` API se aplicam às métricas que você publica com esse componente. As seguintes cotas são especialmente importantes:  
Limite de 40 KB na carga útil da API
20 métricas por solicitação de API
150 transações por segundo (TPS) para a API `PutMetricData`
Para obter mais informações, consulte as [cotas de CloudWatch serviço](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_limits.html) no *Guia do CloudWatch usuário*.

**Example Exemplo de entrada**  

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

## Dados de saída
<a name="cloudwatch-metrics-component-output-data"></a>

 <a name="connector-component-output-data-pubsub"></a>Por padrão, esse componente publica respostas como dados de saída no publish/subscribe tópico local a seguir. Para obter mais informações sobre como assinar mensagens nesse tópico nos componentes personalizados, consulte [Publicar/assinar mensagens locais](ipc-publish-subscribe.md). 

Como opção, é possível configurar esse componente para publicar em um tópico MQTT definindo o parâmetro de configuração `PubSubToIoTCore` como `true`. Para obter mais informações sobre como assinar mensagens em um tópico MQTT nos componentes personalizados, consulte [Publique/assine mensagens MQTT AWS IoT Core](ipc-iot-core-mqtt.md).

**nota**  
As versões 2.0.x do componente publicam respostas como dados de saída em um tópico MQTT por padrão. É necessário especificar o tópico como `subject` na configuração do [componente legado de roteador de assinatura](legacy-subscription-router-component.md).

 **Tópico padrão:** `cloudwatch/metric/put/status` 

**Example Exemplo de resultado: sucesso**  
A resposta inclui o namespace dos dados métricos e o `RequestId` campo da CloudWatch resposta.  

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

**Example Exemplo de resultado: falha**  

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

**nota**  <a name="connector-component-retryable-error"></a>
Se o componente detectar um erro que pode ser repetido, como um erro de conexão, ele tentará publicar novamente no próximo lote.

## Licenças
<a name="cloudwatch-metrics-component-licenses"></a>

Esse componente inclui o seguinte licenciamento/software de terceiros:<a name="boto-3-licenses"></a>
+ [AWS SDK para Python (Boto3)](https://pypi.org/project/boto3/)/Licença Apache 2.0
+ [botocore](https://pypi.org/project/botocore/)/Licença Apache 2.0
+ [dateutil](https://pypi.org/project/python-dateutil/1.4/)/Licença PSF
+ [docutils](https://pypi.org/project/docutils/)/Licença BSD, GNU Licença pública geral (GPL), Licença Python Software Foundation, Domínio público
+ [jmespath](https://pypi.org/project/jmespath/)/Licença MIT
+ [s3transfer](https://pypi.org/project/s3transfer/)/Licença Apache 2.0
+ [urllib3](https://pypi.org/project/urllib3/)/Licença MIT

<a name="component-core-software-license"></a>Esse componente é liberado de acordo com o [Contrato de licença de software Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

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

Esse componente usa o arquivo de log abaixo.

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

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

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

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

------

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

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

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

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

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

------

## Changelog
<a name="cloudwatch-metrics-component-changelog"></a>

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

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


|  **Versão**  |  **Alterações**  | 
| --- | --- | 
|  4.0.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 
|  3.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 
|  3.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 
|  3.0.0  |  <a name="changelog-cloudwatch-metrics-3.0.0-major-version-changes"></a>Essa versão do componente de CloudWatch métricas espera parâmetros de configuração diferentes da versão 2.x. Se você usar uma configuração não padrão para a versão 2.x e quiser atualizar da v2.x para a v3.x, deverá atualizar a configuração do componente. Para obter mais informações, consulte a [configuração do 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/pt_br/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 

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


|  **Versão**  |  **Alterações**  | 
| --- | --- | 
|  2.1.8  |  Versão atualizada para o Greengrass nucleus versão 2.13.0.  | 
|  2.1.3  |  Versão atualizada para o lançamento da versão 2.11.0 do núcleo do Greengrass.  | 
|  2.1.2  |  Versão atualizada para o lançamento da versão 2.7.0 do núcleo do Greengrass.  | 
|  2.1.1  |  Versão atualizada para o lançamento da versão 2.6.0 do núcleo do Greengrass.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 
|  2.0.8  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 
|  2.0.7  |  Versão atualizada para o lançamento da versão 2.4.0 do núcleo do Greengrass.  | 
|  2.0.6  |  Versão atualizada para o lançamento da versão 2.3.0 do núcleo do Greengrass.  | 
|  2.0.5  |  Versão atualizada para o lançamento do núcleo do Greengrass versão 2.2.0.  | 
|  2.0.4  |  Versão atualizada para o Greengrass nucleus versão 2.1.0.  | 
|  2.0.3  |  Versão inicial.  | 

------

## Consulte também
<a name="cloudwatch-metrics-component-see-also"></a>
+ [Usando CloudWatch métricas da Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html) no *Guia do CloudWatch usuário da Amazon*
+ [PutMetricData](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_PutMetricData.html)na *Amazon CloudWatch API Reference*