Este producto no es compatible con el sitio Datadog seleccionado. ().

Información general

Para añadir definiciones de entidad a Software Catalog, puedes:

  • crear definiciones manualmente a través de la interfaz de usuario de Datadog.
  • gestionar las definiciones en el código y automatizar la importación a través de GitHub, Terraform o la API de Datadog.

A través de la interfaz de usuario de Datadog

Para crear definiciones de entidades en la interfaz de usuario de Datadog:

  1. Ve a la página Software Catalog Setup & Config (Configuración de Software Catalog).

  2. Haz clic en Create a New Entry (Crear una nueva entrada).

  3. Especifica los detalles de tu servicio, incluidos metadatos como propiedad y enlaces a documentación.

  4. (Opcional) Cambia a YAML o JSON para ver el código generado y el comando cURL. En los editores de código, Datadog marca automáticamente los datos no válidos.

    Editor de metadatos de servicio que muestra la definición de servicios de muestra.
  5. Envía los metadatos haciendo clic en Save Entry (Guardar entrada) o ejecutando el comando cURL proporcionado.

    Nota: Debes tener Permiso de escritura de Software Catalog para guardar la entrada.

Mediante la automatización

Para automatizar la importación a través de GitHub, Terraform, el proveedor de metadatos de software de Datadog o la API de definición de servicios de Datadog:

Crear la definición de entidad

  1. Crea service.datadog.yaml o entity.datadog.yaml para definir tu entidad (Datadog acepta ambos nombres de archivo).

  2. Nombra tu entidad en el campo dd-service (esquema versión v2.2 o anterior) o name (esquema versión v3.0+).

    Por ejemplo:

    service.datadog.yaml

        schema-version: v2.2
        dd-service: my-unmonitored-cron-job
        team: e-commerce
        lifecycle: production
        application: shopping-app
        description: important cron job for shopist backend
        tier: "2"
        type: web
        contacts:
        - type: slack
        contact: https://datadogincidents.slack.com/archives/XXXXX
        links:
        - name: Common Operations
        type: runbook
        url: https://datadoghq.atlassian.net/wiki/
        - name: Disabling Deployments
        type: runbook
        url: https://datadoghq.atlassian.net/wiki/
        tags: []
        integrations:
        pagerduty:
        service-url: https://datadog.pagerduty.com/service-directory/XXXXXXX
        Recursos externos (opcional)
       
  3. (Opcional) Registra varios servicios en un archivo YAML separando cada definición con tres guiones (---).

Importar la definición

Importa la definición de una de las siguientes maneras:

  1. Terraform: crea e importa la definición como un recurso de Terraform.

    Nota: La creación y gestión de servicios en Software Catalog a través de pipelines automatizados requiere el proveedor de Datadog v3.16.0 o posterior.

  2. APIs de Datadog: importa tu definición utilizando la API de Definición de servicios (para el esquema v2.x) o la API de Software Catalog (para el esquema v3+), que son soluciones de código abierto de acción de GitHub.

  3. GitHub: configura la integración de Datadog y GitHub para gestionar e importar tus definiciones.

Integración en GitHub

Configura la integración con GitHub para enlazar directamente desde donde ves la definición del servicio en Software Catalog hasta donde está almacenado y es editable en GitHub. Datadog busca los archivos service.datadog.yaml y entity.datadog.yaml en cada repositorio con permisos de lectura.

Para instalar la integración de GitHub:

  1. Navega hasta el cuadro de integración.
  2. Haz clic en Link GitHub Account (Cuenta de enlace de GitHub) en la pestaña Repo Configuration (Configuración del repositorio).

Cuando la integración de GitHub está configurado para tus definiciones, aparece un botón Edit in GitHub (Editar en GitHb) en la pestaña Definition (Definición) y te enlaza con GitHub para confirmar los cambios.

Un botón Editar en GitHub aparece en la pestaña Definición de un servicio en Software Catalog

Una vez actualizados los archivos YAML de tus repositorios, los cambios se propagan al Software Catalog. Puedes registrar varios servicios en un archivo YAML creando varios documentos YAML. Separa cada documento con tres guiones (---).

Para evitar sobrescrituras accidentales, crea y modifica tus archivos de definición con la integración de GitHub o con los endpoints de la API de definición. Actualizar el mismo servicio utilizando tanto GitHub como la API puede dar lugar a sobrescrituras involuntarias.

Validación de la integración

Para validar las definiciones de servicio incorporadas por la integración de GitHub de Datadog, puedes ver los eventos cuando se actualizan los servicios o cuando se produce un error. Para ver los errores de validación en Event Management, filtra por source:software_catalog y status:error. Ajusta el marco temporal según sea necesario.

Evento de Github que muestra un mensaje de error desde la definición de servicio.

Referencias adicionales