Cuando habilitas el ajuste de escala automático, el escalador automático toma decisiones de escalamiento en función de las opciones que especifiques. Cloud 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 funciona 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
- Lee la documentación de ajuste de escala automático.
- Activa el escalador automático del que desees ver los registros.
- Revisa cómo usar el visor de registros.
Ve los registros del escalador automático
Para ver los registros del escalador automático, usa Google Cloud Console, la herramienta de línea de comandos de gcloud
o la API de Cloud Logging.
Console
Si activaste el ajuste de escala automático, puedes ver los registros de este ajuste en Google Cloud Console.
- Ve a la página Visor de registros.
- Abre el menú desplegable de recursos y selecciona Escalador automático de GCE.
gcloud
Con la herramienta gcloud
, ejecuta el comando Betalogging read
para buscar todos los registros relacionados con el ajuste de escala automático (incluidos los registros de actividades y auditoría).
Por ejemplo:
gcloud beta logging read "resource.type=gce_autoscaler" --limit 10 \
--format json
Para restringir las entradas a solo registros relacionados con el escalador automático, cambia el tamaño de las acciones, especifica el parámetro logName
y filtra por el campo jsonPayload.newSize
. Establece el logName
en:
`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 el logName
en:
`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 tener el parámetro filter
para usarlo cuando se busquen registros y el project
del que deseas 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 aumentó, el nuevo tamaño es más grande que el anterior. Si se redujo, el nuevo tamaño es 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 |
El tipo de recurso es este. Para los escaladores automáticos, este campo siempre es 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 |
La hora en que ocurrió el evento descrito por la entrada de registro. Esta es una marca de tiempo en formato RFC 3339 UTC “Zulu”, con precisión de nanosegundos. |
severity |
Indica la gravedad de este registro. Para los registros del escalador automático, 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, siempre es projects/[PROJECT_ID]/logs/compute.googleapis.com%2Fautoscaler .
|
receiveTimestamp |
La hora en que Cloud Logging recibió la entrada de registro. Esta 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, en la siguiente entrada, se 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 a fin de descubrir por qué tu escalador automático no se comporta de la manera esperada o para depurar problemas anteriores 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 |
El tipo de recurso es este. Para los escaladores automáticos, este campo siempre es 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 es siempre el proyecto actual. |
timestamp |
Indica la fecha y hora en la que ocurrió el evento que se describe en la entrada de registro. Esta es una marca de tiempo en formato RFC 3339 UTC “Zulu”, con precisión de nanosegundos. |
severity |
Indica la gravedad de este registro. Para los registros del escalador automático, 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, siempre es projects/[PROJECT_ID]/logs/compute.googleapis.com%2Fautoscaler .
|
receiveTimestamp |
La hora en que Cloud Logging recibió la entrada de registro. Esta es una marca de tiempo en formato RFC 3339 UTC “Zulu”, con precisión de nanosegundos. |
¿Qué sigue?
- Actualiza el escalador automático con la información que recibiste de los registros.
- Obtén más información sobre cómo el escalador automático toma decisiones.
- Revisa las opciones de ajuste de escala automático.