

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Observabilidad en Amazon Service OpenSearch
<a name="observability"></a>

La observabilidad es la práctica de comprender el estado interno y el rendimiento de los sistemas complejos mediante el examen de sus resultados. El monitoreo tradicional indica que un sistema no funciona; la observabilidad le ayuda a entender por qué, ya que le permite hacer nuevas preguntas sobre los datos de telemetría.

## Qué ofrece Amazon OpenSearch Service
<a name="observability-what"></a>

Amazon OpenSearch Service proporciona una solución de observabilidad unificada mediante la recopilación, la correlación y la visualización de tres tipos de datos de telemetría:
+ **Registros: registros de eventos** con marca temporal.
+ **Rastros**: End-to-end recorrido de las solicitudes a través de los servicios distribuidos.
+ **Métricas**: datos de series temporales que representan el estado del sistema, a través de la integración de consultas directas de Amazon Managed Service for Prometheus.

Al reunirlos en una sola interfaz, Amazon OpenSearch Service ayuda a los equipos de operaciones y a los desarrolladores a detectar, diagnosticar y resolver problemas con mayor rapidez. SREs

## El enfoque de Amazon OpenSearch Service sobre la observabilidad
<a name="observability-approach"></a>

Amazon OpenSearch Service se diferencia de tres maneras clave:
+ **OpenTelemetry-nativo con la OpenSearch ingestión como última milla: estandarice la** instrumentación y la recolección OTel . Amazon OpenSearch Ingestion actúa como una canalización totalmente gestionada que filtra, enriquece, transforma y enruta los datos de telemetría antes de la indexación.
+ **Registros, trazas y métricas unificados en la OpenSearch interfaz de usuario**: analice los tres tipos de señales desde un único espacio de trabajo de observabilidad. Correlaciona un rastreo lento con sus registros de aplicaciones o superpone las métricas de Prometheus en tus paneles de servicio.
+ **Lenguajes de consulta específicos: utilice el [lenguaje de procesamiento canalizado (PPL) para los registros y rastreos, y ProMQL](https://observability.opensearch.org/docs/ppl/)** para las métricas. Cada idioma está optimizado para su tipo de señal, lo que permite realizar consultas expresivas sin concesiones.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/otel-sdk-service.png)


**nota**  
Las funciones de observabilidad descritas en esta sección solo están disponibles en OpenSearch la interfaz de usuario. No están disponibles en los OpenSearch paneles de control. Para las nuevas cargas de trabajo de observabilidad, recomendamos configurar un espacio de trabajo [Uso de la OpenSearch interfaz de usuario en Amazon OpenSearch Service](application.md) con observabilidad.

# Introducción
<a name="observability-get-started"></a>

Pon en marcha tu pila de observabilidad AWS y comienza a enviar datos de telemetría en cuestión de minutos.

## Inicio rápido
<a name="observability-get-started-quick"></a>

La forma más rápida de implementar una pila de end-to-end observabilidad AWS es mediante el instalador de CLI. Crea los siguientes recursos:
+ Un dominio OpenSearch de Amazon Service
+ Un servicio gestionado de Amazon para el espacio de trabajo de Prometheus
+ Una canalización de Amazon OpenSearch Ingestion
+ Una aplicación de OpenSearch interfaz de usuario con un espacio de trabajo de observabilidad

Si lo desea, el instalador lanza una instancia EC2 con la OpenTelemetry demostración para obtener un ejemplo de telemetría.

Ejecute el siguiente comando para iniciar la instalación:

```
bash -c "$(curl -fsSL https://raw.githubusercontent.com/opensearch-project/observability-stack/main/install.sh)" -- --deployment-target=aws
```

La instalación tarda aproximadamente 15 minutos.

## Despliegue de CDK
<a name="observability-get-started-cdk"></a>

Para ello infrastructure-as-code, utilice AWS CDK. La implementación de la CDK crea dos pilas:


| Pila | Qué crea | Tiempo de implementación | 
| --- | --- | --- | 
| ObsInfra | OpenSearch dominio, espacio de trabajo de Amazon Managed Service for Prometheus, fuente de datos de consulta directa, función de IAM en canalización | \$117 min | 
| ObservabilityStack | Mapeo detallado del control de acceso, canalización de OpenSearch ingestión, aplicación de OpenSearch interfaz de usuario, inicialización del panel de control, carga de trabajo de demostración (opcional) | \$16 min | 

Ejecute los siguientes comandos para realizar la implementación:

```
cd aws/cdk
npm install
cdk deploy --all
```

Para obtener más información, consulte el [README de implementación del CDK](https://github.com/opensearch-project/observability-stack/tree/main/aws/cdk) en. GitHub

## Envío de telemetría
<a name="observability-get-started-send"></a>

Ambos métodos de implementación crean un punto final de OpenSearch ingestión que acepta datos de OTLP. Configure su OTel recopilador para que exporte mediante la autenticación SigV4:

```
extensions:
  sigv4auth:
    region: us-west-2
    service: osis

exporters:
  otlphttp/logs:
    logs_endpoint: ${OSIS_ENDPOINT}/v1/logs
    auth: { authenticator: sigv4auth }
    compression: none
  otlphttp/traces:
    traces_endpoint: ${OSIS_ENDPOINT}/v1/traces
    auth: { authenticator: sigv4auth }
    compression: none
  otlphttp/metrics:
    metrics_endpoint: ${OSIS_ENDPOINT}/v1/metrics
    auth: { authenticator: sigv4auth }
    compression: none
```

**nota**  
El principal IAM que envía los datos necesita `osis:Ingest` y `aps:RemoteWrite` permiso en el ARN de la canalización.

## Más información
<a name="observability-get-started-learn-more"></a>

Utilice los siguientes recursos para obtener más información sobre el envío de datos de telemetría:
+ [OpenTelemetry guías de instrumentación (por idioma)](https://observability.opensearch.org/docs/send-data/applications/)
+ [Supervisión de infraestructuras (Docker AWS, Kubernetes, Prometheus)](https://observability.opensearch.org/docs/send-data/infrastructure/)
+ [OTel Configuración del colector](https://observability.opensearch.org/docs/send-data/opentelemetry/collector/)
+ [Canalización y procesamiento por lotes de datos](https://observability.opensearch.org/docs/send-data/data-pipeline/)
+ [Información general sobre Amazon OpenSearch Ingestion](ingestion.md) en esta guía

# Ingerir telemetría de aplicaciones
<a name="observability-ingestion"></a>

Para utilizar las funciones de observabilidad de Amazon OpenSearch Service, debes ingerir las trazas, los registros y las métricas de las aplicaciones. En esta página se describe la configuración de las OpenTelemetry canalizaciones de OpenSearch recopilación e ingestión para procesar y enrutar los datos de telemetría a OpenSearch Amazon Managed Service for Prometheus.

## OpenTelemetry Configuración del recopilador
<a name="observability-ingestion-otel"></a>

El recopilador OpenTelemetry (OTel) es el punto de entrada para toda la telemetría de las aplicaciones. Recibe datos a través de OTLP y dirige las trazas y los registros a OpenSearch Ingestion mientras envía las métricas a Prometheus.

Puede configurar el OTel recopilador mediante uno de los siguientes enfoques:

El OTel recopilador exporta las trazas y los registros a un punto final de OpenSearch ingestión mediante la autenticación SigV4 y las métricas a Amazon Managed Service for Prometheus mediante el exportador de escritura remota de Prometheus. OpenSearch Ingestion gestiona el procesamiento, el enriquecimiento y el enrutamiento hacia. OpenSearch

### OTel Configuración del recopilador con Ingestión OpenSearch
<a name="observability-ingestion-otel-osis"></a>

El siguiente ejemplo de configuración utiliza la autenticación SigV4 para exportar las trazas y los registros a un punto final de OpenSearch ingestión y las métricas a Prometheus:

```
extensions:
  sigv4auth:
    region: us-west-2
    service: osis

exporters:
  otlphttp/osis-traces:
    traces_endpoint: ${OSIS_ENDPOINT}/v1/traces
    auth: { authenticator: sigv4auth }
    compression: none
  otlphttp/osis-logs:
    logs_endpoint: ${OSIS_ENDPOINT}/v1/logs
    auth: { authenticator: sigv4auth }
    compression: none
  # Amazon Managed Service for Prometheus via Prometheus Remote Write with SigV4 auth
  prometheusremotewrite/amp:
    endpoint: "https://aps-workspaces.region.amazonaws.com/workspaces/workspace-id/api/v1/remote_write"
    auth:
      authenticator: sigv4auth

service:
  extensions: [sigv4auth]
  pipelines:
    traces:
      receivers: [otlp]
      processors: [batch]
      exporters: [otlphttp/osis-traces]
    logs:
      receivers: [otlp]
      processors: [batch]
      exporters: [otlphttp/osis-logs]
    metrics:
      receivers: [otlp]
      processors: [batch]
      exporters: [prometheusremotewrite/amp]
```

**nota**  
El principal IAM que envía los datos necesita `osis:Ingest` y `aps:RemoteWrite` permiso en el ARN de la canalización.

## Configuración de las canalizaciones de ingestión OpenSearch
<a name="observability-ingestion-pipelines"></a>

OpenSearch Ingestion (o Data Prepper autogestionado) recibe la telemetría del OTel recopilador y la procesa para supervisar el rendimiento de las aplicaciones (APM).

### Arquitectura de canalización
<a name="observability-ingestion-pipeline-arch"></a>

La canalización procesa los datos de telemetría en las siguientes etapas:

1. La canalización de entrada recibe toda la telemetría y enruta los registros y rastreos a subcanalizaciones independientes.

1. La canalización de registro escribe los datos de registro OpenSearch utilizando el tipo de índice. `log-analytics-plain`

1. La canalización de rastreo distribuye los tramos entre la canalización de almacenamiento sin procesar y la canalización del mapa de servicios.

1. Los procesos de la canalización de rastreo sin procesar se extienden por el `otel_traces` procesador y los almacenan en el `trace-analytics-plain-raw` tipo de índice.

1. La canalización del mapa de servicios utiliza el `otel_apm_service_map` procesador para generar métricas de topología y RED (tasa, errores, duración). Escribe hacia OpenSearch y hacia Prometeo a través de la escritura remota.

### Configuración de canalización
<a name="observability-ingestion-pipeline-config"></a>

El siguiente ejemplo muestra una configuración de canalización completa para OpenSearch Ingestion que cubre todos los tipos de señales de observabilidad: registros, trazas y métricas. Puedes incluir todas las canalizaciones o solo las que sean relevantes para tu caso de uso. Sustituya los *placeholder* valores por su propia información.

```
version: '2'

# Main OTLP pipeline - receives all telemetry and routes by signal type
otlp-pipeline:
  source:
    otlp:
      logs_path: '/pipeline-name/v1/logs'
      traces_path: '/pipeline-name/v1/traces'
      metrics_path: '/pipeline-name/v1/metrics'
  route:
    - logs: 'getEventType() == "LOG"'
    - traces: 'getEventType() == "TRACE"'
    - metrics: 'getEventType() == "METRIC"'
  processor: []
  sink:
    - pipeline:
        name: otel-logs-pipeline
        routes:
          - logs
    - pipeline:
        name: otel-traces-pipeline
        routes:
          - traces
    - pipeline:
        name: otel-metrics-pipeline
        routes:
          - metrics

# Log processing pipeline
otel-logs-pipeline:
  source:
    pipeline:
      name: otlp-pipeline
  processor:
    - copy_values:
        entries:
          - from_key: "time"
            to_key: "@timestamp"
  sink:
    - opensearch:
        hosts:
          - 'https://opensearch-endpoint'
        index_type: log-analytics-plain
        aws:
          serverless: false
          region: 'region'
          sts_role_arn: "arn:aws:iam::account-id:role/pipeline-role"

# Trace fan-out pipeline
otel-traces-pipeline:
  source:
    pipeline:
      name: otlp-pipeline
  processor: []
  sink:
    - pipeline:
        name: traces-raw-pipeline
        routes: []
    - pipeline:
        name: service-map-pipeline
        routes: []

# Raw trace storage pipeline
traces-raw-pipeline:
  source:
    pipeline:
      name: otel-traces-pipeline
  processor:
    - otel_traces:
  sink:
    - opensearch:
        hosts:
          - 'https://opensearch-endpoint'
        index_type: trace-analytics-plain-raw
        aws:
          serverless: false
          region: 'region'
          sts_role_arn: "arn:aws:iam::account-id:role/pipeline-role"

# Service map generation pipeline (APM)
service-map-pipeline:
  source:
    pipeline:
      name: otel-traces-pipeline
  processor:
    - otel_apm_service_map:
        group_by_attributes:
          - telemetry.sdk.language # Add any resource attribute to group by
        window_duration: 30s
  route:
    - otel_apm_service_map_route: 'getEventType() == "SERVICE_MAP"'
    - service_processed_metrics: 'getEventType() == "METRIC"'
  sink:
    - opensearch:
        hosts:
          - 'https://opensearch-endpoint'
        aws:
          serverless: false
          region: 'region'
          sts_role_arn: "arn:aws:iam::account-id:role/pipeline-role"
        routes:
          - otel_apm_service_map_route
        index_type: otel-v2-apm-service-map
    - prometheus:
        url: 'https://aps-workspaces.region.amazonaws.com/workspaces/workspace-id/api/v1/remote_write'
        aws:
          region: 'region'
        routes:
          - service_processed_metrics

# Metrics processing pipeline
otel-metrics-pipeline:
  source:
    pipeline:
      name: otlp-pipeline
  processor:
    - otel_metrics:
  sink:
    - prometheus:
        url: 'https://aps-workspaces.region.amazonaws.com/workspaces/workspace-id/api/v1/remote_write'
        aws:
          region: 'region'
```

## Verificación de la ingestión
<a name="observability-ingestion-verify"></a>

Tras configurar el OTel recopilador y las canalizaciones, compruebe que los datos de telemetría fluyan correctamente.
+ **Verifique OpenSearch los índices**: confirme que existen los siguientes índices en su dominio:, y. `otel-v1-apm-span-*` `otel-v2-apm-service-map` `logs-otel-v1-*`
+ **Verificar los objetivos de Prometheus**: confirme que el objetivo de escritura remota de Prometheus recibe métricas de la canalización del mapa de servicio.
+ **Verifica en la OpenSearch interfaz de usuario**: dirígete a **Observabilidad** y, a continuación, a **Application Monitoring** para confirmar que aparecen tus servicios.

## Siguientes pasos
<a name="observability-ingestion-next"></a>

Tras comprobar que se han ingerido los datos de telemetría, explore los siguientes temas:
+ [Supervisión de aplicaciones](observability-app-monitoring.md)— Supervise el estado de las aplicaciones con mapas de servicio y métricas de RED.
+ [Descubra las trazas](observability-analyze-traces.md): descubra y analice las trazas distribuidas.
+ [Descubra los registros](observability-analyze-logs.md): descubra y consulte los registros de las aplicaciones.
+ [Descubra las métricas](observability-metrics.md): descubra y consulte las métricas de Prometheus con ProMQL.

# Conjuntos de datos
<a name="observability-datasets"></a>

Los conjuntos de datos son conjuntos de índices que representan una agrupación lógica de sus datos de observabilidad. Los conjuntos de datos se utilizan para organizar los registros y los datos de rastreo, de modo que se puedan consultar y analizar los índices relacionados de forma conjunta en la experiencia Discover. Cada conjunto de datos se asigna a uno o más índices de tu dominio de OpenSearch servicio y define el tipo de datos, el campo de tiempo y el idioma de consulta de la página Discover.

## Tipos de conjuntos de datos
<a name="observability-datasets-types"></a>

En la siguiente tabla se describen los tipos de conjuntos de datos que puede crear.


| Tipo | Description (Descripción) | Lenguaje de consulta | 
| --- | --- | --- | 
| Registros | Agrupa uno o más índices de registro para consultarlos y visualizarlos en la página Descubrir registros. | PPL | 
| Rastros | Agrupa los índices de intervalo de rastreo para consultarlos y visualizarlos en la página Discover Traces. | PPL | 

**nota**  
Las métricas no requieren un conjunto de datos porque los datos de las métricas no se almacenan en él. OpenSearch Las métricas se consultan directamente desde Amazon Managed Service for Prometheus mediante PromQL.

## Para crear un conjunto de datos de registros
<a name="observability-datasets-create-logs"></a>

Complete los siguientes pasos para crear un conjunto de datos de registros en la OpenSearch interfaz de usuario.

1. En tu espacio de trabajo de observabilidad, expande **Discover** en la barra de navegación de la izquierda y selecciona **Registros**.

1. Elija **Crear conjunto de datos**.

1. Seleccione una fuente de datos de la lista de conexiones de OpenSearch servicio disponibles.  
![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/datasets/datasets-select-data-source.png)

1. Configure el conjunto de datos introduciendo un nombre, seleccionando el índice y especificando el campo de fecha y hora.  
![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/datasets/datasets-configure-logs.png)

1. Elija **Crear conjunto de datos** para guardar la configuración.

## Para crear un conjunto de datos de trazas
<a name="observability-datasets-create-traces"></a>

Complete los siguientes pasos para crear un conjunto de datos de trazas en la OpenSearch interfaz de usuario.

1. En su espacio de trabajo de observabilidad, expanda **Discover** en la barra de navegación de la izquierda y elija **Traces**.

1. Elija **Crear conjunto de datos**.

1. Seleccione una fuente de datos de la lista de conexiones de OpenSearch servicio disponibles.

1. Configure el conjunto de datos introduciendo un nombre, seleccionando el índice de intervalo y especificando el campo de fecha y hora.  
![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/datasets/datasets-configure-traces.png)

1. Elija **Crear conjunto de datos** para guardar la configuración.

## Para ver conjuntos de datos
<a name="observability-datasets-view"></a>

Puede ver todos los conjuntos de datos configurados desde el selector de conjuntos de datos de la página Descubrir registros o Descubrir rastros. La lista de conjuntos de datos muestra el nombre, el tipo, la fuente de datos y el campo de fecha y hora de cada conjunto de datos.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/datasets/datasets-list.png)


## Análisis de conjuntos de datos en Discover
<a name="observability-datasets-analyze"></a>

Después de crear un conjunto de datos, puede analizarlo en la página de Discover correspondiente.

### Registros
<a name="observability-datasets-analyze-logs"></a>

Seleccione un conjunto de datos de registros en el selector de conjuntos de datos de la página Descubrir registros para consultar y visualizar sus datos de registro mediante PPL. Para obtener más información, consulte [Descubra los registros](observability-analyze-logs.md).

### Rastros
<a name="observability-datasets-analyze-traces"></a>

Seleccione un conjunto de datos de trazas en el selector de conjuntos de datos de la página Descubrir trazas para explorar los intervalos de trazas, ver las métricas de RED y profundizar en las trazas individuales. Para obtener más información, consulte [Descubre Traces](observability-analyze-traces.md).

# Descubra los registros
<a name="observability-analyze-logs"></a>

La página Descubra los registros proporciona una interfaz específica para explorar y analizar los datos de registro en su espacio de trabajo de observabilidad del OpenSearch Servicio. Puede escribir consultas PPL para filtrar y agregar datos de registro, crear visualizaciones directamente a partir de los resultados de las consultas y añadir esas visualizaciones a los paneles de control. La página también proporciona asistencia para realizar consultas en lenguaje natural con la tecnología del asistente de IA. OpenSearch 

## Para acceder a la página de registros
<a name="observability-logs-access"></a>

En tu espacio de trabajo de observabilidad, expande **Discover** en la barra de navegación de la izquierda y selecciona **Registros**.

## Explorando los datos de registro
<a name="observability-logs-explore"></a>

La interfaz Discover Logs proporciona los siguientes componentes para explorar los datos de registro.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/discover-logs/discover-logs-interface.png)

+ **Selector de conjuntos** de datos: elija el conjunto de datos de registros que desee consultar. Cada conjunto de datos se asigna a uno o más índices de su dominio OpenSearch de servicio.
+ **Editor de consultas**: escriba consultas de PPL para filtrar, agregar y transformar sus datos de registro. El editor proporciona sugerencias de autocompletado y resalta la sintaxis.
+ **Filtro de tiempo**: especifique el intervalo de tiempo para los resultados de la consulta. Puede elegir un rango relativo o especificar horas absolutas de inicio y finalización.
+ **Panel de resultados**: vea los resultados de la consulta como una tabla de eventos de registro. Puede expandir los eventos individuales para ver todos los campos.
+ **Histograma: permite** ver la distribución de los eventos del registro a lo largo del tiempo. El histograma se actualiza automáticamente en función de la consulta y el filtro de tiempo.
+ **Panel de campos**: examina los campos disponibles en tu conjunto de datos y agrégalos como columnas a la tabla de resultados.

## Consulta de registros mediante PPL
<a name="observability-logs-query-ppl"></a>

El lenguaje de procesamiento canalizado (PPL) es un lenguaje de consulta que utiliza la sintaxis basada en pipe-based (`|`) para encadenar comandos. Puede usar PPL para filtrar, agregar y transformar los datos de registro.

### Consultas básicas
<a name="observability-logs-basic-queries"></a>

Para recuperar todos los eventos de registro de un conjunto de datos, usa el `source` comando:

```
source = my-logs-dataset
```

Para limitar el número de resultados, usa el `head` comando:

```
source = my-logs-dataset | head 20
```

### Filtrar con WHERE
<a name="observability-logs-where-clause"></a>

Utilice la `where` cláusula para filtrar los eventos del registro en función de los valores de los campos:

```
source = my-logs-dataset | where severity_text = 'ERROR'
```

Puede combinar varias condiciones:

```
source = my-logs-dataset |
    where severity_text = 'ERROR' and service_name = 'payment-service'
```

### Gestión de consultas
<a name="observability-logs-manage-queries"></a>

Puede guardar las consultas de uso frecuente para volver a utilizarlas. Para guardar una consulta, seleccione **Guardar** en la barra de herramientas del editor de consultas e introduzca un nombre para la consulta. Para cargar una consulta guardada, elija **Abrir** y seleccione la consulta de la lista.

Para ver la lista completa de comandos y funciones de PPL, consulte la referencia sobre el [lenguaje de procesamiento canalizado](https://observability.opensearch.org/docs/ppl/).

## Creación de visualizaciones a partir de registros
<a name="observability-logs-visualizations"></a>

Puede crear visualizaciones directamente a partir de los resultados de sus consultas de PPL. Utilice el `stats` comando para agregar datos para su visualización:

```
source = my-logs-dataset |
    stats count() as error_count by service_name, span(timestamp, 1h)
```

Tras ejecutar una `stats` consulta, seleccione la pestaña **Visualización** para ver los resultados en forma de gráfico.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/discover-logs/discover-logs-visualization.png)


### Tipos de visualización
<a name="observability-logs-viz-types"></a>

En la siguiente tabla se describen los tipos de visualización que puede utilizar.


| Tipo | Description (Descripción) | 
| --- | --- | 
| Línea | Muestra los puntos de datos conectados por líneas, lo que resulta útil para mostrar las tendencias a lo largo del tiempo. | 
| Área | Es similar a un gráfico de líneas con el área debajo de la línea rellenada, lo que resulta útil para mostrar el volumen a lo largo del tiempo. | 
| Barras | Muestra los datos como barras verticales u horizontales, lo que resulta útil para comparar valores entre categorías. | 
| Métrica | Muestra un único valor numérico, útil para mostrar los indicadores clave de rendimiento. | 
| Línea temporal de estado | Muestra los cambios de estado a lo largo del tiempo en forma de bandas de colores, lo que resulta útil para supervisar las transiciones de estado. | 
| Mapa de calor | Muestra los datos como una matriz de celdas coloreadas, útil para mostrar la densidad y los patrones. | 
| Indicador de barras | Muestra un único valor como una barra rellena dentro de un rango, lo que resulta útil para mostrar el progreso hacia un umbral. | 
| Circular | Muestra los datos como secciones proporcionales de un círculo, lo que resulta útil para mostrar la composición. | 

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/discover-logs/discover-logs-viz-types.png)


### Ajustes de visualización
<a name="observability-logs-viz-settings"></a>

Cuando la pestaña **Visualización** está activa, aparece un panel de ajustes en la parte derecha de la pantalla. Utilice este panel para configurar el tipo de gráfico, asignar campos a ejes y personalizar estilos visuales como colores y leyendas.

Para cambiar los ejes de una visualización, utilice la configuración de ejes del panel de ajustes.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/discover-logs/discover-logs-switch-axes.png)


## Añadir visualizaciones a los paneles
<a name="observability-logs-add-to-dashboard"></a>

Después de crear una visualización, puede añadirla a un panel para una supervisión continua. Elija **Guardar en un panel** en la barra de herramientas de visualización y, a continuación, seleccione un panel existente o cree uno nuevo. La visualización se guarda con su consulta PPL subyacente para que se actualice automáticamente al abrir el panel.

# Descubre Traces
<a name="observability-analyze-traces"></a>

La página Discover Traces proporciona una interfaz dedicada para explorar los datos de rastreo distribuidos en su espacio de trabajo de observabilidad del OpenSearch Servicio. Puede ver las métricas de RED (tasa, tasa de errores, duración) de sus servicios, examinar los intervalos de rastreo con filtros facetados y analizar en detalle los intervalos y trazos individuales para diagnosticar problemas de rendimiento. La página también permite correlacionar los rastreos con los datos de registro relacionados.

## Para acceder a la página de trazas
<a name="observability-traces-access"></a>

En tu espacio de trabajo de observabilidad, expande **Descubrir** en el panel de navegación de la izquierda y selecciona **Rastros**.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/discover-traces/discover-traces.png)


## Configuración de conjuntos de datos de rastreo
<a name="observability-traces-configure-datasets"></a>

Antes de poder explorar los datos de rastreo, debe configurar un conjunto de datos de rastreo. Puede crear un conjunto de datos de forma automática o manual.

### Creación automática de conjuntos de datos
<a name="observability-traces-auto-create"></a>

Cuando accedes a la página Discover Traces por primera vez y existen datos de rastreo en tu dominio, la página te pide que crees un conjunto de datos automáticamente. Selecciona **Crear conjunto de datos** para aceptar la configuración predeterminada.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/discover-traces/trace-auto-create.png)


