Todos los productos
Search
Centro de documentos

Simple Log Service:Sintaxis y funciones de búsqueda

Última actualización: Sep 03, 2026

Simple Log Service permite filtrar registros mediante instrucciones de búsqueda. Utilice los resultados por sí solos o como entrada para las instrucciones analíticas.

Requisitos previos

Para consultar registros, debe create an index.

Sintaxis básica

Nota

Las instrucciones de consulta y las analíticas se separan con | en el formato instrucción de consulta|instrucción analítica. Ejemplo:

* | SELECT status, count(*) AS PV GROUP BY status

Tipo de instrucción

Descripción

Instrucción de búsqueda

Especifica las condiciones de búsqueda: palabras clave, valores numéricos, rangos numéricos, espacios o un asterisco (*).

Si especifica un espacio o un asterisco (*), no se aplica ningún filtro.

Importante

No especifique más de 30 condiciones en una instrucción de búsqueda.

Instrucción analítica

Importante

Las instrucciones analíticas deben ir después de una instrucción de búsqueda. No se requiere ninguna cláusula FROM ni WHERE; SLS analiza todos los datos del logstore actual de forma predeterminada. No distinguen entre mayúsculas y minúsculas, no admiten offset y no requieren punto y coma (;) al final.

Realiza cálculos y análisis estadísticos sobre los resultados de la búsqueda o sobre todos los datos. Funciones y sintaxis compatibles:

Redacción de consultas de búsqueda

image

Para redactar una instrucción de consulta:

Paso 1: Elegir el tipo de búsqueda

Importante

Los resultados dependen de su configuración de índices. Si existen tanto índices de texto completo como de campo, los índices de campo tienen prioridad.

Dependiendo del tipo de índice, Simple Log Service admite dos tipos de búsqueda para un logstore: búsqueda de texto completo y búsqueda específica por campo.

  • Si solo crea un índice de texto completo, debe usar la búsqueda de texto completo.

  • Si crea índices de campo, siga estas reglas:

    • Para campos de tipo double o long, debe utilizar la sintaxis de búsqueda específica por campo.

    • Para campos de tipo text: Si sabe qué campo indexado contiene la palabra clave, utilice la sintaxis de búsqueda específica por campo. Si no está seguro de qué campo contiene la palabra clave, utilice la sintaxis de búsqueda de texto completo.

      • Si no crea un índice de texto completo, la sintaxis de búsqueda de texto completo consulta únicamente los campos de texto indexados.

      • Si crea un índice de texto completo, la sintaxis de búsqueda de texto completo busca en todos los campos de texto indexados.

Búsqueda de texto completo

La búsqueda de texto completo no se dirige a un campo específico. Admite comodines (* y ?) y operadores lógicos (and, or, not).

Sintaxis de búsqueda
 keywords1  [ and | or | not ] keywords2  ...

Ejemplos

  • Ejemplo 1

    Busque registros que contengan la palabra clave GET. Sintaxis de búsqueda: GET.

  • Ejemplo 2

    Busque registros que contengan la palabra clave GET o POST. Sintaxis de búsqueda: GET or POST .

  • Ejemplo 3

    Busque registros con palabras clave que comiencen con Jo, como Joe y Jon. Sintaxis de búsqueda: Jo*.

Búsqueda específica por campo

La búsqueda específica por campo se dirige a un campo indexado concreto y admite comparaciones numéricas y coincidencias con expresiones regulares.

Importante
  • indexname1 es el nombre del campo que se va a consultar. Si un nombre de campo u otro identificador contiene caracteres especiales (como espacios o caracteres chinos) o palabras clave de búsqueda (como and o or), debe encerrarlo entre comillas dobles (""). How do I use quotation marks in search and analytic statements.

  • Para campos indexados como long o double, utilice operadores de comparación como >, >=, <, <=, = y in.

Sintaxis de búsqueda

indexname1 [ : | > | >= | < | <= | = | in ] keyword1 [ [ and | or | not ] indexname2 ... ]

