Solución de problemas

En esta página, se brinda información para solucionar problemas de Trace.

En este documento, se describe cómo solucionar problemas cuando usas la página del Explorador de seguimiento o la página heredada del Explorador de seguimiento:

Problemas conocidos

Existen dos problemas conocidos con la página Explorador de seguimiento:

  • Es posible que los intervalos escritos en tu proyecto de Google Cloud antes del 11 de enero de 2025 no estén disponibles. Estos intervalos están disponibles en la página Explorador de seguimiento heredada.

  • Es posible que el panel de detalles del evento para los intervalos escritos en tu proyecto de Google Cloud antes del 11 de enero de 2025 se muestre de forma diferente a los intervalos escritos después de esa fecha.

Cómo solucionar problemas en la página Explorador de seguimiento

En esta sección, se describe cómo solucionar problemas cuando usas la página Explorador de seguimiento.

No hay datos en la página Explorador de Trace

Estás usando la página Explorador de seguimientos y no puedes ver ningún seguimiento en tu proyecto de Google Cloud cuando esperas que aparezcan los datos de seguimiento.

Intenta realizar estos pasos para solucionarlo:

  1. Verifica que la API de Cloud Trace esté habilitada y que los datos se estén escribiendo en tu proyecto:

    1. En la consola de Google Cloud, ve a la página APIs y servicios habilitados:

      Ve a APIs y servicios habilitados.

    2. Si la API de Cloud Trace aparece en la lista, continúa con el siguiente paso. De lo contrario, habilita la API.

      Para habilitar la API, haz clic en Habilitar APIs y servicios, busca "API de Cloud Trace", selecciona la opción y, luego, haz clic en Habilitar.

  2. En la página Enable APIs and Services, busca la fila etiquetada como API de Cloud Trace.

  3. Si la columna etiquetada como Solicitudes no muestra información numérica, significa que no se están enviando datos de seguimiento a tu proyecto de Google Cloud.

    Para resolver este caso, verifica tus aplicaciones y proxies para asegurarte de que estén configurados para enviar los seguimientos al proyecto correcto.

  4. Si la columna etiquetada como Error muestra un valor distinto de cero, significa que hay errores de lectura o escritura de datos de seguimiento. Para obtener más información sobre la fuente de los errores, selecciona API de Cloud Trace, la pestaña Métricas y, luego, busca el gráfico etiquetado como Errores por método de API:

    • Si las operaciones de escritura fallan, otorga a la cuenta de servicio que proporciona las credenciales de autenticación el rol de agente de Cloud Trace (roles/cloudtrace.agent). Este rol incluye el permiso cloudtrace.traces.patch, que permite que las aplicaciones escriban datos de intervalo en un proyecto de Google Cloud.

      Para obtener más información, consulta las funciones de IAM de Cloud Trace.

    • Si las lecturas fallan, asegúrate de que tu rol de IAM en el proyecto de Google Cloud incluya los permisos del rol de usuario de Cloud Trace (roles/cloutrace.user). Para obtener una lista de los permisos de este rol, consulta Funciones de IAM de Cloud Trace.

  5. Verifica que la página Explorador de seguimientos esté buscando datos de seguimiento en tu proyecto actual:

    1. En la consola de Google Cloud, ve a la página Explorador de seguimiento:

      Ve al Explorador de seguimiento

      También puedes usar la barra de búsqueda para encontrar esta página.

    2. En la barra de herramientas, ve al elemento Alcance, expande el menu Definir mejor el alcance, selecciona Proyecto actual y, luego, selecciona Aplicar.
  6. Prueba una de las siguientes opciones:

Faltan datos más antiguos en la página Explorador de Trace

Estás usando la página Explorador de seguimiento y puedes ver los datos recientes, pero cuando configuras el selector de período a 30 días o a un valor más alto, no se muestran los datos más antiguos.

La página Explorador de seguimiento no muestra datos de períodos que sean más largos que el período de retención de datos de Cloud Trace, que es de 30 días.