### Creación manual de conjuntos de datos
<a name="observability-traces-manual-create"></a>

Para crear manualmente un conjunto de datos de trazas, sigue los pasos que se indican[Para crear un conjunto de datos de trazas](observability-datasets.md#observability-datasets-create-traces). La creación manual le permite controlar el patrón de índice, el campo de marca de tiempo y el nombre del conjunto de datos.

## Exploración de datos de rastreo
<a name="observability-traces-explore"></a>

La página Discover Traces proporciona los siguientes componentes para explorar los datos de rastreo.
+ **Métricas RED**: visualiza la tasa (solicitudes por segundo), la tasa de errores (porcentaje de solicitudes fallidas) y la duración (percentiles de latencia) del conjunto de datos seleccionado. Estas métricas se actualizan en función del filtro de tiempo.
+ **Campos facetados**: filtra los tramos de seguimiento por nombre de servicio, operación, código de estado y otros atributos de intervalo. Seleccione valores en el panel de campos facetados para restringir los resultados.
+ **Tabla de tramos**: explore los tramos individuales con columnas para ver el ID de rastreo, el ID del tramo, el nombre del servicio, la operación, la duración y el estado. Puede ordenar por cualquier columna y expandir las filas para ver los detalles del intervalo.

## Ver un intervalo específico
<a name="observability-traces-view-span"></a>

Para ver los detalles de un intervalo específico, elija la fila del intervalo en la tabla de intervalos. Se abre un panel desplegable con los atributos del tramo, los atributos de los recursos y la información del evento.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/discover-traces/trace-details-flyout.png)