Ejemplos

  • Ejemplo 1

    Busque registros donde request_method sea GET. Sintaxis de búsqueda: request_method: GET.

  • Ejemplo 2

    Busque registros donde request_time_msec sea mayor que 50 (el campo debe estar indexado como double). Sintaxis de búsqueda: request_time_msec>50.

  • Ejemplo 3

    Busque registros donde request_method sea GET y request_time_msec sea mayor que 50. Sintaxis de búsqueda: request_method: GET and request_time_msec>50.

Paso 2: Tipos de datos de campo

Cada tipo de datos de campo admite distintos operadores.

Tipos de datos de campo

Tipo

Descripción

Operadores compatibles

text

Campo de cadena. Con la indexación de texto completo habilitada, todos los campos son de tipo text de forma predeterminada, excepto __time__.

and, or, not, (), :, "", \, * y ?.

long and double

Las consultas de rango numérico requieren que el tipo de campo sea long o double.

  • Si el tipo de campo no es double o long, o si la sintaxis de rango no es válida, SLS recurre a una búsqueda de texto completo, lo cual puede devolver resultados inesperados.

    Por ejemplo, si el campo owner_id no es del tipo double o long, la instrucción de búsqueda owner_id>100 devuelve registros que contienen los tres términos: owner_id, > (tratado como un término, no como un delimitador) y 100.

  • Si cambia el tipo de datos de un campo de text a double o long, solo se admiten búsquedas de igualdad con el operador =. Para usar operadores de rango como mayor que (>) y menor que (<), debe reindex.

and, or, not, (), >, >=, <, <=, = y in.

JSON

Establezca el tipo de datos de los campos JSON en long, double o text según sus valores, y active Enable Analytics.

Utilice operadores según el tipo de datos de los campos dentro del objeto JSON.

Operadores

Importante
  • El operador in debe escribirse en minúsculas. Los demás operadores no distinguen entre mayúsculas y minúsculas.

  • SLS reserva las siguientes palabras para usarlas como operadores. Para utilizarlas como palabras clave de búsqueda, debe encerrarlas entre comillas dobles (""): sort, asc, desc, group by, avg, sum, min, max y limit.

  • Los operadores se enumeran en orden descendente de precedencia:

    1. Dos puntos (:)

    2. Comillas dobles ("")

    3. Paréntesis ()

    4. and, not

    5. or

Operador

Descripción

:

Búsqueda específica por campo en formato Clave:Valor. Ejemplo: request_method:GET.

Si un nombre de campo o valor contiene caracteres especiales como espacios, dos puntos (:) o guiones (-), debe encerrar el nombre o valor entre comillas dobles (""). Ejemplo: "file info":apsara.

and

El operador and. Ejemplo: request_method:GET and status:200.

Si especifica varias palabras clave sin un operador lógico, se utiliza el operador and de forma predeterminada. Por ejemplo, GET 200 cn-shanghai equivale a GET and 200 and cn-shanghai.

or

El operador or. Ejemplo: request_method:GET or status:200.

not

El operador not. Ejemplos: request_method:GET not status:200 y not status:200.

( )

Agrupa condiciones de búsqueda para aumentar su prioridad. Ejemplo: (request_method:GET or request_method:POST) and status:200.

""

Encierre una palabra clave de sintaxis entre "" (comillas dobles) para tratarla como un literal. En una consulta de campo, todas las palabras dentro de "" se tratan como una sola frase.

  • Si un nombre de campo o valor contiene caracteres especiales (como espacios, caracteres chinos, : o -) o palabras clave de sintaxis (como and o or), debe encerrarlo entre "". Por ejemplo, una búsqueda de "and" encuentra registros que contienen la palabra "and", la cual no se trata como un operador.

  • SLS reserva las siguientes palabras para usarlas como operadores. Para utilizarlas como palabras clave de búsqueda, debe encerrarlas entre "": sort, asc, desc, group by, avg, sum, min, max y limit.

  • Cuando los registros se procesan mediante transformación de datos o un complemento de Logtail, la clave de etiqueta se convierte en una clave estándar. Para consultar esta clave, debe encerrar el nombre del campo entre "". Ejemplo: "__tag__:__client_ip__":192.0.2.1. El campo __tag__:__client_ip__ es un reserved field que almacena la IP del host de recolección de registros.