Si el selector de período es de 30 días o menos, los datos que faltan indican que la base de datos a la que consultan las consultas de la página Explorador de seguimiento se creó más recientemente que el parámetro de configuración de período. Por ejemplo, si configuras este valor en 20 días y solo puedes ver los datos de los 10 días más recientes, la base de datos se creó hace 10 días. Además, esta base de datos solo contiene seguimientos que se enviaron a tu proyecto de Google Cloud después de que se creó la base de datos.

Para ver y analizar datos de seguimiento más antiguos, cambia a la página Explorador de seguimiento heredada. Esta página lee datos de seguimiento y de intervalo de una base de datos diferente a la página Explorador de seguimiento.

Ve al Explorador de seguimiento heredado

Faltan tramos en un seguimiento

Abres la página Explorador de seguimiento y seleccionas un período para verlo. En el menú flotante Detalles, se muestra el seguimiento, pero faltan algunos tramos.

Es posible que falten intervalos por los siguientes motivos:

  • La página Explorador de seguimiento no busca en todos los proyectos de Google Cloud que almacenan datos de intervalo para el seguimiento.

  • Tu rol de IAM en un proyecto de Google Cloud que almacena datos de intervalo para el seguimiento no contiene los permisos necesarios para ver los datos de seguimiento.

  • Hay un problema de instrumentación. Por ejemplo, solo se enviaron algunos tramos de un seguimiento a tu proyecto de Google Cloud.

  • Se escribieron en tu proyecto de Google Cloud antes del 11 de enero de 2025.

Para resolver estos problemas, haz lo siguiente:

  1. Determina si el seguimiento está completo en la página Explorador de seguimiento heredada:

    1. En el menú flotante Detalles del seguimiento, copia el ID de seguimiento en el portapapeles.

    2. Ve a la página Explorador de seguimiento heredado:

      Ve al Explorador de seguimiento heredado

    3. Pega el ID de seguimiento en el campo ID de seguimiento.

      Se actualiza la página Detalles del seguimiento y se muestra una lista de los proyectos que almacenan intervalos para el seguimiento.

  2. Si el seguimiento está completo en la página Explorador de seguimientos heredada, volta a la página Explorador de seguimientos y establece el elemento Alcance en un permiso de seguimiento que muestre todos los proyectos que identificaste en el paso anterior. Estos son los proyectos que almacenan los intervalos del seguimiento seleccionado.

    Si no hay un alcance de registro que incluya los proyectos que identificaste en el paso anterior, crea o modifica un alcance de registro existente. Para obtener más información, consulta Crea y administra ámbitos de seguimiento.

  3. Si el seguimiento no está completo en la página Explorador de seguimiento heredada, es posible que no se hayan registrado los intervalos o que no tengas el rol de usuario de Cloud Trace (roles/cloudtrace.user) en los proyectos que almacenan los datos de intervalo.

No tienes los permisos necesarios para ver los datos de seguimiento

Estás viendo la página Explorador de seguimiento y ves la siguiente notificación:

You don't have the required permissions to view trace data for one or more projects listed in the trace scope.

Para resolver este mensaje, haz lo siguiente en la barra de herramientas:

  1. Expande el elemento Alcance y, luego, identifica el alcance de seguimiento seleccionado.
  2. En el menú flotante Definir mejor el permiso, selecciona Administrar permisos.
  3. Busca el permiso de seguimiento que identificaste en el primer paso y, luego, expande los detalles para ver la lista de proyectos de Google Cloud.
  4. Para cada proyecto de Google Cloud en el alcance del seguimiento, asegúrate de tener el rol de usuario de Cloud Trace (roles/cloudtrace.user). Si no tienes ese rol en un proyecto, pídele a un administrador o propietario del proyecto que te lo otorgue.

Cómo forzar la creación de la base de datos para la página Explorador de seguimiento