## Página de detalles del rastreo
<a name="observability-traces-detail-page"></a>

Para ver el rastreo completo, elija el enlace del identificador del rastreo en la tabla de extensiones o en el panel desplegable. La página de detalles del rastreo muestra un gráfico en cascada que muestra todos los intervalos del rastreo, sus relaciones temporales y la duración total del rastreo. Puede ampliar los intervalos individuales para ver sus atributos e identificar los cuellos de botella.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/discover-traces/trace-detail-page.png)


## Correlacionar las trazas con los registros
<a name="observability-traces-correlate-logs"></a>

Al configurar una correlación entre un conjunto de datos de trazas y un conjunto de datos de registros, puede ver las entradas de registro relacionadas directamente desde la página Descubrir trazas. Para obtener información sobre la creación de correlaciones, consulte[Correlaciones](observability-correlations.md).

### Visualización de registros relacionados
<a name="observability-traces-related-logs"></a>

En el menú desplegable de detalles del tramo o en la página de detalles del rastreo, seleccione la pestaña **Registros relacionados** para ver las entradas de registro que coincidan con el identificador de rastreo, el nombre del servicio y el intervalo de tiempo del tramo. Esta correlación le ayuda a comprender lo que ocurrió en su aplicación durante la ejecución del intervalo.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/discover-traces/related-logs.png)