\

Carácter de escape. Escapa una comilla doble ("") para que pueda buscarla como un literal. Por ejemplo, si un registro contiene instance_id:nginx"01", puede buscarlo mediante la instrucción instance_id:nginx\"01\".

*

Comodín que coincide con cero o más caracteres. Ejemplo: host:www*com.

Nota

SLS encuentra hasta 100 términos coincidentes en sus registros y luego devuelve todos los registros que contienen estos términos y cumplen con las condiciones de búsqueda.

?

Comodín que coincide con exactamente un carácter. Ejemplo: host:aliyund?c.

>

Valor de campo mayor que un número. Ejemplo: request_time>100.

>=

Valor de campo mayor o igual que un número. Ejemplo: request_time>=100.

<

Valor de campo menor que un número. Ejemplo: request_time<100.

<=

Valor de campo menor o igual que un número. Ejemplo: request_time<=100.

=

Busca registros donde el valor de un campo es igual a un número. Para campos de tipo double o long, los operadores = y : son equivalentes. Por ejemplo, request_time=100 equivale a request_time:100.

in

Busca registros donde el valor de un campo cae dentro de un rango numérico. Los corchetes [] indican un intervalo cerrado (inclusivo), y los paréntesis () indican un intervalo abierto (exclusivo). Utilice un espacio para separar los dos números del rango. Ejemplos: request_time in [100 200] o request_time in (100 200].

Importante

El operador in debe escribirse en minúsculas.

__source__

Busca registros de un origen específico. Se admiten caracteres comodín. Ejemplo: __source__:192.0.2.*.

Importante

En Log Service, __source__ es un campo reservado que puede abreviarse como source. Si define un campo personalizado llamado source, entrará en conflicto con el campo reservado source. En este caso, debe usar una capitalización diferente, como Source o SOURCE, para consultar su campo personalizado.

__tag__

Busca registros por metadatos. Ejemplo: __tag__:__receive_time__:1609837139.

__topic__

Busca registros por tema. Ejemplo: __topic__:nginx_access_log.

Paso 3: Seleccionar un modo de coincidencia

SLS admite búsqueda exacta y búsqueda difusa.

Tipo de búsqueda

Descripción

Ejemplo

Búsqueda exacta

Encuentra registros que coinciden con palabras completas.

SLS utiliza segmentación de palabras, por lo que una consulta de múltiples palabras podría no devolver una coincidencia exacta. Una consulta de abc def devuelve registros que contienen tanto abc como def, pero no necesariamente como una frase contigua. Para coincidir con la frase exacta abc def, use una phrase search o una cláusula LIKE. How do I query logs using exact match?

  • host:example.com: Encuentra registros donde el campo host contiene example.com.

  • PUT and cn-shanghai: Encuentra registros que contienen tanto las palabras clave PUT como cn-shanghai.

  • | Select where http_user_agent like '%like Gecko%': Encuentra registros donde el valor del campo http_user_agent contiene la frase like Gecko.

  • #"redo_index/1": Encuentra registros que contienen la frase redo_index/1.

Búsqueda difusa

Agregue un comodín (* o ?) al medio o al final de un término (límite de 64 caracteres). SLS busca coincidencias en hasta 100 términos y devuelve todos los registros que los contienen. Los términos más específicos producen mejores resultados.

Importante
  • No utilice caracteres comodín, como el asterisco (*) o el signo de interrogación (?), al principio de un término de búsqueda.

  • Las búsquedas difusas con comodines (* o ?) no son compatibles con campos de tipos de datos long o double. En su lugar, puede buscar un rango de valores, como status in [200 299].