Cuando los únicos datos de seguimiento de tu proyecto provienen de Google Cloud servicios que están preconfigurados para Cloud Trace, es posible que no se cree la base de datos que la página del Explorador de seguimientos lee para tus datos de seguimiento y de intervalo. Sin embargo, puedes forzar la creación de esta base de datos. Para ello, envía un registro a tu proyecto de Google Cloud con la API de Cloud Trace.

Por ejemplo, puedes hacer lo siguiente:

  1. Ve a la página de documentación de patchTraces.
  2. En el panel Probar este método, haz lo siguiente:

    1. En el campo projectId, ingresa tu PROJECT_ID.
    2. Copia el JSON, que define un registro con un solo intervalo, en el portapapeles y, luego, pégalo en el campo Cuerpo de la solicitud.

      Antes de copiar el JSON, haz lo siguiente:

      • Reemplaza PROJECT_ID por el ID de tu proyecto.
      • Reemplaza END_TIME por la hora actual y START_TIME por un valor anterior a la hora de finalización. Si usas Linux, ejecuta date -Isec para obtener la hora actual en el formato correcto. Por ejemplo, puedes configurar estos campos de la siguiente manera:

        "startTime": "2024-05-31T15:10:35.398448Z",
        "endTime": "2024-05-31T15:10:35.574999047Z",
        
      • Actualiza los campos traceId y spanId cada vez que ejecutes el comando.

        "traces": [
          {
            "projectId": "PROJECT_ID",
            "traceId": "33fc0d8c45bb4e5cebb29f047931270d",
            "spans": [
              {
                "spanId": "17941747227541407973",
                "name": "/",
                "startTime": "START_TIME",
                "endTime": "END_TIME",
              }
            ]
          }
        ]
        
    3. Presiona Ejecutar.

      Cuando el comando se completa correctamente, el cuerpo de la respuesta está vacío. Si vas al Explorador de seguimiento, podrás ver tu seguimiento. Puede haber un ligero retraso antes de que el registro esté disponible en la consola de Google Cloud.

Soluciona problemas relacionados con la página heredada del Explorador de seguimiento

En esta sección, se describe cómo solucionar problemas cuando usas la página Explorador de seguimiento heredada.

No hay datos en la interfaz heredada

Estás usando la página Explorador de seguimiento heredada y no puedes ver ningún seguimiento en tu proyecto de Google Cloud cuando esperas que aparezcan los datos de seguimiento.

Para resolver esta falla, prueba los siguientes pasos:

  1. Enable the Cloud Trace API.

    Enable the API

  2. En la consola de Google Cloud, ve a la página APIs y servicios:

    Ve a APIs y servicios.

    Después de encontrar la fila etiquetada como API de Cloud Trace, prueba lo siguiente:

    • Si la columna etiquetada como Solicitudes no muestra información numérica, significa que no se están enviando datos de seguimiento a tu proyecto de Google Cloud.

      Para resolver este caso, verifica tus aplicaciones y proxies para asegurarte de que estén configurados para enviar los seguimientos al proyecto correcto.

    • Selecciona API de Cloud Trace, selecciona la pestaña Métricas y, luego, busca el gráfico etiquetado como Errores por método de API:

      • Si las operaciones de escritura fallan, otorga a la cuenta de servicio que proporciona las credenciales de autenticación el rol de agente de Cloud Trace (roles/cloudtrace.agent). Este rol incluye el permiso cloudtrace.traces.patch, que permite que las aplicaciones escriban datos de intervalo en un proyecto de Google Cloud.

        Para obtener más información, consulta las funciones de IAM de Cloud Trace.

      • Si las lecturas fallan, asegúrate de que tu rol de IAM en el proyecto de Google Cloud incluya los permisos del rol de usuario de Cloud Trace (roles/cloutrace.user). Para obtener una lista de los permisos de este rol, consulta Funciones de IAM de Cloud Trace.

No hay datos de seguimiento para la app implementada en la interfaz heredada

Implementaste una app que envía datos a tu proyecto de Google Cloud con la API de Cloud Trace, pero no se recopilan datos de seguimiento.