### Redirección de registros con contexto
<a name="observability-traces-log-redirection"></a>

Puede navegar desde un intervalo de seguimiento directamente a la página Descubrir registros conservando el contexto correspondiente. Seleccione **Ver los registros en** el panel de registros relacionados para abrir la página Descubrir registros con la consulta rellenada previamente para filtrar por el identificador de seguimiento y el intervalo de tiempo del intervalo de tiempo.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/discover-traces/logs-redirection.png)


## Consulta de rastreos mediante PPL
<a name="observability-traces-querying"></a>

Puede usar PPL para consultar los datos de rastreo directamente. PPL encadena los comandos utilizando el carácter de barra vertical para filtrar, transformar y agregar datos de tramos.

En el siguiente ejemplo, se buscan las 10 trazas más lentas:

```
source = otel-v1-apm-span-*
| where durationInNanos > 5000000000
| fields traceId, serviceName, name, durationInNanos
| sort - durationInNanos
| head 10
```

El siguiente ejemplo cuenta los errores por servicio:

```
source = otel-v1-apm-span-*
| where status.code = 2
| stats count() as errorCount by serviceName
| sort - errorCount
```

En el siguiente ejemplo, se buscan trazas para un servicio específico:

```
source = otel-v1-apm-span-*
| where serviceName = 'checkout-service'
| where parentSpanId = ''
| sort - startTime
| head 20
```

# Métricas
<a name="observability-metrics"></a>

La página Discover Metrics de la OpenSearch interfaz de usuario proporciona una interfaz dedicada para descubrir, consultar y visualizar datos métricos de series temporales. Esta página está optimizada para trabajar con las métricas de Prometheus mediante ProMQL.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/dashboards/prometheus.png)


La página Descubra las métricas está disponible en los espacios de trabajo de Observability. **Para acceder a ella, dirígete a un espacio de trabajo de Observability, expande **Discover** en la barra de navegación de la izquierda y selecciona Metrics.**

## Configuración de una fuente de datos de Prometheus
<a name="observability-metrics-data-source"></a>

Antes de empezar, configure una fuente de datos de Prometheus mediante uno de los métodos siguientes:
+ [Creación de una fuente de datos de Amazon Managed Service para Prometheus](direct-query-prometheus-creating.md)en la consola de administración AWS 
+ [AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/opensearch/add-direct-query-data-source.html)

## Panel de consultas
<a name="observability-metrics-query"></a>

Puedes escribir y ejecutar consultas de métricas en el panel de consultas situado en la parte superior de la página Descubre métricas. El editor de consultas proporciona sugerencias para completar automáticamente y resaltar la sintaxis de ProMQL.

**Redacción de consultas**  
Escribe consultas con la sintaxis de ProMQL. Por ejemplo:

```
up{job="prometheus"}
```

**Ejecución de consultas**  
**Para ejecutar una consulta, introdúzcala en el editor de consultas y selecciona Actualizar.**

Puede ejecutar varias consultas de ProMQL juntas separándolas con punto y coma (): `;`

```
up{job="prometheus"};
node_cpu_seconds_total{mode="idle"};
```

Cada consulta se ejecuta de forma independiente y los resultados se combinan en el resultado.

## Filtro de tiempo
<a name="observability-metrics-time-filter"></a>

Usa el filtro de tiempo para especificar el rango de tiempo de tus datos métricos:
+ **Selección rápida**: elija un intervalo de tiempo relativo (por ejemplo, los últimos 15 minutos o la última hora).
+ De **uso frecuente**: seleccione uno de los rangos de tiempo predefinidos.
+ **Personalizado**: especifique las horas absolutas de inicio y finalización.
+ **Actualización automática**: establece un intervalo de actualización automática.

## Ver los resultados
<a name="observability-metrics-results"></a>

Tras ejecutar una consulta, los resultados se muestran en una interfaz con pestañas:
+ **Métricas**: muestra el punto de datos más reciente de cada serie en formato de tabla.
+ **Sin procesar**: muestra el punto de datos más reciente de cada serie en formato JSON sin procesar devuelto por la fuente de datos.
+ **Visualización**: proporciona gráficos interactivos para sus datos métricos.

## Configuración de visualizaciones
<a name="observability-metrics-visualizations"></a>

Cuando se selecciona la pestaña **Visualización**, aparece un panel de ajustes en el lado derecho de la pantalla. Utilice este panel para:
+ **Seleccione un tipo de gráfico**: elija entre visualizaciones de líneas, barras, circulares, indicadores o tablas.
+ **Ejes del mapa**: asigne campos a los ejes X e Y.
+ **Personalice los estilos**: ajuste los colores, las leyendas, las líneas de cuadrícula y otras opciones visuales.

Al modificar la configuración, la visualización se actualiza automáticamente.

# Correlaciones
<a name="observability-correlations"></a>

Las correlaciones vinculan un conjunto de datos de trazas a un conjunto de datos de registros para que pueda ver las entradas de registro relacionadas al investigar los intervalos de trazas. Al definir una correlación, habilitas la página Descubre rastros para mostrar los registros que se produjeron durante la ejecución de un intervalo, lo que te ayudará a diagnosticar los problemas más rápidamente sin tener que cambiar de página.

## Requisitos de correlación
<a name="observability-correlations-requirements"></a>

Para crear una correlación, los datos de registro y rastreo deben contener campos coincidentes. En la siguiente tabla se describen los campos que utiliza la correlación para unir los datos de rastreo y registro.


| Campo | Description (Descripción) | Obligatorio | 
| --- | --- | --- | 
| ID de rastreo | El identificador único del rastreo. Debe existir tanto en el índice de espacio de rastreo como en el índice de registro. | Sí | 
| ID de intervalo | El identificador único del tramo. Se utiliza para hacer coincidir los registros con un intervalo específico dentro de una traza. | No | 
| Nombre del servicio | El nombre del servicio que generó la telemetría. Se utiliza para filtrar los registros relacionados por servicio. | No | 
| Timestamp | El campo de tiempo que se utiliza para limitar los registros relacionados al rango de tiempo del intervalo. | Sí | 

## Para crear una trace-to-logs correlación
<a name="observability-correlations-create"></a>

Complete los siguientes pasos para crear una correlación entre un conjunto de datos de trazas y un conjunto de datos de registros.

1. En su espacio de trabajo de observabilidad, expanda **Discover** en la barra de navegación de la izquierda y elija **Traces**.

1. Seleccione el conjunto de datos de trazas que desee correlacionar.

1. Elija la pestaña **Correlaciones** en el panel de configuración del conjunto de datos.  
![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/datasets/correlations-trace-dataset-tab.png)

1. Elija **Crear correlación**.

1. En el cuadro de diálogo de configuración, seleccione el conjunto de datos de registros de destino y mapee los campos de correlación necesarios (ID de rastreo y marca de tiempo). Si lo desea, asigne el identificador del tramo y el nombre del servicio para obtener una coincidencia más precisa.  
![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/datasets/correlations-configure-dialog.png)

1. Seleccione **Crear** para guardar la correlación.

1. Compruebe que la correlación aparece en la tabla de correlaciones.  
![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/datasets/correlations-created-table.png)

## Visualización de las correlaciones en los conjuntos de datos de registros
<a name="observability-correlations-view-logs"></a>

Después de crear una correlación, también puede verla desde el lado del conjunto de datos de registros. Vaya a la página Descubrir registros, seleccione el conjunto de datos de registros correlacionados y elija la pestaña **Correlaciones** para ver el conjunto de datos de rastreos enlazados.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/datasets/correlations-logs-dataset-tab.png)


## Uso de correlaciones en la página Traces
<a name="observability-correlations-use-traces"></a>

Cuando existe una correlación, la página Detectar trazas muestra los registros relacionados en la vista de detalles del intervalo. Seleccione un intervalo en la tabla de intervalos para abrir el menú desplegable de detalles y, a continuación, seleccione la pestaña **Registros relacionados** para ver las entradas de registro correlacionadas.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/datasets/correlations-span-details-logs.png)


## Administrar las correlaciones
<a name="observability-correlations-manage"></a>

Puede editar o eliminar las correlaciones desde la pestaña **Correlaciones** del conjunto de datos de trazas o registros.
+ **Edición**: elija la correlación en la tabla y elija **Editar** para actualizar las asignaciones de campos o el conjunto de datos de destino.
+ **Eliminar**: elija la correlación en la tabla y elija **Eliminar para eliminar** la correlación. Al eliminar una correlación no se elimina ningún dato.

# Paneles
<a name="observability-dashboards"></a>

