Configurar ámbitos de observabilidad para consultas multiproyecto

En este documento se describe cómo puede crear gráficos o ver datos de registro cuando estos datos se almacenan en varios proyectos. De forma predeterminada, las herramientas de visualización solo pueden acceder a los datos que se originan en un proyecto. Sin embargo, si configura un ámbito, las herramientas de visualización y análisis pueden consultar los datos almacenados en varios proyectos.

Si solo quieres monitorizar o ver los datos almacenados en un proyecto, no tienes que hacer ninguna configuración.Google Cloud

Los ámbitos proporcionan agregación en tiempo de lectura

Los ámbitos permiten que las herramientas de visualización y análisis agreguen en tiempo de lectura los datos almacenados en varias ubicaciones. Los ámbitos no controlan dónde se almacenan los datos. En su lugar, los motores de consultas se basan en los ámbitos para determinar dónde buscar datos.

Los datos de métricas y de trazas siempre se almacenan en el proyecto Google Cloud del que proceden. Para ver los datos de métricas almacenados en varios proyectos en un solo gráfico, configura un ámbito de métricas para que se muestren esos proyectos. Una vez que haya configurado este ámbito, cuando cree un gráfico o una política de alertas, la consulta emitida por estos servicios devolverá automáticamente datos de métricas de los proyectos incluidos en la lista. El comportamiento es similar en el caso de los datos de seguimiento.

De forma predeterminada, los datos de registro se almacenan en el Google Cloud proyecto, la cuenta de facturación, la carpeta o la organización de donde proceden los datos. Sin embargo, puedes configurar Logging para enrutar los datos de registro desde el recurso en el que se originan a otra ubicación, como otro proyecto o un segmento de registro centralizado. En todos los casos, configura un ámbito de registro personalizado. Te recomendamos que tus listas de ámbito de registro incluyan vistas de registro en lugar de proyectos, ya que una vista de registro proporciona acceso de lectura a un subconjunto de entradas de registro de un segmento de registro. Por ejemplo, si tienes datos de registro almacenados en tres proyectos, puedes configurar la vista de registro para que incluya la vista _Default/_AllLogs de cada uno de esos proyectos.

Cómo usan los ámbitos los productos de observabilidad de Google Cloud

Las herramientas de análisis y visualización de Google Cloud Observability se basan en ámbitos específicos de cada tipo de datos para determinar qué recursos se deben consultar para obtener los datos que la herramienta debe mostrar o analizar.

Ejemplos:

  • Cuando se abre la página Explorador de registros, el sistema consulta los recursos que se indican en el ámbito de registro predeterminado para obtener datos de registro. Una vez que se haya abierto esta página, puedes usar una opción de la barra de herramientas para consultar los recursos de otro ámbito.
  • Cuando se abre la página Explorador de trazas, el sistema consulta los proyectos que se muestran en el ámbito de traza predeterminado para obtener datos de trazas. Una vez que se haya abierto esta página, puedes usar una opción de la barra de herramientas para consultar los recursos de otro ámbito.
  • Cuando creas una política de alertas, Monitoring consulta los proyectos incluidos en el ámbito de las métricas para obtener datos de métricas. A continuación, analiza la respuesta a la consulta y determina si debe crear un incidente.
  • Cuando creas un gráfico con la página Explorador de métricas, especificas una métrica para el gráfico. Monitor comprueba los proyectos que se incluyen en el ámbito de las métricas para obtener datos de métricas y, a continuación, muestra los resultados de la consulta.

Logging y Trace verifican tus roles de Gestión de Identidades y Accesos (IAM) en un recurso antes de que una consulta devuelva datos. Por ejemplo, si un ámbito de registro especifica un proyecto para el que no tienes permisos para leer datos de registro, una consulta a ese proyecto no devolverá datos.

