Visualiza registros del escalador automático

Cuando habilitas el ajuste de escala automático, el escalador automático toma decisiones de escalamiento en función de las opciones que especifiques. Stackdriver Logging registra cada decisión de escalamiento. Lee estos registros en el visor de registros para comprender mejor las decisiones de escalamiento que tomó un escalador automático.

Con el visor de registros, puedes ver los eventos relacionados con los siguientes cambios:

  • Cambios en el tamaño de un grupo de instancias. Si el escalador automático cambia el tamaño de un grupo de instancias, el cambio de tamaño se describe en los registros del escalador automático.
  • Cambios en el estado del escalador automático. Por ejemplo, si el escalador automático funcionaba como se esperaba, pero luego se encuentra un problema, el cambio de estado se describiría en los registros del escalador automático. Algunos de estos mensajes de estado comunes se describen en la sección de Mensajes de estado que se muestran comúnmente.

Antes de comenzar

Visualiza registros del escalador automático

Para ver los registros del escalador automático, usa Google Cloud Platform Console, la herramienta de gcloud o la API de Stackdriver Logging.

Console

  1. Ve a la página Visor de registros.

    Ir a la página Visor de registros

  2. Abre el menú desplegable de recursos y selecciona Escalador automático de GCE.
  3. A continuación, expande el menú desplegable Todos los registros. Elige escalador automático para ver los registros correspondientes al ajuste de escala automático.

gcloud

Con la herramienta de gcloud, ejecuta el comando logging read Beta para buscar todos los registros relacionados con el ajuste de escala automático (incluidos los registros de auditoría y de actividad). Por ejemplo:

gcloud beta logging read "resource.type=gce_autoscaler" --limit 10 \
    --format json

Si deseas restringir las entradas solo a registros relacionados con acciones de cambio de tamaño del escalador automático, especifica el parámetro logName y filtra por el campo jsonPayload.newSize. Establece logName de esta manera:

`projects/[PROJECT_ID]/logs/compute.googleapis.com%2Fautoscaler`

Por ejemplo:

gcloud beta logging read 'logName="projects/[PROJECT_ID]/logs/compute.googleapis.com%2Fautoscaler" AND jsonPayload.newSize:*' \
    --limit 10 --format json

Para los cambios de estado del escalador automático, usa el parámetro logName y filtra por el campo jsonPayload.new_status. Establece logName de esta manera:

`projects/[PROJECT_ID]/logs/compute.googleapis.com%2Fautoscaler`

Por ejemplo:

gcloud beta logging read 'logName="projects/[PROJECT_ID]/logs/compute.googleapis.com%2Fautoscaler" AND jsonPayload.new_status:*' \
    --limit 10 --format json

API

Realiza una solicitud a la API de Logging V2. El cuerpo de la solicitud debe contener el parámetro filter que se debe usar cuando se busquen registros y el project para el que desees ver los registros. Por ejemplo, para realizar una solicitud a fin de obtener una lista de acciones de cambio de tamaño, sigue estos pasos:

POST https://logging.googleapis.com/v2/entries:list

{
  "filter": "logName=\"projects\/[PROJECT_ID]\/logs\/compute.googleapis.com%2Fautoscaler\" AND jsonPayload.new_size:*",
  "pageSize": 10,
  "resourceNames": [
    "projects\/[PROJECT_ID]"
  ]
}

Para realizar una solicitud a fin de obtener una lista de cambios de estado, sigue estos pasos:

POST https://logging.googleapis.com/v2/entries:list

{
  "filter": "logName=\"projects\/[PROJECT_ID]\/logs\/compute.googleapis.com%2Fautoscaler\" AND jsonPayload.new_status:*",
  "pageSize": 10,
  "resourceNames": [
    "projects\/[PROJECT_ID]"
  ]
}

Cambia el tamaño de los registros

En los registros relacionados con las acciones de cambio de tamaño, se describe información sobre el tamaño anterior y el nuevo del grupo de instancias. Estas entradas de registro son identificables con la existencia de los siguientes campos en la carga útil de JSON:

jsonPayload.new_size
jsonPayload.old_size

Por ejemplo, en la siguiente entrada en el registro, se describen los cambios del grupo de instancias anterior de tamaño 8 a un grupo de instancias nuevo de tamaño 10.

{
"insertId": "1l68z7sg4jw7kzo",
"jsonPayload": {
  "autoscaler_name": "example-autoscaler",
  "instance_group_name": "example-igm",
  "new_size": 10,
  "old_size": 8,
  "project_id": "myproject",
  "zone_name": "europe-west1-b"
},
"logName": "projects/myproject/logs/compute.googleapis.com%2Fautoscaler",
"receiveTimestamp": "2017-10-24T16:12:08.294439822Z",
"resource": {
  "labels": {
    "autoscaler_id": "1234567890123456789",
    "location": "europe-west1-b",
    "project_id": "myproject"
  },
  "type": "gce_autoscaler"
},
"severity": "INFO",
"timestamp": "2017-10-24T16:12:07.715125478Z"

}

A continuación, se detalla una explicación de cada campo en el registro:

Propiedad Valor
insertId Indica un identificador único para la entrada de registro.
jsonPayload Indica la carga útil de la entrada de registro, representada como una estructura que se expresa como un objeto JSON.
new_size Indica el tamaño nuevo al que se realizó el ajuste de escala automático para este grupo. Si el grupo se escaló verticalmente, el nuevo tamaño será mayor que el anterior. Si se redujo, el nuevo tamaño será más pequeño que el anterior.
old_size Indica el tamaño anterior de este grupo antes de que se cambiara.
instance_group_name Indica el nombre del grupo de instancias administrado al que se aplica esta entrada de registro.
project_id Indica el ID del proyecto del grupo de instancias. Siempre debe ser el ID del proyecto actual.
autoscaler_name Indica el nombre del escalador automático responsable de esta acción.
zone_name Indica la zona del escalador automático y el grupo de instancias.
resource Indica los detalles sobre el escalador automático.
type Indica el tipo de recurso. Para los escaladores automáticos, este campo siempre será gce_autoscaler.
labels Indica los metadatos sobre el escalador automático.
location Indica la zona del escalador automático.
autoscaler_id Indica un ID numérico del escalador automático que genera el servidor.
project_id Indica el ID del proyecto al que pertenece el escalador automático.
timestamp Indica la fecha y hora en la que ocurrió el evento que se describe en la entrada de registro. Es una marca de tiempo en formato RFC 3339 UTC “Zulu”, con precisión de nanosegundos.
severity Indica la intensidad de este registro. Para los registros del escalador automático, esto siempre es "INFO".
logName Indica el nombre del recurso del registro al que pertenece esta entrada de registro. Para los registros de cambio de tamaño del escalador automático, esto siempre será projects/[PROJECT_ID]/logs/compute.googleapis.com%2Fautoscaler.
receiveTimestamp Indica la hora en que Stackdriver Logging recibió la entrada de registro. Es una marca de tiempo en formato RFC 3339 UTC “Zulu”, con precisión de nanosegundos.

Registros de cambios de estado

Cuando el estado del escalador automático cambia, Compute Engine crea una entrada de registro que captura el cambio de estado. Estas entradas de registro son identificables por la existencia de los siguientes campos en la carga útil de JSON:

jsonPayload.old_status
jsonPayload.new_status

Por ejemplo, la siguiente entrada describe un cambio de estado de OK a un nuevo estado:

The autoscaler is configured to scale based on a load balancing signal but
the instance group has not received any utilization data from the load
balancer or the utilization is constantly 0. Check that the load balancing
configuration is working

Puedes usar estos mensajes de estado para averiguar por qué tu escalador automático no se comporta como esperas o a fin de solucionar problemas pasados que notaste. En este caso, es posible que observes el nuevo mensaje de estado y verifiques que tu configuración de balanceo de cargas esté configurada correctamente.

{
"insertId": "ivho6kg4icqfio",
"jsonPayload": {
  "autoscaler_name": "example-autoscaler",
  "instance_group_name": "example-igm",
  "new_status": {
    "details": "The autoscaler is configured to scale based on a load
        balancing signal but the instance group has not received any
        utilization data from the load balancer or the utilization is
        constantly 0. Check that the load balancing configuration is working."
  },
  "old_status": {
    "details": "OK"
  },
  "project_id": "myproject",
  "zone_name": "us-east1-b"
},
"logName": "projects/myproject/logs/compute.googleapis.com%2Fautoscaler",
"receiveTimestamp": "2017-10-24T15:11:58.076196762Z",
"resource": {
  "labels": {
    "autoscaler_id": "1234567890123456789",
    "location": "us-east1-b",
    "project_id": "myproject"
  },
  "type": "gce_autoscaler"
},
"severity": "INFO",
"timestamp": "2017-10-24T15:11:57.619997893Z"

}

A continuación, se detalla una explicación de cada campo en el registro:

Propiedad Valor
insertId Indica un identificador único para la entrada de registro.
jsonPayload Indica la carga útil de la entrada de registro, representada como una estructura que se expresa como un objeto JSON.
new_status Indica el estado nuevo del escalador automático. Consulta algunos mensajes de estado que se muestran comúnmente.
old_status Indica el estado anterior del escalador automático antes de que se cambiara.
instance_group_name Indica el nombre del grupo de instancias administrado al que se aplica esta entrada de registro.
project_id Indica el ID del proyecto del grupo de instancias.
autoscaler_name Indica el nombre del escalador automático responsable de esta acción.
zone_name Indica la zona del escalador automático y el grupo de instancias.
resource Indica los detalles sobre el escalador automático.
type Indica el tipo de recurso. Para los escaladores automáticos, este campo siempre será gce_autoscaler.
labels Indica los metadatos sobre el escalador automático.
location Indica la zona del escalador automático.
autoscaler_id Indica un ID numérico del escalador automático que genera el servidor.
project_id Indica el ID del proyecto al que pertenece el escalador automático. Este siempre debe ser el proyecto actual.
timestamp Indica la fecha y hora en la que ocurrió el evento que se describe en la entrada de registro. Es una marca de tiempo en formato RFC 3339 UTC “Zulu”, con precisión de nanosegundos.
severity Indica la intensidad de este registro. Para los registros del escalador automático, esto siempre es "INFO".
logName Indica el nombre del recurso del registro al que pertenece esta entrada de registro. Para los registros de cambios de estado, esto siempre será projects/[PROJECT_ID]/logs/compute.googleapis.com%2Fautoscaler.
receiveTimestamp Indica la hora en que Stackdriver Logging recibió la entrada de registro. Es una marca de tiempo en formato RFC 3339 UTC “Zulu”, con precisión de nanosegundos.

Qué sigue

¿Te sirvió esta página? Envíanos tu opinión:

Enviar comentarios sobre…

Documentación de Compute Engine