Los paneles combinan visualizaciones de registros, seguimientos y métricas en una sola vista. Puede usar los paneles de control para monitorear el estado operativo, responder a los incidentes y realizar un seguimiento del uso de los recursos en todo su sistema distribuido.

En la siguiente tabla se describen los casos de uso más comunes de los paneles.


| Caso de uso | Ejemplo | 
| --- | --- | 
| Supervisión operativa | Realice un seguimiento del estado del servicio, el rendimiento y las tasas de error en tiempo real. | 
| Respuesta a incidentes | Correlaciona los registros, las trazas y las métricas durante un incidente activo. | 
| Planificación de la capacidad | Supervise las tendencias de utilización de los recursos para planificar el escalamiento. | 
| Seguimiento de la disponibilidad | Mida el tiempo de actividad y la disponibilidad en comparación con los objetivos de nivel de servicio. | 
| Revisión posterior al incidente | Analice los datos históricos para comprender la causa raíz de los incidentes pasados. | 

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/otel-dashboard.png)


## Estructura del panel
<a name="observability-dashboards-structure"></a>

Un cuadro de mandos es un conjunto de paneles dispuestos en una cuadrícula. Cada panel consta de los siguientes componentes.
+ **Fuente de datos**: el OpenSearch índice o la fuente de datos de Amazon Managed Service for Prometheus que consulta el panel.
+ **Consulta: consulta** de PPL o ProMQL que recupera los datos del panel.
+ **Tipo de visualización**: el tipo de gráfico utilizado para representar los resultados de la consulta, como una línea, una barra o un valor métrico.
+ **Configuración opcional**: ejes, leyendas, umbrales y opciones de formato.

El selector de intervalos de tiempo situado en la parte superior del panel de control se aplica a todos los paneles. Puede anular el intervalo de tiempo de los paneles individuales cuando sea necesario.

## Creación de cuadros de mando a partir de Discover
<a name="observability-dashboards-discover"></a>

El flujo de trabajo recomendado para crear paneles comienza en Discover. Este flujo de trabajo es coherente en todos los registros, seguimientos y métricas.

1. **Consulte sus datos en Discover**: navegue hasta Discover Logs, Discover Traces o Discover Metrics y escriba una consulta con PPL (para registros y rastreos) o ProMQL (para métricas).

1. **Cree una visualización**: cuando la consulta arroje resultados, utilice la pestaña de visualización para elegir un tipo de gráfico y configurar la visualización. En el caso de las consultas de registro y rastreo, los comandos de agregación, como los siguientes, cambian `stats` automáticamente a la vista de visualización.

1. **Guardar en un panel**: elija **Agregar al panel** para guardar la visualización en un panel nuevo o existente. El panel permanece activo y se actualiza a medida que llegan nuevos datos.

1. **Repetir**: repita el proceso para cada pregunta que desee que responda el panel. Cuando algo parezca incorrecto en un panel, selecciona cualquier panel para abrir la consulta subyacente en Discover y poder investigarla más a fondo.

**importante**  
Las visualizaciones creadas a través de la página de **visualizaciones** de la OpenSearch interfaz de usuario utilizan DQL (lenguaje de consulta de paneles) y DSL (lenguaje específico de dominio), que no admiten el lenguaje de procesamiento canalizado (PPL) en este momento. Para crear visualizaciones basadas en PPL, utilice el flujo de trabajo Discover descrito anteriormente.

## Filtros del panel
<a name="observability-dashboards-filters"></a>

Los filtros le permiten restringir los datos que se muestran en todos los paneles de un panel sin editar consultas individuales.

**Para añadir un filtro**

1. Abra el panel que desee filtrar.

1. Seleccione **Añadir filtro** en la barra de filtros.

1. Seleccione un nombre de campo de la lista desplegable.

1. Seleccione un operador e introduzca un valor.

1. Seleccione **Save**.

En la siguiente tabla se describen los casos de uso más comunes de los filtros.


| Escenario | Campo | Operador | Valor | 
| --- | --- | --- | --- | 
| Vea un entorno único | environment | is | production | 
| Aislar los errores | status\$1code | is greater than or equal to | 400 | 
| Céntrese en un servicio específico | service.name | is | order-service | 
| Excluya los controles de salud | http.url | is not | /health | 

Filtros **bloqueados en comparación con filtros no anclados: los filtros** bloqueados persisten cuando navegas por los paneles. Un filtro sin fijar se aplica solo al panel actual. Para fijar un filtro, selecciona el icono de marcador situado junto a la insignia del filtro.

## Creación de paneles de control
<a name="observability-dashboards-build"></a>

### Tipos de visualización
<a name="observability-dashboards-build-viz-types"></a>

En la siguiente tabla se describen los tipos de visualización disponibles para los paneles de mandos.


| Tipo | Caso de uso | 
| --- | --- | 
| Línea | Tendencias a lo largo del tiempo, como las tasas de solicitudes o la latencia | 
| Área | Volumen a lo largo del tiempo con desgloses apilados | 
| Barras | Comparación de valores entre categorías | 
| Barra horizontal | Comparaciones clasificadas, como los principales servicios, por recuento de errores | 
| Tabla de datos | Datos tabulares con clasificación y paginación | 
| Valor de la métrica | Indicadores clave de rendimiento únicos, como el total de solicitudes | 
| Calibre | Progresar hacia un umbral, como la utilización de la CPU | 
| Circular | Composición y proporciones, como el tráfico por región | 
| Mapa térmico | Patrones de densidad y distribución en dos dimensiones | 
| Nube de etiquetas | Frecuencia relativa de los términos, como los mensajes de error más comunes | 

### Configuración de paneles
<a name="observability-dashboards-build-configure"></a>

Cada panel tiene un editor de consultas en el que se escriben consultas PPL o ProMQL. Los siguientes ejemplos muestran las consultas de panel más comunes.

Recuento de errores por servicio (PPL):

```
source = logs-dataset |
    where severity_text = 'ERROR' |
    stats count() as error_count by service_name, span(timestamp, 5m)
```

Tasa de utilización de la CPU (ProMQL):

```
rate(container_cpu_usage_seconds_total{namespace="production"}[5m])
```

También puede configurar las siguientes opciones del panel.
+ **Ejes**: defina las etiquetas de los ejes, las escalas (lineales o logarítmicas) y los rangos de valores.
+ **Leyendas**: controla la posición de la leyenda y las series que se van a mostrar.
+ **Umbrales**: añada líneas de umbral horizontales para resaltar los niveles críticos o de advertencia.

### Consejos de diseño
<a name="observability-dashboards-build-layout"></a>

Utilice los siguientes consejos para organizar los paneles del cuadro de mandos de forma eficaz.
+ Coloca paneles de resumen de alto nivel (valores métricos, indicadores) en la parte superior del panel.
+ Agrupe los paneles relacionados, por ejemplo, todos los paneles de un solo servicio.
+ Utilice anchuras uniformes para los paneles de la misma fila.
+ Arrastre los bordes de los paneles para cambiar su tamaño y arrastre los encabezados de los paneles para cambiarlos de posición.

### Diseños recomendados
<a name="observability-dashboards-build-recommended"></a>

En las tablas siguientes se describen los diseños de panel recomendados para los tipos de paneles más comunes.

**Panel de estado del servicio**


| Panel | Tipo de visualización | 
| --- | --- | 
| Velocidad de solicitudes | Línea | 
| Tasa de errores | Línea | 
| Latencia P99 | Línea | 
| Alertas activas | Valor de la métrica | 
| Principales errores por servicio | Barra horizontal | 

**Panel de respuesta a incidentes**


| Panel | Tipo de visualización | 
| --- | --- | 
| Registros de errores | Tabla de datos | 
| Recuento de errores a lo largo del tiempo | Área | 
| Servicios afectados | Circular | 
| PICOS DE LATENCIA | Línea | 

**Panel de utilización de recursos**


| Panel | Tipo de visualización | 
| --- | --- | 
| Utilización de la CPU | Calibre | 
| Uso de memoria a lo largo del tiempo | Área | 
| E/S de disco | Línea | 
| Network throughput | Línea | 

### Controles de intervalo de tiempo
<a name="observability-dashboards-build-time-range"></a>

El selector de intervalos de tiempo situado en la parte superior del panel controla la ventana de tiempo de todos los paneles. Puede seleccionar un rango preestablecido (como **Últimos 15 minutos** o **Últimas 24 horas**) o especificar un rango absoluto personalizado.

Para habilitar la actualización automática, selecciona el menú desplegable de intervalos de actualización junto al selector de rango de tiempo y selecciona un intervalo. La actualización automática vuelve a ejecutar todas las consultas del panel en el intervalo especificado para que el panel muestre los datos más recientes.

## Uso compartido de paneles
<a name="observability-dashboards-sharing"></a>

Puede compartir los paneles con otros usuarios de su organización mediante instantáneas URLs y exportaciones.

### Comparta a través de una URL
<a name="observability-dashboards-sharing-url"></a>

Copia la URL del panel de control de la barra de direcciones del navegador y compártela directamente. La URL conserva el intervalo de tiempo actual y los filtros. Puede incluir enlaces a los paneles de control en marcadores, manuales o documentación de respuesta a incidentes.

### Snapshots
<a name="observability-dashboards-sharing-snapshots"></a>

Una instantánea captura el estado actual de un panel, incluidos todos los datos del panel, en un momento específico. Las instantáneas son de solo lectura y no se actualizan cuando cambian los datos subyacentes. Utilice las instantáneas para conservar un registro del estado del panel de control durante los incidentes o las revisiones.

### Importa y exporta definiciones
<a name="observability-dashboards-sharing-import-export"></a>

