Descripción general

Para usar Azure Cloud Cost Management en Datadog, debe configurar la integración de Datadog Azure y crear exportaciones de Costo amortizado y Costo real en Azure. Además, Datadog debe tener permisos para leer las exportaciones del contenedor.

Datadog proporciona visibilidad de costos a nivel de suscripción, grupo de recursos y cuenta de facturación. Los acuerdos de cliente de Microsoft (MCA) se pueden configurar en los tres contextos. Para determinar su tipo de cuenta, consulte la documentación de Azure.

Cuentas de pago por uso (PAYG)

Datadog Cloud Cost Management requiere exportaciones de Costo real y Costo amortizado desde Azure. Las suscripciones PAYG (Microsoft Online Services Program) generalmente solo proporcionan exportaciones de Detalles de uso (solo uso), por lo que no se pueden configurar para CCM. Para conocer los tipos de exportación disponibles para cada tipo de cuenta de Azure, consulte la documentación de exportaciones de Cost Management de Microsoft.

Si su suscripción es PAYG, considere una de las siguientes opciones:

  • Migre a un Contrato de cliente de Microsoft (MCA) o un Contrato Enterprise (EA), los cuales admiten los tipos de exportación requeridos.
  • Comuníquese con el soporte de Microsoft Azure para confirmar los tipos de exportación disponibles para su suscripción.

Para obtener ayuda con la configuración de Datadog CCM o para discutir opciones, comuníquese con el soporte de Datadog.

Configuración

Puede realizar la configuración mediante la API, Terraform o directamente en Datadog siguiendo las instrucciones a continuación.

Nota: Si está utilizando el sitio US3 de Datadog, es posible que haya configurado la integración nativa de Datadog Azure mediante el método de recursos de Datadog a través de Azure Portal. Para admitir Cloud Cost Management, debe crear un registro de aplicación.

Configure la integración de Azure

Navegue a Setup & Configuration, agregue una cuenta de Azure y siga los pasos para configurar la integración de Azure.

Página de configuración de CCM con la opción Terraform seleccionada, mostrando el paso 1 y el paso 2 expandidos para configurar el contexto y los detalles de exportación

Seleccione el tipo de contexto

Use el menú desplegable para seleccionar el tipo de contexto para su cuenta. CCM admite los tipos de contexto de cuenta de facturación, suscripción y grupo de recursos.

Seleccione los recursos a crear

La configuración de Terraform admite tres configuraciones según sus recursos de Azure existentes:

  • Nueva configuración: Seleccione Create storage account and container para crear una cuenta de almacenamiento, un contenedor y exportaciones de costos.
  • Cuenta de almacenamiento y contenedor existentes: Deseleccione Create storage account and container y seleccione Create cost exports para usar el almacenamiento existente pero crear nuevas exportaciones de costos.
  • Cuenta de almacenamiento, contenedor y exportaciones de costos existentes: Deseleccione ambas opciones para usar el almacenamiento y las exportaciones de costos existentes.

Configure el contexto y los detalles de exportación

Ingrese los siguientes detalles para su configuración:

  • Billing account or Subscription ID: Dependiendo del contexto seleccionado en el paso 1, el ID de cuenta de facturación o el ID de suscripción correspondiente.
  • Resource group name: El nombre de su grupo de recursos existente en el contexto seleccionado. Se requiere un grupo de recursos preexistente para la configuración de Terraform.
  • Location: La ubicación de Azure de su grupo de recursos. Por ejemplo, East US 2.
  • Storage account and container name: Dependiendo de los recursos que haya seleccionado crear, los nombres de su cuenta de almacenamiento y contenedor nuevos o preexistentes.
  • Actual cost export name and path: El nombre y la ruta de su exportación de costos reales.
  • Amortized cost export name and path: El nombre y la ruta de su exportación de costos amortizados.
    • Nota: Los siguientes formatos de prefijo no son compatibles: vacío, que comience con / (como / o /cost), o que termine con / (como cost/). Los prefijos que contienen / en el medio son compatibles (como cost/hourly).