Monitoring verifica tu rol de gestión de identidades y accesos en el proyecto desde el que se emite la consulta. Supongamos que el ámbito de las métricas de un proyecto llamado AllEnv incluye los siguientes proyectos: AllEnv, Prod y Staging. También supongamos que se te ha concedido el rol Lector de Monitoring en el proyecto AllEnv. Los gráficos que crees con la página Explorador de métricas al usar el proyecto AllEnv mostrarán automáticamente los datos de métricas de los tres proyectos.

Ámbitos de Google Cloud Observability

En esta sección se describen los ámbitos que usa Google Cloud Observability.

Ámbito de observabilidad

El ámbito de observabilidad especifica el ámbito de registro predeterminado y el ámbito de traza predeterminado. Páginas como Explorador de registros y Explorador de trazas usan los ámbitos predeterminados para determinar qué recursos consultar cuando se abre la página. Por ejemplo, supongamos que tienes una aplicación que genera datos de traza en tres proyectos. Puede configurar la página Explorador de trazas para que consulte automáticamente esos tres proyectos definiendo el ámbito de traza predeterminado.

Si no configuras el ámbito de observabilidad, ocurrirá lo siguiente:

  • La página Explorador de registros consulta los datos de registro de tu proyecto.
  • La página Explorador de trazas consulta los datos de traza de tu proyecto.

El ámbito de observabilidad no se aplica a los datos de métricas.

Cuándo configurar el ámbito de observabilidad

Configura el ámbito de observabilidad en los siguientes casos:

  • Crea un ámbito de registro personalizado y quiere que los recursos incluidos en ese ámbito se consulten de forma predeterminada.

  • Creas un ámbito de rastreo personalizado y quieres que los proyectos incluidos en ese ámbito se consulten de forma predeterminada.

Límites asociados a los ámbitos de observabilidad

Descripción Valor máximo
Número de ámbitos de observabilidad por proyecto 1

Ámbitos de registro

La página Explorador de registros y los paneles que muestran datos de registro usan los ámbitos de registro:

  • Cuando se abre la página Explorador de registros, el sistema consulta automáticamente los recursos que se incluyen en el ámbito de registro predeterminado para obtener datos de registro. Esta página también ofrece controles que le permiten cambiar de ámbito.

  • En el caso de los paneles de control, la implementación determina si el sistema consulta el proyecto o los recursos que se indican en el ámbito de registro predeterminado.

Un ámbito de registro puede enumerar vistas de registro, proyectos, carpetas y organizaciones.

Si no configuras un ámbito de registro personalizado, la página Explorador de registros consultará tu proyecto para obtener datos de registro.

Cuándo crear ámbitos de registro personalizados

Crea ámbitos de registro personalizados para las siguientes configuraciones:

En todos los casos, configure los ámbitos de registro personalizados para que incluyan una o varias vistas de registro. Esas vistas de registro pueden estar en un contenedor de registro centralizado o en diferentes contenedores de registro. Si usas un contenedor de registro centralizado, puedes crear varios ámbitos de registro personalizados, cada uno con su propio conjunto de vistas de registro.

Si creas ámbitos de registro personalizados, te recomendamos que actualices el ámbito de registro predeterminado.

Prácticas recomendadas para configurar ámbitos de registro

  • Incluir solo vistas de registro.
  • No configure un ámbito que incluya proyectos y vistas de registro.

Límites asociados a los ámbitos de registro

Descripción Valor máximo
Número de ámbitos de registro por proyecto 100
Número de proyectos por ámbito de registro 5
Número de vistas de registros o proyectos por ámbito de registro 100

Para obtener más información, consulta Crear y gestionar ámbitos de registro.

Ámbito de las métricas

Cloud Monitoring usa el ámbito de las métricas en todas las consultas que emite. Por ejemplo, las políticas de alertas y las herramientas de creación de gráficos, como el Explorador de métricas, envían consultas a los proyectos que se indican en el ámbito de las métricas.

Si no configuras el ámbito de las métricas, los servicios de Monitoring consultarán tu proyecto para obtener datos de métricas.

Cuándo configurar los ámbitos de las métricas