Puede exportar una definición de panel como JSON e importarla a otro espacio de trabajo o entorno. Este enfoque es útil para promover los paneles desde el desarrollo hasta la producción o para compartir diseños estándar entre los equipos.

### Mejores prácticas para compartir
<a name="observability-dashboards-sharing-best-practices"></a>
+ **Público**: diseñe paneles de control para un público específico, como ingenieros de guardia o directivos.
+ **Enfoque**: limite cada panel a un único propósito o flujo de trabajo.
+ **Convenciones**: utilice convenciones de nomenclatura coherentes para los tableros y paneles de toda la organización.
+ **Control de versiones**: exporte las definiciones de JSON del panel de control y guárdelas en el control de versiones para realizar un seguimiento de los cambios a lo largo del tiempo.

## Solución de problemas de paneles de control
<a name="observability-dashboards-troubleshooting"></a>

En esta sección, se describen los problemas más comunes del panel de control y cómo resolverlos.

### No hay datos en un panel
<a name="observability-dashboards-troubleshooting-no-data"></a>

Si un panel no muestra datos, compruebe las siguientes causas comunes.


| Causa | Check | Fix | 
| --- | --- | --- | 
| El intervalo de tiempo es demasiado estrecho | Compruebe que el intervalo de tiempo del panel cubra el período en el que se ingirieron los datos. | Amplíe el intervalo de tiempo o seleccione Últimas 24 horas. | 
| Filtro activo sin incluir datos | Revise la barra de filtros para ver si hay filtros que puedan excluir todos los documentos coincidentes. | Elimine o ajuste el filtro y, a continuación, compruebe que aparecen los datos. | 
| Patrón de índice incorrecto | Confirme que la fuente de datos del panel apunta a un índice que contiene datos. | Actualice la fuente de datos al patrón de índice correcto en el editor del panel. | 
| Error de sintaxis de consulta | Busque los mensajes de error en el encabezado del panel o en el editor de consultas. | Corrija la sintaxis de PPL o ProMQL y vuelva a ejecutar la consulta. | 

### Datos incorrectos en un panel
<a name="observability-dashboards-troubleshooting-wrong-data"></a>

Si un panel muestra resultados inesperados, prueba los siguientes pasos.
+ Compruebe que la consulta devuelve los campos esperados ejecutándola primero en Discover.
+ Compruebe que el tipo de visualización coincide con la forma de los datos (por ejemplo, utilice un gráfico de líneas para los datos de series temporales).
+ Confirme que se ha seleccionado la fuente de datos correcta en el editor del panel.

### Datos obsoletos
<a name="observability-dashboards-troubleshooting-stale-data"></a>

Si los paneles del panel de mandos muestran información desactualizada, intente los siguientes pasos.
+ Seleccione el icono de actualización de la barra de herramientas para actualizar manualmente todos los paneles.
+ Compruebe que la actualización automática esté habilitada y configurada en un intervalo adecuado.
+ Confirme que su canalización de ingestión esté enviando datos de forma activa a los índices configurados.

### Problemas de rendimiento
<a name="observability-dashboards-troubleshooting-performance"></a>

Los siguientes consejos pueden ayudarte a resolver los problemas de rendimiento más comunes.
+ **Panel de control lento**: reduzca la cantidad de paneles o reduzca el intervalo de tiempo. Los paneles con muchos paneles ejecutan varias consultas simultáneamente, lo que puede aumentar los tiempos de carga.
+ **Panel lento**: simplifique la consulta del panel. Evite el uso de patrones comodín en `where` las cláusulas PPL y limite el número de grupos de agregación.
+ Retraso **del navegador**: reduzca la densidad de datos en las visualizaciones. Por ejemplo, aumente el intervalo de tiempo en `stats` los comandos para producir menos puntos de datos.

### Problemas con el filtro
<a name="observability-dashboards-troubleshooting-filters"></a>

Si los filtros no se comportan como se esperaba, prueba los siguientes pasos.
+ Compruebe que el nombre del campo del filtro coincide con el nombre del campo de la asignación de índices.
+ Compruebe si un filtro anclado desde otro panel afecta a los resultados.
+ Elimine todos los filtros y vuelva a añadirlos de uno en uno para aislar el problema.

### Inspección de un panel
<a name="observability-dashboards-troubleshooting-inspect"></a>

El inspector del panel le ayuda a depurar problemas de datos y consultas. Para abrir el inspector, elija el menú del panel (tres puntos) y seleccione **Inspeccionar**. El inspector proporciona las siguientes pestañas.
+ **Datos**: muestra los datos sin procesar devueltos por la consulta en formato tabular.
+ **Solicitud**: muestra la consulta enviada a la fuente de datos, incluida la declaración PPL o ProMQL completa.
+ **Respuesta**: muestra la respuesta sin procesar de la fuente de datos, incluida la información de tiempo y estado.

### Herramientas para desarrolladores de navegadores
<a name="observability-dashboards-troubleshooting-browser"></a>

Para solucionar problemas avanzados, utilice las herramientas de desarrollador de su navegador para inspeccionar las solicitudes de red. Abre la pestaña **Red**, filtra las llamadas a la API y busca solicitudes fallidas o respuestas lentas. Comprueba el cuerpo de la respuesta para ver si hay mensajes de error que puedan ayudarte a identificar la causa raíz.

# Supervisión de aplicaciones
<a name="observability-app-monitoring"></a>

La supervisión de las aplicaciones proporciona una visión en tiempo real del rendimiento de sus servicios. Combina los datos de topología almacenados OpenSearch con métricas RED de series temporales (tasa, errores y duración) de Amazon Managed Service for Prometheus para mostrar información sobre el estado, la latencia, el rendimiento y los errores en todo el sistema distribuido.

****Para acceder a la supervisión de aplicaciones, en la OpenSearch interfaz de usuario, vaya a Observabilidad > Supervisión de aplicaciones.**** La barra lateral muestra dos vistas:
+ **Mapa de aplicaciones**: gráfico topológico interactivo de las dependencias de los servicios
+ **Servicios**: catálogo de todos los servicios instrumentados con filtros, vistas detalladas y enlaces de correlación

## Requisitos previos
<a name="observability-app-monitoring-prereqs"></a>

Antes de poder utilizar la supervisión de aplicaciones, debe tener configurados los siguientes recursos.
+ [Los datos de rastreo OTLP fluyen desde sus OTel recopiladores hasta OpenSearch Ingestion](observability-ingestion.md) (las métricas y los registros son opcionales)
+ [Amazon Managed Service para Prometheus está configurado para recibir escritura remota desde Ingestion OpenSearch ](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/configure-client-prometheus.html)
+ Un espacio de trabajo de OpenSearch interfaz de usuario con la observabilidad habilitada

## Funcionamiento
<a name="observability-app-monitoring-how-it-works"></a>

El siguiente diagrama muestra la end-to-end arquitectura para la supervisión de aplicaciones.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/otel-sdk-service.png)


1. Sus aplicaciones e infraestructura emiten telemetría a través OpenTelemetry SDKs de la autoinstrumentación o la OTel API al recopilador. OTel

1. El OTel recopilador reenvía los datos de rastreo a Ingestion a través de OTLP. OpenSearch 

1. El `otel_apm_service_map` procesador de OpenSearch ingestión extrae service-to-service las relaciones y calcula las métricas de RED.

1. La topología y los datos de rastreo sin procesar se indexan en. OpenSearch Las métricas RED se exportan a Amazon Managed Service para Prometheus mediante escritura remota.

1. OpenSearch La interfaz de usuario consulta ambas tiendas para mostrar el mapa de aplicaciones, el catálogo de servicios y las vistas detalladas de los servicios.

## Services
<a name="observability-app-services"></a>

La vista de servicios proporciona un catálogo centralizado de todos los servicios instrumentados y muestra las métricas RED (tasa, errores y duración) de un vistazo. Puede utilizar esta vista para identificar rápidamente los servicios insalubres y profundizar en las vistas detalladas para realizar un análisis más profundo.

**Para acceder a la vista de servicios, navegue hasta el espacio de trabajo de observabilidad en la OpenSearch interfaz de usuario y seleccione **APM** > Servicios.**

La página de inicio de los servicios muestra una tabla de todos los servicios instrumentados junto con paneles de resumen. La siguiente imagen muestra la página de inicio de los servicios.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/apm/services-home.png)


En la siguiente tabla se describen las columnas de la tabla de servicios.


| Columna | Description (Descripción) | 
| --- | --- | 
| Nombre del servicio | El nombre del servicio instrumentado. | 
| Latencia P99 | El percentil 99 de latencia del servicio. | 
| Latencia P90 | El percentil 90 de latencia del servicio. | 
| Latencia P50 | El percentil 50 de latencia (mediana) del servicio. | 
| Número total de solicitudes | El número total de solicitudes procesadas durante el intervalo de tiempo seleccionado. | 
| Proporción de fallos | La relación entre las solicitudes fallidas y el total de solicitudes. | 
| Entorno | El entorno de implementación del servicio, como production ostaging. | 

La página de inicio también incluye los siguientes paneles de resumen:
+ **Principales servicios por tasa de errores**: servicios con el porcentaje más alto de respuestas de 5 veces.
+ **Principales rutas de dependencia por tasa de fallas**: rutas de Service-to-service dependencia con las tasas de fallas más altas.

Puede filtrar la tabla de servicios mediante los siguientes filtros:
+ **Entorno**: filtre por entorno de implementación.
+ **Latencia**: filtra por rango de latencia.
+ **Rendimiento**: filtre por rango de rendimiento de la solicitud.
+ **Tasa de fallas**: filtre por rango de tasa de fallas.