Copie el HCL de Terraform del recurso de Azure generado y aplique los cambios

Después de completar los campos en el Paso 2, el Paso 3 habilita y muestra el HCL de Terraform generado. Siga las instrucciones para configurar sus archivos de configuración de Terraform con este código. Resuelva cualquier problema que aparezca al ejecutar terraform plan o terraform apply antes de regresar a CCM para configurar las exportaciones de costos.

Acceda a la consola de Azure para configurar las exportaciones

Active la partición de archivos para ambas exportaciones

Abra el enlace de la consola de Azure para localizar sus exportaciones de costos. Si es necesario, cambie el contexto actual al correcto para sus exportaciones. Para ambas exportaciones, la real y la amortizada, selecciónelas y haga clic en Edit para activar la partición de archivos si aún no está habilitada.

Haga clic en el botón Ejecutar ahora en el panel lateral de exportación para generar las exportaciones

Guarde los cambios de la partición de archivos y haga clic en Run Now. Regrese a CCM una vez que ambas ejecuciones de exportación se hayan realizado correctamente.

Copie el HCL de Datadog generado y aplique los cambios

Siga las instrucciones en el paso Apply Datadog Terraform HCL. Resuelva cualquier problema que aparezca al ejecutar terraform plan o terraform apply antes de regresar a CCM para confirmar la creación de la cuenta.

Página de configuración de CCM con la opción Manual seleccionada, mostrando el Paso 1 y el Paso 2 expandidos para configurar el tipo de contexto y seleccionar las exportaciones existentes

Genere exportaciones de costos

Debe generar exportaciones para dos tipos de datos: real y amortizado. Datadog recomienda usar el mismo contenedor de almacenamiento para ambas exportaciones.

  1. Navegue a [Cost Management | Configuration][5] en Tools > Cost Management > Settings > Configuration del portal de Azure y haga clic en Exports.

    En el portal de Azure resaltando la opción Exportaciones en la navegación
  2. Seleccione el contexto de exportación ubicado junto al filtro de búsqueda.

    Nota: El contexto debe ser billing account, subscription o resource group.

  3. Después de seleccionar el contexto, haga clic en Schedule export.

    En el portal de Azure resaltando el contexto de exportación y el botón de programación
  4. Seleccione la plantilla Cost and usage (actual + amortized)

    Página de nueva exportación con las opciones de plantilla y manual resaltadas
  5. Haga clic en Edit en cada exportación y confirme los siguientes detalles:

    • Frecuencia: Daily export of month-to-date costs

    • Control de versiones de conjuntos de datos:

      • Versiones admitidas: 2021-10-01, 2021-01-01, 2020-01-01
      • Versiones no admitidas: 2019-10-01
      Detalles de exportación con métrica: Actual, tipo de exportación: diaria y control de versiones de conjuntos de datos
  6. Ingrese un “Prefijo de exportación” para las nuevas exportaciones. Por ejemplo, ingrese datadog para evitar conflictos con exportaciones existentes.

  7. En la pestaña Destination, seleccione los siguientes detalles:

    • Elija Azure blob storage como tipo de almacenamiento.
    • Elija una cuenta de almacenamiento, un contenedor y un directorio para las exportaciones.
      • Nota: No utilice caracteres especiales como . en estos campos.
      • Nota: Las exportaciones de facturación pueden almacenarse en cualquier suscripción. Si está creando exportaciones para varias suscripciones, Datadog recomienda almacenarlas en la misma cuenta de almacenamiento. Los nombres de las exportaciones deben ser únicos.
    • Elija CSV o Parquet como formato.
    • Elija el tipo de compresión. Para CSV: se admiten Gzip y None. Para Parquet: se admiten Snappy y None.
    • Asegúrese de que File partitioning esté marcado.
    • Asegúrese de que Overwrite data no esté marcado.
      • Nota: Datadog no admite la configuración Overwrite data. Si la configuración estaba marcada anteriormente, asegúrese de limpiar los archivos en el directorio o moverlos a otro.
    Destino de exportación con configuraciones de partición de archivos y sobrescritura de datos
  8. En la pestaña Review + create, seleccione Create.

  9. Genere los primeros exports manualmente haciendo clic en Run Now. Espere a que se complete correctamente antes de continuar.