Configure el ámbito de las métricas cuando se cumpla alguna de las siguientes condiciones:

  • Quieres representar en un gráfico datos almacenados en diferentes proyectos.
  • Quieres que una política de alertas monitorice los datos almacenados en diferentes proyectos.
  • Las aplicaciones se registran en App Hub. Para obtener información sobre este caso, consulta Ámbitos de las métricas de los proyectos de gestión.

Límites asociados a los ámbitos de las métricas

Descripción Valor máximo
Número de ámbitos de métricas por proyecto 1
Número de proyectos por ámbito de métricas 375

Para obtener más información, consulta el artículo Información general sobre los ámbitos de las métricas.

Permisos de trazas

La página Explorador de trazas usa los ámbitos de traza. Cuando se abre esta página, el sistema consulta automáticamente los proyectos que aparecen en el ámbito de la traza predeterminado para obtener datos de traza. Esta página también ofrece controles que le permiten cambiar de ámbito.

Si no configuras un ámbito de rastreo personalizado, la página Explorador de rastreos consultará tu proyecto para obtener datos de rastreo.

Cuándo crear ámbitos de rastreo personalizados

Crea ámbitos de seguimiento personalizados cuando tengas aplicaciones que dependan de recursos de diferentes proyectos. Google Cloud

Límites asociados a los ámbitos de los rastreos

Descripción Valor máximo
Número de ámbitos de traza por proyecto 100
Número de proyectos por ámbito de traza 20

Para obtener más información, consulta Crear y gestionar ámbitos de traza.

Configurar el ámbito de observabilidad

Esta sección no se aplica a carpetas ni organizaciones.

En el caso de los datos de registro y de traza, los roles de Gestión de Identidades y Accesos (IAM) que tengas en el proyecto que estés viendo, así como en los proyectos y las vistas de registro que hayas buscado, influyen en los datos que devuelve la consulta. Si envías una consulta para ver datos de registro para los que no tienes permiso, la consulta no devuelve ningún dato de registro.

En el caso de los datos de métricas, cuando se configura el ámbito de las métricas de un proyecto, se le concede acceso de lectura a los datos de métricas almacenados por los proyectos que se incluyen en su ámbito de métricas. Cuando se concede a un usuario un rol de gestión de identidades y accesos que le permite ver datos de métricas en un proyecto, puede ver los datos de métricas disponibles en el proyecto.

Para configurar el ámbito de observabilidad, debes definir el ámbito de registro predeterminado y el ámbito de rastreo predeterminado. En el resto de esta sección se describe cómo completar estas acciones.