### Información general del servicio
<a name="observability-app-services-overview"></a>

Para abrir la vista de detalles del servicio, seleccione un nombre de servicio en la tabla de servicios. La pestaña Descripción general muestra cuadros de métricas y gráficos de series temporales para el servicio seleccionado.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/apm/services-overview.png)


La pestaña Descripción general incluye los siguientes gráficos de series temporales:
+ **Latencia por dependencias del servicio: la latencia** de P50, P90 y P99 desglosada por dependencias descendentes.
+ **Solicitudes por operaciones**: volumen de solicitudes para cada operación del servicio.
+ **Disponibilidad por operaciones**: porcentaje de respuestas satisfactorias para cada operación.
+ **Tasa de errores y errores por operación**: porcentaje de respuestas de 5 y 4 veces por operación.

### Operaciones
<a name="observability-app-services-operations"></a>

La pestaña Operaciones proporciona un desglose por operación del servicio seleccionado. Puede ordenar la tabla por cualquier columna para identificar las operaciones problemáticas.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/apm/service-operations.png)


En la siguiente tabla se describen las columnas de la tabla de operaciones.


| Columna | Description (Descripción) | 
| --- | --- | 
| Nombre de operación | El nombre de la operación. | 
| Latencia P50/P90/P99 | La latencia de los percentiles 50, 90 y 99 de la operación. | 
| Número total de solicitudes | El número total de solicitudes de la operación durante el intervalo de tiempo seleccionado. | 
| Tasa de errores | El porcentaje de solicitudes que devolvieron errores. | 
| Disponibilidad. | El porcentaje de respuestas satisfactorias de la operación. | 

### Dependencias
<a name="observability-app-services-dependencies"></a>

La pestaña Dependencias muestra los servicios descendentes a los que llama el servicio seleccionado.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/apm/service-dependencies.png)


En la siguiente tabla se describen las columnas de la tabla de dependencias.


| Columna | Description (Descripción) | 
| --- | --- | 
| Servicio de dependencias | El nombre del servicio descendente. | 
| Funcionamiento remoto | La operación recurrió al servicio descendente. | 
| Operaciones de servicio | Las operaciones del servicio actual que llaman a esta dependencia. | 
| Latencia P99/P90/P50 | La latencia de los percentiles 99, 90 y 50 de la ruta de dependencia. | 
| Número total de solicitudes | El número total de solicitudes a la dependencia durante el intervalo de tiempo seleccionado. | 
| Tasa de errores | El porcentaje de solicitudes a la dependencia que devolvieron errores. | 
| Disponibilidad. | El porcentaje de respuestas satisfactorias de la dependencia. | 

### Correlaciones
<a name="observability-app-services-correlations"></a>

La vista de detalles del servicio proporciona correlaciones contextuales que le permiten navegar directamente desde las métricas del servicio hasta los registros y seguimientos relacionados. Puede utilizar las correlaciones para investigar la causa principal de los picos de latencia o los aumentos de la tasa de error.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/apm/service-span-correlations.png)


Están disponibles las siguientes opciones de correlación:
+ **Ver rastreos relacionados**: abre una vista de rastreo filtrada para el servicio o la operación seleccionados.
+ **Ver registros relacionados**: abre una vista de registro filtrada para el servicio o la operación seleccionados.
+ **Filtrar por atributos**: reduce los resultados de correlación por atributos de tramo específicos.

## Mapa de aplicaciones
<a name="observability-app-map"></a>

El mapa de aplicaciones es una visualización topológica interactiva que OpenSearch Ingestion genera automáticamente a partir de los datos de rastreo mediante el procesador. `otel_apm_service_map` El mapa muestra los servicios como nodos con bordes direccionales que muestran patrones de comunicación, superpuestos con métricas RED (tasa, errores y duración).

**Para acceder al mapa de aplicaciones, navegue hasta el espacio de trabajo de observabilidad en la OpenSearch interfaz de usuario y seleccione **APM** > Mapa de aplicaciones.**

La siguiente imagen muestra el mapa de la aplicación.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/apm/application-map.png)


El mapa muestra las siguientes métricas de RED para cada servicio:
+ **Tasa**: solicitudes por segundo procesadas por el servicio.
+ **Errores**: porcentaje de respuestas de 4 y 5 veces.
+ **Duración**: latencia de P50 y P99 para el servicio.

El `otel_apm_service_map` procesador genera estas métricas y las almacena en Amazon Managed Service for Prometheus mediante escritura remota.

La visualización de la topología representa los servicios como nodos y la dirección de la comunicación como bordes. El código de colores indica el estado de cada servicio. El mapa se actualiza automáticamente a medida que OpenSearch Ingestion ingiere nuevos datos de rastreo.

### Servicios de agrupamiento
<a name="observability-app-map-groupby"></a>

Puede agrupar los servicios por atributos, como el lenguaje de programación, el equipo o el entorno. Al seleccionar un atributo agrupado por, el mapa pasa de ser un gráfico de topología a una vista de cuadrícula de tarjetas. Cada tarjeta representa un grupo de servicios que comparten el mismo valor de atributo.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/apm/groupby-attributes.png)


Los atributos agrupados por disponibles vienen determinados por el `group_by_attributes` ajuste de la configuración del `otel_apm_service_map` procesador en Ingestion. OpenSearch 

### Visualización de los detalles del nodo
<a name="observability-app-map-node-details"></a>

Para ver los detalles de un servicio, selecciona un nodo en el mapa. Se abre un panel de detalles con las siguientes secciones.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/apm/application-map-node-details.png)


La sección **Salud** muestra las siguientes métricas resumidas:
+ Total Requests
+ Número total de errores: 4xx
+ Número total de errores: 5xx

La sección **Métricas** muestra los siguientes gráficos de series temporales:
+ Solicitudes
+ Latencia P50/P90/P99
+ Fallos: 5xx
+ Errores: 4xx

Seleccione **Ver detalles** para acceder a la vista de detalles de los servicios del servicio seleccionado.

### Filtrar el mapa
<a name="observability-app-map-filters"></a>

Puede filtrar el mapa de la aplicación mediante los siguientes filtros:
+ **Tasa de fallas**: filtre los servicios por tasa de fallas del lado del servidor (5xx).
+ **Tasa de errores**: filtra los servicios por tasa de error del lado del cliente (4xx).
+ **Entorno**: filtre los servicios por entorno de implementación.

La siguiente imagen muestra el mapa filtrado por tasa de error.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/apm/filter-by-error-rate.png)


### Correlaciones contextuales
<a name="observability-app-map-correlations"></a>

Puede navegar directamente desde la vista de topología hasta las trazas y registros relacionados. Desde cualquier nodo de servicio, están disponibles las siguientes opciones de correlación:
+ **Ver rastreos relacionados**: abre una vista de rastreo filtrada para el servicio seleccionado.
+ **Ver registros relacionados**: abre una vista de registro filtrada para el servicio seleccionado.

# Observabilidad de la IA
<a name="observability-ai"></a>

La observabilidad de la IA OpenSearch proporciona end-to-end herramientas para monitorear, depurar y optimizar los flujos de trabajo de los agentes de IA y los modelos de lenguaje de gran tamaño (LLM). Basado en las convenciones semánticas de GenAI e integrado de forma nativa con OpenTelemetry (OTel), le brinda una visibilidad total del comportamiento de sus aplicaciones de IA en producción.

La observabilidad de la IA incluye las siguientes capacidades:
+ Rastreo **de agentes: capture rastreos** jerárquicos de ejecución en los pasos de orquestación de los agentes, las llamadas de LLM, las invocaciones de herramientas y las operaciones de recuperación.
+ **Convenciones semánticas de GenAI**: utilice OTel atributos estandarizados como`gen_ai.system`, y para describir la telemetría específica de la IA. `gen_ai.request.model` `gen_ai.usage.input_tokens`
+ **Instrumentación automática**: capture automáticamente las trazas de los marcos y proveedores de IA más populares, como OpenAI, Anthropic, Amazon Bedrock y más de 20 bibliotecas LangChain adicionales.
+ Consultas **PPL: consulta** y agrega datos de rastreo mediante el lenguaje de procesamiento canalizado (PPL) directamente desde la interfaz de usuario. OpenSearch 

## Introducción
<a name="observability-ai-getting-started"></a>

En esta sección, se explica cómo instrumentar a un agente de IA, enviar las trazas a Amazon OpenSearch Service y visualizarlas en OpenSearch la interfaz de usuario.

### Para instalar el SDK
<a name="observability-ai-install-sdk"></a>

Instale el paquete de instrumentación OpenTelemetry GenAI:

```
pip install opentelemetry-instrumentation-openai-v2 opentelemetry-sdk opentelemetry-exporter-otlp
```

### Para instrumentar su código de agente
<a name="observability-ai-instrument"></a>

El siguiente ejemplo muestra cómo registrar el OTel SDK, anotar las funciones del agente con el `@observe` decorador y enriquecer los intervalos con los atributos de GenAI.