Haga clic en el botón Ejecutar ahora en el panel lateral de exportación para generar las exportaciones

Proporcione a Datadog acceso a sus exports

Otorgue a Datadog acceso de lectura a la cuenta de almacenamiento donde se guardan sus exports.

  1. En la pestaña Exports, haga clic en la cuenta de almacenamiento de la exportación para navegar a ella.
  2. Haga clic en la pestaña Containers.
  3. Elija el contenedor en el que se encuentran sus facturas.
  4. Seleccione la pestaña Access Control (IAM) y haga clic en Add.
  5. Elija Add role assignment.
  6. Elija Storage Blob Data Reader, luego haga clic en Next.
  7. Asigne estos permisos a uno de los registros de la aplicación que haya conectado con Datadog.
    • Haga clic en Select members, seleccione el nombre del registro de la aplicación y haga clic en Select. Nota: Si no ve su registro de la aplicación en la lista, comience a escribir el nombre para que la interfaz se actualice y lo muestre, si está disponible.
    • Seleccione Review + assign.

Si sus exports están en diferentes contenedores de almacenamiento, repita los pasos del uno al siete para el otro contenedor de almacenamiento.

  1. En la pestaña Exports, haga clic en la cuenta de almacenamiento de la exportación para navegar a ella.
  2. Haga clic en la pestaña Containers.
  3. Elija el contenedor en el que se encuentran sus facturas.
  4. Seleccione la pestaña Access Control (IAM) y haga clic en Add.
  5. Elija Add role assignment.
  6. Elija Storage Blob Data Reader, luego haga clic en Next.
  7. Asigne estos permisos a uno de los registros de la aplicación que haya conectado con Datadog.
    • Haga clic en Select members, seleccione el nombre del registro de la aplicación y haga clic en Select.
    • Seleccione Review + assign.

Si sus exports están en diferentes contenedores de almacenamiento, repita los pasos del uno al siete para el otro contenedor de almacenamiento.

Configure el acceso de lector de Cloud Cost Management

Nota: No necesita configurar este acceso si su contexto es Billing Account.

  1. Vaya a sus suscripciones y haga clic en el nombre de su suscripción.
  2. Seleccione la pestaña Access Control (IAM).
  3. Haga clic en Add, luego en Add role assignment.
  4. Elija Cost Management Reader, luego haga clic en Next.
  5. Asigne estos permisos al registro de la aplicación.

Esto ayuda a garantizar una precisión total de los costos al permitir cálculos de costos periódicos en Microsoft Cost Management.

Nota: Los datos pueden tardar entre 48 y 72 horas después de la configuración en estabilizarse en Datadog.

Nota: Si tiene los permisos adecuados en el registro de la aplicación pero su red está bloqueando las IP de webhook de Datadog, es posible que encuentre errores que parecen estar relacionados con los permisos.

Para resolver esto, agregue las IP de webhook de Datadog a su lista de permitidos de red visitando la sección Webhooks en https://ip-ranges..

Configure Cloud Cost en Datadog

Vaya a Setup & Configuration y siga los pasos.

Realice la migración de exports de un EA a un MCA

Azure no migra automáticamente las definiciones de exports de costos de un Contrato Enterprise (EA) a un Contrato de Cliente de Microsoft (MCA). Para obtener más información, consulte la documentación de incorporación de MCA de Microsoft.