Prueba lo siguiente:

  • Si no ves ningún dato en la página Explorador de seguimiento heredada de la consola de Google Cloud, sigue los pasos que se indican en la sección No hay datos en la interfaz de Trace heredada.

  • Si la app no se implementa en Google Cloud o si usa una cuenta de servicio para proporcionar credenciales de autenticación, asegúrate de que la cuenta de servicio tenga el rol Agente de Cloud Trace (roles/cloudtrace.agent).

    Este rol incluye el permiso cloudtrace.traces.patch, que permite que las aplicaciones escriban datos de intervalo en un proyecto de Google Cloud.

  • Si la app depende de OpenTelemetry, haz lo siguiente:

    • Para el servicio raíz, intenta actualizar tus variables de entorno para que OpenTelemetry use el muestreador traceidratio con una tasa de muestreo de 0.5:

      export OTEL_TRACES_SAMPLER="traceidratio"
      export OTEL_TRACES_SAMPLER_ARG="0.5"
      
    • Para todos los demás servicios, deja la variable de entorno OTEL_TRACES_SAMPLER sin definir para usar el muestreador predeterminado, que es parentbased_always_on. La configuración predeterminada significa que la decisión de muestreo de un intervalo se hereda de su intervalo superior, si existe. Si no existe un intervalo superior, se muestrea el intervalo.

    A menos que tu aplicación siempre tome muestras de cada intervalo, en general, no es posible forzar que se realice un seguimiento de una solicitud de extremo a extremo, ya que cada componente de una solicitud de extremo a extremo toma su propia decisión de muestreo. Sin embargo, puedes influir en la decisión si agregas al encabezado de seguimiento una marca sampled, con esta marca establecida en true. Este parámetro de configuración es una sugerencia para los componentes secundarios para que tomen una muestra de la solicitud. Para obtener más información sobre los encabezados de seguimiento, consulta Protocolos para la propagación de contexto.

Falta el mensaje de ID de intervalo en el seguimiento

El seguimiento contiene el mensaje "Missing span ID".

En los sistemas de seguimiento distribuido, se esperan registros incompletos. Un seguimiento es incompleto cuando un intervalo muestreado contiene una referencia a otro intervalo que no se recibió. La referencia sin resolver puede ocurrir por los siguientes motivos:

  • No se tomó una muestra del intervalo al que se hace referencia.
  • Se tomó una muestra del intervalo al que se hace referencia, pero Cloud Trace aún no lo recibió, o bien se recibió, pero no se almacenó.

Cuando visualizas un seguimiento incompleto, Cloud Trace muestra el mensaje "Falta el ID de intervalo" en el panel de detalles del seguimiento.

Si ves constantemente el mensaje "Falta el ID de intervalo", prueba lo siguiente:

  • En el caso de los componentes que administras, asegúrate de que respeten y propaguen la marca sampled del encabezado, cuando este campo esté presente. Este parámetro de configuración es una sugerencia para los componentes secundarios para que tomen una muestra de la solicitud. Para obtener más información sobre los encabezados de seguimiento, consulta Protocolos para la propagación de contexto.

    Por lo general, los servicios deGoogle Cloud respetan esta sugerencia. Sin embargo, también limitan la velocidad a la que escriben los datos de seguimiento.

  • Si usas Cloud Service Mesh, asegúrate de seguir las instrucciones para propagar el contexto de seguimiento de esas configuraciones. Para obtener orientación sobre Cloud Service Mesh, consulta Propagación del contexto de seguimiento.

No hay datos de seguimiento después de actualizar la app de Go para usar OpenTelemetry

Tu aplicación depende de la biblioteca cliente para capturar seguimientos y, después de actualizarla para usar OpenTelemetry, ya no ves los datos de Cloud Trace.

Debido a que algunas bibliotecas cliente de Cloud para Go están integradas con OpenCensus, debes usar un puente de OpenCensus. Para obtener más información sobre el problema que resuelve el puente, consulta OpenCensus Bridge.

Para obtener información sobre la actualización de las bibliotecas cliente de Cloud para Go, consulta el problema #4237.