¿Cómo soluciono problemas de registros lentos en Amazon OpenSearch Service?

Última actualización: 30/07/2021

He habilitado los registros lentos de búsqueda para mi dominio de Amazon OpenSearch Service. Sin embargo, recibo un error o los registros lentos no aparecen en el grupo de registros de Amazon CloudWatch. ¿Cómo se soluciona esto?

Resolución

Recibo un error al intentar configurar registros lentos

Si su cuenta de AWS supera las diez políticas de recursos de su región, recibirá el siguiente mensaje de error en Amazon CloudWatch Logs:

"Unable to create the Resource Access Policy - You have reached the maximum limit for number of Resource Access Policies for CloudWatch Logs. Please select an existing policy and edit it or delete an older policy and try again."

Para resolver este mensaje de error, cree una política de recursos que incluya varios grupos de registros.

Por ejemplo:

{
    "Version": "2012-10-17",
    "Statement": [
        {
         "Effect": "Allow",
         "Principal": {
         "Service": "es.amazonaws.com"
        },
        "Action": [
         "logs:PutLogEvents",
         "logs:CreateLogStream"
        ],
        "Resource": [
         "ARN-Log-Group-1",
         "ARN-Log-Group-2",
         "ARN-Log-Group-3",
         "ARN-Log-Group-4"
        }
    ]
}

Nota: El límite de la política de AWS Identity and Access Management (IAM) no se puede aumentar.

No veo que se entreguen registros lentos

Si no ve que se envíen registros lentos CloudWatch, compruebe los umbrales de la política de IAM o de OpenSearch Service.

Dado que OpenSearch Service requiere permiso para escribir en CloudWatch Logs, debe tener la política de IAM adecuada para registrar sus consultas. Para actualizar la política de IAM, vaya a Search Slow Logs (Buscar registros lentos) y, a continuación, elija Select Setup (Seleccionar configuración).

Por ejemplo:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "es.amazonaws.com"
      },
      "Action": [
        "logs:PutLogEvents",
        "logs:CreateLogStream"
      ],
      "Resource": "arn:aws:logs:us-east-1:588671893395:log-group:/aws/aes/domains/myes/search-logs:*"
    }
  ]
}

Además, asegúrese de establecer un umbral de tiempo adecuado para su dominio. Por ejemplo, si todas sus solicitudes se completan antes del umbral establecido, los registros no se entregarán al grupo de registros.

También puede establecer umbrales de nivel INDEX individuales para cada nivel de depuración (TRACE, DEBUG, INFO y WARN).

Por ejemplo, puede establecer el umbral de los niveles de depuración WARN en diez segundos para el índice YOURINDEXNAME en OpenSearch Dashboards:

PUT /YOURINDEXNAME/_settings{"index.search.slowlog.threshold.query.warn": "10s"}

Nota: Puede establecer TRACE en “0” milisegundos para registrar todas las consultas de su dominio. Sin embargo, debido a que el registro de todas las consultas consume muchos recursos, el rendimiento de su dominio podría verse afectado.

A continuación, verifique el umbral con el siguiente comando:

GET/YOURINDEXNAME/_settings?pretty

OpenSearch Service registra cualquier consulta que supere el umbral definido.

Prácticas recomendadas

  • Evite realizar varios cambios de configuración (como habilitar o desactivar los registros que se publican en CloudWatch) al mismo tiempo. Demasiados cambios de configuración a la vez desencadenan varias implementaciones azul/verde. Múltiples implementaciones azul/verde pueden provocar que el dominio del servicio OpenSearch se quede atascado en un estado de procesamiento. Para obtener más información sobre la implementación azul-verde, consulte Realizar cambios de configuración en OpenSearch Service.
  • Establezca el umbral tanto para la fase de consulta como para la fase de recuperación para identificar consultas de búsqueda lentas.
  • Pruebe con un valor de umbral bajo e incremente lentamente el umbral para registrar solo las consultas que afectan al rendimiento o requieren optimización.
  • Elija el número adecuado de particiones para el clúster y de este modo optimizar su rendimiento. Para obtener más información sobre el mantenimiento de particiones, consulte Prácticas recomendadas de Amazon OpenSearch Service.
  • Para registros lentos, habilite el registro en los niveles de depuración TRACE, DEBUG, INFO y WARN. Dado que cada nivel de depuración registra distintas categorías de información, se recomienda habilitar el registro según el estado de la solicitud.

Amazon OpenSearch Service es el sucesor de Amazon Elasticsearch Service.