La búsqueda difusa es una consulta basada en muestras:

  • Con la indexación de campos habilitada, SLS toma muestras del índice de ese campo en lugar de realizar un escaneo completo, y devuelve un subconjunto representativo de resultados.

  • Con la indexación de texto completo y sin especificar un campo, SLS toma muestras del índice de texto completo y devuelve un subconjunto representativo.

  • request_time>60 and request_method:Ge*: Encuentra registros donde el valor del campo request_time es mayor que 60 y el valor del campo request_method comienza con Ge.

  • addr*: Encuentra registros que contienen cualquiera de hasta 100 términos que comienzan con addr.

  • host:www.yl*: Encuentra registros donde el campo host comienza con www.yl, con coincidencia en hasta 100 términos.

How do I perform a fuzzy query on logs?

Ejemplos de instrucciones de búsqueda

Los resultados de la búsqueda dependen del contenido del registro y de la configuración del índice. Los siguientes ejemplos utilizan el registro de muestra y la configuración de índice que se muestran a continuación.

Tipos text, double y long

Registro de muestra

A continuación se muestra un registro de acceso NGINX de ejemplo. Las instrucciones de búsqueda subsiguientes se basan en este formato de registro:

__tag__:__receive_time__0 :1645499498
body_bytes_sent :3033
client_ip :11x xxx xxx4.26
host :www.wmxxxxxxxxxm
http_host :wxxxxxxxx xxxck.com
http_user_agent :Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.xxx xxx56 Safari/535.11
http_x_forwarded_for :11xx xxxxxxx.213
instance_id :i-01
instance_name :instance-02
network_type :vlan
owner_id :owner-01
referer :www.xxxxxxxxx.com
region :cn-shanghai
remote_addr :21x xx xxx76
remote_user :6f3x
request method :PUT POST
request_length :2414
request_method :GET
request_time :71
request_uri :/request/path-1/file-2
scheme :https
server_protocol :HTTP/2.0
slbid :slb-01
status :200
time_local :22/Feb/2022:03:11:08
upstream_addr :117.xxx.xxx6
upstream_response_time :27
upstream_status :200
user_agent :Mozilla/5.0 (Windows NT 6.1; WOW64; rv:29.0) Gecko/20120101 FireFox/29.0
vip_addr :2xx xxxxxxxx.33
vpc_id :195datxxxxxxxxxxxxxxxxx6d9c1f46f

Configuración de índices

Create indexes antes de consultar registros. Para comprobar su configuración de índices, siga estos pasos.

  1. En la página de query and analysis del logstore, seleccione Index Attributes > Attributes.

  2. En el panel que aparece, compruebe si hay índices de campo configurados.

Búsqueda común

Objetivo

Instrucción de búsqueda

Depuración

Buscar solicitudes GET exitosas (código de estado 200–299).

request_method:GET and status in [200 299]

Depuración

Buscar solicitudes GET provenientes de fuera de la región China (Hangzhou).

request_method:GET not region:cn-hangzhou

Ninguna

Buscar solicitudes GET o POST.

request_method:GET or request_method:POST

Depuración

Buscar solicitudes que no sean GET.

not request_method:GET

Depuración

Buscar solicitudes GET o POST exitosas.

(request_method:GET or request_method:POST) and status in [200 299]

Depuración

Buscar solicitudes GET o POST con errores.

(request_method:GET or request_method:POST) not status in [200 299]

Depuración

Buscar solicitudes GET exitosas (código de estado 200–299) con un tiempo de solicitud menor a 60 segundos.

request_method:GET and status in [200 299] not request_time>=60

Depuración

Buscar registros con un tiempo de solicitud de 60 segundos.

request_time:60

Depuración

request_time=60

Depuración

Buscar registros donde el tiempo de solicitud sea mayor o igual a 60 segundos y menor a 200 segundos.

request_time>=60 and request_time<200

