

# Métricas del lado de la nube
<a name="detect-cloud-side-metrics"></a>

Al crear un perfil de seguridad, puede especificar el comportamiento esperado de su dispositivo IoT configurando comportamientos y umbrales para las métricas generadas por los dispositivos IoT. Las siguientes son métricas del lado de la nube, que son métricas de AWS IoT.

## Tamaño del mensaje (aws:message-byte-size)
<a name="detect-message-size"></a>

El número de bytes de un mensaje. Utilice esta métrica para especificar el tamaño máximo o mínimo (en bytes) de cada mensaje transmitido desde un dispositivo a AWS IoT.

Compatible con: Rules Detect \$1 ML Detect

Operadores: less-than \$1 less-than-equals \$1 greater-than \$1 greater-than-equals 

Valor: un entero no negativo 

Unidades: bytes 

**Example**  

```
{
  "name": "Max Message Size",
  "metric": "aws:message-byte-size",
  "criteria": {
    "comparisonOperator": "less-than-equals",
    "value": {
      "count": 1024
    },
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1
  },
  "suppressAlerts": true
}
```

**Example Ejemplo en el que se utiliza `statisticalThreshold`:**  

```
{

  "name": "Large Message Size",
  "metric": "aws:message-byte-size",
  "criteria": {
    "comparisonOperator": "less-than-equals",
    "statisticalThreshold": {
      "statistic": "p90"
    },
    "durationSeconds": 300,
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1
  },
  "suppressAlerts": true
}
```

**Example Ejemplo de uso de ML Detect**  

```
{
  "name": "Message size ML behavior",
  "metric": "aws:message-byte-size",
  "criteria": {
	 "consecutiveDatapointsToAlarm": 1,
	 "consecutiveDatapointsToClear": 1,
	 "mlDetectionConfig": {
	   "confidenceLevel": "HIGH"
   }
	},
  "suppressAlerts": true
}
```

Se genera una alarma para un dispositivo si, durante tres períodos consecutivos de cinco minutos, transmite mensajes cuyo tamaño acumulado es mayor que el medido para el 90 por ciento de todos los demás dispositivos que informan sobre este comportamiento de perfil de seguridad.

## Mensajes enviados (aws:num-messages-sent)
<a name="detect-messages-sent"></a>

El número de mensajes enviados por un dispositivo durante un período de tiempo determinado.

Utilice esta métrica para especificar el número máximo o mínimo de mensajes que pueden enviarse entre AWS IoT y cada dispositivo en un período de tiempo determinado.

Compatible con: Rules Detect \$1 ML Detect

Operadores: less-than \$1 less-than-equals \$1 greater-than \$1 greater-than-equals 

Valor: un entero no negativo 

Unidades: mensajes 

Duración: un entero no negativo. Los valores válidos son 300, 600, 900, 1800 o 3600 segundos.

**Example**  

```
{

  "name": "Out bound message count",
  "metric": "aws:num-messages-sent",
  "criteria": {
    "comparisonOperator": "less-than-equals",
    "value": {
      "count": 50
    },
    "durationSeconds": 300,
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1
    },
  "suppressAlerts": true
}
```

**Example Ejemplo en el que se utiliza `statisticalThreshold`:**  

```
{

  "name": "Out bound message rate",
  "metric": "aws:num-messages-sent",
  "criteria": {
    "comparisonOperator": "less-than-equals",
    "statisticalThreshold": {
      "statistic": "p99"
    },
    "durationSeconds": 300,
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1
  },
  "suppressAlerts": true
}
```

**Example Ejemplo de uso de ML Detect**  

```
{
  "name": "Messages sent ML behavior",
  "metric": "aws:num-messages-sent",
  "criteria": {
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1,
    "mlDetectionConfig": {
      "confidenceLevel": "HIGH"
    }
  },
  "suppressAlerts": true
}
```

## Mensajes recibidos (aws:num-messages-received)
<a name="detect-messages-received"></a>

El número de mensajes recibidos por un dispositivo durante un período de tiempo determinado.