El siguiente proceso conserva los datos históricos de EA para las configuraciones de Datadog que utilizan un contexto de cuenta de facturación, suscripción o grupo de recursos.

  1. Registre la siguiente configuración para los exports de EA tanto reales como amortizados:
    • Nombre del export, incluyendo mayúsculas y minúsculas
    • Cuenta de almacenamiento
    • Contenedor
    • Directorio de almacenamiento y prefijo del export
    • Versión del conjunto de datos, formato y tipo de compresión
  2. Después de que se ejecuten los exports finales del período de EA, deshabilite los exports programados de EA, pero mantenga sus definiciones. No permita que los exports programados de EA y MCA escriban en el mismo destino al mismo tiempo.
  3. Deje la configuración de Azure Cloud Cost Management en Datadog habilitada y sin cambios. Para un contexto de cuenta de facturación, Datadog conserva el ID de EA.
  4. Después de que el MCA se vuelva activo, vuelva a crear los exports reales y amortizados en el contexto de MCA correspondiente utilizando Terraform o el portal de Azure. Utilice los nombres del export, la cuenta de almacenamiento, el contenedor, el directorio y el prefijo registrados de los exports de EA.

Datadog continúa leyendo los archivos históricos de EA desde el destino existente y agrega datos de MCA al mismo historial de costos.

No complete fechas de EA desde un contexto de MCA

Un export de MCA no incluye costos del EA anterior. Ejecutar un export de MCA único para un rango de fechas de EA puede escribir un manifiesto vacío más reciente en el destino compartido. Datadog lee el export más reciente de cada mes, por lo que el manifiesto vacío puede poner en cero los datos de EA que se ingirieron anteriormente.

Para completar datos después de una migración de EA a MCA, utilice el acuerdo que cubrió las fechas solicitadas:

  • Para fechas anteriores a la fecha de vigencia de MCA, ejecute los exports únicos reales y amortizados desde el contexto de EA anterior.
  • Para fechas en o después de la fecha de vigencia de MCA, ejecute las exportaciones únicas reales y amortizadas desde el contexto de MCA.

Si el contexto de EA anterior no está disponible, comuníquese con el Soporte de Microsoft para solicitar los exports históricos. Si cambió un nombre o destino de export, o eliminó y volvió a crear la configuración de Datadog, comuníquese con Soporte de Datadog. No cree exports adicionales únicos o programados hasta que el Soporte de Datadog revise la configuración.

Obtención de datos históricos

Azure exporta datos de costos a partir del mes en que creó el export. Datadog ingiere automáticamente hasta 15 meses de datos de costos históricos disponibles de estos exports. Puede rellenar manualmente hasta 12 meses de datos de costos de Azure utilizando la interfaz de usuario de Azure Cost Exports.

Nota: Si migró de un EA a un MCA, siga las instrucciones de migración antes de ejecutar un export histórico.

  1. Complete las instrucciones en las secciones Configuración y Configurar Cloud Cost en Datadog anteriores.
  2. Espere hasta 24 horas para que los datos de costos aparezcan en Datadog y asegúrese de que la integración funcione de principio a fin antes de comenzar el proceso de backfill. Nota: Si ya completó la configuración y los datos de costos aparecen en Datadog, puede proceder directamente a los pasos de backfill a continuación.
  3. Exporte manualmente un informe real y amortizado para cada mes calendario. Por ejemplo, para junio de 2025:
    1. Editar el export
    2. Cambie el tipo de export a One-time export
    3. Establezca From en 06-01-2025 Nota: Este debe ser el primer día del mes.
    4. Establezca End en 06-30-2025 Nota: Este debe ser el último día del mes.
    5. Guarde el export Nota: Esto ejecuta el export automáticamente
    6. Espere a que el export termine de ejecutarse
  4. Revierta tanto los exports reales como los amortizados a su estado original para reanudar los exports diarios:
    1. Editar el export
    2. Cambie el tipo de export a Daily export of month-to-date costs
    3. Guarde el export