Depuración

request_time in [60 200)

Depuración

Buscar registros donde exista el campo request_time.

request_time:*

Depuración

Buscar registros donde el campo request_time esté vacío o contenga un número no válido.

(request_time:"") or (not request_time > -10000000000)

Depuración

Buscar registros que contengan el campo request_time con un valor numérico.

request_time > -1000000000

Depuración

Buscar registros que contengan and.

"and"
Nota

La palabra and se trata como una cadena literal, no como un operador.

Depuración

Buscar registros donde el valor del campo request method sea PUT.

"request method":PUT
Importante

El nombre del campo request method contiene un espacio. Debe encerrarlo entre comillas dobles ("").

Ninguna

Buscar registros cuyo tema sea HTTPS o HTTP.

__topic__:HTTPS or __topic__:HTTP

Ninguna

Buscar registros del host 192.0.2.1.

__tag__:__client_ip__:192.0.2.1

El campo __tag__:__client_ip__ es una reserved field que almacena la dirección IP del host de recolección de registros.

Importante

Si un registro se procesa mediante transformación de datos o un complemento de Logtail, la clave en la etiqueta se convierte en una clave estándar. Para consultar el registro, debe encerrar el nombre del campo entre comillas dobles (""). Ejemplo: "__tag__:__client_ip__":192.0.2.1.

Ninguna

Buscar registros que contengan 192.168.XX.XX.

* | select * from log where key like '192.168.%.%'

Use the SQL LIKE clause for precise fuzzy queries.

Ninguna

Buscar registros donde el valor del campo remote_user no esté vacío.

not remote_user:""

Depuración

Buscar registros donde el valor del campo remote_user esté vacío.

remote_user:""

Depuración

Buscar registros donde el valor del campo remote_user no sea null.

not remote_user:"null"

Depuración

Buscar registros que no contengan el campo remote_user.

not remote_user:*

Depuración

Buscar registros que contengan el campo remote_user.

remote_user:*

Depuración

Buscar registros donde el valor del campo city no sea Shanghai.

not city:Shanghai
Nota

Para consultar cadenas en chino, habilite include Chinese cuando configure indexes.

Ninguna

Búsqueda difusa

Objetivo

Instrucción de búsqueda

Depuración

Buscar registros que contengan palabras que comiencen con cn.

cn*

Depuración

Buscar registros donde el valor del campo region comience con cn.

region:cn*

Ninguna

Buscar registros donde el valor del campo region contenga cn*.

region:"cn*"
Nota

En esta instrucción de búsqueda, cn* se trata como una cadena literal. Por ejemplo:

  • Si un registro contiene region:cn,en y el delimitador es una coma (,), el contenido se divide en region, cn y en. Este registro se puede encontrar mediante la instrucción de búsqueda.

  • Si un registro contiene region:cnhangzhou, cnhangzhou se trata como un solo término. No es posible encontrar este registro mediante la instrucción de búsqueda.

Ninguna

Buscar registros que contengan una palabra que comience con "mozi", termine con "la" y tenga un solo carácter intermedio.

mozi?la

Depuración

Buscar registros que contengan una palabra que comience con "mo", termine con "la" y tenga cero o más caracteres intermedios.

mo*la

Depuración

Buscar registros que contengan palabras que comiencen con "moz" y palabras que comiencen con "sa".

moz* and sa*

Depuración

Buscar registros donde el valor del campo region termine con "hai".

Las instrucciones de búsqueda no pueden encontrar estos registros. Utilice la SQL LIKE clause en su lugar.

*| select * from log where region like '%hai'

Ninguna

Buscar registros donde el valor del campo message comience con "get_time: 0..

Utilice la cláusula like en el análisis SQL.

*| select message where message like '"get_time: 0.%'

Alternativamente, utilice la where instruction in Structured Process Language (SPL) para filtrar registros.

*| where message like '"get_time: 0.%'

Ninguna

Búsqueda por delimitador

