Todos los productos
Search
Centro de documentos

Simple Log Service:Consulta de frase (índice de posición)

Última actualización: Sep 03, 2026

Un índice de posición registra el orden y la ubicación de los tokens, lo que permite coincidir frases en el nivel de índice. Al habilitar un índice de posición, las consultas de frase devuelven resultados de registros e histogramas precisos sin analizar los registros candidatos.

Importante

La función de índice de posición se encuentra actualmente en versión preliminar y no tiene costo. Esta función solo está disponible para los usuarios incluidos en la lista de permitidos. Para utilizarla, envíe un ticket y solicite acceso.

Funcionamiento

Un índice de posición es un modificador a nivel de logstore que hereda las configuraciones de índice existentes para distinción entre mayúsculas y minúsculas, segmentación de palabras en chino y delimitadores. No amplía la cobertura de los índices existentes. Al habilitar esta función, el sistema registra las posiciones de los tokens para los índices de texto tokenizables existentes, incluidos los índices de texto completo, los índices de campos de tipo texto y los campos hoja indexados como texto dentro de los índices de campos de tipo JSON. Los campos sin índice de texto no generan un índice de posición.

Por ejemplo, si el índice de texto completo está deshabilitado y solo message tiene un índice de campo de tipo texto, y el campo hoja error bajo el campo JSON payload tiene un índice de tipo texto, únicamente message y payload.error generarán un índice de posición.

Requisitos previos

Habilitar un índice de posición

Habilitar desde la consola

Habilitar desde la consola

  1. Inicie sesión en la consola de Simple Log Service.

  2. Vaya a la página de consulta y análisis del logstore objetivo.

  3. Elija Query and Analysis Properties > Properties.

  4. Active el interruptor Enable Position Index en la parte inferior de la página y guarde la configuración.

La configuración surte efecto en aproximadamente un minuto.

Habilitar mediante un SDK

Habilitar mediante un SDK

A continuación se muestra un ejemplo que utiliza el SDK de Python. Los SDK de otros lenguajes siguen un enfoque similar.

Instale el SDK de Python:

pip install -U aliyun-log-python-sdk

Actualizar un índice sobrescribe toda la configuración. Lea primero la configuración existente y luego agregue el campo de nivel superior "position_index": true:

from aliyun.log import LogClient

class IndexConfigJson(dict):
    def to_json(self):
        return self

client = LogClient(
    "your-endpoint",
    "your-access-key-id",
    "your-access-key-secret",
)

project = "your-project"
logstore = "your-logstore"

config = client.get_index_config(project, logstore).get_body()
config.pop("lastModifyTime", None)
config["position_index"] = True
client.update_index(project, logstore, IndexConfigJson(config))

Uso de consultas de frase

Una phrase query utiliza # como identificador y encierra la frase entre comillas dobles.

Tipo de consulta

Sintaxis

Ejemplo

Consulta de frase de texto completo

#"phrase"

#"connection reset"

Consulta de frase de campo

field:#"phrase"

message:#"connection reset"

Una consulta de frase coincide con secuencias de tokens y posiciones adyacentes; no realiza una coincidencia carácter por carácter. Por ejemplo, connection reset by peer coincide con #"connection reset", pero connection was reset by peer no.

Comparación de capacidades

Un índice de posición no modifica la sintaxis de la consulta de frase, sino que mejora sus capacidades:

Elemento

Sin índice de posición

Con índice de posición

Método de coincidencia

Lee los registros candidatos y los verifica uno por uno

Realiza una coincidencia exacta en el nivel de índice

Paginación de resultados

Solo admite paginación secuencial

Admite paginación secuencial y saltos de página aleatorios

Histograma

Basado en resultados candidatos de palabras clave

Basado en resultados de frase precisos

Combinación de condiciones

No admite condiciones NOT ni consultas difusas

Admite condiciones AND, OR, NOT y consultas difusas

Sentencia analítica

No compatible

Compatible

SPL

No compatible

Compatible

Los siguientes ejemplos muestran condiciones y análisis disponibles únicamente cuando se habilita un índice de posición:

not #"connection reset"
#"connection reset" and host:api-*
#"connection reset" | SELECT level, count(*) GROUP BY level
#"connection reset" | where level = 'ERROR'

Notas de uso

  • Un índice de posición solo surte efecto en datos recién escritos o en datos con índices reconstruidos. Los datos históricos no generan automáticamente un índice de posición.

  • La consulta de frase mejorada se utiliza solo cuando todos los datos dentro del rango de consulta cuentan con un índice de posición. Si algún dato en el rango carece de este índice, la consulta recurre a la ruta de procesamiento sin índice de posición.

  • Habilitar un índice de posición incrementa la sobrecarga de construcción y almacenamiento del índice. Este aumento depende principalmente de la frecuencia de aparición de los tokens.

  • Los tokens de alta frecuencia y los rangos de tiempo más amplios aumentan el volumen de lectura de datos de posición. Reduzca el rango de tiempo, agregue condiciones de campo o utilice frases más específicas.

  • Si un logstore tiene tanto un índice de texto completo como índices de campos de tipo texto con diferentes configuraciones de tokenización, la consulta de frase de texto completo #"phrase" solo coincidirá según el resultado de tokenización del índice de texto completo. Para contenido que solo puede coincidir mediante un índice de campo, utilice la consulta de frase de campo field:#"phrase".

  • Al actualizar un índice mediante la API o el SDK, conserve la configuración existente para evitar sobrescribir y perder los ajustes actuales.