Datadog descubre e ingiere automáticamente estos datos, y deberían aparecer en Datadog en un plazo de 24 horas.

También puede crear datos históricos en su cuenta de almacenamiento utilizando el Microsoft API o creando un ticket de soporte con Microsoft. Asegúrese de que la estructura de archivos y la partición sigan el formato de las exportaciones programadas.

Tipos de costo

Puede visualizar sus datos ingeridos utilizando los siguientes tipos de costo:

Tipo de costoDescripción
azure.cost.amortizedCosto basado en las tasas de descuento aplicadas más la distribución de los pagos anticipados a lo largo del uso durante el plazo del descuento (base de devengo).
azure.cost.actualCosto mostrado como el monto cobrado en el momento del uso (base de efectivo). Los costos reales incluyen descuentos privados, así como descuentos de instancias reservadas y planes de ahorro como tipos de cargo separados.
azure.cost.discounted.ondemandCosto basado en la tarifa de lista proporcionada por Azure, después de los descuentos negociados de forma privada. Para obtener el costo real bajo demanda, divida esta métrica por (1 - <negotiated_discount>). Por ejemplo, si tiene un descuento de tarifa plana del 5% en todos los productos de Azure, tomar esta métrica y dividirla por .95 (1-.05) proporciona el precio real bajo demanda.

Etiquetas predeterminadas

Datadog enriquece automáticamente sus datos de costos de Azure con etiquetas de múltiples fuentes. Para obtener una descripción general completa de cómo se aplican las etiquetas a los datos de costos, consulte Tags.

Las siguientes etiquetas predeterminadas se derivan de su informe de costos de uso y facilitan la detección y comprensión de los datos de costos:

Nombre de la etiquetaDescripción de la etiqueta
accountnameEl nombre de la cuenta asociada con la partida.
accountowneridEl ID del propietario asociado con la partida.
billingaccountidEl ID de la cuenta de facturación asociada con la partida.
billingaccountnameEl nombre de la cuenta de facturación asociada con la partida.
billingcurrencyLa moneda asociada con la cuenta de facturación.
billingperiodEl período de facturación del cargo.
billingperiodenddateLa fecha de finalización del período de facturación.
billingperiodstartdateLa fecha de inicio del período de facturación.
billingprofileidEl identificador único de la inscripción del Contrato Enterprise.
billingprofilenameEl nombre de la inscripción del Contrato Enterprise.
chargetypeEl tipo de cargo que cubre la partida: Usage, Purchase o Refund.
consumedserviceEl nombre del servicio con el que está asociada la partida.
costcenterEl centro de costos definido para la suscripción para el seguimiento de costos.
costinbillingcurrencyEl costo en la moneda de facturación antes de créditos o impuestos.
costinpricingcurrencyEl costo en la moneda de precios antes de créditos o impuestos.
currencyLa moneda asociada con la cuenta de facturación.
dateLa fecha de uso o compra del cargo.
effectivepriceEl precio unitario combinado para el período. Los precios combinados promedian cualquier fluctuación en el precio unitario, como la escala gradual, que reduce el precio a medida que aumenta la cantidad.
exchangeratedateLa fecha en la que se estableció el tipo de cambio.
exchangeratepricingtobillingEl tipo de cambio utilizado para convertir el costo en la moneda de precios a la moneda de facturación.
frequencyIndica si se espera que un cargo se repita. Los cargos pueden ocurrir una vez (OneTime), repetirse de forma mensual o anual (Recurring), o basarse en el uso (Usage)
InvoiceIdEl ID de documento único que aparece en el PDF de la factura.
invoicesectionidEl ID de la sección de factura de MCA.
invoicesectionnameEl nombre del departamento del Contrato Enterprise (EA).
isazurecrediteligibletrue si el cargo es elegible para pagarse mediante créditos de Azure.
locationLa ubicación del centro de datos donde se ejecuta el recurso.
metercategoryEl servicio de nivel superior al que pertenece este uso (como Networking).
meteridEl ID único del medidor.
meternameLos detalles de uso de la partida (como L8s v2 o General Purpose Data Stored).
meterregionLa ubicación del centro de datos para los servicios con precios basados en la ubicación (como West US 2). Use resourcelocation para ver los datos de ubicación sin N/A.
metersubcategoryEl nombre de la categoría de subclasificación del medidor (como General Purpose - Storage). Use metername o metercategory para ver la clasificación de nivel superior sin N/A.
offeridEl nombre de la oferta adquirida.
partnumberEl ID utilizado para obtener precios específicos del medidor.
plannameEl nombre del plan de marketplace si se adquirió a través de marketplace.
PreviousInvoiceIdReferencia a una factura original si esta partida es un reembolso.
PricingCurrencyLa moneda utilizada al realizar la valoración basada en precios negociados.
pricingmodelEl tipo de uso (como Reservation).
ProductIdEl identificador de un producto de Azure específico.
productnameEl nombre del producto de Azure a un nivel granular, como el tipo de VM o disco y la región.
productorderidEl ID del pedido de producto. Use productname para ver información de productos de nivel superior sin N/A.
productordernameEl nombre del pedido de producto. Use productname para ver información de productos de nivel superior sin N/A.
publishernameEl editor de servicios de marketplace.
publishertypeEl tipo de editor: Microsoft para cuentas de Contrato de cliente de Microsoft y Azure para cuentas de Contrato Enterprise.
reservationidEl ID de la instancia de reserva comprada. Si ve valores N/A, estos son recursos OnDemand, que se pueden verificar mediante la etiqueta pricingmodel.
reservationnameEl nombre de la instancia de reserva comprada. Si ve valores N/A, estos son recursos OnDemand, que se pueden verificar mediante la etiqueta pricingmodel.
resourcegroupEl nombre del grupo de recursos en el que se encuentra el recurso. No todos los cargos provienen de recursos implementados en grupos de recursos.
resourceidEl ID del recurso de Azure.
resourcelocationLa ubicación del centro de datos donde se ejecuta el recurso (como westus2).
resourcenameEl nombre del recurso. No todos los cargos provienen de recursos implementados.
resourcetypeEl tipo de recurso de Azure.
servicefamilyLa familia de servicios a la que pertenece el servicio (como Compute). La etiqueta consumedservice tiene información más detallada sobre los tipos de infraestructura.
ServicePeriodEndDateLa fecha de finalización del período de servicio de Azure.
ServicePeriodStartDateLa fecha de inicio del período de servicio de Azure.
subscriptionidEl ID de la suscripción de Azure.
subscriptionnameEl nombre de la suscripción de Azure.
termDescribe la duración o el plazo del Plan de ahorro en meses (como 12).
unitofmeasureLa unidad de medida para la facturación del servicio. Por ejemplo, los servicios de cómputo se facturan por hora.

Correlación de costos y observabilidad

Ver los costos en el contexto de los datos de observabilidad es importante para entender cómo los cambios en la infraestructura afectan los costos, identificar por qué cambian los costos y optimizar la infraestructura tanto para los costos como para el rendimiento. Datadog agrega la etiqueta name en los datos de costos para los principales productos de Azure a fin de simplificar la correlación de las métricas de observabilidad y costos.

Por ejemplo, para ver el costo y la utilización de cada VM de Azure, puede crear una tabla con azure.cost.amortized y azure.vm.network_in_total (o cualquier otra métrica de VM) y agrupar por name. O, para ver el uso y los costos de almacenamiento lado a lado, puede filtrar por metercategory:Storage y graficar azure.storage.transactions y azure.cost.amortized agrupados por name.

Lecturas adicionales