SLS divide el contenido de los registros en palabras mediante los delimitadores configurados. Los valores predeterminados son , '";=()[]{}?@&<>/:\n\t\r. Si deja Delimiter vacío, el valor del campo se trata como un solo término y solo se puede encontrar mediante una búsqueda exacta o difusa en toda la cadena. Create indexes.

Por ejemplo, el valor del campo http_user_agent es Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.2 (KHTML, like Gecko) Chrome/192.0.2.0 Safari/537.2.

  • Si establece delimiter en un valor vacío, el valor del campo se trata como un solo token. En consecuencia, no es posible encontrar el registro mediante la instrucción de consulta http_user_agent:Chrome.

  • Si establece Delimiter en , '";=()[]{}?@&<>/:\n\t\r, el valor del campo se divide en los términos Mozilla, 5.0, Windows, NT, 6.1, AppleWebKit, 537.2, KHTML, like, Gecko, Chrome, 192.0.2.0, Safari y 537.2. Es posible encontrar el registro mediante instrucciones de búsqueda como http_user_agent:Chrome.

Importante

Si una palabra clave de búsqueda contiene un delimitador, debe utilizar una búsqueda de frase o una cláusula LIKE. Por ejemplo:

  • Phrase search: #"redo_index/1".

  • Cláusula LIKE: * | select * from log where key like 'redo_index/1'.

Objetivo

Instrucción de búsqueda

Depuración

Buscar registros donde el valor del campo http_user_agent contenga Chrome.

http_user_agent:Chrome

Depuración

Buscar registros donde el valor del campo http_user_agent contenga Linux y Chrome.

http_user_agent:Linux and http_user_agent:Chrome

Depuración

http_user_agent:"Linux Chrome"

Depuración

Buscar registros donde el valor del campo http_user_agent contenga Firefox o Chrome.

http_user_agent:Firefox or http_user_agent:Chrome

Depuración

Buscar registros donde el valor del campo request_uri contenga /request/path-2.

request_uri:/request/path-2

Depuración

Buscar registros donde el valor del campo request_uri comience con /request pero no contenga /file-0.

request_uri:/request* not request_uri:/file-0

Depuración

Encontrar una coincidencia exacta de registros que contengan la frase redo_index/1.

  • #"redo_index/1"

  • | select from log where key like 'redo_index/1'

Nota

Una búsqueda de frase o una cláusula LIKE pueden proporcionar una coincidencia exacta para una frase. Una búsqueda exacta estándar coincide con términos individuales como redo_index y 1.

Ninguna

Escape de palabras clave

  • En instrucciones de búsqueda

    Encierre una palabra clave de sintaxis entre "" (comillas dobles) para tratarla como un literal. En una consulta de campo, todas las palabras dentro de "" se tratan como una sola frase.

    • Si un nombre de campo o valor contiene caracteres especiales (como espacios, caracteres chinos, : o -) o palabras clave de sintaxis (como and o or), debe encerrarlo entre "". Por ejemplo, una búsqueda de "and" encuentra registros que contienen la palabra "and", la cual no se trata como un operador.

    • SLS reserva las siguientes palabras para usarlas como operadores. Para utilizarlas como palabras clave de búsqueda, debe encerrarlas entre "": sort, asc, desc, group by, avg, sum, min, max y limit.

    • Cuando los registros se procesan mediante transformación de datos o un complemento de Logtail, la clave de la etiqueta se convierte en una clave estándar. Para consultar esta clave, debe encerrar el nombre del campo entre "". Ejemplo: "__tag__:__client_ip__":192.0.2.1. El campo __tag__:__client_ip__ es una reserved field que almacena la IP del host de recolección de registros.

    Objetivo

    Instrucción de búsqueda

    Buscar registros donde el valor del campo request method sea PUT. El nombre del campo request method contiene un espacio y debe encerrarse entre comillas dobles ("").

    "request method":PUT

    Buscar registros donde el valor del campo system error description contenga DB. El nombre del campo system error description contiene espacios.

    "system error description":DB*

    Esta consulta encuentra registros donde el valor del campo region contiene cn. Aquí, cn es una cadena. Si el contenido del registro es region:cn,en y el delimitador es una coma (,), el contenido del registro se divide en region, cn y en. Luego puede utilizar la instrucción de la derecha para encontrar este registro.

    region:"cn*"

    Buscar registros donde el valor del campo remote_user esté vacío.

    remote_user:""

    Buscar registros donde el valor del campo Authorization sea Bearer 12345. El valor del campo Bearer 12345 contiene un espacio.

    "Authorization": "Bearer 12345"

    Analizar registros donde el valor del campo errorContent contenga The body is not valid json string. El valor del campo contiene espacios.

    * | select * where errorContent like '%The body is not valid json string%'

    Buscar registros recolectados del host 192.0.2.1.

    "__tag__:__client_ip__":192.0.2.1
  • En instrucciones analíticas

    • Si un nombre propio, como un nombre de campo o de tabla, contiene caracteres especiales (como espacios, caracteres chinos, : o -) o palabras clave de sintaxis (como and o or), debe encerrarlo entre comillas dobles ("").

    • Los caracteres que representan una cadena deben encerrarse entre comillas simples (''). Los caracteres que no están encerrados entre comillas o que están encerrados entre comillas dobles ("") representan un nombre de campo o de columna. Por ejemplo, 'status' representa la cadena "status", mientras que status o "status" representa el campo de registro status.

    Objetivo

    Instrucción analítica

    Buscar registros que contengan 192.168.XX.XX.

    * | select * from log where key like '192.168.%.%'

    Calcular los 10 tiempos de solicitud principales.

    El nombre de la columna top 10 contiene un espacio y debe encerrarse entre comillas dobles ("").

    * | SELECT max(request_time,10) AS "top 10"

    Contar el número de registros para cada estado de solicitud.

    El campo content está indexado como JSON. How to query and analyze an indexed JSON field.

    * | SELECT "content.status", COUNT(*) AS PV GROUP BY "content.status"

Tipo Json

Registro de ejemplo

{
  "timestamp": "2025-03-21T14:35:18Z",
  "level": "ERROR",
  "service": {
    "name": "payment-processor",
    "version": "v2.8.1",
    "environment": "production"
  },
  "error": {
    "code": 5031,
    "message": "Failed to connect to third-party API",
    "details": {
      "endpoint": "https://api.paymentgateway.com/v3/verify",
      "attempts": 3,
      "last_response": {
        "status_code": 504,
        "headers": {
          "Content-Type": "application/json",
          "X-RateLimit-Limit": "100"
        }
      }
    }
  },
  "user": {
    "id": "usr-9a2b3c4d",
    "session": {
      "id": "sess-zxy987",
      "device": {
        "type": "mobile",
        "os": "Android 14",
        "network": "4G"
      }
    }
  },
  "trace": {
    "correlation_id": "corr-6f5e4d3c",
    "span_id": "span-00a1b2"
  }
}

Configuración de índices

Create indexes antes de consultar registros. Para comprobar la configuración de sus índices, siga estos pasos.

  1. En la página de query and analysis del logstore, seleccione Index Attributes > Attributes.

  2. En el panel que aparece, compruebe si los índices de campo están configurados.

Ejemplos

Objetivo

Instrucción de búsqueda

Buscar registros que documenten errores de solicitud.

level:error

Buscar todas las solicitudes del usuario con ID usr-9a2b3c4d.

user.id:usr-9a2b3c4d

Buscar registros del usuario usr-9a2b3c4d con código de estado de error 504.

user.id:usr-9a2b3c4d and error.details.last_response.status_code :504

Preguntas frecuentes

La consulta no devuelve registros

What to do if a query returns no logs

Problemas con registros JSON

FAQ about querying and analyzing JSON logs

Solución de errores de consulta

Temas relacionados