

O AWS SDK para JavaScript v2 chegou ao fim do suporte. Recomendamos migrar para o [AWS SDK para JavaScript v3](https://docs.aws.amazon.com//sdk-for-javascript/v3/developer-guide/). Para ver detalhes e informações sobre como migrar, consulte este [anúncio](https://aws.amazon.com/blogs//developer/announcing-end-of-support-for-aws-sdk-for-javascript-v2/).

# Criação de alarmes no Amazon CloudWatch
<a name="cloudwatch-examples-creating-alarms"></a>

![\[JavaScript code example that applies to Node.js execution\]](http://docs.aws.amazon.com/pt_br/sdk-for-javascript/v2/developer-guide/images/nodeicon.png)

**Este exemplo de código Node.js mostra:**
+ Como recuperar informações básicas sobre os alarmes do CloudWatch.
+ Como criar e excluir um alarme do CloudWatch.

## O cenário
<a name="cloudwatch-examples-creating-alarms-scenario"></a>

Um alarme observa uma única métrica ao longo de um período especificado por você e realiza uma ou mais ações com base no valor da métrica relativo a um determinado limite ao longo de vários períodos.

Neste exemplo, uma série de módulos Node.js é usada para criar alarmes no CloudWatch. Os módulos Node.js usam o SDK para JavaScript para criar alarmes usando esses métodos da classe de cliente do `AWS.CloudWatch`:
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CloudWatch.html#describeAlarms-property](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CloudWatch.html#describeAlarms-property)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CloudWatch.html#putMetricAlarm-property](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CloudWatch.html#putMetricAlarm-property)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CloudWatch.html#deleteAlarms-property](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CloudWatch.html#deleteAlarms-property)

Para obter mais informações sobre os alarmes do CloudWatch e as alterações de estado, consulte [Criar alarmes do Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) no *Manual do usuário do Amazon CloudWatch*.

## Tarefas de pré-requisito
<a name="cloudwatch-examples-creating-alarms-prerequisites"></a>

Para configurar e executar este exemplo, você deve primeiro concluir estas tarefas:
+ Instale o Node.js. Para obter mais informações sobre como instalar Node.js, consulte o [website de Node.js](https://nodejs.org).
+ Crie um arquivo de configurações compartilhado com as credenciais de usuário. Para obter mais informações sobre como fornecer um arquivo de credenciais compartilhadas, consulte [Carregar credenciais em Node.js do arquivo de credenciais compartilhado](loading-node-credentials-shared.md).

## Descrever alarmes
<a name="cloudwatch-examples-creating-alarms-describing"></a>

Crie um módulo do Node.js com o nome de arquivo `cw_describealarms.js`. Não se esqueça de configurar o SDK conforme mostrado anteriormente. Para acessar o CloudWatch, crie um objeto de serviço do `AWS.CloudWatch`. Crie um objeto JSON para armazenar os parâmetros para recuperar as descrições de alarme, limitando os alarmes retornados àqueles com um estado de `INSUFFICIENT_DATA`. Depois, chame o método `describeAlarms` do objeto de serviço do `AWS.CloudWatch`.

```
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });

// Create CloudWatch service object
var cw = new AWS.CloudWatch({ apiVersion: "2010-08-01" });

cw.describeAlarms({ StateValue: "INSUFFICIENT_DATA" }, function (err, data) {
  if (err) {
    console.log("Error", err);
  } else {
    // List the names of all current alarms in the console
    data.MetricAlarms.forEach(function (item, index, array) {
      console.log(item.AlarmName);
    });
  }
});
```

Para executar o exemplo, digite o seguinte na linha de comando.

```
node cw_describealarms.js
```

Este código de exemplo pode ser encontrado [aqui no GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/cloudwatch/cw_describealarms.js).

## Criando um alarme para o CloudWatch Metric
<a name="cloudwatch-examples-creating-alarms-putmetricalarm"></a>

Crie um módulo do Node.js com o nome de arquivo `cw_putmetricalarm.js`. Não se esqueça de configurar o SDK conforme mostrado anteriormente. Para acessar o CloudWatch, crie um objeto de serviço do `AWS.CloudWatch`. Crie um objeto JSON para os parâmetros necessários a fim de criar um alarme baseado em uma métrica. Neste caso, a utilização de CPU de uma instância do Amazon EC2. Os demais parâmetros são definidos, de maneira que o alarme seja acionado quando a métrica exceder o limite de 70%. Depois, chame o método `describeAlarms` do objeto de serviço do `AWS.CloudWatch`.

```
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });

// Create CloudWatch service object
var cw = new AWS.CloudWatch({ apiVersion: "2010-08-01" });

var params = {
  AlarmName: "Web_Server_CPU_Utilization",
  ComparisonOperator: "GreaterThanThreshold",
  EvaluationPeriods: 1,
  MetricName: "CPUUtilization",
  Namespace: "AWS/EC2",
  Period: 60,
  Statistic: "Average",
  Threshold: 70.0,
  ActionsEnabled: false,
  AlarmDescription: "Alarm when server CPU exceeds 70%",
  Dimensions: [
    {
      Name: "InstanceId",
      Value: "INSTANCE_ID",
    },
  ],
  Unit: "Percent",
};

cw.putMetricAlarm(params, function (err, data) {
  if (err) {
    console.log("Error", err);
  } else {
    console.log("Success", data);
  }
});
```

Para executar o exemplo, digite o seguinte na linha de comando.

```
node cw_putmetricalarm.js
```

Este código de exemplo pode ser encontrado [aqui no GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/cloudwatch/cw_putmetricalarm.js).

## Exclusão de um alarme
<a name="cloudwatch-examples-creating-alarms-deleting"></a>

Crie um módulo do Node.js com o nome de arquivo `cw_deletealarms.js`. Não se esqueça de configurar o SDK conforme mostrado anteriormente. Para acessar o CloudWatch, crie um objeto de serviço do `AWS.CloudWatch`. Crie um objeto JSON para manter os nomes dos alarmes que você deseja excluir. Depois, chame o método `deleteAlarms` do objeto de serviço do `AWS.CloudWatch`.

```
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });

// Create CloudWatch service object
var cw = new AWS.CloudWatch({ apiVersion: "2010-08-01" });

var params = {
  AlarmNames: ["Web_Server_CPU_Utilization"],
};

cw.deleteAlarms(params, function (err, data) {
  if (err) {
    console.log("Error", err);
  } else {
    console.log("Success", data);
  }
});
```

Para executar o exemplo, digite o seguinte na linha de comando.

```
node cw_deletealarms.js
```

Este código de exemplo pode ser encontrado [aqui no GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/cloudwatch/cw_deletealarms.js).