```
from opentelemetry import trace
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.trace.export import BatchSpanProcessor
from opentelemetry.exporter.otlp.proto.grpc.trace_exporter import OTLPSpanExporter

# Register the tracer provider
provider = TracerProvider()
processor = BatchSpanProcessor(
    OTLPSpanExporter(endpoint="<your-osis-endpoint>")  # Use your OpenSearch Ingestion endpoint with SigV4
)
provider.add_span_processor(processor)
trace.set_tracer_provider(provider)

tracer = trace.get_tracer(__name__)

# Decorate your agent function
@observe
def run_agent(prompt: str):
    with tracer.start_as_current_span("invoke_agent") as span:
        span.set_attribute("gen_ai.operation.name", "invoke_agent")
        span.set_attribute("gen_ai.system", "openai")
        span.set_attribute("gen_ai.request.model", "gpt-4")

        # Enrich with token usage after the LLM call
        response = call_llm(prompt)
        span.set_attribute("gen_ai.usage.input_tokens", response.input_tokens)
        span.set_attribute("gen_ai.usage.output_tokens", response.output_tokens)
        return response
```

**nota**  
Cuando envíes seguimientos a Amazon OpenSearch Service, usa el punto final de tu canalización de OpenSearch ingestión con autenticación SigV4 en lugar de un punto final de host local. Para obtener más información sobre la configuración de las canalizaciones de OpenSearch ingestión, consulte. [Información general sobre Amazon OpenSearch Ingestion](ingestion.md)

### Para ver los rastros en la interfaz de usuario OpenSearch
<a name="observability-ai-view-traces"></a>

Una vez que la aplicación instrumentada envíe los datos de rastreo, podrá explorarlos en la OpenSearch interfaz de usuario. En su espacio de trabajo de observabilidad, expanda **Discover** en la barra de navegación izquierda y elija **Agent** Traces.

## Interfaz de usuario de rastreo de agentes
<a name="observability-ai-agent-tracing"></a>

La página Agent Traces de la OpenSearch interfaz de usuario proporciona una interfaz especialmente diseñada para explorar, depurar y monitorear los rastreos de ejecución de los agentes de LLM. Ofrece a los desarrolladores y operadores de plataformas una capacidad total de observación de las aplicaciones de inteligencia artificial de los agentes, incluidas vistas de trazas jerárquicas, listas desplegables de detalles, visualizaciones de flujos y métricas agregadas.

### Arquitectura
<a name="observability-ai-architecture"></a>

El siguiente diagrama muestra el flujo de datos desde las aplicaciones instrumentadas a la interfaz de usuario de Agent Traces:

```
LLM Application (with OTel SDK + GenAI instrumentation)
    |
    |  OTLP (gRPC/HTTP)
    v
OTel Collector (batch, transform)
    |
    +---- OTLP ----> OpenSearch Ingestion --> OpenSearch (otel-v1-apm-span-*)
    |
    +---- Prometheus Remote Write --> Prometheus (metrics)
                                          |
                                          v
                              OpenSearch UI
                              +-- Agent Traces Plugin
```

### Requisitos previos
<a name="observability-ai-prereqs"></a>

Antes de usar Agent Traces, asegúrese de tener lo siguiente:
+ Un OpenSearch clúster con datos de rastreo indexados en `otel-v1-apm-span-*` índices.
+ OpenTelemetry instrumentación con convenciones semánticas GenAI habilitadas en su aplicación LLM.
+ OpenSearch La ingestión está configurada con el `otel_trace_raw` procesador en el que se van a introducir los intervalos. OpenSearch
+ La compatibilidad con consultas PPL está habilitada en la interfaz de usuario. OpenSearch 

### Atributos de intervalo obligatorios
<a name="observability-ai-span-attributes"></a>

Agent Traces requiere atributos de intervalo específicos para representar los datos de rastreo correctamente. Las siguientes tablas describen los campos principales y los atributos específicos de Genai.

**Los campos principales abarcan**  
Cada intervalo debe incluir los siguientes campos principales:


| Campo | Tipo | Description (Descripción) | 
| --- | --- | --- | 
| traceId | Cadena | Identificador único para todo el rastreo. | 
| spanId | Cadena | Identificador único para este tramo. | 
| parentSpanId | Cadena | Identificador del tramo principal. Vacío para los tramos de raíz. | 
| startTime | Timestamp | Hora en que comenzó el intervalo. | 
| endTime | Timestamp | Hora en que finalizó el período. | 
| durationInNanos | Largo | Duración del intervalo en nanosegundos. | 
| status.code | Entero | Código de estado del intervalo (0 = desactivado, 1 = OK, 2 = error). | 

**Atributos GenAI**  
Los siguientes `gen_ai.*` atributos habilitan funciones específicas de la IA en la interfaz de usuario de Agent Traces:


| Atributo | Ejemplo de valor | Description (Descripción) | 
| --- | --- | --- | 
| gen\$1ai.operation.name | chat | El tipo de operación GenAI. Determina la categoría de intervalo. | 
| gen\$1ai.system | openai | El sistema o proveedor de IA. | 
| gen\$1ai.request.model | gpt-4 | El modelo utilizado para la solicitud. | 
| gen\$1ai.usage.input\$1tokens | 150 | Número de fichas de entrada consumidas. | 
| gen\$1ai.usage.output\$1tokens | 85 | Número de fichas de salida generadas. | 
| gen\$1ai.response.finish\$1reasons | ["stop"] | Motivos por los que el modelo dejó de generar. | 

### Diseño de página y barra de métricas
<a name="observability-ai-page-layout"></a>

La página Agent Traces muestra una barra de métricas en la parte superior que resume las estadísticas clave de todos los rastreos visibles. Las métricas incluyen el recuento total de trazas, la duración media, la tasa de errores y el uso de fichas. Estos valores se actualizan de forma dinámica en función del filtro de tiempo y la consulta.

### Pestaña Traces
<a name="observability-ai-traces-tab"></a>

La pestaña Rastros muestra todos los rastreos del agente raíz que coinciden con la consulta y el intervalo de tiempo actuales. Cada fila representa una única invocación de agente.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/agent-traces/traces-table.png)


En la siguiente tabla se describen las columnas de la tabla de seguimientos:


| Columna | Description (Descripción) | 
| --- | --- | 
| ID de rastreo | Identificador único del rastreo. Seleccione el enlace para abrir el menú desplegable de detalles del rastreo. | 
| Nombre completo del agente | Nombre del agente que inició el rastreo. | 
| Status | Estado general del rastreo (correcto o error). | 
| Duración | Tiempo total desde el primer tramo hasta el último tramo del rastreo. | 
| Intervalos | Número total de intervalos de la traza. | 
| Tokens de entrada | Número total de tokens de entrada consumidos en todas las llamadas LLM de la traza. | 
| Tokens de salida | Total de tokens de salida generados en todas las llamadas de LLM de la traza. | 
| Hora de inicio | Marca de tiempo en que se inició el rastreo. | 

### Categorías de alcance
<a name="observability-ai-span-categories"></a>

Los intervalos se clasifican en función del `gen_ai.operation.name` atributo. Cada categoría se muestra con un color e icono únicos en la interfaz de usuario.


| Nombre de operación | Categoría | Description (Descripción) | 
| --- | --- | --- | 
| invoke\$1agent, create\$1agent | Agente | Paso de orquestación del agente. | 
| chat | LLM | Llamada de finalización del chat de LLM. | 
| text\$1completion, generate\$1content | Contenidos | Operación de generación de texto. | 
| execute\$1tool | Herramienta | Invocación de herramientas. | 
| embeddings | Incrustaciones | Generación de incrustaciones. | 
| retrieval | Recuperación | Operación de recuperación de datos. | 

### Abarca la pestaña
<a name="observability-ai-spans-tab"></a>

La pestaña Intervalos muestra los intervalos individuales de todos los trazos. Puede filtrar y ordenar los tramos para encontrar operaciones específicas.

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/opensearch-service/latest/developerguide/images/agent-traces/spans-table.png)


### Menú desplegable de detalles de rastreo
<a name="observability-ai-trace-details"></a>

Al elegir un identificador de rastreo, se abre un panel desplegable con dos áreas principales:
+ **Panel izquierdo**: muestra el árbol de trazas, que muestra las relaciones jerárquicas padre-hijo entre los tramos. También incluye un DAG (gráfico acíclico dirigido) de flujo que visualiza la ruta de ejecución del agente.
+ **Panel derecho**: contiene dos pestañas. La pestaña **Detalles** muestra los atributos del tramo, los atributos de los recursos y los metadatos específicos de Genai. La pestaña **Cronología** muestra un gráfico en cascada de las duraciones de los tramos y sus relaciones temporales.

### Consultando trazas
<a name="observability-ai-querying"></a>

Agent Traces utiliza el PPL (lenguaje de procesamiento canalizado) para la obtención de todos los datos. Puede escribir consultas en el panel de consultas de la parte superior de la página.

**Para enumerar las trazas raíz**  
La siguiente consulta devuelve los 100 rastreos de agentes raíz más recientes:

```
source = otel-v1-apm-span-*
| where parentSpanId = "" AND isnotnull(`attributes.gen_ai.operation.name`)
| sort - startTime
| head 100
```

**Para obtener todos los intervalos de un rastreo**  
La siguiente consulta devuelve el árbol de tramos completo de un rastreo específico:

```
source = otel-v1-apm-span-*
| where traceId = "trace-id"
| head 1000
```

**Para calcular las métricas agregadas**  
La siguiente consulta calcula la duración media y el uso total de los tokens agrupados por modelo:

```
source = otel-v1-apm-span-*
| where isnotnull(`attributes.gen_ai.request.model`)
| stats avg(durationInNanos) as avg_duration,
        sum(`attributes.gen_ai.usage.input_tokens`) as total_input_tokens,
        sum(`attributes.gen_ai.usage.output_tokens`) as total_output_tokens
    by `attributes.gen_ai.request.model`
```