En este documento, se describe cómo usar la API de Observability para obtener información sobre el bucket de observabilidad que almacena tus datos de seguimiento. Incluye información sobre cómo enumerar conjuntos de datos, vínculos y vistas. Para obtener más información sobre cómo se almacenan tus datos de seguimiento, consulta Descripción general del almacenamiento de seguimientos.
Antes de comenzar
- Accede a tu Google Cloud cuenta de. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
-
Instala Google Cloud CLI.
-
Si usas un proveedor de identidad externo (IdP), primero debes acceder a la gcloud CLI con tu identidad federada.
-
Para inicializar gcloud CLI, ejecuta el siguiente comando:
gcloud init -
Crea o selecciona un Google Cloud proyecto.
Roles necesarios para seleccionar o crear un proyecto
- Seleccionar un proyecto: Para seleccionar un proyecto, no se requiere un rol de IAM específico. Puedes seleccionar cualquier proyecto en el que se te haya otorgado un rol.
-
Crear un proyecto: Para crear un proyecto, necesitas el rol de creador de proyectos
(
roles/resourcemanager.projectCreator), que contiene elresourcemanager.projects.createpermiso. Obtén información para otorgar roles.
-
Crea un Google Cloud proyecto de la siguiente manera:
gcloud projects create PROJECT_ID
Reemplaza
PROJECT_IDpor un nombre para el Google Cloud proyecto de que estás creando. -
Selecciona el Google Cloud proyecto de que creaste:
gcloud config set project PROJECT_ID
Reemplaza
PROJECT_IDpor el nombre de tu Google Cloud proyecto de.
-
Verifica que la facturación esté habilitada para tu Google Cloud proyecto.
Habilita la API de Observability:
Roles necesarios para habilitar las APIs
Para habilitar las APIs, necesitas el rol de IAM de administrador de Service Usage (
roles/serviceusage.serviceUsageAdmin), que contiene elserviceusage.services.enablepermiso. Obtén información para otorgar roles.gcloud services enable observability.googleapis.com
-
Otorga roles a tu cuenta de usuario. Ejecuta el siguiente comando una vez para cada uno de los siguientes roles de IAM:
roles/observability.viewergcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto.USER_IDENTIFIER: Es el identificador de tu cuenta de usuario. Por ejemplo,myemail@example.com.ROLE: Es el rol de IAM que otorgas a tu cuenta de usuario.
-
Instala Google Cloud CLI.
-
Si usas un proveedor de identidad externo (IdP), primero debes acceder a la gcloud CLI con tu identidad federada.
-
Para inicializar gcloud CLI, ejecuta el siguiente comando:
gcloud init -
Crea o selecciona un Google Cloud proyecto.
Roles necesarios para seleccionar o crear un proyecto
- Seleccionar un proyecto: Para seleccionar un proyecto, no se requiere un rol de IAM específico. Puedes seleccionar cualquier proyecto en el que se te haya otorgado un rol.
-
Crear un proyecto: Para crear un proyecto, necesitas el rol de creador de proyectos
(
roles/resourcemanager.projectCreator), que contiene elresourcemanager.projects.createpermiso. Obtén información para otorgar roles.
-
Crea un Google Cloud proyecto de la siguiente manera:
gcloud projects create PROJECT_ID
Reemplaza
PROJECT_IDpor un nombre para el Google Cloud proyecto de que estás creando. -
Selecciona el Google Cloud proyecto de que creaste:
gcloud config set project PROJECT_ID
Reemplaza
PROJECT_IDpor el nombre de tu Google Cloud proyecto de.
-
Verifica que la facturación esté habilitada para tu Google Cloud proyecto.
Habilita la API de Observability:
Roles necesarios para habilitar las APIs
Para habilitar las APIs, necesitas el rol de IAM de administrador de Service Usage (
roles/serviceusage.serviceUsageAdmin), que contiene elserviceusage.services.enablepermiso. Obtén información para otorgar roles.gcloud services enable observability.googleapis.com
-
Otorga roles a tu cuenta de usuario. Ejecuta el siguiente comando una vez para cada uno de los siguientes roles de IAM:
roles/observability.viewergcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto.USER_IDENTIFIER: Es el identificador de tu cuenta de usuario. Por ejemplo,myemail@example.com.ROLE: Es el rol de IAM que otorgas a tu cuenta de usuario.
Enumera los buckets de observabilidad
REST
Para enumerar los buckets de observabilidad que se encuentran en tu proyecto y en una ubicación específica, envía una solicitud al extremo
projects.locations.buckets.list.
Debes especificar el parámetro superior, que tiene el siguiente formato:
projects/PROJECT_ID/locations/LOCATION
Los campos de la expresión anterior tienen los siguientes significados:
- PROJECT_ID: Es el identificador del proyecto.
- LOCATION: Es la ubicación del bucket de observabilidad.
Si estableces LOCATION en un guion,
(-), se enumerarán todos los buckets de observabilidad de tu proyecto.
La respuesta es un array de
Bucket objetos. Para cada objeto, el valor del campo name tiene el siguiente formato:
projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID
Por ejemplo, cuando se emitió un comando al extremo buckets.list con el parámetro superior establecido en projects/my-project/locations/us, la respuesta fue la siguiente:
{
"buckets": [
{
"name": "projects/my-project/locations/us/buckets/_Trace",
"description": "Trace Bucket",
"createTime": "2025-01-01T15:42:30.988919645Z",
"updateTime": "2025-02-04T15:42:30.988919645Z",
"retentionDays": 30
}
]
}
Puedes emitir comandos a otros extremos de la API de Observability para obtener más información sobre el bucket cuyo ID es BUCKET_ID. Por ejemplo, puedes enumerar los conjuntos de datos en ese bucket, y las vistas y los vínculos en cada conjunto de datos. Para obtener una lista completa de los extremos de la API de Observability, consulta la documentación de referencia de la API de Observability.
Enumera los conjuntos de datos en un bucket de observabilidad
REST
Para enumerar los conjuntos de datos de un bucket de observabilidad, envía una solicitud al
projects.locations.buckets.datasets.list
extremo.
Debes especificar el parámetro superior, que tiene el siguiente formato:
projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID
Los campos de la expresión anterior tienen los siguientes significados:
- PROJECT_ID: Es el identificador del proyecto.
- LOCATION: Es la ubicación del bucket de observabilidad.
- BUCKET_ID: Es el ID del bucket de observabilidad. Por ejemplo, este ID podría ser
_Trace.
La respuesta es un array de Dataset objetos.
Para cada objeto, el valor del campo name tiene el siguiente formato:
projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/dataset/DATASET_ID
Por ejemplo, cuando se emitió un comando al extremo buckets.datasets.list con el parámetro superior establecido en projects/my-project/locations/us/buckets/_Trace, la respuesta fue la siguiente:
{
"datasets": [
{
"name": "projects/my-project/locations/us/buckets/_Trace/datasets/Spans",
"description": "Trace Spans",
"createTime": "2025-01-01T15:42:30.988919645Z",
"updateTime": "2025-02-04T15:42:30.988919645Z",
}
]
}
Puedes emitir comandos a otros extremos de la API de Observability para obtener información sobre el conjunto de datos cuyo ID es DATASET_ID. Por ejemplo, puedes enumerar las vistas y los vínculos en cada conjunto de datos. Para obtener una lista completa de los extremos de la API de Observability, consulta la documentación de referencia de la API de Observability.
Enumera las vistas en un conjunto de datos
REST
Para enumerar las vistas de un conjunto de datos, envía una solicitud al
projects.locations.buckets.datasets.views.list
extremo.
Debes especificar el parámetro superior, que tiene el siguiente formato:
projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/views
Los campos de la expresión anterior tienen los siguientes significados:
- PROJECT_ID: Es el identificador del proyecto.
- LOCATION: Es la ubicación del bucket de observabilidad.
- BUCKET_ID: Es el ID del bucket de observabilidad. Por ejemplo, este ID podría ser
_Trace. - DATASET_ID: Es el ID del conjunto de datos que se consulta. Por ejemplo, este ID podría ser
Spans.
La respuesta es un array de
View objetos.
Para cada objeto, el valor del campo name tiene el siguiente formato:
projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/views/OBS_VIEW_ID
En la expresión anterior, el ID de una vista se representa con OBS_VIEW_ID.
Por ejemplo, este campo podría tener un valor de _AllSpans.
Por ejemplo, cuando se emitió un comando al extremo buckets.datasets.views.list con el parámetro superior establecido en projects/my-project/locations/us/buckets/_Trace/datasets/Spans/views, la respuesta fue la siguiente:
{
"views": [
{
"name": "projects/my-project/locations/us/buckets/_Trace/datasets/Spans/views/_AllSpans",
"filter": "",
"createTime": "2025-01-01T15:42:30.988919645Z",
"updateTime": "2025-02-04T15:42:30.988919645Z",
}
]
}
Para obtener una lista completa de los extremos de la API de Observability, consulta la documentación de referencia de la API de Observability.
Enumera los vínculos en un conjunto de datos
REST
Para enumerar los vínculos de un conjunto de datos, envía una solicitud al
projects.locations.buckets.datasets.links.list
extremo.
Debes especificar el parámetro superior, que tiene el siguiente formato:
projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID
Los campos de la expresión anterior tienen los siguientes significados:
- PROJECT_ID: Es el identificador del proyecto.
- LOCATION: Es la ubicación del bucket de observabilidad.
- BUCKET_ID: Es el ID del bucket de observabilidad. Por ejemplo, este ID podría ser
_Trace. - DATASET_ID: Es el ID del conjunto de datos que se consulta. Por ejemplo, este ID podría ser
Spans.
La respuesta es un array de
Link objetos.
Para cada objeto, el valor del campo name tiene el siguiente formato:
projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/links/LINK_ID
LINK_ID es el nombre del conjunto de datos de BigQuery. Este campo es único a nivel global para tu Google Cloud proyecto.
Por ejemplo, cuando se emitió un comando al extremo buckets.datasets.links.list con el parámetro superior establecido en projects/my-project/locations/us/buckets/_Trace/datasets/Spans/links, la respuesta fue la siguiente:
{
"links": [
{
"name": "projects/my-project/locations/us/buckets/_Trace/datasets/Spans/links/my_link",
"description": "My link for traces to BigQuery",
"createTime": "2025-01-12T15:42:30.988919645Z"
}
]
}
Para obtener una lista completa de los extremos de la API de Observability, consulta la documentación de referencia de la API de Observability.
Crea un vínculo en un conjunto de datos
En esta sección, se describe cómo crear un vínculo en un conjunto de datos, lo que permite que tus datos de seguimiento se consulten desde BigQuery.
Antes de comenzar
Para obtener los permisos que necesitas para crear un vínculo en un conjunto de datos, pídele a tu administrador que te otorgue los siguientes roles de IAM en tu proyecto:
-
Editor de Observability (
roles/observability.editor) -
Usuario de BigQuery (
roles/bigquery.user)
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.
Crea un conjunto de datos vinculado a BigQuery
REST
Para crear un vínculo a un conjunto de datos de BigQuery, envía una solicitud al
projects.locations.buckets.datasets.links.create
extremo.
Debes especificar el parámetro superior, que tiene el siguiente formato:
projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID
Los campos de la expresión anterior tienen los siguientes significados:
- PROJECT_ID: Es el identificador del proyecto.
- LOCATION: Es la ubicación del bucket de observabilidad.
- BUCKET_ID: Es el ID del bucket de observabilidad. Por ejemplo, este ID podría ser
_Trace. - DATASET_ID: Es el ID del conjunto de datos que se consulta. Por ejemplo, este ID podría ser
Spans.
Este comando requiere un parámetro de consulta y un cuerpo de solicitud:
Se debe especificar el parámetro de consulta
linkIdy establecerlo en el nombre del conjunto de datos de BigQuery. Por ejemplo,linkId="my_link". El nombre del conjunto de datos de BigQuery debe ser único para tu Google Cloud proyecto, debe tener un límite de 100 caracteres y solo puede incluir letras, dígitos y guiones bajos.El cuerpo de la solicitud es un
Linkobjeto. El valor del camponametiene el siguiente formato:projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/dataset/DATASET_ID/links/LINK_IDEl valor que proporcionas para el campo
namedebe coincidir con el conjunto de datos de BigQuery vinculado al que hace referencia el parámetro de consulta.El campo LINK_ID es el nombre del conjunto de datos de BigQuery.
La respuesta es un Operation objeto.
Este objeto contiene información sobre el progreso del método. Cuando se completa el método, el objeto Operation contiene datos de estado.
Para obtener una lista completa de los extremos de la API de Observability, consulta la documentación de referencia de la API de Observability.
¿Qué sigue?
Para obtener más información sobre el uso de la página Explorador de seguimiento, consulta Busca y explora seguimientos.
Para obtener información sobre cómo analizar tus intervalos de seguimiento con SQL, consulta Consulta y analiza seguimientos.