Enviar los registros de una aplicación en la nube a un pipeline
Esta guía le muestra cómo simular, enviar y verificar un único evento de registro JSON dentro del flujo de trabajo de un pipeline de observabilidad.
Objetivo: Ingerir un registro de aplicación simulado, verificar que ha llegado al pipeline y prepararlo para su enrutamiento a un destino, como Splunk, Elastic o S3.
Por qué es importante
Antes de crear reglas de análisis complejas o enrutar datos a costosas herramientas de gestión de información y eventos de seguridad (SIEM), debe verificar su ruta de ingestión. Este flujo de trabajo confirma que:
- Su token de API funciona.
- El pipeline acepta su structure JSON.
- Puede ver los datos en tiempo real.
Antes de empezar
Asegúrese de que dispone de:
- Un token de API (con permisos de
ingest). - Su ID de flujo único (desde la interfaz de usuario de la plataforma).
- Acceso a un terminal (para ejecutar
curl) o Postman.
Descripción general del canal
- Mermaid (imagen)
- Mermaid (código)
- ASCII
flowchart LR
A[Aplicación nube] -->|Registro JSON| B[API ingesta]
B --> C{Motor enrutam.}
C -->|Coincidencia| D[Visor datos tiempo real]
C -->|Sin coincidencia| E[Descartar / Bucket predet.]
[Aplicación nube]
|
| |Registro JSON|
v
[API ingesta]
|
v
{ Motor enrutam. }
/ \
| Coincidencia | Sin
| | coincidencia
v v
[Visor datos ] [Descartar / ]
[tiempo real ] [Bucket predet. ]
1. Crear o seleccionar un flujo
En su plataforma de observabilidad:
- Vaya a Flujos > Gestión.
- Haga clic en Nuevo flujo o seleccione
default-logs. - Copie el ID del flujo, por ejemplo,
st_12345. - (Opcional) Establezca una política de retención. El valor predeterminado suele ser 7 días.
2. Crear un evento de registro de muestra
Simule un registro de una aplicación en la nube guardando lo siguiente como app-log.json.
{
"timestamp": "2025-11-15T08:30:00Z",
"service": "payment-gateway",
"level": "ERROR",
"message": "Transacción fallida: tiempo de espera de la pasarela agotado",
"transaction_id": "txn_998877",
"meta": {
"region": "us-east-1",
"customer_id": "cus_554433"
}
}
Mantenga la marca de tiempo en formato ISO 8601 (Organización Internacional de Normalización) para garantizar una indexación adecuada.
3. Enviar el evento de registro
Utilice curl para simular que la aplicación envía el registro.
export STREAM_ID="su_id_de_stream_aquí"
export API_TOKEN="su_token_de_API_aquí"
curl -X POST "https://api.observability-platform.com/v1/streams/ingest" \
-H "Authorization: Bearer $API_TOKEN" \
-H "Content-Type: application/json" \
-H "X-Stream-Id: $STREAM_ID" \
-d @app-log.json
Respuesta esperada
{
"status": "accepted",
"ingest_id": "evt_abc12345",
"accepted_items": 1
}
Si ves status: accepted, el pipeline ha recibido los datos.
4. Verifica tu registro en el visor de datos en tiempo real
- Ve a Explore o Live Tail en la interfaz de usuario de la plataforma.
- Selecciona tu flujo (
st_12345). - Añade un filtro:
service == "payment-gateway". - Tu evento debería aparecer al instante:
[ERROR] 2025-11-15T08:30:00Z service=payment-gateway msg="Transacción fallida..."
5. Dirige los registros a un destino
Ahora que los datos fluyen, crea una regla de enrutamiento:
- Ve a Pipelines > Routing Rules.
- Haz clic en Nueva regla.
- Filtro:
level == "ERROR" - Action: Enrutar a
S3-ArchiveySlack-Alerts. - Guardar e implementar.
Envía la solicitud curl de nuevo.
- Comprueba tu bucket de S3.
- Comprueba tu canal de Slack.
6. Optimiza el pipeline
Ahora que tienes un flujo operativo, considera añadir:
- Análisis: Extrae
customer_ida un campo de nivel superior. - Enriquecimiento: Añade una etiqueta
team_ownerbasada en el nombre delservicio. - Enmascaramiento: Oculta
customer_idsi se trata de información de identificación personal (PII).
Solución de problemas
| Código de error | Posible causa / Solución |
|---|---|
401 No autorizado | Comprueba los permisos de tu token de API. |
400 Solicitud incorrecta | Verifique la sintaxis JSON. |
404 No encontrado | Verifique que el X-Stream-Id sea correcto. |
Problemas con la marca de tiempo | Asegúrese de que está utilizando el formato ISO 8601 de la hora universal coordinada (UTC). |
Los datos no se muestran | Compruebe si tiene un filtro activo que excluya su nuevo registro. |
Próximos pasos
- Referencia de la API de ingesta
- Conceptos de observabilidad
- Intenta enviar diferentes tipos de registros, como registros de máquinas virtuales, registros de contenedores y eventos de API.