Antes de empezar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Observability API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Observability API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  8. Para obtener los permisos que necesitas para crear y ver ámbitos, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos:

    • Para crear y ver ámbitos de registro, y para obtener el ámbito de registro predeterminado, haz lo siguiente: Escritor de configuración de registros (roles/logging.configWriter) en tu proyecto
    • Para modificar un ámbito de las métricas, haga lo siguiente: Administrador de Monitoring (roles/monitoring.admin) en su proyecto y en cada proyecto que quiera añadir a los ámbitos de las métricas.
    • Para crear y ver ámbitos de rastreo, así como para obtener y definir ámbitos predeterminados, sigue estos pasos: Editor de ámbitos de observabilidad (roles/observability.scopesEditor) en tu proyecto

    Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.

    También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.

    El rol Editor de ámbitos de observabilidad incluye permisos privados que te permiten crear y ver ámbitos de traza. Estos permisos no se pueden incluir en roles de IAM personalizados.

  9. Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

    REST

    Para usar las muestras de la API REST de esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la CLI de gcloud.

      Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:

      gcloud init

      Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.

    Para obtener más información, consulta el artículo Autenticarse para usar REST de la documentación sobre autenticación de Google Cloud .

    Ver y definir el ámbito predeterminado

    Consola

    Para configurar el ámbito de observabilidad, debe configurar sus componentes, que son el ámbito de registro predeterminado, el ámbito de métricas y el ámbito de seguimiento predeterminado:

    1. En la Google Cloud consola, ve a la página  Configuración:

      Ve a Configuración.

      Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Monitorización.

    2. En la barra de herramientas de la Google Cloud consola, selecciona tu Google Cloud proyecto. En el caso de las configuraciones de App Hub, seleccione el proyecto host de App Hub o el proyecto de gestión de la carpeta habilitada para aplicaciones.
    3. Configura el ámbito de registro predeterminado:

      1. Selecciona la pestaña Ámbitos de registro.

        Se muestra una lista de los ámbitos de registro. La entrada con el icono "Predeterminado", , es el ámbito de registro predeterminado. Si quieres crear un ámbito de registro, haz clic en Crear ámbito de registro y completa el cuadro de diálogo. Para obtener más información, consulta Crear y gestionar ámbitos de registro.

      2. Busca la entrada que quieras designar como predeterminada, haz clic en  Más y, a continuación, selecciona Establecer como predeterminado.

    4. Configura el ámbito de las métricas:

      1. Selecciona la pestaña de ámbito de las métricas.
      2. En el panel Proyectos de Google Cloud, haz clic en Añadir proyectos y, a continuación, completa el cuadro de diálogo. Para obtener más información, consulta Configurar ámbitos de métricas.
    5. Configura el ámbito de la traza predeterminado:

      1. Selecciona la pestaña Ámbitos de traza y, a continuación, haz lo siguiente:

        Se muestra una lista de los ámbitos de traza. La entrada con el icono "Predeterminado", , es el ámbito de seguimiento predeterminado. Si quieres crear un ámbito de seguimiento, haz clic en Crear ámbito de registro y, a continuación, completa el cuadro de diálogo. Para obtener más información, consulta Crear y gestionar ámbitos de traza.

      2. Busca la entrada que quieras designar como predeterminada, haz clic en  Más y, a continuación, selecciona Establecer como predeterminado.

    gcloud

    Para ver y definir el ámbito de observabilidad, haga lo siguiente:

    1. Para ver los ajustes del ámbito de observabilidad, ejecuta el comando gcloud observability scopes describe.

      Antes de usar los datos de los comandos que se indican a continuación, haz los siguientes cambios:

      • OBSERVABILITY_SCOPE_ID: nombre de un objeto Scope. Este valor debe ser _Default.
      • LOCATION: el campo de ubicación debe tener el valor global.
      • PROJECT_ID: identificador del proyecto.

      Ejecuta el comando gcloud observability scopes describe:

      Linux, macOS o Cloud Shell

      gcloud observability scopes describe OBSERVABILITY_SCOPE_ID \
         --location=LOCATION\
         --project=PROJECT_ID

      Windows (PowerShell)

      gcloud observability scopes describe OBSERVABILITY_SCOPE_ID `
         --location=LOCATION`
         --project=PROJECT_ID

      Windows (cmd.exe)

      gcloud observability scopes describe OBSERVABILITY_SCOPE_ID ^
         --location=LOCATION^
         --project=PROJECT_ID

      La respuesta al comando es similar a la siguiente:

      logScope: logging.googleapis.com/projects/my-project/locations/global/logScopes/_Default
      traceScope: projects/my-project/locations/global/traceScopes/_Default
      name: projects/my-project/locations/global/scopes/_Default
      

    2. Para actualizar el ámbito de observabilidad, ejecuta el comando gcloud observability scopes update. En el comando update, puedes incluir la marca --log-scope para actualizar el ámbito de registro predeterminado.

      Antes de usar los datos de los comandos que se indican a continuación, haz los siguientes cambios:

      • OBSERVABILITY_SCOPE_ID: nombre de un objeto Scope. Este valor debe ser _Default.
      • LOG_SCOPE_FQN_ID: ID completo del ámbito del registro. Este campo tiene el siguiente formato:
        logging.googleapis.com/projects/PROJECT_ID/locations/LOCATION/logScopes/LOG_SCOPE_ID

        En la expresión anterior, LOG_SCOPE_ID es el ID del ámbito del registro. Por ejemplo, my-scope.

      • LOCATION: el campo de ubicación debe tener el valor global.
      • PROJECT_ID: identificador del proyecto.

      Ejecuta el comando gcloud observability scopes update:

      Linux, macOS o Cloud Shell

      gcloud observability scopes update OBSERVABILITY_SCOPE_ID \
         --log-scope=LOG_SCOPE_FQN_ID\
         --location=LOCATION\
         --project=PROJECT_ID

      Windows (PowerShell)

      gcloud observability scopes update OBSERVABILITY_SCOPE_ID `
         --log-scope=LOG_SCOPE_FQN_ID`
         --location=LOCATION`
         --project=PROJECT_ID

      Windows (cmd.exe)

      gcloud observability scopes update OBSERVABILITY_SCOPE_ID ^
         --log-scope=LOG_SCOPE_FQN_ID^
         --location=LOCATION^
         --project=PROJECT_ID

      Por ejemplo, si el valor de LOG_SCOPE_ID es my-scope, la respuesta será similar a la siguiente:

      Updated scope [_Default].
      logScope: logging.googleapis.com/projects/my-project/locations/global/logScopes/my-scope
      name: projects/my-project/locations/global/scopes/_Default
      

    REST

    Para obtener y definir el ámbito de registro predeterminado o el ámbito de seguimiento predeterminado mediante una llamada a la API, configura el ámbito de observabilidad. En el ámbito de observabilidad se muestran el ámbito de registro predeterminado y el ámbito de traza predeterminado:

    • Para obtener el ámbito de observabilidad predeterminado de un proyecto, envía una solicitud al punto de conexión projects.locations.scopes.get. Debe especificar un parámetro de ruta. La respuesta es un objeto Scope que muestra el ámbito de registro predeterminado y el ámbito de seguimiento predeterminado.

    • Para actualizar el ámbito de observabilidad predeterminado de un proyecto, envía una solicitud al endpoint projects.locations.scopes.patch. Debe especificar un parámetro de ruta, parámetros de consulta y un objeto Scope. Los parámetros de consulta identifican qué campos se han modificado. La respuesta es un objeto Scope.

    El parámetro de ruta de ambos endpoints tiene el siguiente formato:

    projects/PROJECT_ID/locations/LOCATION/scopes/OBSERVABILITY_SCOPE_ID
    

    Los campos de la expresión anterior tienen el siguiente significado:

    • PROJECT_ID: identificador del proyecto. En el caso de las configuraciones de App Hub, seleccione el proyecto host de App Hub o el proyecto de gestión de la carpeta habilitada para aplicaciones.
    • LOCATION: el campo de ubicación debe tener el valor global.
    • OBSERVABILITY_SCOPE_ID: nombre de un objeto Scope. Este campo debe tener el valor _Default. El objeto Scope con el nombre _Default, que se crea automáticamente, almacena información sobre el ámbito de registro predeterminado y el ámbito de seguimiento predeterminado.

    Para enviar un comando a un endpoint de la API, puedes usar Explorador de APIs, que te permite enviar un comando desde una página de referencia. Por ejemplo, para obtener el ámbito predeterminado actual, puedes hacer lo siguiente:

    1. Haz clic en projects.locations.scopes.get.
    2. En el widget Prueba este método, introduce lo siguiente en el campo name (nombre):

      projects/PROJECT_ID/locations/global/scopes/_Default
      

      Antes de copiar el campo anterior, sustituye PROJECT_ID por el nombre de tu proyecto.

    3. Selecciona Ejecutar.

    4. En el cuadro de diálogo de autorización, completa los pasos necesarios.

      La respuesta es similar a la siguiente:

      {
      "name": "projects/my-project/locations/global/scopes/_Default",
      "logScope": "logging.googleapis.com/projects/my-project/locations/global/logScopes/_Default"
      "traceScope": "projects/my-project/locations/global/traceScopes/_Default"
      }
      

    Más información sobre los permisos

    Para obtener más información sobre los ámbitos, consulta los siguientes documentos: