Consulta datos de registro en un Logstore especificado de un Project especificado. Esta operación está obsoleta. Utilice la operación GetLogsV2 en su lugar.
Descripción de la operación
Descripción de la operación
Simple Log Service permite crear nodos SQL programados. Para obtener más información, consulte Crear un nodo SQL programado.
El Host en la sintaxis de la solicitud consta del nombre del Project y el endpoint de Simple Log Service. Debe especificar el Project en el Host.
Cree y obtenga un par de AccessKey. Para obtener más información, consulte Par de AccessKey.
Un par de AccessKey de una cuenta de Alibaba Cloud tiene permisos de acceso a todas las operaciones de la API, lo que implica altos riesgos de seguridad. Le recomendamos encarecidamente que cree y utilice un usuario de Resource Access Management (RAM) para el acceso a la API o para tareas rutinarias de operación y mantenimiento. El usuario de Resource Access Management (RAM) debe tener permisos de acceso para administrar recursos EPS de Simple Log Service. Para obtener más información, consulte Crear un usuario RAM y autorizar al usuario RAM.
-
Determine el nombre del Project, la región y el nombre del Logstore correspondientes a los registros que desea consultar. Para obtener más información, consulte Administrar un Project y Administrar un Logstore.
-
Simple Log Service tiene límites de uso para la consulta de registros. Diseñe instrucciones de consulta y análisis adecuadas, y establezca intervalos de tiempo de consulta apropiados. Para obtener más información, consulte Límites en consultas de registros y Límites en análisis de registros.
-
Antes de consultar registros, configure índices. Para obtener más información, consulte Crear índices.
-
Cuando el número de registros involucrados en una consulta cambia significativamente, la API de Simple Log Service no puede predecir cuántas veces se debe invocar esta operación para obtener resultados completos. Verifique el valor de estado x-log-progress en la respuesta de cada solicitud para determinar si necesita invocar esta operación nuevamente para obtener resultados completos. Cada invocación repetida consume la misma cantidad de unidades de cómputo de consulta (CU).
-
Después de escribir registros en un Logstore, la latencia antes de que las operaciones de consulta (GetHistograms y GetLogs) puedan consultar los registros varía según el tipo de registro. Simple Log Service clasifica los registros en los siguientes dos tipos según las marcas de tiempo UNIX de los registros:
Datos en tiempo real: El punto temporal en el registro se encuentra dentro del rango de (-180 segundos, 900 segundos] respecto a la hora actual del servidor. Por ejemplo, si la hora del registro es UTC 2014-09-25 12:03:00 y el servidor recibe el registro a las UTC 2014-09-25 12:05:00, el registro se procesa como datos en tiempo real. Esto ocurre generalmente en escenarios normales.
Datos históricos: El punto temporal en el registro se encuentra dentro del rango de [-7×86400 segundos, -180 segundos) respecto a la hora actual del servidor. Por ejemplo, si la hora del registro es UTC 2014-09-25 12:00:00 y el servidor recibe el registro a las UTC 2014-09-25 12:05:00, el registro se procesa como datos históricos. Esto ocurre generalmente en escenarios de relleno de datos. La latencia desde la escritura de datos en tiempo real hasta su consulta es de aproximadamente 3 segundos.
Simple Log Service calcula la diferencia entre la hora del registro (nombre del campo: time) y la hora de recepción del servidor (nombre del campo: tag:receive_time). Si la diferencia está dentro del rango de (-180 segundos, 900 segundos], el registro son datos en tiempo real. Si la diferencia está dentro del rango de [-7×86400 segundos, -180 segundos), el registro son datos históricos.
Simple Log Service proporciona ejemplos de uso de la operación GetLogs con el SDK de Java y el SDK de Python. Para obtener más información, consulte Ejemplo del SDK de Java para GetLogs y Ejemplo del SDK de Python para GetLogs.
Recursos de autenticación
La siguiente tabla enumera la información de autorización correspondiente a esta operación de la API. Puede agregar esta información al elemento Action de una declaración de política de acceso de RAM para otorgar a un usuario de Resource Access Management (RAM) o a un rol de RAM la autorización para invocar esta operación de la API.
| Acción | Recurso |
log:GetLogStoreLogs | acs:log:{#regionId}:{#accountId}:project/{#ProjectName}/logstore/{#LogstoreName} |
Pruébelo ahora
Test
Autorización de RAM
Sintaxis de la solicitud
POST /logstores/{logstore}/logs HTTP/1.1
Parámetros de ruta
|
Parámetro |
Tipo |
Obligatorio |
Descripción |
Ejemplo |
| logstore |
string |
Sí |
El nombre del Logstore del cual desea consultar datos. |
example-logstore |
Parámetros de la solicitud
|
Parámetro |
Tipo |
Obligatorio |
Descripción |
Ejemplo |
| project |
string |
Sí |
El nombre del Project. |
ali-test-project |
| Accept-Encoding |
string |
No |
lz4 |
|
| body |
object |
No |
||
| from |
integer |
Sí |
1627268185 |
|
| to |
integer |
Sí |
1627268185 |
|
| line |
integer |
No |
100 |
|
| offset |
integer |
No |
0 |
|
| reverse |
boolean |
No |
||
| powerSql |
boolean |
No |
||
| session |
string |
No |
||
| topic |
string |
No |
topic |
|
| query |
string |
No |
status: 401 | SELECT remote_addr,COUNT(*) as pv GROUP by remote_addr ORDER by pv desc limit 5 |
|
| forward |
boolean |
No |
||
| highlight |
boolean |
No |
||
| isAccurate |
boolean |
No |
Elementos de la respuesta
|
Elemento |
Tipo |
Descripción |
Ejemplo |
|
object |
La matriz de registros. Cada elemento es una entrada de registro. |
||
| meta |
object |
||
| progress |
string |
||
| aggQuery |
string |
||
| whereQuery |
string |
||
| hasSQL |
boolean |
||
| processedRows |
integer |
||
| elapsedMillisecond |
integer |
||
| cpuSec |
number |
||
| cpuCores |
integer |
||
| keys |
array |
||
|
string |
|||
| terms |
array<object> |
||
|
object |
|||
| limited |
integer |
||
| mode |
integer |
||
| phraseQueryInfo |
object |
||
| scanAll |
boolean |
||
| beginOffset |
integer |
||
| endOffset |
integer |
||
| endTime |
integer |
||
| scanBytes |
integer |
||
| highlights |
array<object> |
||
|
object |
|||
| count |
integer |
||
| processedBytes |
integer |
||
| isAccurate |
boolean |
||
| columnTypes |
array |
||
|
string |
|||
| telementryType |
string |
||
| data |
array<object> |
||
|
object |
|||
|
string |
Ejemplos
Respuesta exitosa
JSON Formato
{
"meta": {
"progress": "",
"aggQuery": "",
"whereQuery": "",
"hasSQL": false,
"processedRows": 0,
"elapsedMillisecond": 0,
"cpuSec": 0,
"cpuCores": 0,
"keys": [
""
],
"terms": [
{
"test": "test",
"test2": 1
}
],
"limited": 0,
"mode": 0,
"phraseQueryInfo": {
"scanAll": false,
"beginOffset": 0,
"endOffset": 0,
"endTime": 0
},
"scanBytes": 0,
"highlights": [
{
"test": "test",
"test2": 1
}
],
"count": 0,
"processedBytes": 0,
"isAccurate": false,
"columnTypes": [
""
],
"telementryType": ""
},
"data": [
{
"key": ""
}
]
}
Códigos de error
Consulte Códigos de error para ver la lista completa.
Notas de la versión
Consulte Notas de la versión para ver la lista completa.