Utilice esta métrica para especificar el número máximo o mínimo de mensajes que pueden recibirse entre AWS IoT y cada dispositivo en un período de tiempo determinado.

Compatible con: Rules Detect \$1 ML Detect

Operadores: less-than \$1 less-than-equals \$1 greater-than \$1 greater-than-equals 

Valor: un entero no negativo 

Unidades: mensajes 

Duración: un entero no negativo. Los valores válidos son 300, 600, 900, 1800 o 3600 segundos.

**Example**  

```
{
  "name": "In bound message count",
  "metric": "aws:num-messages-received",
  "criteria": {
    "comparisonOperator": "less-than-equals",
    "value": {
      "count": 50
    },
    "durationSeconds": 300,
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1
    },
  "suppressAlerts": true
}
```

**Example Ejemplo en el que se utiliza `statisticalThreshold`:**  

```
{
  "name": "In bound message rate",
  "metric": "aws:num-messages-received",
  "criteria": {
    "comparisonOperator": "less-than-equals",
    "statisticalThreshold": {
      "statistic": "p99"
    },
    "durationSeconds": 300,
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1
  },
  "suppressAlerts": true
}
```

**Example Ejemplo de uso de ML Detect**  

```
{
  "name": "Messages received ML behavior",
  "metric": "aws:num-messages-received",
  "criteria": {
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1,
    "mlDetectionConfig": {
      "confidenceLevel": "HIGH"
    }
  },
  "suppressAlerts": true
}
```

## Fallos de autorización (aws:num-authorization-failures)
<a name="detect-auth-failures"></a>

Utilice esta métrica para especificar la cantidad máxima de errores de autorización permitidos para cada dispositivo en un período de tiempo determinado. Se produce un error de autorización cuando se deniega una solicitud desde un dispositivo a AWS IoT (por ejemplo, si un dispositivo intenta publicar en un tema para el que no tiene suficientes permisos). 

Compatible con: Rules Detect \$1 ML Detect

Unidad: errores 

Operadores: less-than \$1 less-than-equals \$1 greater-than \$1 greater-than-equals 

Valor: un entero no negativo 

Duración: un entero no negativo. Los valores válidos son 300, 600, 900, 1800 o 3600 segundos.

**Example**  

```
{
  "name": "Authorization Failures",
  "metric": "aws:num-authorization-failures",
  "criteria": {
    "comparisonOperator": "less-than",
    "value": {
      "count": 5
    },
    "durationSeconds": 300,
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1
  },
  "suppressAlerts": true
}
```

**Example Ejemplo en el que se utiliza `statisticalThreshold`:**  

```
{
  "name": "Authorization Failures",
  "metric": "aws:num-authorization-failures",
  "criteria": {
    "comparisonOperator": "less-than-equals",
    "statisticalThreshold": {
      "statistic": "p50"
    },
    "durationSeconds": 300,
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1
  },
  "suppressAlerts": true
}
```

**Example Ejemplo de uso de ML Detect**  

```
{
  "name": "Authorization failures ML behavior",
  "metric": "aws:num-authorization-failures",
  "criteria": {
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1,
    "mlDetectionConfig": {
      "confidenceLevel": "HIGH"
    }
  },
  "suppressAlerts": true
}
```

## IP de origen (aws:source-ip-address)
<a name="detect-ip-address"></a>

La dirección IP desde la que se ha conectado un dispositivo a AWS IoT.

Utilice esta métrica para especificar un conjunto de enrutamientos entre dominios sin clases (CIDR) permitidos (previamente denominado lista blanca) y denegados (previamente denominado lista negra) desde los que cada dispositivo debe o no conectarse a AWS IoT.

Compatible con: Rules Detect

Operadores: in-cidr-set \$1 not-in-cidr-set 

Valores: una lista de CIDR

Unidades: n/a

**Example**  

```
{
  "name": "Denied source IPs",
  "metric": "aws:source-ip-address",
  "criteria": {
    "comparisonOperator": "not-in-cidr-set",
    "value": {
      "cidrs": [ "12.8.0.0/16", "15.102.16.0/24" ]
    }
  },
  "suppressAlerts": true
}
```

## Intentos de conexión (aws:num-connection-attempts)
<a name="detect-num-connection-attempts"></a>

Número de veces que un dispositivo intenta realizar una conexión durante un periodo determinado.

Utilice esta métrica para especificar el número máximo o mínimo de intentos de conexión para cada dispositivo. Se cuentan los intentos correctos y los no correctos.

Compatible con: Rules Detect \$1 ML Detect

Operadores: less-than \$1 less-than-equals \$1 greater-than \$1 greater-than-equals 

Valor: un entero no negativo 

Unidades: intentos de conexión

Duración: un entero no negativo. Los valores válidos son 300, 600, 900, 1800 o 3600 segundos.

**Example**  

```
{
  "name": "Connection Attempts",
  "metric": "aws:num-connection-attempts",
  "criteria": {
    "comparisonOperator": "less-than-equals",
    "value": {
      "count": 5
    },
    "durationSeconds": 600,
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1
  },
  "suppressAlerts": true
}
```

**Example Ejemplo en el que se utiliza `statisticalThreshold`:**  

```
{
  "name": "Connection Attempts",
  "metric": "aws:num-connection-attempts",
  "criteria": {
    "comparisonOperator": "less-than-equals",
    "statisticalThreshold": {
      "statistic": "p10"
    },
    "durationSeconds": 300,
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1
  },
  "suppressAlerts": true
}
```

**Example Ejemplo de uso de ML Detect**  

```
{
  "name": "Connection attempts ML behavior",
  "metric": "aws:num-connection-attempts",
  "criteria": {
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1,
    "mlDetectionConfig": {
      "confidenceLevel": "HIGH"
    }
  },
  "suppressAlerts": false
}
```

## Desconexiones (aws:num-disconnects)
<a name="detect-num-disconnects"></a>

Número de veces que un dispositivo se desconecta de AWS IoT durante un periodo de tiempo determinado.

Utilice esta métrica para especificar el número máximo o mínimo de veces que un dispositivo se ha desconectado de AWS IoT durante un periodo de tiempo determinado.

Compatible con: Rules Detect \$1 ML Detect

Operadores: less-than \$1 less-than-equals \$1 greater-than \$1 greater-than-equals 

Valor: un entero no negativo 

Unidades: desconexiones

Duración: un entero no negativo. Los valores válidos son 300, 600, 900, 1800 o 3600 segundos.

**Example**  

```
{
  "name": "Disconnections",
  "metric": "aws:num-disconnects",
  "criteria": {
    "comparisonOperator": "less-than-equals",
    "value": {
      "count": 5
    },
    "durationSeconds": 600,
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1
  },
  "suppressAlerts": true
}
```

**Example Ejemplo en el que se utiliza `statisticalThreshold`:**  

```
{
  "name": "Disconnections",
  "metric": "aws:num-disconnects",
  "criteria": {
    "comparisonOperator": "less-than-equals",
    "statisticalThreshold": {
      "statistic": "p10"
    },
    "durationSeconds": 300,
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1
  },
  "suppressAlerts": true
}
```

**Example Ejemplo de uso de ML Detect**  

```
{
  "name": "Disconnects ML behavior",
  "metric": "aws:num-disconnects",
  "criteria": {
    "consecutiveDatapointsToAlarm": 1,
    "consecutiveDatapointsToClear": 1,
    "mlDetectionConfig": {
      "confidenceLevel": "HIGH"
    }
  },
  "suppressAlerts": true
}
```

## Duración de la desconexión (aws:disconnect-duration)
<a name="detect-disconnect-duration"></a>

El tiempo durante el que un dispositivo permanece desconectado de AWS IoT.

Usa esta métrica para especificar el tiempo máximo durante el que un dispositivo permanece desconectado de AWS IoT.

Compatible con: Rules Detect

Operadores: menores que \$1 menores que iguales

Valor: un entero no negativo (en minutos)

**Example**  

```
{
"name": "DisconnectDuration",
  "metric": "aws:disconnect-duration",
  "criteria": {
"comparisonOperator": "less-than-equals",
    "value": {
"count": 5
    }
  },
  "suppressAlerts": true
}
```