diff --git a/content/es/account_management/billing/ci_visibility.md b/content/es/account_management/billing/ci_visibility.md new file mode 100644 index 00000000000..e036ccdb5cb --- /dev/null +++ b/content/es/account_management/billing/ci_visibility.md @@ -0,0 +1,39 @@ +--- +algolia: + tags: + - ci visibility + - facturación de ci visibility + - preguntas sobre la facturación de ci visibility + - precios de de ci visibility +further_reading: +- link: /continuous_integration/pipelines + tag: Documentación + text: Más información sobre la visibilidad de pipelines +- link: /continuous_integration/guides/ingestion_control + tag: Documentación + text: Más información sobre controles de ingestión para CI Visibility +title: Facturación de CI Visibility +--- + +## Información general + +Esta guía proporciona una lista no exhaustiva de consideraciones relativas a la facturación para [CI Visibility][1]. + +## Recuento de committers + +Un committer es un colaborador activo de Git, identificado por su dirección de correo electrónico de autor de Git. En términos de facturación, se incluye un committer si realiza al menos tres commits en un mes determinado. + +## Cargos por commits realizados por bots o acciones realizadas en la interfaz de usuario de GitHub + +Datadog no cobra por bots o commits resultantes de acciones realizadas en la interfaz de usuario de GitHub. Estos tipos de commits se excluyen de los cálculos de facturación. + +## Excluir los commits de determinadas personas + +Sí, puedes excluir commits de determinadas personas utilizando [filtros de exclusión][2]. + +## Referencias adicionales + +{{< partial name="whats-next/whats-next.html" >}} + +[1]: /es/continuous_integration/pipelines +[2]: /es/continuous_integration/guides/ingestion_control \ No newline at end of file diff --git a/content/es/account_management/org_settings/cross_org_visibility.md b/content/es/account_management/org_settings/cross_org_visibility.md index ca4a9756ad5..9c30f17e961 100644 --- a/content/es/account_management/org_settings/cross_org_visibility.md +++ b/content/es/account_management/org_settings/cross_org_visibility.md @@ -1,11 +1,16 @@ --- -is_beta: true -private: true +algolia: + tags: + - cross org + - cross-org + - entre organizaciones +description: Comparte datos y realiza consultas entre distintas organizaciones en + la misma cuenta. title: Visibilidad entre organizaciones --- -{{< callout url="#" header="false" btn_hidden="true">}} - La visibilidad entre organizaciones está en fase beta privada para los clientes con planes Enterprise. Si estás interesado en tener esta función, ponte en contacto con tu gestor técnico de cuentas o gestor de éxito del cliente. +{{< callout url="#" btn_hidden="true">}} + La visibilidad entre organizaciones está en Vista previa. {{< /callout >}} @@ -24,15 +29,22 @@ En este documento, se explica lo siguiente: ### Conexión de la organización -Una organización _de origen_ expone datos a una organización _de destino_ a través de una _conexión de organización_. Las organizaciones de Datadog de origen y de destino deben estar en la misma [cuenta][1]. Una organización de origen puede tener varios destinos, y una organización de destino puede tener varios orígenes. +Una organización _fuente_ expone datos a una organización _destino_ a través de una _conexión de organización_. Una organización source (fuente) puede tener varios destinos y una organización de destino puede tener varias fuentes. -Después de configurar una conexión de organización, los datos expuestos siguen viviendo en la organización de origen y no se mueven al destino. En su lugar, la organización de destino consulta los datos desde el origen. Las conexiones no duplican los datos y no incurren en gastos adicionales. La organización de destino puede consultar los datos de origen desde cualquier intervalo de tiempo admitido por los datos de origen, incluso antes de la fecha de creación de la conexión. Si eliminas la conexión, el destino ya no podrá acceder a ningún dato del origen. +Las siguientes limitaciones se aplican a las conexiones de la organización: +- Las organizaciones source (fuente) y de destino deben estar en la misma [cuenta][1] +- Las organizaciones source (fuente) y de destino deben estar en el mismo [sitio][11]. +- Una organización puede compartirlo con hasta otras 5 organizaciones. + +Ten en cuenta que una vez establecida la connection (conexión), la organización de destino puede consultar los datos de la organización source (fuente) de la misma forma que puede consultar sus propios datos. Esto significa que los datos de la organización source (fuente) -incluidos los datos confidenciales- pueden consultarse y mostrarse según lo permita el control de acceso de la organización de destino y otras configuraciones. Esto puede incluir, por ejemplo, la capacidad de la organización de destino para crear [Dashboards públicos][10] utilizando los datos de la organización source (fuente), incluso si la propia configuración de la organización source (fuente) no permite la creación de Dashboards públicos. + +Después de configurar una connection (conexión) de la organización, los datos expuestos siguen almacenados en la organización source (fuente) y no se trasladan al destino. En su lugar, la organización de destino consulta los datos desde source (fuente). Las conexiones no duplican los datos y no incurren en gastos adicionales. La organización de destino puede consultar los datos de source (fuente) a partir de cualquier intervalo de tiempo admitido por los datos de source (fuente), incluso antes de la fecha de creación de la connection (conexión). Si eliminas la connection (conexión), el destino ya no podrá acceder a ningún dato de source (fuente) y es posible que las consultas o los Dashboards creados a partir de los datos de la organización source (fuente) dejen de funcionar. ### Contexto -La visibilidad entre organizaciones admite la telemetría de métricas en [widgets de dashboard y notebook] privados[2]. +La visibilidad entre organizaciones es compatible con la telemetría de gestión de métricas y logs en [Widgets de dashboard y notebook][2]. -Se admiten todos los tipos de métricas, incluidas [métricas personalizadas][3], [métricas de trazas][4] y [métricas generadas a partir de logs][5]. +Se admiten todos los tipos de métricas, incluidas [métricas personalizadas][3], [métricas de trazas (traces)][4] y [métricas generadas a partir de logs][5]. ## Configurar conexiones @@ -40,23 +52,25 @@ Se admiten todos los tipos de métricas, incluidas [métricas personalizadas][3] Para examinar las conexiones, ve a la [página de visibilidad entre organizaciones][6] en Parámetros de organización. La tabla enumera todas tus conexiones entre organizaciones. -### Crear una conexión +El listado de conexiones requiere el permiso _Lectura de conexiones de organizaciones_. Además, puedes utilizar [control de acceso granular][12] para restringir el acceso a conexiones individuales según el equipo, el rol o el usuario. + +### Crear una connection (conexión) -La creación de una conexión entre organizaciones permite consultar métricas desde la organización de origen en la organización de destino. +La creación de una connection (conexión) entre organizaciones permite consultar las métricas de la organización source (fuente) en la organización de destino. La creación de conexiones requiere el permiso _Escritura de conexiones de organizaciones_. -1. Asegúrate de haber iniciado sesión en la organización _de origen_ que contiene los datos que deseas exponer. +1. Asegúrate de haber iniciado sesión en la organización _fuente_ que contiene los datos que deseas exponer. 1. En la [página de visibilidad entre organizaciones][6], haz clic en **New Connection** (Nueva conexión). Aparece el cuadro de diálogo **New Connection** (Nueva conexión). 1. En el menú desplegable, selecciona la organización _de destino_ en la que deseas ver los datos. 1. Haz clic en **Connect** (Conectar). -### Eliminar una conexión +### Eliminar una connection (conexión) -Al eliminar una conexión, se desactiva la consulta entre organizaciones desde la organización de destino de las métricas de la organización de origen. +La eliminación de una connection (conexión) deshabilita la consulta entre organizaciones desde la organización de destino de las métricas de la organización source (fuente). La eliminación de conexiones requiere el permiso _Escritura de conexiones de organizaciones_. -1. Navega hasta la [página de visibilidad entre organizaciones][6] en Parámetros de organización. -1. Sitúa el cursor sobre la conexión que deseas eliminar. Aparecerá un icono de papelera (**Eliminar**) a la derecha. -1. Haz clic en el icono de la papelera (**Eliminar**) sobre la conexión que deseas suprimir. Aparecerá el mensaje **Are you sure?** (¿Estás seguro?). -1. Haz clic en **Eliminar**. +1. Ve a la [página de visibilidad entre organizaciones][6] en Parámetros de organización. +1. Sitúa el cursor sobre la connection (conexión) que deseas eliminar. Aparecerá un icono de la papelera (**Eliminar**) a la derecha. +1. Haz clic en el icono de la papelera (**Eliminar**) sobre la connection (conexión) que deseas suprimir. Aparecerá el mensaje **Are you sure?** (¿Estás seguro?). +1. Haz clic en **Delete** (Borrar). ### En la API @@ -73,18 +87,18 @@ Cada consulta en un widget puede mostrar datos de una sola organización. Puedes Los widgets de dashboard y notebook te permiten crear consultas entre organizaciones cuando se cumplen las siguientes condiciones: - Tienes habilitada la visibilidad entre organizaciones en tu organización -- Existe al menos una conexión en la que la organización actual es el destino +- Existe al menos una connection (conexión) en la que la organización actual es el destino -Si se cumplen las condiciones anteriores, aparecerá un selector desplegable de organización entre los menús desplegables de tipo de datos y nombre de métrica. Utiliza el selector desplegable de organización para elegir una organización de origen para tu consulta. +Si se cumplen las condiciones anteriores, aparecerá un selector desplegable de organización entre los menús desplegables de tipo de datos y nombre de métrica. Utiliza el selector desplegable de organización para elegir una organización source (fuente) para tu consulta. En la siguiente captura de pantalla, se muestra un ejemplo de consulta de fórmula entre organizaciones. El widget representa gráficamente el número de eventos incorporados por servicio. Para obtener el número total de eventos, la fórmula de consulta entre organizaciones suma los datos de la organización A (en la consulta **a**) y la organización B (en la consulta **b**). -{{< img src="account_management/org_settings/cross_org_visibility/cross_org_query.png" alt="Captura de pantalla que muestra la configuración de un widget de dashboard con una consulta entre organizaciones" >}} +{{< img src="account_management/org_settings/cross_org_visibility/cross_org_query-1.png" alt="Captura de pantalla que muestra la configuración de un widget de dashboard con una consulta entre organizaciones" >}} ### En la API
-El proveedor de Datadog Terraform no admite consultas entre organizaciones. +El proveedor Terraform de Datadog no admite la creación de conexiones entre organizaciones. Sin embargo, puedes gestionar un dashboard que contenga widgets con consultas entre organizaciones a través de Terraform exportando el dashboard a JSON.
Puedes definir consultas entre organizaciones en el siguiente endpoint: @@ -135,7 +149,7 @@ El parámetro `cross_org_uuids` es opcional. Si omites `cross_org_uuids`, la con Observa el parámetro `cross_org_uuids` en la carga de la definición del widget de JSON. - Este parámetro es opcional. Si se omite, la consulta se ejecuta en la organización en la que se ha definido el widget. - Utiliza el identificador de organización, que puedes recuperar del [endpoint Organizaciones][9], para identificar la organización en la que se ejecuta la consulta. -- Aunque este parámetro acepta una matriz, ésta debe contener un solo elemento. Si se añaden varios elementos a la matriz `cross_org_uuids`, se produce un error 400. +- Aunque este parámetro acepta una matriz, esta debe contener un solo elemento. Si se añaden varios elementos a la matriz `cross_org_uuids`, se produce un error 400. [1]: /es/account_management/multi_organization/ [2]: /es/dashboards/widgets @@ -145,4 +159,7 @@ Observa el parámetro `cross_org_uuids` en la carga de la definición del widget [6]: https://app.datadoghq.com/organization-settings/cross-org-visibility [7]: /es/account_management/org_settings/cross_org_visibility_api [8]: /es/api/latest/metrics/#query-timeseries-data-across-multiple-products -[9]: /es/api/latest/organizations/#list-your-managed-organizations \ No newline at end of file +[9]: /es/api/latest/organizations/#list-your-managed-organizations +[10]: /es/dashboards/sharing/shared_dashboards/#public-shared-dashboards +[11]: /es/getting_started/site +[12]: /es/account_management/rbac/granular_access \ No newline at end of file diff --git a/content/es/actions/datastore/_index.md b/content/es/actions/datastore/_index.md index 4af2ab9e91c..a16a3918a75 100644 --- a/content/es/actions/datastore/_index.md +++ b/content/es/actions/datastore/_index.md @@ -4,90 +4,22 @@ aliases: - /es/service_management/app_builder/datastore/ disable_toc: false further_reading: -- link: service_management/app_builder/build - tag: Documentación - text: Crear aplicaciones -- link: service_management/workflows/build - tag: Documentación - text: Crear flujos de trabajo +- link: https://www.datadoghq.com/blog/datadog-datastore/ + tag: Blog + text: Mejorar tus aplicaciones y flujos de trabajo automatizados con Datastore title: Datastore --- -{{< callout url="https://docs.google.com/forms/d/1NvW3I0Ep-lQo4FbiSwOEjccoFsS9Ue2wYiYDmCxKDYg/viewform?edit_requested=true" btn_hidden="false" header="Únete a la Vista previa">}} -Datastore está en vista previa. Utiliza este formulario para solicitar acceso hoy mismo. -{{< /callout >}} - -## Información general - -Apps Datastore ofrece una solución de almacenamiento de datos estructurada y escalable dentro de los productos App Builder y Automatización de flujos de trabajo de Datadog. Admite operaciones CRUD (crear, leer, actualizar y eliminar) y se integra a la perfección con el ecosistema de Datadog para optimizar el almacenamiento persistente de datos sin necesidad de bases de datos externas. +Actions Datastore ofrece una solución de almacenamiento de datos estructurada y escalable dentro de los productos App Builder y Workflow Automation de Datadog. Los Datastores admiten operaciones CRUD (Create, Read, Update y Delete) y se integran perfectamente con el ecosistema de Datadog para optimizar el almacenamiento de datos persistentes sin necesidad de bases de datos externas. Puedes interactuar con un almacén de datos mediante una aplicación o un flujo de trabajo, o puedes utilizar la interfaz de usuario de la aplicación Datadog. - -## Requisitos previos - -Para interactuar con Apps Datastore, tu cuenta de Datadog debe tener los siguientes [permisos][6], que se incluyen en el rol estándar de Datadog: - -* `apps_datastore_read`: Permite el acceso de lectura a los datos de Apps Datastore. -* `apps_datastore_write`: Permite la modificación de datos dentro de Apps Datastore, incluyendo la adición, edición y eliminación de registros. - -Para utilizar la [interfaz de usuario de Apps Datastore][1] también necesitas el siguiente permiso que también se incluye en el rol estándar de Datadog: - -* `apps_datastore_manage`: Permite la gestión de Apps Datastore, incluida la creación, actualización y eliminación del propio almacén de datos. - - -## Crear un almacén de datos - -Para crear un almacén de datos: - -1. Ve a la [página de Datastore][1]. -1. Haz clic en **+ New Datastore** (+ Nuevo almacén de datos). -1. Introduce un **Nombre**, una **Clave principal** y, opcionalmente, una **Descripción** para tu almacén de datos. La clave principal debe ser un nombre de columna en tus datos, donde cada fila de datos tiene un valor único. -1. _Opcionalmente_, para cargar elementos iniciales en tu almacén de datos, utiliza uno de los siguientes métodos para copiar un archivo CSV: - * Arrastra y suelta el archivo en la interfaz de usuario. - * Haz clic en **browse files** (examinar archivos) para examinar y seleccionar un archivo de tu ordenador. - * Copia un archivo CSV en tu ordenador y utiliza Ctrl/Cmd + V para pegarlo. - - El archivo CSV debe incluir una fila para el encabezado con una columna que coincida con tu clave principal. -1. Haz clic en **Create** (Crear). -1. Para ver tu almacén de datos en la lista, haz clic en **Refresh Results** (Actualizar resultados). - -Después de rellenar tu almacén de datos con datos, puedes: - -* Buscar el almacén de datos utilizando la casilla **Buscar** en el encabezado. -* Haz clic en el nombre de una columna para ordenar el almacén de datos por los datos de esa columna. - - -## Editar un almacén de datos - -Para editar un almacén de datos, en la [página de Datastore][1] busca tu almacén de datos en la lista. Puedes realizar las siguientes operaciones: - -* Para añadir una fila, haz clic en el icono **+ (más)**. Introduce los valores de cada campo de la fila y haz clic en **Create** (Crear). -* Para editar valores que no sean de clave principal en una fila existente, pasa el ratón por encima de la fila y haz clic en el icono del **Lápiz (Editar)**. Edita los valores elegidos y haz clic en **Save** (Guardar). -* Para eliminar una fila existente, colócate sobre ella y haz clic en el icono de la **Papelera (Eliminar)**. Haz clic en **Delete** (Eliminar) para confirmar. - - -## Referencia a un almacén de datos - -Para utilizar valores de un almacén de datos en un flujo de trabajo o una aplicación: - -1. En la [página de Datastore][1], busca tu almacén de datos en la lista. -1. En el encabezado de tu almacén de datos, haz clic en el botón **Copy Datastore UUID** (Copiar UUID del almacén de datos). -1. Utiliza este UUID para hacer referencia a tu almacén de datos en un flujo de trabajo o aplicación. Utiliza las acciones [Eliminar elemento][2], [Obtener elemento][3], [Enumerar elementos][4] o [Colocar element][5] y proporciona el UUID como tu **ID de almacén de datos**. - - -## Eliminar un almacén de datos - -Para eliminar un almacén de datos, haz clic en el icono de la **Papelera (Eliminar almacén de datos)** del encabezado del almacén de datos que quieres eliminar y luego haz clic en **Confirm** (Confirmar). - +{{< whatsnext desc="Comenzar con Datastores:" >}} + {{< nextlink href="/actions/datastore/create/" >}}Crear y gestionar Datastores{{< /nextlink >}} + {{< nextlink href="/actions/datastore/use/" >}}Usar Datastores con aplicaciones y flujos de trabajo{{< /nextlink >}} + {{< nextlink href="/actions/datastore/auth/" >}}Acceso y autenticación{{< /nextlink >}} +{{< /whatsnext >}} ## Referencias adicionales -{{< partial name="whats-next/whats-next.html" >}} - -[1]: https://app.datadoghq.com/app-builder/datastore -[2]: https://app.datadoghq.com/workflow/action-catalog#/com.datadoghq.dd.apps_datastore/com.datadoghq.dd.apps_datastore.deleteDatastoreItem -[3]: https://app.datadoghq.com/workflow/action-catalog#/com.datadoghq.dd.apps_datastore/com.datadoghq.dd.apps_datastore.getDatastoreItem -[4]: https://app.datadoghq.com/workflow/action-catalog#/com.datadoghq.dd.apps_datastore/com.datadoghq.dd.apps_datastore.listDatastoreItems -[5]: https://app.datadoghq.com/workflow/action-catalog#/com.datadoghq.dd.apps_datastore/com.datadoghq.dd.apps_datastore.putDatastoreItem -[6]: /es/account_management/rbac/permissions/?tab=ui#app-builder--workflow-automation \ No newline at end of file +{{< partial name="whats-next/whats-next.html" >}} \ No newline at end of file diff --git a/content/es/agent/basic_agent_usage/saltstack.md b/content/es/agent/basic_agent_usage/saltstack.md index 4be8ac58060..064c190f248 100644 --- a/content/es/agent/basic_agent_usage/saltstack.md +++ b/content/es/agent/basic_agent_usage/saltstack.md @@ -5,7 +5,7 @@ title: SaltStack --- La fórmula SaltStack de Datadog se utiliza para instalar el Datadog Agent y las integraciones basadas en el Agent (checks). Para obtener más información sobre las fórmulas SaltStack, consulta las [instrucciones de instalación y uso de fórmulas Salt][1]. -## Configuración +## Configurar ### Requisitos diff --git a/content/es/agent/guide/azure-private-link.md b/content/es/agent/guide/azure-private-link.md index e92510b4a6e..ca1f80bc345 100644 --- a/content/es/agent/guide/azure-private-link.md +++ b/content/es/agent/guide/azure-private-link.md @@ -1,5 +1,5 @@ --- -title: Conéctate a Datadog a través de Azure Private Link +title: Conectarse a Datadog a través de Azure Private Link --- {{% site-region region="us,us5,eu,gov,ap1" %}} @@ -11,41 +11,41 @@ title: Conéctate a Datadog a través de Azure Private Link Datadog expone parte de sus servicios de consumo de datos como [servicios de Azure Private Link][2]. -Puedes configurar Azure Private Link para exponer una dirección IP privada por cada servicio de consumo de Datadog; esta dirección IP enruta el tráfico al backend de Datadog. A continuación, puedes configurar una [zona DNS privada][3] de Azure para anular los nombres DNS correspondientes a los productos de cada endpoint consumido. +Puedes configurar Azure Private Link para exponer una dirección IP privada por cada servicio de consumo de Datadog. Esta dirección IP enruta el tráfico al backend de Datadog. A continuación, puedes configurar una [zona DNS privada][3] de Azure para anular los nombres DNS correspondientes a los productos de cada endpoint consumido. -## Python +## Configuración -### Conectar un endpoint +### Conexión de un endpoint -1. En el portal de Azure, ve a **Private Link**. +1. En el portal de Azure, ve a **Private Link** (Enlace privado). 2. En el menú de navegación de la izquierda, selecciona **Private endpoints** (Endpoints privados). 3. Selecciona **Create** (Crear). 4. En la página **Create a private endpoint** > **Basics** (Crear un endpoint privado > Aspectos básicos), configura: - En **Project details** (Detalles del proyecto), selecciona la **Subscription** (Suscripción) y el **Resource group** (Grupo de recursos) desde los que los recursos de producción deben acceder a Private Link. - - En **Instance details** (Detalles de la instancia), ingresa un **Name** (Nombre) (por ejemplo, `datadog-api-private-link`) y selecciona tu **Region** (Región). + - En **Instance details** (Detalles de la instancia), introduce un **Name** (Nombre) (por ejemplo, `datadog-api-private-link`) y selecciona tu **Region** (Región). Selecciona **Next: Resource** (Siguiente: Recurso) para continuar. 5. En la página **Create a private endpoint** > **Resource** (Crear un endpoint privado > Recurso), configura lo siguiente: - - Para **Connection method** (Método de conexión), selecciona **Connect to an Azure resource by resource ID or alias** (Conectarse a un recurso Azure por ID de recurso o alias). - - En **Resource ID or alias** (Recurso ID o alias), introduce el nombre del servicio de Private Link que corresponda al servicio de consumo de Datadog que quieres utilizar. Puedes encontrar este nombre de servicio en la [tabla de servicios publicados](#published-servicios). + - En **Connection method** (Método de conexión), selecciona **Connect to an Azure resource by resource ID or alias** (Conectarse a un recurso Azure por ID de recurso o alias). + - En **Resource ID or alias** (ID de recurso o alias), introduce el nombre del servicio de Private Link que corresponda al servicio de consumo de Datadog que quieres utilizar. Puedes encontrar este nombre de servicio en la [tabla de servicios publicados](#published-services). - Opcionalmente, en **Request message** (Mensaje de solicitud), puedes introducir tu dirección de correo electrónico (asociada a una cuenta de Datadog). Esto ayuda a Datadog a identificar tu solicitud y a ponerse en contacto contigo, si es necesario. - Selecciona **Next: Virtual Network** (Siguiente: Virtual red) para continuar. + Selecciona **Next: Virtual Network** (Siguiente: Red virtual) para continuar. 6. En la página **Create a private endpoint** > **Virtual Network** (Crear un endpoint privado > Red virtual), configura lo siguiente: - En **Networking** (Redes), selecciona la **Virtual network** (Red virtual) y la **Subnet** (Subred) donde debe estar alojado el endpoint. Normalmente, se encuentra en la misma red que los recursos informáticos que necesitan acceder al endpoint privado. - En **Private DNS integration** (Integración de DNS privado), selecciona **No**. - Selecciona **Next: Tags** (Siguiente: Etiquetas (tags) para continuar. -7. En la página **Create a private endpoint** > **Tags** (Crear un endpoint privado > Etiquetas (tags), puedes configurar opcionalmente etiquetas. Selecciona **Next** (Siguiente). + Selecciona **Next: Tags** (Siguiente: Etiquetas (tags)) para continuar. +7. En la página **Create a private endpoint** > **Tags** (Crear un endpoint privado > Etiquetas), puedes configurar opcionalmente etiquetas. Selecciona **Next** (Siguiente). 8. En la página **Review + create** (Revisar + crear), revisa tus configuraciones. A continuación, selecciona **Create** (Crear). -9. Una vez creado tu endpoint privado, búscalo en lista. Toma nota de la **IP privada** de este endpoint, ya que se utilizará en la siguiente sección. +9. Una vez creado tu endpoint privado, búscalo en lista. Toma nota de la dirección **IP privada** de este endpoint, ya que se utilizará en la siguiente sección. -### Crear una zona DNS privada +### Creación de una zona DNS privada 1. En el portal Azure, ve a **Private DNS zones** (Zonas DNS privadas). 2. Selecciona **Create** (Crear). 3. En la página **Create Private DNS zone** > **Basics** (Crear zona DNS privada > Aspectos básicos), configura: - En **Project details** (Detalles del proyecto), selecciona la **Subscription** (Suscripción) y el **Resource group** (Grupo de recursos) desde los que los recursos de producción deben acceder al endpoint privado. - - En **Instance details** (Detalles de la instancia), en **Name** (Nombre), introduce el nombre de DNS privado que corresponde al servicio de consumo de Datadog que quieres utilizar. Puedes encontrar este nombre servicio en la [tabla de servicios publicados](#published-servicios). + - En **Instance details** (Detalles de la instancia), en **Name** (Nombre), introduce el nombre de DNS privado que corresponde al servicio de consumo de Datadog que quieres utilizar. Puedes encontrar este nombre de servicio en la [tabla de servicios publicados](#published-services). Selecciona **Review + create** (Revisar + crear). 4. Revisa tus configuraciones. A continuación, selecciona **Create** (Crear). @@ -57,21 +57,35 @@ Puedes configurar Azure Private Link para exponer una dirección IP privada por - En **IP address** (Dirección IP), introduce la dirección IP que anotaste al final de la sección anterior. Selecciona **OK** (Aceptar) para finalizar. +### Pasos adicionales necesarios para métricas y trazas (traces) +Dos servicios de ingesta de Datadog son subdominios del dominio del `agent.`{{< region-param key="dd_site" code="true" >}}. Debido a esto, la zona DNS privada es ligeramente diferente de otras ingestas. + +Crea una zona DNS privada para el `agent.`{{< region-param key="dd_site" code="true" >}}, como se indica en la sección anterior. A continuación, añade los tres registros siguientes. + +| Nombre DNS | Tipo de registro de recursos | Dirección IPv4 | +| -------- |----------------------| ------------ | +| `(apex)` | A | Dirección IP de tu endpoint de métricas | +| `*` | A | Dirección IP de tu endpoint de métricas | +| `trace` | A | Dirección IP de tu endpoint de trazas | + +**Nota**: Esta zona requiere un registro comodín (`*`) que apunte a la dirección IP de tu endpoint de métricas. Esto se debe a que los Datadog Agents envían telemetría utilizando un endpoint versionado con el formato (`-app.agent.`{{< region-param key="dd_site" code="true" >}}). + ## Servicios publicados | Servicio de consumo de Datadog | Nombre de servicio de Private LInk | Nombre de DNS privado | | --- | --- | --- | | Logs (Agent) | `logs-pl-1.9941bd04-f840-4e6d-9449-368592d2f7da.westus2.azure.privatelinkservice` | `agent-http-intake.logs.us3.datadoghq.com` | +| Logs (OTel Collector con el Exportador Datadog) | `logs-pl-1.9941bd04-f840-4e6d-9449-368592d2f7da.westus2.azure.privatelinkservice` | `http-intake.logs.us3.datadoghq.com` | | Logs (Consumo HTTP del usuario) | `logs-pl-1.9941bd04-f840-4e6d-9449-368592d2f7da.westus2.azure.privatelinkservice` | `http-intake.logs.us3.datadoghq.com` | -| Python | `api-pl-1.0962d6fc-b0c4-40f5-9f38-4e9b59ea1ba5.westus2.azure.privatelinkservice` | `api.us3.datadoghq.com` | -| Facturación | `metrics-agent-pl-1.77764c37-633a-4c24-ac9b-0069ce5cd344.westus2.azure.privatelinkservice` | `metrics.agent.us3.datadoghq.com` | -| Ver una lista con todos los equipos de incidencias | `orchestrator-pl-1.8ca24d19-b403-4c46-8400-14fde6b50565.westus2.azure.privatelinkservice` | `orchestrator.us3.datadoghq.com` | -| Proceso | `process-pl-1.972de3e9-3b00-4215-8200-e1bfed7f05bd.westus2.azure.privatelinkservice` | `process.us3.datadoghq.com` | -| Elaboración de perfiles | `profile-pl-1.3302682b-5bc9-4c76-a80a-0f2659e1ffe7.westus2.azure.privatelinkservice` | `intake.profile.us3.datadoghq.com` | -| Trazas (traces) | `trace-edge-pl-1.d668729c-d53a-419c-b208-9d09a21b0d54.westus2.azure.privatelinkservice` | `trace.agent.us3.datadoghq.com` | -| Solucionar problemas | `fleet-pl-1.37765ebe-d056-432f-8d43-fa91393eaa07.westus2.azure.privatelinkservice` | `config.us3.datadoghq.com` | -| Conectar logs y trazas | `dbm-metrics-pl-1.e391d059-0e8f-4bd3-9f21-708e97a708a9.westus2.azure.privatelinkservice` | `dbm-metrics-intake.us3.datadoghq.com` | +| API | `api-pl-1.0962d6fc-b0c4-40f5-9f38-4e9b59ea1ba5.westus2.azure.privatelinkservice` | `api.us3.datadoghq.com` | +| Métricas | `metrics-agent-pl-1.77764c37-633a-4c24-ac9b-0069ce5cd344.westus2.azure.privatelinkservice` | `agent.us3.datadoghq.com` | +| Contenedores | `orchestrator-pl-1.8ca24d19-b403-4c46-8400-14fde6b50565.westus2.azure.privatelinkservice` | `orchestrator.us3.datadoghq.com` | +| Process | `process-pl-1.972de3e9-3b00-4215-8200-e1bfed7f05bd.westus2.azure.privatelinkservice` | `process.us3.datadoghq.com` | +| Generación de perfiles | `profile-pl-1.3302682b-5bc9-4c76-a80a-0f2659e1ffe7.westus2.azure.privatelinkservice` | `intake.profile.us3.datadoghq.com` | +| Trazas | `trace-edge-pl-1.d668729c-d53a-419c-b208-9d09a21b0d54.westus2.azure.privatelinkservice` | `agent.us3.datadoghq.com` | +| Configuración remota | `fleet-pl-1.37765ebe-d056-432f-8d43-fa91393eaa07.westus2.azure.privatelinkservice` | `config.us3.datadoghq.com` | +| Database Monitoring | `dbm-metrics-pl-1.e391d059-0e8f-4bd3-9f21-708e97a708a9.westus2.azure.privatelinkservice` | `dbm-metrics-intake.us3.datadoghq.com` | [1]: https://azure.microsoft.com/en-us/products/private-link [2]: https://learn.microsoft.com/en-us/azure/private-link/private-link-service-overview diff --git a/content/es/api/latest/rate-limits/_index.md b/content/es/api/latest/rate-limits/_index.md index 7a9dec28292..3be44f52444 100644 --- a/content/es/api/latest/rate-limits/_index.md +++ b/content/es/api/latest/rate-limits/_index.md @@ -15,20 +15,212 @@ En cuanto a la política de límite de tasa de API: - Datadog **no limita la tasa** de envío de puntos de datos/métricas (consulta la [sección de métricas][2] para más información sobre cómo se gestiona la tasa de envío de métricas). El cruce de límites depende de la cantidad de [métricas personalizadas][3] según tu acuerdo. - La API para el envío de logs no tiene un límite de tasa. -- El límite de tasa para el envío de eventos es de `500,000` eventos por hora y organización. +- El límite de tasa de envío es de `250,000` eventos por minuto y organización. - Los límites de tasa para los endpoints varían y se incluyen en los encabezados que se detallan a continuación. Estos pueden ampliarse bajo demanda.
La lista no incluye todos los límites de tasa de las API de Datadog. Si experimentas limitaciones de tasa, ponte en contacto con el soporte para obtener más información sobre las API que utilizas y sus límites.
-| Encabezados de límite de tasa | Descripción | +| Cabeceras de límites de tasa | Descripción | | ----------------------- | -------------------------------------------------------- | | `X-RateLimit-Limit` | Número de solicitudes permitidas en un periodo. | | `X-RateLimit-Period` | Duración en segundos de los reinicios (alineados con el calendario). | | `X-RateLimit-Remaining` | Número de solicitudes permitidas que quedan en el periodo actual. | | `X-RateLimit-Reset` | Tiempo en segundos hasta el próximo reinicio. | -| `X-RateLimit-Name` | Nombre del límite de tasa para las solicitudes de aumento. | +| `X-RateLimit-Name` | Nombre del límite de tasa para solicitudes de aumento. | + +### Métricas de uso de API Datadog + +Todas las API de Datadog tienen un límite de uso durante un periodo de tiempo determinado. Las API pueden tener buckets de límite de tasa únicos y distintos o agruparse en un único bucket en función de los recursos que se utilicen. Por ejemplo, la API de estado del monitor tiene un límite de tasa que permite a un humano o a un script de automatización realizar consultas sólo una cantidad determinada de veces por minuto. El endpoint rechaza el exceso de solicitudes mediante un código de respuesta 429 y una sugerencia para que se detenga hasta que transcurra un periodo de recuperación. Las métricas de uso de API permiten a los usuarios de Datadog realizar el autoservicio y auditar el consumo del límite de tasa de API de los endpoints de la API (excluyendo los endpoints de envío de métricas, logs y eventos). Estas métricas proporcionan una imagen de las solicitudes permitidas y bloqueadas, y se proporcionan con las siguientes dimensiones y etiquetas (tags) disponibles: + +{{% site-region region="us" %}}[Dashboard del uso del límite de tasa de la API Datadog](https://app.datadoghq.com/dash/integration/31668/datadog-api-rate-limit-usage){{% /site-region %}} +{{% site-region region="eu1" %}}[Dashboard del uso del límite de tasa de la API Datadog](https://app.datadoghq.eu/dash/integration/1386/datadog-api-rate-limit-usage){{% /site-region %}} +{{% site-region region="us3" %}}[Dashboard del uso del límite de tasa de la API Datadog](https://us3.datadoghq.com/dash/integration/2248/datadog-api-rate-limit-usage){{% /site-region %}} +{{% site-region region="us5" %}}[Dashboard del uso del límite de tasa de la API Datadog](https://us5.datadoghq.com/dash/integration/1421/datadog-api-rate-limit-usage){{% /site-region %}} +{{% site-region region="ap1" %}}[Dashboard del uso del límite de tasa de la API Datadog](https://ap1.datadoghq.com/dash/integration/2698/datadog-api-rate-limit-usage){{% /site-region %}} +{{% site-region region="gov" %}}[Dashboard del uso del límite de tasa de la API Datadog](https://app.ddog-gov.com/dash/integration/1330/datadog-api-rate-limit-usage){{% /site-region %}} + +#### Métricas disponibles + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DimensiónMétrica de usoDescripciónEtiquetas disponibles
Organizacióndatadog.apis.usage.per_orgLímite de tasa en toda la organización del número de solicitudes de API realizadas a un endpoint específico +
    +
  • app_key_id
  • +
  • child_org (sólo en la principal)
  • +
  • limit_count
  • +
  • limit_name
  • +
  • limit_period
  • +
  • rate_limit_status
  • +
  • user_uuid
  • +
+
datadog.apis.usage.per_org_ratioProporción de solicitudes de API por dimensiones disponibles para un número total de solicitudes (limit_count) permitidas. +
    +
  • app_key_id
  • +
  • child_org (sólo en la principal)
  • +
  • limit_count
  • +
  • limit_name
  • +
  • limit_period
  • +
  • rate_limit_status
  • +
  • user_uuid
  • +
+
Usuario (UUID)datadog.apis.usage.per_userNúmero de solicitudes de API realizadas para un endpoint de API específico cuya tasa está limitada por usuario único. +
    +
  • app_key_id
  • +
  • child_org (sólo en la principal)
  • +
  • limit_count
  • +
  • limit_name
  • +
  • limit_period
  • +
  • rate_limit_status
  • +
  • user_uuid
  • +
+
datadog.apis.usage.per_user_ratioProporción de solicitudes de API por dimensiones disponibles para un número total de solicitudes (limit_count) permitidas. +
    +
  • app_key_id
  • +
  • child_org (sólo en la principal)
  • +
  • limit_count
  • +
  • limit_name
  • +
  • limit_period
  • +
  • rate_limit_status
  • +
  • user_uuid
  • +
+
API Keydatadog.apis.usage.per_api_keyNúmero de solicitudes de API realizadas para un endpoint de API específico cuya tasa está limitada por clave de API única utilizada. +
    +
  • app_key_id
  • +
  • child_org (sólo en la principal)
  • +
  • limit_count
  • +
  • limit_name
  • +
  • limit_period
  • +
  • rate_limit_status
  • +
  • user_uuid
  • +
+
datadog.apis.usage.per_api_key_ratioProporción de solicitudes de API por dimensiones disponibles para un número total de solicitudes (limit_count) permitidas. +
    +
  • app_key_id
  • +
  • child_org (sólo en la principal)
  • +
  • limit_count
  • +
  • limit_name
  • +
  • limit_period
  • +
  • rate_limit_status
  • +
  • user_uuid
  • +
+
+ + +#### Clave de etiqueta + + +| Nombre de etiqueta | Descripción | +|---------------------|---------------------------------------------------------------------------------------------------------------------------| +| `app_key_id` | ID de la clave de aplicación utilizada por el cliente de la API. Puede ser `N/A` para usuarios web o móviles y endpoints abiertos. | +| `child_org` | Nombre de la organización secundaria, si se visualiza desde la organización principal. De lo contrario, se define en `N/A`. Esto sólo se aplica dentro del mismo centro de datos. | +| `limit_count` | Número de solicitudes disponibles para cada nombre de límite de tasa durante un periodo de solicitud. | +| `limit_name` | Nombre del límite de tasa. Diferentes endpoints pueden compartir el mismo nombre. | +| `limit_period` | Tiempo en segundos para cada nombre de límite de tasa antes de que se reinicie el recuento de consumo. | +| `rate_limit_status` | `passed`: Solicitud no bloqueada.
`blocked` : La solicitud fue bloqueada debido a que se infringieron los límites de tasa. | +| `user_uuid` | UUID del usuario del consumo de API. | + +#### Rollup en widgets + +Por lo general, las visualizaciones de métricas deben resumirse al minuto utilizando sum(60s) para agregar el número total de solicitudes por minuto. + +Las métricas de proporción ya están normalizadas con respecto al correspondiente `limit_period`. + +##### Ejemplos de uso + +Solicitudes por nombre de límite de tasa +: Grafica la suma de `datadog.apis.usage.per_org`, `datadog.apis.usage.per_user` y `datadog.apis.usage.per_api_key` por `limit_name`

+ **Ejemplo:** `default_zero(sum:datadog.apis.usage.per_org{*} by {limit_name}) + default_zero(sum:datadog.apis.usage.per_user{*} by {limit_name}) + default_zero(sum:datadog.apis.usage.per_api_key{*} by {limit_name})` + +Bloqueado por nombre de límite de tasa +: Grafica la suma de `datadog.apis.usage.per_org`, `datadog.apis.usage.per_user` y `datadog.apis.usage.per_api_key` por `limit_name` con `rate_limit_status:blocked`

+ **Ejemplo:** `default_zero(sum:datadog.apis.usage.per_org{rate_limit_status:blocked} by {limit_name}) + default_zero(sum:datadog.apis.usage.per_user{rate_limit_status:blocked} by {limit_name}) + default_zero(sum:datadog.apis.usage.per_api_key{rate_limit_status:blocked} by {limit_name})` + +Endpoint bloqueado por usuario +: Grafica la suma de `datadog.apis.usage.per_org`, `datadog.apis.usage.per_user` y `datadog.apis.usage.per_api_key` por `user_uuid` con `rate_limit_status:blocked` y `limit_name:example`

+ **Ejemplo:** `default_zero(sum:datadog.apis.usage.per_org{rate_limit_status:blocked,limit_name:example} by {user_uuid}) + default_zero(sum:datadog.apis.usage.per_user{rate_limit_status:blocked,limit_name:example} by {user_uuid}) + default_zero(sum:datadog.apis.usage.per_api_key{rate_limit_status:blocked,limit_name:example} by {user_uuid})` + +Endpoint bloqueado por ID de clave de aplicación +: Grafica la suma de `datadog.apis.usage.per_org`, `datadog.apis.usage.per_user` y `datadog.apis.usage.per_api_key` por `app_key_id` con `rate_limit_status:blocked` y `limit_name:example`

+ **Ejemplo:** `default_zero(sum:datadog.apis.usage.per_org{rate_limit_status:blocked,limit_name:example} by {app_key_id}) + default_zero(sum:datadog.apis.usage.per_user{rate_limit_status:blocked,limit_name:example} by {app_key_id}) + default_zero(sum:datadog.apis.usage.per_api_key{rate_limit_status:blocked,limit_name:example} by {app_key_id})` + +Proporción de límites de tasa utilizados por nombre de límite de tasa +: Grafica la suma de `datadog.apis.usage.per_org_ratio`, `datadog.apis.usage.per_user_ratio` y `datadog.apis.usage.per_api_key_ratio` por `limit_name`

+ **Ejemplo:** `default_zero(max:datadog.apis.usage.per_org_ratio{*} by {limit_name}) + default_zero(max:datadog.apis.usage.per_user_ratio{*} by {limit_name}) + default_zero(max:datadog.apis.usage.per_api_key_ratio{*} by {limit_name})` + + +### Aumentar tu límite de tasa +Puedes solicitar un aumento de los límites de tasa creando un ticket de asistencia con los siguientes detalles en **Ayuda** > **Nuevo ticket de asistencia**. Cuando recibimos una solicitud de aumento de límite de tasa, nuestro equipo de Ingeniería de soporte revisa la solicitud caso por caso y, si es necesario, trabaja junto a los recursos internos de Ingeniería para confirmar la viabilidad de la solicitud de aumento de límite de tasa. + + Título: + Solicitud de aumento de límite de tasa en endpoint: X + + Detalles: + Querríamos solicitar un aumento del límite de tasa para el endpoint de API: X + Ejemplo de casos de uso/consultas: + Ejemplo de llamada de API como cURL o como URL con carga útil de ejemplo + + Motivos para aumentar el límite de tasa: + Ejemplo: Nuestra organización utiliza este endpoint para dimensionar correctamente un contenedor antes de desplegarlo. Este despliegue tiene lugar cada X horas o hasta Y veces al día. + + Límite de tasa deseado: + Consejo: Tener en mente un aumento específico del límite o del porcentaje ayuda a ingeniería de soporte a agilizar la solicitud a los equipos internos de Ingeniería para su revisión. + +Una vez que el servicio de asistencia de Datadog revise y apruebe el caso de uso, podrá aplicar el aumento del límite de tasa entre bastidores. Ten en cuenta que existe un límite máximo para el aumento del límite de tasa debido a la naturaleza SaaS de Datadog. El servicio de asistencia de Datadog se reserva el derecho a rechazar aumentos del límite de tasa en función de los casos de uso y las recomendaciones del equipo de Ingeniería. + +### Logs de auditoría +Las métricas de límite y uso de API proporcionan información sobre patrones de uso y solicitudes bloqueadas. Si necesitas más información, Audit Trail ofrece una visibilidad más detallada de la actividad de la API. + +Con Audit Trail, puedes ver datos como: +* **Dirección IP y geolocalización** - Identifica dónde se originaron las solicitudes de API. +* **Tipo de actor** - Distingue entre cuentas de servicio y cuentas de usuario. +* **Autenticación mediante API frente a autenticación mediante clave de aplicación** - Descubre si las solicitudes se realizaron a través de una clave de API o directamente por un usuario. +* **Eventos correlacionados** - Consulta otros eventos que ocurran al mismo tiempo, como cambios de configuración o acciones relacionadas con la seguridad. + +Audit Trail puede ayudar a los equipos de asistencia a solucionar problemas de límites de tasa al proporcionar más contexto sobre el consumo de API y las solicitudes bloqueadas. También permite realizar un seguimiento del uso de la API en toda la organización por motivos de seguridad y cumplimiento. + +Para obtener una visibilidad más detallada de la actividad de la API, considera el uso de **[Audit Trail][4]**. + [1]: /es/help/ [2]: /es/api/v1/metrics/ -[3]: /es/metrics/custom_metrics/ \ No newline at end of file +[3]: /es/metrics/custom_metrics/ +[4]: /es/account_management/audit_trail/events/ \ No newline at end of file diff --git a/content/es/cloudcraft/components-aws/vpn-gateway.md b/content/es/cloudcraft/components-aws/vpn-gateway.md new file mode 100644 index 00000000000..ce0acac9db9 --- /dev/null +++ b/content/es/cloudcraft/components-aws/vpn-gateway.md @@ -0,0 +1,63 @@ +--- +title: Componente de VPN Gateway +--- +## Información general + +Utiliza el componente VPN Gateway para representar conexiones de VPN de sitio a sitio en tu arquitectura de Amazon Web Services. + +{{< img src="cloudcraft/components-aws/vpn-gateway/component-vpn-gateway-diagram.png" alt="Captura de pantalla de un diagrama isométrico de Cloudcraft que muestra el componente de AWS VPN Gateway." responsive="true" style="width:60%;">}} + +## Barra de herramientas + +Utiliza la barra de herramientas para configurar y personalizar el componente. Dispone de las siguientes opciones: + +- **Color**: selecciona un color predefinido o ingresa el valor hexadecimal del color para el componente y su énfasis. El componente puede usar el mismo color para la vista 2D y 3D, o colores diferentes para cada una. +- **Rotate** (Rotar): rota el componente y cambia su dirección. +- **Connections**: ver, eliminar o añadir conexiones VPN a esta gateway. + +## API + +Utiliza la [API de Cloudcraft][1] para acceder mediante programación y renderizar tus diagramas de arquitectura como objetos JSON. + +### Esquema + +A continuación, se muestra un JSON de ejemplo de un componente VPN Gateway: + +```json +{ + "type": "vpngateway", + "id": "1a4851fe-8357-4896-876b-f2d3040d108c", + "region": "us-east-1", + "mapPos": [11.5,12], + "color": { + "isometric": "#000000", + "2d": "#000000" + }, + "accentColor": { + "isometric": "#ffeb3b", + "2d": "#ffeb3b" + }, + "direction": "down", + "link":" blueprint://58c2aeae-d5b7-4a50-83ea-b3fa9d17d3f5", + "locked": true +} +``` + +- **type: vpngateway**: el tipo de componente. +- **id: string**: un identificador único para el componente en el formato `uuid`. +- **region: string**: la región de AWS en la que se despliega la puerta de enlace. Se admiten todas las regiones globales excepto las regiones `cn-`. +- **mapPos: [number, number]**: la posición del componente en el proyecto, expresada como un par de coordenadas x e y. +- **color: object**: el color de relleno para el cuerpo del componente. + - **isometric: string**: el color de relleno para el componente en la vista 3D. Debe ser un color hexadecimal. + - **2d: string**: el color de relleno para el componente en la vista 2D. Debe ser un color hexadecimal. +- **accentColor: object**: el color de énfasis utilizado para mostrar el logotipo del componente en el bloque. + - **isometric: string**: el color de énfasis del componente en la vista 3D. Debe ser un color hexadecimal. + - **2d: string**: el color de énfasis del componente en la vista 2D. Debe ser un color hexadecimal. +- **direction: string**: la rotación o dirección del componente. Acepta `down` o `right`. Por defecto es `down`. +- **link: uri**: vincula el componente a otro diagrama con el formato `blueprint://ID` o a un sitio web externo con el formato `https://LINK`. +- **locked: boolean**: si es `true`, los cambios realizados en el componente mediante la aplicación se desactivan hasta que se desbloquean. + +El componente VPN Gateway sólo puede añadirse a [VPCs][2]. + +[1]: https://developers.cloudcraft.co/ +[2]: /es/cloudcraft/components-aws/vpc/ \ No newline at end of file diff --git a/content/es/cloudcraft/getting-started/system-requirements.md b/content/es/cloudcraft/getting-started/system-requirements.md new file mode 100644 index 00000000000..44498e2656f --- /dev/null +++ b/content/es/cloudcraft/getting-started/system-requirements.md @@ -0,0 +1,7 @@ +--- +title: Requisitos del sistema +--- + +Para una experiencia de usuario ideal, Cloudcraft recomienda utilizar Google Chrome u otros navegadores basados en Chromium, como Microsoft Edge, Brave y Opera. Es posible que experimentes problemas de rendimiento al utilizar otros navegadores, como Firefox y Safari. + +
Cloudcraft podría no funcionar correctamente con versiones beta o preliminares de navegadores.
\ No newline at end of file diff --git a/content/es/cloudprem/processing.md b/content/es/cloudprem/processing.md new file mode 100644 index 00000000000..8082f16e9ec --- /dev/null +++ b/content/es/cloudprem/processing.md @@ -0,0 +1,159 @@ +--- +description: Más información sobre cómo configurar tus pipelines de procesamiento + en CloudPrem +further_reading: +- link: /logs/log_configuration/processors/ + tag: Documentación + text: Procesadores Datadog Log Management +- link: /cloudprem/ + tag: Documentación + text: Información general de CloudPrem +- link: /cloudprem/installation/ + tag: Documentación + text: Instalar CloudPrem y enviar logs con el Agent +- link: /cloudprem/ingress/ + tag: Documentación + text: Configurar el ingreso a CloudPrem +- link: /cloudprem/aws_config + tag: Documentación + text: Configurar AWS +- link: /cloudprem/cluster/ + tag: Documentación + text: Más información sobre el dimensionamiento y las operaciones de clúster +- link: /cloudprem/architecture/ + tag: Documentación + text: Más información sobre la arquitectura de CloudPrem +- link: /cloudprem/troubleshooting/ + tag: Documentación + text: Solucionar problemas +private: true +title: Configuración de procesamiento +--- + +
CloudPrem está en Vista previa.
+ +## Información general + +CloudPrem incluye una función de procesamiento que te permite analizar y enriquecer logs. Analiza automáticamente logs con formato JSON. Puedes definir pipelines y procesadores para extraer información significativa o atributos del texto semiestructurado, que luego pueden utilizarse en las agregaciones. + +
Los pipelines y procesadores de logs de CloudPrem fueron diseñados para equipararse a los pipelines y procesadores de logs basados en la nube de Datadog.
+ +Para ver la lista de procesadores compatibles y no compatibles, consulta [Compatibilidad con pipelines basados en la nube](#compatibility-with-cloud-based-pipelines). + +Puedes configurar pipelines de procesamiento de logs utilizando un archivo JSON que siga el mismo formato de las configuraciones de pipelines de Datadog. + +## Configurar el procesamiento + +1. (Opcional) Si ya tienes pipelines basados en la nube en Datadog, puedes recuperar la configuración utilizando la [API de pipelines de logs][2]: + + ```bash + curl -X GET "https://api.datadoghq.com/api/v1/logs/config/pipelines" \ + -H "Accept: application/json" \ + -H "DD-API-KEY: ${DD_API_KEY}" \ + -H "DD-APPLICATION-KEY: ${DD_APP_KEY}" > pipelines-config.json + ``` + +Este archivo JSON se puede utilizar directamente con CloudPrem. + +2. Para definir la configuración en el Helm chart, proporciona la ruta a tu archivo de configuración JSON utilizando el parámetro `pipelinesConfig` en el Helm chart de CloudPrem: + + ```bash + helm repo update + helm upgrade -n --set-file pipelinesConfig=./pipelines-config.json -f datadog-values.yaml + ``` + + CloudPrem genera un mensaje informativo (`Successfully read pipeline config file`) cuando lee con éxito el archivo de configuración. Cualquier procesador definido en el archivo que no sea compatible con CloudPrem se ignorará durante el inicio. + **Nota**: Helm impone un límite de tamaño de 1 MB en el archivo de configuración debido a su almacenamiento etcd subyacente. + +## Formato del archivo de configuración + +La configuración es una matriz JSON, en la que cada elemento representa un procesador o un pipeline anidado. + +El orden de los elementos en la matriz define el orden de ejecución secuencial de los procesadores. La estructura refleja el resultado del endpoint de la API Datadog `api/v1/log/config/pipelines`. + + +```json +[ + { + // processor1 details + }, + { + // processor2 details + } +] +``` + +```json +[ + { + "type": "pipeline", + "id": "U73LOMZ9QG2iM-04OcXypA", + "name": "cluster agent logs parsing", + "enabled": true, + "filter": { + "query": "service:cluster-agent" + }, + "processors": [ + { + "type": "grok-parser", + "id": "xn2WAzysQ1asaasdfakjf", + "enabled": true, + "grok": { + "supportRules": "", + "matchRules": "agent_rule %{date(\"yyyy-MM-dd HH:mm:ss z\"):timestamp} \\| %{notSpace:agent} \\| %{word:level} \\| \\(%{notSpace:filename}:%{number:lineno} in %{word:process}\\) \\|( %{data::keyvalue(\":\")} \\|)?( - \\|)?( \\(%{notSpace:pyFilename}:%{number:pyLineno}\\) \\|)?%{data}\nagent_rule_pre_611 %{date(\"yyyy-MM-dd HH:mm:ss z\"):timestamp} \\| %{word:level} \\| \\(%{notSpace:filename}:%{number:lineno} in %{word:process}\\)%{data}\njmxfetch_rule %{date(\"yyyy-MM-dd HH:mm:ss z\"):timestamp} \\| %{notSpace:agent} \\| %{word:level}\\s+\\| %{word:class} \\| %{data}" + } + }, + { + "id": "xnsd5oanXq2893utcsQ", + "type": "status-remapper", + "enabled": true, + "sources": ["level"] + }, + { + "type": "date-remapper", + "id": "xn2WAzysQ1asdjJsb9dfb", + "enabled": true, + "sources": ["timestamp"] + } + ] + } +] +``` + +## Compatibilidad con pipelines basados en la nube + +El procesamiento de CloudPrem está diseñado para alinearse estrechamente con [Datadog Log Management][3] basado en la nube, permitiendo el uso directo de las configuraciones existentes de pipelines de logs. Esto se consigue ignorando los procesadores desconocidos o no compatibles. Sin embargo, existen algunas diferencias: +- Algunas consultas de filtro no se pueden analizar, como los filtros con comodines combinados (por ejemplo, `@data.message:+*`). +- El filtro de `message` tiene un comportamiento de coincidencia diferente (también afecta al procesador de categorías). +- CloudPrem utiliza una expresión regular (regex) para buscar la palabra, pero debe tokenizar el texto y tratar de hacer coincidir con los tokens. Las frases también se ignoran. +- Los groks utilizan internamente expresiones regulares. Los motores de regex pueden tener un comportamiento de coincidencia ligeramente diferente. +- Algunos patrones grok no se pueden analizar (por ejemplo, `%{?>notSpace:db.severity}`). + +Los procesadores ignorados aparecen como una advertencia en los log del indexador. + +### Procesadores compatibles: +- reasignador de atributos +- procesador de categorías +- reasignador de fechas +- analizador grok (compatibilidad limitada) +- reasignador de mensajes +- pipeline +- reasignador de servicios +- reasignador de estados +- procesador del compilador de cadenas +- reasignador de ID de traza + +### Procesadores no compatibles: +- procesador aritmético +- analizador ip geo +- procesador de búsqueda +- analizador de url +- analizador Agent usuario + +## Referencias adicionales + +{{< partial name="whats-next/whats-next.html" >}} + +[1]: /es/logs/log_configuration/pipelines/?tab=source +[2]: /es/api/latest/logs-pipelines/#get-all-pipelines +[3]: /es/logs/log_configuration/processors/ \ No newline at end of file diff --git a/content/es/containers/kubernetes/log.md b/content/es/containers/kubernetes/log.md new file mode 100644 index 00000000000..acedd962340 --- /dev/null +++ b/content/es/containers/kubernetes/log.md @@ -0,0 +1,543 @@ +--- +aliases: +- /es/agent/kubernetes/log +further_reading: +- link: /agent/kubernetes/apm/ + tag: Documentación + text: Recopila tus trazas de aplicaciones +- link: /agent/kubernetes/prometheus/ + tag: Documentación + text: Recopila tus métricas de Prometheus +- link: /agent/kubernetes/integrations/ + tag: Documentación + text: Recopila las métricas de tus aplicaciones y logs automáticamente +- link: /agent/guide/autodiscovery-management/ + tag: Documentación + text: Limita la recopilación de datos solo a un subconjunto de contenedores +- link: /agent/kubernetes/tag/ + tag: Documentación + text: Asignar etiquetas (tags) a todos los datos emitidos por un contenedor +title: Recopilación de logs de Kubernetes +--- + +Esta página trata sobre la recopilación de logs a partir de los archivos de log de Kubernetes. + +Cuando tus aplicaciones en contenedores escriben sus logs a la salida y al error (`stdout`/`stderr`) estándar, el tiempo de ejecución del contenedor y Kubernetes gestionan automáticamente los logs. El patrón por defecto consiste en que [Kubernetes almacene estos flujos (streams) de logs como archivos][13] en el host, en la carpeta `/var/log/pods` y las subcarpetas de cada pod y contenedor. + +El Datadog Agent puede recopilar estos archivos de logs Kubernetes de estos contenedores siguiendo las instrucciones que se indican a continuación. Esta opción se adapta bien a la naturaleza efímera de los pods que crea Kubernetes y es más eficiente en cuanto a recursos que la recopilación de logs desde el socket Docker. Datadog recomienda este método para la recopilación de logs en Kubernetes. + +Alternativamente, el Datadog Agent también puede recopilar logs mediante solicitudes repetidas a la API Docker a través del socket Docker. Sin embargo, esto requiere que Docker sea el tiempo de ejecución del contenedor de tu clúster Kubernetes. Esto también consume más recursos que el uso de archivos de logs. Para saber cómo recopilar logs utilizando el socket Docker, consulta [Recopilación de logs con el socket Docker][1]. Si tus aplicaciones en contenedores escriben en archivos de logs almacenados en un contenedor, esto puede complicar la recopilación de logs. Consulta la [recopilación de logs a partir de un archivo](#from-a-container-local-log-file). + +## Configuración + +### Recopilación de logs + +Antes de empezar a recopilar logs de aplicación, asegúrate de que estás ejecutando el Datadog Agent en tu clúster Kubernetes. + +Para configurar la recopilación de logs manualmente con un DaemonSet, consulta [Recopilación de logs con DaemonSet][9]. De lo contrario, sigue las siguientes instrucciones: + +{{< tabs >}} +{{% tab "Datadog Operator" %}} + +Actualiza tu manifiesto `datadog-agent.yaml` con: + +```yaml +apiVersion: datadoghq.com/v2alpha1 +kind: DatadogAgent +metadata: + name: datadog +spec: + global: + credentials: + apiKey: + + features: + logCollection: + enabled: true + containerCollectAll: true +``` + +A continuación, aplica la nueva configuración: + +```shell +kubectl apply -n $DD_NAMESPACE -f datadog-agent.yaml +``` + +Consulta el ejemplo de [manifiesto con la recopilación de logs, métricas y APM activada][1] para ver un ejemplo adicional. Puedes configurar `features.logCollection.containerCollectAll` como `true` para recopilar logs de todos los contenedores detectados por defecto. Cuando se configura como `false` (por defecto), es necesario especificar configuraciones de log de Autodiscovery para habilitar la recopilación de logs. + +[1]: https://github.com/DataDog/datadog-operator/blob/main/examples/datadogagent/datadog-agent-with-logs-apm.yaml +{{% /tab %}} +{{% tab "Helm" %}} + +Para habilitar la recopilación de logs con Helm, actualiza tu archivo [datadog-values.yaml][1] con la siguiente configuración para la recopilación de logs. Luego, actualiza tu Datadog Helm chart: + +```yaml +datadog: + logs: + enabled: true + containerCollectAll: true +``` + +Puedes configurar `datadog.logs.containerCollectAll` como `true` para recopilar logs de todos los contenedores detectados por defecto. Cuando se configura como `false` (por defecto), es necesario definir configuraciones de logs Autodiscovery para habilitar la recopilación de logs. Para obtener más información, consulta [Detección de logs - Filtrado](#filtering). + +[1]: https://github.com/DataDog/helm-charts/blob/master/charts/datadog/values.yaml +{{% /tab %}} +{{< /tabs >}} + +### Sin privilegios + +{{< tabs >}} +{{% tab "Datadog Operator" %}} +(Opcional) Para ejecutar una instalación sin privilegios, añade lo siguiente al [recurso personalizado DatadogAgent][1]: + +```yaml +apiVersion: datadoghq.com/v2alpha1 +kind: DatadogAgent +metadata: + name: datadog +spec: + global: + credentials: + apiKey: + + features: + logCollection: + enabled: true + containerCollectAll: true + + override: + nodeAgent: + securityContext: + runAsUser: + supplementalGroups: + - +``` + +- Sustituye `` por el UID para ejecutar el Agent +- Sustituye `` por el ID del grupo al que pertenece el socket de Docker o containerd. + +[1]: https://github.com/DataDog/datadog-operator/blob/main/docs/configuration.v2alpha1.md#override +{{% /tab %}} +{{% tab "Helm" %}} + +(Opcional) Para ejecutar una instalación sin privilegios, añade lo siguiente en el archivo `values.yaml`: + +```yaml +datadog: + securityContext: + runAsUser: + supplementalGroups: + - +``` + +- Sustituye `` por el UID para ejecutar el Agent. +- Sustituye `` por el ID del grupo al que pertenece el socket de Docker o containerd. + +{{% /tab %}} +{{< /tabs >}} + +
+Advertencia para instalaciones sin privilegios +

+Cuando se ejecuta una instalación sin privilegios, el Agent necesita poder leer archivos de logs en /var/log/pods. +

+Si estás utilizando el tiempo de ejecución contenedorizado, los archivos de logs en /var/log/pods son legibles por los miembros del grupo raíz. Con las instrucciones anteriores, el Agent se ejecuta con el grupo raíz. No es necesario realizar ninguna acción. +

+Si estás utilizando el tiempo de ejecución Docker, los archivos de logs en /var/log/pods son enlaces simbólicos a /var/lib/docker/containers, que sólo puede recorrer el usuario raíz. Consecuentemente, con el tiempo de ejecución Docker, no es posible para un Agent no raíz leer logs en /var/log/pods. El socket Docker debe estar montado en el contenedor del Agent, para que pueda obtener logs de pod a través del Docker daemon. +

+Para recopilar logs de /var/log/pods cuando el socket Docker está montado, define la variable de entorno DD_LOGS_CONFIG_K8S_CONTAINER_USE_FILE (o logs_config.k8s_container_use_file en datadog.yaml) como true. Esto fuerza al Agent a utilizar el modo de recopilación de archivos. +
+ +## Detección de logs + +El Datadog Agent en Kubernetes es desplegado por un DaemonSet (gestionado por el Datadog Operator o Helm). Este DaemonSet programa una réplica de pod del Agent en cada nodo del clúster. Cada pod del Agent es entonces responsable de informar de logs de los otros pods y contenedores en su nodo respectivo. Cuando la función "Contenedor recopilar todo" está activada, el Agent informa de los logs de cada contenedor detectado con un conjunto predeterminado de etiquetas (tags). + +### Filtrado + +Cuando "Contenedor recopilar todo" está activado, puedes configurar de qué contenedores quieres recopilar logs. Esto puede ser útil para evitar la recopilación de logs del Datadog Agent, si así lo prefieres. Puedes hacerlo pasando configuraciones al Datadog Agent para controlar lo que recopila o pasando configuraciones al pod Kubernetes para excluir ciertos logs más explícitamente. + +Cuando "Contenedor recopilar todo" está desactivado (por defecto) esto no es necesario, ya que se habilitan las configuraciones de logs mediante anotaciones o archivos de configuración de Autodiscovery. + +Para obtener más información, consulta [Gestión de la detección de contenedores][8]. + +### Etiquetado + +El Datadog Agent etiqueta logs de contenedores Kubernetes con [etiquetas Kubernetes][14] predeterminadas, así como con cualquier etiqueta personalizada extraída. Cuando "Contenedor recopilar todo" está activado, el Agent informa de logs de un contenedor con una etiqueta `source` y `service` que coincida con el nombre de imagen corto del contenedor. Por ejemplo, los logs de un contenedor que utiliza la imagen de contenedor `gcr.io/owner/example-image:latest` tendría `example-image` como valor de etiqueta `source`, `service` y `short_image`. + +La etiqueta (tag) `service` también puede definirse mediante la etiqueta (label) del pod de [Etiquetado unificado de servicios][4] `tags.datadoghq.com/service: ""`. Para obtener más información sobre los atributos `source` y `service`, consulta los [atributos reservados][11]. + +La etiqueta (tag) `source` puede ser importante para tus logs, ya que los [pipelines de logs predefinidos][15] se filtran con esta etiqueta (tag). Sin embargo, estos pipelines se pueden personalizar completamente, si así lo prefieres. Para personalizar aún más las etiquetas (tags) de tus logs, consulta los pasos en la sección [Logs de integración](#integration-logs) más abajo. + +## Logs de integración + +[Autodiscovery][10] te permite utilizar plantillas para configurar la recopilación de logs (y otras capacidades) en contenedores. Esta opción puede utilizarse para habilitar la recopilación de logs, personalizar el etiquetado y añadir reglas de recopilación avanzadas. Para configurar la recopilación de logs para una integración con Autodiscovery puedes: + +- Especifica una configuración de log como anotaciones Autodiscovery en un pod concreto, para configurar las reglas de un contenedor concreto *(recomendado)*. +- Especifica una configuración de log como archivo de configuración, para configurar las reglas de cada contenedor coincidente por imagen. + +Como mínimo, estas configuraciones de logs requieren una etiqueta (tag) `source` y `service`. Es posible que quieras hacer coincidir la etiqueta (tag) `source` con uno de los [pipelines de logs predefinidos][15] de Datadog para ayudarte a enriquecer automáticamente tus logs. También puedes encontrar una [biblioteca de pipelines en Datadog][16]. + +### Anotaciones de Autodiscovery + +Con Autodiscovery, el Agent busca automáticamente plantillas de integración en todas las anotaciones de pod. + +Para aplicar una configuración específica a un contenedor concreto, añade la anotación `ad.datadoghq.com/.logs` a tu pod con la configuración de log con formato JSON. + +**Nota**: Las anotaciones Autodiscovery identifican los contenedores por su nombre, **no** por su imagen. Intenta hacer coincidir el `` con el `.spec.containers[i].name`, no con la `.spec.containers[i].image`. + +
+Si defines tus pods Kubernetes directamente (con kind:Pod), añade las anotaciones de cada pod en su sección de metadatos, como se muestra en la siguiente sección. +

+Si defines tus pods Kubernetes indirectamente (con controladores de replicación, ReplicaSets o despliegues), añade anotaciones de pod a la plantilla de pod en .spec.template.metadata.
+ +#### Configurar un solo contenedor +Para configurar la recopilación de logs de un contenedor concreto dentro de tu pod, añade las siguientes anotaciones a tu pod: + +```yaml +apiVersion: v1 +kind: Pod +# (...) +metadata: + name: '' + annotations: + ad.datadoghq.com/.logs: '[]' + # (...) +spec: + containers: + - name: '' +# (...) +``` + +#### Ejemplo de anotaciones de logs Autodiscovery + +La siguiente anotación de pod define la plantilla de integración para un ejemplo de contenedor. Se define dentro de las anotaciones de la plantilla de pod, en lugar de en el propio despliegue. Esta configuración de log configura todos los logs del contenedor `app` con las etiquetas (tags) `source:java` y `service:example-app`, y la etiqueta (tag) adicional `foo:bar`. + +```yaml +apiVersion: apps/v1 +kind: Deployment +metadata: + name: example + labels: + app: example-app +spec: + selector: + matchLabels: + app: example-app + template: + metadata: + labels: + app: example-app + annotations: + ad.datadoghq.com/app.logs: '[{"source":"java", "service":"example-app", "tags":["foo:bar"]}]' + spec: + containers: + - name: app + image: owner/example-image:latest +``` + +#### Configurar dos contenedores diferentes +Para aplicar dos plantillas de integración diferentes a dos contenedores distintos dentro de tu pod, `` y ``, añade las siguientes anotaciones a tu pod: + +```yaml +apiVersion: v1 +kind: Pod +# (...) +metadata: + name: '' + annotations: + ad.datadoghq.com/.logs: '[]' + # (...) + ad.datadoghq.com/.logs: '[]' +spec: + containers: + - name: '' + # (...) + - name: '' +# (...) +``` + +### Archivos de configuración de Autodiscovery +Puedes proporcionar archivos de configuración al Datadog Agent para que ejecute una integración especificada cuando detecte un contenedor que utiliza el identificador de imagen coincidente. Esto permite crear una configuración de log genérica que se aplica a un conjunto de imágenes de contenedor. + +{{< tabs >}} +{{% tab "Datadog Operador" %}} +Puede personalizar la colección Logs por integración con un override en el `override.nodeAgent.extraConfd.configDataMap`. Este método crea el ConfigMap y monta el archivo Configuración deseado en el Agent Contenedor . + +```yaml +apiVersion: datadoghq.com/v2alpha1 +kind: DatadogAgent +metadata: + name: datadog +spec: + #(...) + override: + nodeAgent: + extraConfd: + configDataMap: + .yaml: |- + ad_identifiers: + - + + logs: + - source: example-source + service: example-service +``` + +La `` debe coincidir con el nombre corto de la imagen del contenedor al que quieres que se aplique. Para ver un ejemplo adicional, consulta el ejemplo de manifiesto [con la asignación ConfigMap][1]. + +[1]: https://github.com/DataDog/datadog-operator/blob/main/examples/datadogagent/datadog-agent-with-extraconfd.yaml +{{% /tab %}} + +{{% tab "Helm" %}} +Puede personalizar la colección Logs por integración dentro de `datadog.confd`. Este método crea el ConfigMap y monta el archivo Configuración deseado en el Agent Contenedor . + +```yaml +datadog: + #(...) + confd: + .yaml: |- + ad_identifiers: + - + + logs: + - source: example-source + service: example-service +``` + +La `` debe coincidir con el nombre corto de la imagen del contenedor al que quieres que se aplique. + +{{% /tab %}} + +{{% tab "Almacén de valores clave" %}} +Los siguientes comandos etcd crean una plantilla Redis integración con un parámetro `password` personalizado y etiquetas (tags) Logs con los atributos `source` y `service` correctos: + +```conf +etcdctl mkdir /datadog/check_configs/redis +etcdctl set /datadog/check_configs/redis/logs '[{"source": "redis", "service": "redis", "tags": ["env:prod"]}]' +``` + +Fíjate que cada uno de los tres valores es una lista. Autodiscovery agrupa los elementos de la lista en configuraciones de integraciones basadas en índices de lista compartidos. En este caso, define la primera (y única) configuración de checks a partir de `check_names[0]`, `init_configs[0]` y `instances[0]`. + +A diferencia de los archivos de configuración automática, **los almacenes de clave-valor pueden utilizar el nombre corto O largo de la imagen como identificadores de contenedor**, por ejemplo, `redis` O `redis:latest`. + +Autodiscovery puede utilizar [Consul][1], Etcd y Zookeeper como fuentes de plantillas de integración. + +Para utilizar un almacén de clave-valor, configúralo en el archivo de configuración `datadog.yaml` del Agent y monta este archivo dentro del contenedor del Agent. Otra opción es pasar el almacén de clave-valor como variables de entorno al contenedor del Agent. + +#### En `datadog.yaml` + +En el archivo `datadog.yaml`, configura la dirección `` y el`` de tu base de datos clave-valor: + + ```yaml + config_providers: + - name: etcd + polling: true + template_dir: /datadog/check_configs + template_url: ':' + username: + password: + + - name: consul + polling: true + template_dir: datadog/check_configs + template_url: ':' + ca_file: + ca_path: + cert_file: + key_file: + username: + password: + token: + + - name: zookeeper + polling: true + template_dir: /datadog/check_configs + template_url: ':' + username: + password: + ``` + +Luego, [reinicia el Agent][2], para aplicar el cambio de configuración. + +#### En variables de entorno + +Si la base de datos clave-valor se ha activado como fuente de plantillas, el Agent busca plantillas con la clave `/datadog/check_configs`. Autodiscovery espera una jerarquía clave-valor como la siguiente: + +```yaml +/datadog/ + check_configs/ + / + - logs: [""] + ... +``` + +**Nota**: Para aplicar una configuración específica a un contenedor, cuando Autodiscovery utiliza los almacenes clave-valor, identifica los contenedores por **imagen**, intentando que `` coincida con `.spec.containers[0].image`. + +[1]: /es/integrations/consul/ +[2]: /es/agent/configuration/agent-commands/ +{{% /tab %}} +{{< /tabs >}} + +## Recopilación avanzada de logs + +Utiliza etiquetas de logs (labels) de Autodiscovery para aplicar la lógica de procesamiento de la recopilación avanzada de logs, por ejemplo: + +* [Filtrar logs antes de enviarlos a Datadog][5]. +* [Borrar los datos confidenciales de tus logs][6]. +* [Proceder a la agregación multilínea][7]. + +### A partir de un archivo de log de contenedor local + +Datadog recomienda que utilices los flujos (streams) de salida `stdout` y `stderr` para aplicaciones en contenedores, de modo que puedas configurar más automáticamente la recopilación de logs. + +Sin embargo, el Agent también puede recopilar directamente logs de un archivo basándose en una anotación. Para recopilar estos logs, utiliza `ad.datadoghq.com/.logs` con una configuración `type: file` y `path`. Los logs recopilados de archivos con es´ta anotación se etiquetan automáticamente con el mismo conjunto de etiquetas (tags) que los logs procedentes del propio contenedor. Datadog recomienda que utilices los flujos de salida `stdout` y `stderr` para aplicaciones en contenedores, de modo que puedas configurar automáticamente la recopilación de logs. Para obtener más información, consulta las [configuraciones recomendadas](#recommended-configurations). + +Estas rutas de archivo son **relativas** al contenedor del Agent. Por lo tanto, el directorio que contiene el archivo de log debe montarse tanto en la aplicación como en el contenedor del Agent para que éste pueda tener la visibilidad adecuada. + +Por ejemplo, puedes hacerlo con un volumen `hostPath` compartido. El pod a continuación está emitiendo logs en el archivo `/var/log/example/app.log`. Esto se hace en el directorio `/var/log/example`, donde un volumen y volumeMount lo han establecido como `hostPath`. + +```yaml +apiVersion: v1 +kind: Pod +metadata: + name: logger + annotations: + ad.datadoghq.com/busybox.logs: | + [{ + "type": "file", + "path": "/var/log/example/app.log", + "source": "example-source", + "service": "example-service" + }] +spec: + containers: + - name: busybox + image: busybox + command: [ "/bin/sh", "-c", "--" ] + args: [ "while true; do sleep 1; echo `date` example file log >> /var/log/example/app.log; done;" ] + volumeMounts: + - name: applogs + mountPath: /var/log/example + volumes: + - name: applogs + hostPath: + path: /var/log/example +``` + +El volumen equivalente y la ruta volumeMount deben establecerse en el contenedor del Agent para que pueda leer el mismo archivo de log. + +```yaml + containers: + - name: agent + # (...) + volumeMounts: + - mountPath: /var/log/example + name: applogs + # (...) + volumes: + - name: applogs + hostPath: + path: /var/log/example + # (...) +``` +#### Configuraciones recomendadas +- Esta estrategia puede funcionar para un pod concreto, pero puede resultar engorrosa cuando varias aplicaciones utilizan esta estrategia. También puedes tener problemas si varias réplicas utilizan la misma ruta de logs. Cuando sea posible, Datadog recomienda aprovechar la [variable de plantilla Autodiscovery][17] `%%kube_pod_name%%`. Por ejemplo, puedes configurar tu `path` para que haga referencia a esta variable: `"path": "/var/log/example/%%kube_pod_name%%/app.log"`. A continuación, tu pod de aplicación también debe escribir sus archivos de logs en función de esta nueva ruta. Puedes utilizar la [API descendente][18] para ayudar a tu aplicación a determinar su nombre de pod. + +- Cuando se utiliza este tipo de anotación con un contenedor, los logs `stdout` y `stderr` no se recopilan automáticamente desde el contenedor. Si se necesita la recopilación tanto del contenedor como de un archivo, debe habilitarse explícitamente en la anotación. Por ejemplo: + ```yaml + ad.datadoghq.com/.logs: | + [ + {"type":"file","path":"/var/log/example/app.log","source":"file","service":"example-service"}, + {"source":"container","service":"example-service"} + ] + ``` + +- Cuando se utiliza este tipo de combinación, `source` y `service` no tienen un valor por defecto para logs recopilados de un archivo y deben establecerse explícitamente en la anotación. + +## Solucionar problemas + +#### Contenedores de corta duración + +Por defecto, Agent busca nuevos contenedores cada 5 segundos. + +Para Agent v6.12+, los logs de contenedor de corta duración (detenidos o bloqueados) se recopilan automáticamente cuando se utiliza el método de recopilación de logs de archivos K8s (a través de `/var/log/pods`). Esto también incluye la recopilación de logs de contenedor init. + +#### Faltan etiquetas (tags) en los nuevos contenedores o pods + +Al enviar logs a Datadog desde contenedores o pods recién creados, es posible que el etiquetador interno del Datadog Agent aún no disponga de las etiquetas (tags) de contenedor/pod relacionadas. Como resultado, pueden faltar etiquetas (tags) en estos logs. + +Para solucionar este problema, puede utilizar la variable de entorno `DD_LOGS_CONFIG_TAGGER_WARMUP_DURATION` para configurar una duración (en segundos) para que el Datadog Agent espere antes de empezar a enviar logs desde contenedores y pods recién creados. El valor por defecto es `0`. + +{{< tabs >}} +{{% tab "Datadog Operator" %}} + +```yaml +spec: + override: + nodeAgent: + env: + - name: DD_LOGS_CONFIG_TAGGER_WARMUP_DURATION + value: "5" +``` +{{% /tab %}} +{{% tab "Helm" %}} +```yaml +datadog: + env: + - name: DD_LOGS_CONFIG_TAGGER_WARMUP_DURATION + value: "5" +``` +{{% /tab %}} +{{< /tabs >}} + +#### Faltan etiquetas (tags) de nivel de host en los nuevos hosts o nodos + +Las etiquetas (tags) a nivel de host son las que aparecen en la lista de infraestructuras de un host determinado y proceden de un proveedor de nube o del Datadog Agent. Las etiquetas (tags) a nivel de host más frecuentes incluyen `kube_cluster_name`, `region`, `instance-type` y `autoscaling-group`. + +Cuando se envían logs a Datadog desde un nodo o host recién creado, pueden pasar algunos minutos hasta que se [hereden][12] las etiquetas (tags) de nivel de host. Como resultado, en estos logs pueden faltar las etiquetas (tags) de nivel de host. + +Para solucionar este problema, puedes utilizar la variable de entorno `DD_LOGS_CONFIG_EXPECTED_TAGS_DURATION` para configurar una duración (en minutos). Durante este tiempo, el Datadog Agent adjunta manualmente las etiquetas (tags) de nivel de host que conoce a cada log enviado. Después de este tiempo, el Agent vuelve a confiar en las etiquetas (tags) heredadas durante la ingesta. + +{{< tabs >}} +{{% tab "Datadog Operator" %}} +```yaml +spec: + override: + nodeAgent: + env: + - name: DD_LOGS_CONFIG_EXPECTED_TAGS_DURATION + value: "10m" +``` +{{% /tab %}} +{{% tab "Helm" %}} +```yaml +datadog: + env: + - name: DD_LOGS_CONFIG_EXPECTED_TAGS_DURATION + value: "10m" +``` +{{% /tab %}} +{{< /tabs >}} + +## Referencias adicionales + +{{< partial name="whats-next/whats-next.html" >}} + +[1]: /es/agent/faq/log-collection-with-docker-socket/ +[2]: /es/agent/kubernetes/ +[3]: /es/integrations/#cat-autodiscovery +[4]: /es/getting_started/tagging/unified_service_tagging/?tab=kubernetes +[5]: /es/agent/logs/advanced_log_collection/?tab=kubernetes#filter-logs +[6]: /es/agent/logs/advanced_log_collection/?tab=kubernetes#scrub-sensitive-data-from-your-logs +[7]: /es/agent/logs/advanced_log_collection/?tab=kubernetes#multi-line-aggregation +[8]: /es/agent/guide/autodiscovery-management/ +[9]: /es/containers/guide/kubernetes_daemonset/#log-collection +[10]: /es/getting_started/containers/autodiscovery +[11]: /es/logs/log_configuration/attributes_naming_convention/ +[12]: /es/getting_started/tagging/assigning_tags/#integration-inheritance +[13]: https://kubernetes.io/docs/concepts/cluster-administration/logging/#log-location-node +[14]: /es/containers/kubernetes/tag +[15]: /es/logs/log_configuration/pipelines/?tab=source#integration-pipelines +[16]: https://app.datadoghq.com/logs/pipelines/pipeline/library +[17]: /es/containers/guide/template_variables/ +[18]: https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/ \ No newline at end of file diff --git a/content/es/continuous_integration/guides/ingestion_control.md b/content/es/continuous_integration/guides/ingestion_control.md new file mode 100644 index 00000000000..449b740d032 --- /dev/null +++ b/content/es/continuous_integration/guides/ingestion_control.md @@ -0,0 +1,88 @@ +--- +description: Aprende a definir las condiciónes por las cuales excluir eventos específicos + de ser procesados por CI Visibility. +further_reading: +- link: https://www.datadoghq.com/blog/streamline-ci-testing-with-datadog-intelligent-test-runner/ + tag: Blog + text: Agiliza tus tests de CI con Datadog Test Impact Analysis +- link: /continuous_integration/pipelines + tag: Documentación + text: Más información sobre Pipeline Visibility +title: Establecer Ingestion Control para CI Visibility +--- + +## Información general + +Los filtros de exclusión proporcionan un control detallado sobre tu presupuesto de CI Visibility al permitirte definir una o más condiciones por las cuales excluir eventos específicos de ser procesados por Datadog. + +### Compatibilidad +Hay filtros disponibles para Pipeline Visibility. + +## Añadir un filtro de exclusión +Los filtros de exclusión no son necesarios para configurar Pipeline Visibility. Por defecto, se ingieren y procesan todos los datos. + +Para crear filtros para tu organización, tu cuenta de usuario debe tener el [permiso][1] `ci_ingestion_control_write`. + +1. En Datadog, navega a **CI** > **Settings** > **Ingestion Settings** (CI > Configuración > Configuración de ingesta). +2. Selecciona **Add an Exclusion Filter** (Añadir un filtro de exclusión). + +{{< img src="ci/add-ci-exclusion-filter.png" alt="Botón Añadir un filtro de exclusión" style="width:90%;">}} + +3. Asigna un nombre al filtro y define una consulta. Una vez definida la consulta, la vista previa sobre los campos de entrada muestra los datos ingeridos que coinciden con la consulta. Una vez creado y activado el filtro, eventos, como los que se muestran en la vista previa, quedan excluidos de la ingesta. + +{{< img src="ci/exclusion-filter-pipeline.png" alt="Crear un filtro de exclusión para un pipeline específico" style="width:100%;">}} + +Una vez que hayas añadido un filtro, se mostrará cada fila de esta página: +- **Filter name** (Nombre del filtro): el nombre del filtro +- **Exclusion query** (Consulta de exclusión): la consulta que se definió para ese filtro. +- Activa/desactiva el filtro](#enabling-and-disabling-filters): los filtros recién creados se activan por defecto + +Todos los tramos (spans) que coincidan con uno o varios filtros no son ingeridos ni procesados por Datadog. + +## Definición de consultas para un filtro de exclusión +Los filtros se definen de forma flexible a través de una interfaz de editor de consultas. Utiliza [etiquetas][3] y atributos para crear tus filtros. + +### Ejemplos de filtros de exclusión +A continuación, encontrarás ejemplos de cómo los filtros de exclusión pueden ayudar a optimizar el uso y la facturación de CI Visibility. + +#### Filtrar por dirección de correo electrónico del autor de git +Puedes excluir uno o más commiters específicos de ser monitorizados definiendo un filtro con la dirección de correo electrónico del autor git (`@git.commit.author.email`). La siguiente captura de pantalla muestra un filtro en el que todos los tramos asociados con commits de este correo electrónico de autor git en particular no se ingieren. + +{{< img src="ci/exclusion-filter-email.png" alt="Filtro de exclusión del control de ingesta para dirección de correo electrónico" style="width:100%;">}} + +#### Filtrar por dominio de correo electrónico del autor de git +También puedes excluir a muchos committers a la vez por dominio de correo electrónico (por ejemplo, puede que desees excluir a colaboradores externos que realicen commits en repositorios monitorizados). La siguiente captura de pantalla muestra un filtro en el que todos los tramos (spans) asociados con commits de dominios de direcciones de correo electrónico que no coinciden con el de la consulta no se ingieren. + +{{< img src="ci/exclusion-filter-domain.png" alt="Filtro de exclusión del control de ingesta para dominio de correo electrónico" style="width:100%;">}} + +#### Filtrar por repositorio +Puedes excluir repositorios específicos de ser monitorizados (por ejemplo, un repositorio de test interno) definiendo un filtro con el nombre del repositorio (`@git.repository.name`) o ID (`@git.repository.id`). La siguiente captura de pantalla muestra un filtro en el que todos los tramos asociados con commits en este repositorio no son ingeridos. + +{{< img src="ci/exclusion-filter-repo.png" alt="Filtro de exclusión de control de ingesta para repositorio" style="width:100%;">}} + +## Actualización de los filtros de exclusión +Los filtros de exclusión pueden ser activados/desactivados, actualizados y eliminados por usuarios con [permisos][4] `ci_ingestion_control_write`. Se aplican a nivel de organización. Puede ver información detallada sobre quién modificó los filtros de exclusión utilizando [Audit Trail][5] de Datadog. + +### Activar y desactivar filtros +Un conmutador a la derecha de cada filtro permite activarlo y desactivarlo en cualquier momento. Los filtros recién creados se activan por defecto. + +**Nota**: En la mayoría de los casos, los filtros se aplican a los datos ingeridos en menos de 1 segundo (p95) desde su activación. Sin embargo, es posible que un filtro activado tarde varios minutos en surtir efecto. + +### Actualización de filtros +Puedes cambiar el nombre de un filtro o modificar la consulta de un filtro de exclusión en cualquier momento dentro de la página **Ingestion Settings** (Configuración de la ingesta). + +{{< img src="ci/exclusion-filter-edit.png" alt="Botón Filtro de exclusión de la edición del control de ingesta" style="width:90%;">}} + +### Eliminar filtros +Puedes eliminar un filtro haciendo clic en el icono de eliminación. + +{{< img src="ci/exclusion-filter-delete.png" alt="Botón Filtro de exclusión de la eliminación del control de ingesta" style="width:90%;">}} + +## Referencias adicionales +{{< partial name="whats-next/whats-next.html" >}} + +[1]: /es/account_management/rbac/permissions/#ci-visibility +[3]: /es/getting_started/tagging/ +[4]: /es/account_management/rbac/permissions/#ci-visibility +[5]: /es/account_management/audit_trail/events/#ci-visibility-events +[6]: /es/monitors/types/apm/ \ No newline at end of file diff --git a/content/es/continuous_integration/guides/pipeline_data_model.md b/content/es/continuous_integration/guides/pipeline_data_model.md new file mode 100644 index 00000000000..ee8a030848e --- /dev/null +++ b/content/es/continuous_integration/guides/pipeline_data_model.md @@ -0,0 +1,109 @@ +--- +description: Aprende cómo se modelan los pipelines y qué tipos de ejecución admite + CI Visibility. +further_reading: +- link: /continuous_integration/pipelines + tag: Documentación + text: Más información sobre Pipeline Visibility +title: Modelo de datos de pipeline y tipos de ejecución +--- + +## Información general + +Esta guía describe cómo configurar mediante programación las ejecuciones de pipelines en CI Visibility y define los tipos de ejecución de pipelines que admite CI Visibility. + +Esta guía se aplica a los pipelines creados mediante la [API pública de pipelines de CI Visibility][3]. Las integraciones con otros proveedores de CI puede variar. + +## Modelo de datos + +Las ejecuciones de pipeline se modelan como trazas (traces), similar a una [traza distribuida de APM][1], donde tramos (spans) representa la ejecución de diferentes partes del pipeline. El modelo de datos de CI Visibility para representar ejecuciones de pipeline consta de cuatro niveles: + +| Nombre del nivel | Descripción | +| ---------- | ----------- | +| Pipeline (obligatorio) | El tramo raíz de nivel superior que contiene todos los demás niveles como secundarios. Representa la ejecución global de un pipeline de principio a fin. Este nivel a veces se denomina `build` o `workflow` en algunos proveedores de CI. | +| Etapa | Sirve para agrupar trabajos bajo un nombre definido por el usuario. Algunos proveedores de CI no disponen de este nivel. | +| Trabajo | La unidad de trabajo más pequeña donde se ejecutan los comandos. Todas las tareas de este nivel deben realizarse en un único nodo. | +| Paso | En algunos proveedores de CI, este nivel representa un script de shell o una acción ejecutada dentro de un trabajo. | + +Cuando un pipeline, etapa, trabajo o paso finaliza, los datos de ejecución se envían a Datadog. Para configurar Pipeline Visibility, consulta la lista de [proveedores de CI compatibles][2]. Si tu proveedor de CI o flujo de trabajo no es compatible, puedes utilizar el [endpoint de la API pública][3] para enviar las ejecuciones de tu pipeline a CI Visibility. + +{{< img src="ci/ci-pipeline-execution.png" alt="Ejemplo de una traza de ejecución de pipeline" style="width:100%;">}} + +Se espera que las etapas, los trabajos y los pasos tengan exactamente el mismo nombre que su pipeline principal. En caso de que no coincidan, es posible que en algunos pipelines falte información sobre etapas, trabajos y pasos. Por ejemplo, pueden faltar trabajos en las tablas de resumen de trabajos. + +### Identificadores únicos de pipeline + +Todas las ejecuciones de pipeline dentro de un nivel deben tener un identificador único. Por ejemplo, un pipeline y un trabajo pueden tener el mismo identificador único, pero no dos pipelines. + +Cuando se envían IDs repetidos con diferentes marcas de tiempo, la interfaz de usuario puede mostrar un comportamiento no deseado. Por ejemplo, las gráficas de llama pueden mostrar etiquetas de tramo de una ejecución de pipeline diferente. Si se envían IDs duplicados con las mismas marcas de tiempo, sólo se almacenan los valores de la última ejecución de pipeline recibida. + +## Tipos de ejecución de pipeline + +### Ejecución normal + +La ejecución normal de un pipeline sigue el flujo que se muestra a continuación: + +{{< img src="ci/pipeline-normal-execution-flow.png" alt="Representación de una ejecución de pipeline normal" style="width:100%;">}} + +Según el proveedor, pueden faltar algunos niveles. Por ejemplo, puede que no existan etapas y que los trabajos se ejecuten en paralelo o en secuencia, o una combinación de ambos. + +Tras la finalización de cada componente, debe enviarse una carga útil a Datadog con todos los datos necesarios para representar la ejecución. Datadog procesa estos datos, los almacena como un evento de pipeline y los muestra en [CI Visibility][2]. Las ejecuciones de pipeline deben finalizar antes de enviarse a Datadog. + +### Reintentos completos + +Los reintentos completos de un pipeline deben tener ID únicos de pipeline diferentes. + +En el endpoint de la API pública, puedes rellenar el campo `previous_attempt` para enlazar con reintentos anteriores. Los reintentos se tratan como ejecuciones de pipelines independientes en Datadog, y la hora de inicio y fin solo deben abarcar ese reintento. + +### Reintentos parciales + +Al reintentar un subconjunto de trabajos dentro de un pipeline, debes enviar un nuevo evento de pipeline con un nuevo ID único de pipeline. La carga útil de los nuevos trabajos debe estar vinculada al nuevo ID único del canal. Para vincularlos al reintento anterior, añade el campo `previous_attempt`. + +Los reintentos parciales también se tratan como pipelines separados. Las horas de inicio y fin no deben incluir la hora del reintento original. Para un reintento parcial, no envíe cargas útiles para trabajos que se ejecutaron en el intento anterior. Además, establece el campo `partial_retry` en `true` en los reintentos parciales para excluirlos de la agregación al calcular los tiempos de ejecución. + +Por ejemplo, un pipeline llamado `P` tiene tres trabajos diferentes, a saber `J1`, `J2` y `J3`, ejecutados secuencialmente. En la primera ejecución de `P`, sólo se ejecutan `J1` y `J2`, y `J2` falla. + +Por lo tanto, necesitas enviar un total de tres cargas útiles: + +1. Carga de trabajo para `J1`, con ID `J1_1` e ID de pipeline `P_1`. +2. Carga de trabajo para `J2`, con ID `J2_1` e ID de pipeline `P_1`. +3. Carga útil para `P`, con ID `P_1`. + +Supongamos que se produce un reintento parcial de la cadena a partir de `J2`, en el que todos los trabajos restantes tienen éxito. + +Necesitas enviar tres cargas útiles adicionales: + +1. Carga de trabajo para `J2`, con ID `J2_2` e ID de pipeline `P_2`. +2. Carga de trabajo para `J3`, con ID `J3_1` e ID de pipeline `P_2`. +3. Carga útil para `P`, con ID `P_2`. + +Los valores reales de los ID no son importantes. Lo que importa es que se modifiquen correctamente en función de la ejecución del pipeline como se ha especificado anteriormente. + +### Pipelines bloqueados + +Si un pipeline se bloquea indefinidamente debido a que requiere intervención manual, debe enviarse una carga útil del evento de pipeline en cuanto el pipeline alcance el estado de bloqueo. El estado del pipeline debe establecerse en `blocked`. + +{{< img src="ci/pipeline-blocked-pipeline-execution.png" alt="Flujo de ejecución de pipeline bloqueado" style="width:100%;">}} + +Los datos restantes del pipeline deben enviarse en cargas útiles separadas con un ID único de pipeline diferente. En el segundo pipeline, puedes establecer `is_resumed` como `true` para señalar que la ejecución se reanudó desde un pipeline bloqueado. + +### Pipelines descendentes + +Si un pipeline se activa como secundario de otro, el campo `parent_pipeline` debe rellenarse con los datos del pipeline principal. + +### Pipelines manuales + +Si un pipeline se activa manualmente, el campo `is_manual` debe tener el valor true. + +## Información Git + +Se recomienda encarecidamente proporcionar información Git de la confirmación que desencadenó la ejecución del pipeline. Las ejecuciones de pipelines sin información Git no aparecen en la [página Cambios recientes en el código][4]. Como mínimo, se requiere la URL del repositorio, el SHA de la confirmación y el correo electrónico del autor. Para más información, consulta la [especificación del endpoint de la API pública][3]. + +## Referencias adicionales + +{{< partial name="whats-next/whats-next.html" >}} + +[1]: /es/tracing/glossary/#trace +[2]: /es/continuous_integration/pipelines/#setup +[3]: /es/api/latest/ci-visibility-pipelines/#send-pipeline-event +[4]: https://app.datadoghq.com/ci/commits \ No newline at end of file diff --git a/content/es/ddsql_reference/ddsql_default.md b/content/es/ddsql_reference/ddsql_default.md new file mode 100644 index 00000000000..c4d8715f547 --- /dev/null +++ b/content/es/ddsql_reference/ddsql_default.md @@ -0,0 +1,469 @@ +--- +aliases: +- /es/logs/workspaces/sql_reference +code_lang: ddsql_default +code_lang_weight: 1 +further_reading: +- link: /logs/workspaces/ + tag: Documentación + text: Más información sobre Log Workspaces +- link: /ddsql_editor/ + tag: Documentación + text: Más información sobre DDSQL Editor +products: +- icon: logs + name: Log Workspaces + url: /logs/workspaces/ +- icon: ddsql + name: Editor DDSQL + url: /ddsql_editor/ +title: DDSQL +type: lenguaje de código múltiple +--- + +{{< product-availability >}} + +## Información general + +SQL en [Celdas de análisis][1] permite analizar y manipular datos. Esta documentación aborda la compatibilidad de SQL disponible e incluye: +- [Sintaxis compatible con PostgreSQL](#syntax) +- [Funciones de SQL](#functions) +- [Funciones de ventana](#window-functions) + +{{< img src="/logs/workspace/sql_reference/sql_syntax_analysis_cell.png" alt="Celda de Workspace de ejemplo con sintaxis de SQL" style="width:100%;" >}} + +## Sintaxis + +Se admite la siguiente sintaxis de SQL: + +| Sintaxis | Descripción | Ejemplo | +|---------------|----------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------| +| `SELECT (DISTINCT)`
DISTINCT: opcional | Recupera filas de una base de datos, con `DISTINCT` filtrando los registros duplicados. | {{< code-block lang="sql" >}}SELECT DISTINCT customer_id +FROM orders {{< /code-block >}} | +| `JOIN` | Combines rows from two or more tables based on a related column between them. Supports FULL JOIN, INNER JOIN, LEFT JOIN, RIGHT JOIN. | {{< code-block lang="sql" >}}SELECT orders.order_id, customers.customer_name +FROM orders +JOIN customers +ON orders.customer_id = customers.customer_id {{< /code-block >}} | +| `GROUP BY` | Groups rows that have the same values in specified columns into summary rows. | {{< code-block lang="sql" >}}SELECT product_id, SUM(quantity) +FROM sales +GROUP BY product_id {{< /code-block >}} | +| `\|\|` (concat) | Concatenates two or more strings together. | {{< code-block lang="sql" >}}SELECT first_name || ' ' || last_name AS full_name +FROM employees {{< /code-block >}} | +| `WHERE`
Includes support for `LIKE`, `IN`, `ON`, `OR` filters. | Filters records that meet a specified condition. | {{< code-block lang="sql" >}}SELECT * +FROM employees +WHERE department = 'Sales' AND name LIKE 'J%' {{< /code-block >}} | +| `CASE` | Provides conditional logic to return different values based on specified conditions. | {{< code-block lang="sql" >}}SELECT order_id, + CASE + WHEN quantity > 10 THEN 'Bulk Order' + ELSE 'Standard Order' + END AS order_type +FROM orders {{< /code-block >}} | +| `WINDOW` | Performs a calculation across a set of table rows that are related to the current row. | {{< code-block lang="sql" >}}SELECT + timestamp, + service_name, + cpu_usage_percent, + AVG(cpu_usage_percent) OVER (PARTITION BY service_name ORDER BY timestamp ROWS BETWEEN 2 PRECEDING AND CURRENT ROW) AS moving_avg_cpu +FROM + cpu_usage_data {{< /code-block >}} | +| `IS NULL` / `IS NOT NULL` | Checks if a value is null or not null. | {{< code-block lang="sql" >}}SELECT * +FROM orders +WHERE delivery_date IS NULL {{< /code-block >}} | +| `LIMIT` | Specifies the maximum number of records to return. | {{< code-block lang="sql" >}}SELECT * +FROM customers +LIMIT 10 {{< /code-block >}} | +| `ORDER BY` | Sorts the result set of a query by one or more columns. Includes ASC, DESC for sorting order. | {{< code-block lang="sql" >}}SELECT * +FROM sales +ORDER BY sale_date DESC {{< /code-block >}} | +| `HAVING` | Filters records that meet a specified condition after grouping. | {{< code-block lang="sql" >}}SELECT product_id, SUM(quantity) +FROM sales +GROUP BY product_id +HAVING SUM(quantity) > 10 {{< /code-block >}} | +| `IN`, `ON`, `OR` | Used for specified conditions in queries. Available in `WHERE`, `JOIN` clauses. | {{< code-block lang="sql" >}}SELECT * +FROM orders +WHERE order_status IN ('Shipped', 'Pending') {{< /code-block >}} | +| `AS` | Renames a column or table with an alias. | {{< code-block lang="sql" >}}SELECT first_name AS name +FROM employees {{< /code-block >}} | +| Arithmetic Operations | Performs basic calculations using operators like `+`, `-`, `*`, `/`. | {{< code-block lang="sql" >}}SELECT price, tax, (price * tax) AS total_cost +FROM products {{< /code-block >}} | +| `INTERVAL value unit` | interval | Represents a time duration specified in a given unit. Supported units:
- `milliseconds` / `millisecond`
- `seconds` / `second`
- `minutes` / `minute`
- `hours` / `hour`
- `days` / `day` | + + +## Funciones + +Se admiten las siguientes funciones de SQL. Para la función de ventana, consulta la sección [función de ventana](#window-functions) de esta documentación. + +| Función | Tipo de retorno | Descripción | +|--------------------------------------------------|---------------------------------------|-----------------------------------------------------------------------------| +| `MIN(variable v)` | Variable typeof | Devuelve el valor más pequeño de un conjunto de datos. | +| `MAX(variable v)` | Variable typeof | Devuelve el valor máximo de todos los valores de entrada. | +| `COUNT(any a)` | numérico | Devuelve el número de valores de entrada que no son nulos. | +| `SUM(numeric n)` | numérico | Devuelve la suma de todos los valores de entrada. | +| `AVG(numeric n)` | numérico | Devuelve el valor medio (media aritmética) de todos los valores de entrada. | +| `CEIL(numeric n)` | numérico | Devuelve el valor redondeado al entero más próximo. | +| `FLOOR(numeric n)` | numérico | Devuelve el valor redondeado al entero más próximo. | +| `ROUND(numeric n)` | numérico | Devuelve el valor redondeado al entero más próximo. | +| `LOWER(string s)` | cadena | Devuelve la cadena en minúsculas. | +| `UPPER(string s)` | cadena | Devuelve la cadena en mayúsculas. | +| `ABS(numeric n)` | numérico | Devuelve el valor absoluto. | +| `COALESCE(args a)` | typeof first non-null a OR null | Devuelve el primer valor no nulo o nulo si todos son nulos. | +| `CAST(value AS type)` | tipo | Convierte el valor dado al tipo de datos especificado. | +| `LENGTH(string s)` | entero | Devuelve el número de caracteres de la cadena. | +| `TRIM(string s)` | cadena | Elimina los espacios en blanco iniciales y finales de la cadena. | +| `REPLACE(string s, string from, string to)` | cadena | Sustituye las apariciones de una subcadena dentro de una cadena por otra subcadena. | +| `SUBSTRING(string s, int start, int length)` | cadena | Extrae una subcadena de una cadena, comenzando en una posición dada y para una longitud especificada. | +| `STRPOS(string s, string substring)` | entero | Devuelve la primera posición del índice de la subcadena en una cadena dada, o 0 si no hay coincidencia. | +| `SPLIT_PART(string s, string delimiter, integer index)` | cadena | Divide la cadena en el delimitador dado y devuelve la cadena en la posición dada contando desde uno. | +| `EXTRACT(unit from timestamp/interval)` | numérico | Extrae una parte de un campo de fecha u hora (como el año o el mes) de una marca temporal o intervalo. | +| `TO_TIMESTAMP(string timestamp, string format)` | marca de tiempo | Convierte una cadena en una marca de tiempo según el formato dado. | +| `TO_CHAR(timestamp t, string format)` | cadena | Convierte una marca de tiempo en una cadena según el formato dado. | +| `DATE_TRUNC(string unit, timestamp t)` | marca de tiempo | Trunca una marca de tiempo a una precisión especificada basada en la unidad proporcionada. | +| `REGEXP_LIKE(string s, pattern p)` | booleano | Evalúa si una cadena coincide con un patrón de expresión regular. | +| `CARDINALITY(array a)` | entero | Devuelve el número de elementos de la matriz. | +| `ARRAY_POSITION(array a, typeof_array value)` | entero | Devuelve el índice de la primera aparición del valor encontrado en la matriz, o null (nulo) si no se encuentra el valor. | +| `STRING_TO_ARRAY(string s, string delimiter)` | matriz de cadenas | Divide la cadena dada en una matriz de cadenas utilizando el delimitador dado. | +| `ARRAY_AGG(expression e)` | matriz de tipo de entrada | Crea una matriz al recopilar todos los valores de entrada. | +| `UNNEST(array a [, array b...])` | filas de a [, b...] | Expande matrices en un conjunto de filas. Esta forma sólo se permite en una cláusula FROM. | + +{{% collapse-content title="Ejemplos" level="h3" %}} + +### `MIN` +{{< code-block lang="sql" >}} +SELECT MIN(response_time) AS min_response_time +FROM logs +WHERE status_code = 200 +{{< /code-block >}} + +### `MAX` +{{< code-block lang="sql" >}} +SELECT MAX(response_time) AS max_response_time +FROM logs +WHERE status_code = 200 +{{< /code-block >}} + +### `COUNT` +{{< code-block lang="sql" >}}SELECT COUNT(request_id) AS total_requests +FROM logs +WHERE status_code = 200 {{< /code-block >}} + +### `SUM` +{{< code-block lang="sql" >}}SELECT SUM(bytes_transferred) AS total_bytes +FROM logs +GROUP BY service_name +{{< /code-block >}} + +### `AVG` +{{< code-block lang="sql" >}}SELECT AVG(response_time) +AS avg_response_time +FROM logs +WHERE status_code = 200 +GROUP BY service_name +{{< /code-block >}} + +### `CEIL` +{{< code-block lang="sql" >}} +SELECT CEIL(price) AS rounded_price +FROM products +{{< /code-block >}} + +### `FLOOR` +{{< code-block lang="sql" >}} +SELECT FLOOR(price) AS floored_price +FROM products +{{< /code-block >}} + +### `ROUND` +{{< code-block lang="sql" >}} +SELECT ROUND(price) AS rounded_price +FROM products +{{< /code-block >}} + +### `LOWER` +{{< code-block lang="sql" >}} +SELECT LOWER(customer_name) AS lowercase_name +FROM customers +{{< /code-block >}} + +### `UPPER` +{{< code-block lang="sql" >}} +SELECT UPPER(customer_name) AS uppercase_name +FROM customers +{{< /code-block >}} + +### `ABS` +{{< code-block lang="sql" >}} +SELECT ABS(balance) AS absolute_balance +FROM accounts +{{< /code-block >}} + +### `COALESCE` +{{< code-block lang="sql" >}} +SELECT COALESCE(phone_number, email) AS contact_info +FROM users +{{< /code-block >}} + +### `CAST` + +Tipos de objetivos de cast admitidos: +- `BIGINT` +- `DECIMAL` +- `TIMESTAMP` +- `VARCHAR` + +{{< code-block lang="sql" >}} +SELECT + CAST(order_id AS VARCHAR) AS order_id_string, + 'Order-' || CAST(order_id AS VARCHAR) AS order_label +FROM + orders +{{< /code-block >}} + +### `LENGTH` +{{< code-block lang="sql" >}} +SELECT + customer_name, + LENGTH(customer_name) AS name_length +FROM + customers +{{< /code-block >}} + +### `INTERVAL` +{{< code-block lang="sql" >}} +SELECT + TIMESTAMP '2023-10-01 10:00:00' + INTERVAL '30 days' AS future_date, + INTERVAL '1 MILLISECOND 2 SECONDS 3 MINUTES 4 HOURS 5 DAYS' +{{< /code-block >}} + +### `TRIM` +{{< code-block lang="sql" >}} +SELECT + TRIM(name) AS trimmed_name +FROM + users +{{< /code-block >}} + +### `REPLACE` +{{< code-block lang="sql" >}} +SELECT + REPLACE(description, 'old', 'new') AS updated_description +FROM + products +{{< /code-block >}} + +### `SUBSTRING` +{{< code-block lang="sql" >}} +SELECT + SUBSTRING(title, 1, 10) AS short_title +FROM + books +{{< /code-block >}} + +### `STRPOS` +{{< code-block lang="sql" >}} +SELECT + STRPOS('foobar', 'bar') +{{< /code-block >}} + +### `SPLIT_PART` +{{< code-block lang="sql" >}} +SELECT + SPLIT_PART('aaa-bbb-ccc', '-', 2) +{{< /code-block >}} + +### `EXTRACT` + +Unidades de extracción compatibles: +| Literal | Tipo de entrada | Descripción | +| ------------------| ------------------------ | -------------------------------------------- | +| `day` | `timestamp` / `interval` | día del mes | +| `dow` | `timestamp` | día de la semana `1` (lunes) a `7` (domingo) | +| `doy` | `timestamp` | día del año (`1` - `366`) | +| `hour` | `timestamp` / `interval` | hora del día (`0` - `23`) | +| `minute` | `timestamp` / `interval` | minuto de la hora (`0` - `59`) | +| `second` | `timestamp` / `interval` | segundo del minuto (`0` - `59`) | +| `week` | `timestamp` | semana del año (`1` - `53`) | +| `month` | `timestamp` | mes del año (`1` - `12`) | +| `quarter` | `timestamp` | trimestre del año (`1` - `4`) | +| `year` | `timestamp` | año | +| `timezone_hour` | `timestamp` | hora del inicio del huso horario | +| `timezone_minute` | `timestamp` | minuto del inicio del huso horario | + +{{< code-block lang="sql" >}} +SELECT + EXTRACT(year FROM purchase_date) AS purchase_year +FROM + sales +{{< /code-block >}} + +### `TO_TIMESTAMP` + +Patrones compatibles para el formato fecha/hora: +| Patrón | Descripción | +| ----------- | ------------------------------------ | +| `YYYY` | año (4 dígitos) | +| `YY` | año (2 dígitos) | +| `MM` | número de mes (01 - 12) | +| `DD` | día del mes (01 - 31) | +| `HH24` | hora del día (00 - 23) | +| `HH12` | hora del día (01 - 12) | +| `HH` | hora del día (01 - 12) | +| `MI` | minuto (00 - 59) | +| `SS` | segundo (00 - 59) | +| `MS` | milisegundo (000 - 999) | +| `TZ` | abreviatura del huso horario | +| `OF` | inicio del huso horario desde UTC | +| `AM` / `am` | indicador del meridiano (sin puntos) | +| `PM` / `pm` | indicador del meridiano (sin puntos) | + +{{< code-block lang="sql" >}} +SELECT + TO_TIMESTAMP('25/12/2025 04:23 pm', 'DD/MM/YYYY HH:MI am') AS ts +{{< /code-block >}} + +### `TO_CHAR` + +Patrones compatibles para el formato fecha/hora: +| Patrón | Descripción | +| ----------- | ------------------------------------ | +| `YYYY` | año (4 dígitos) | +| `YY` | año (2 dígitos) | +| `MM` | número de mes (01 - 12) | +| `DD` | día del mes (01 - 31) | +| `HH24` | hora del día (00 - 23) | +| `HH12` | hora del día (01 - 12) | +| `HH` | hora del día (01 - 12) | +| `MI` | minuto (00 - 59) | +| `SS` | segundo (00 - 59) | +| `MS` | milisegundo (000 - 999) | +| `TZ` | abreviatura del huso horario | +| `OF` | inicio del huso horario desde UTC | +| `AM` / `am` | indicador del meridiano (sin puntos) | +| `PM` / `pm` | indicador del meridiano (sin puntos) | + +{{< code-block lang="sql" >}} +SELECT + TO_CHAR(order_date, 'MM-DD-YYYY') AS formatted_date +FROM + orders +{{< /code-block >}} + +### `DATE_TRUNC` + +Truncamientos admitidos: +- `milliseconds` +- `seconds` / `second` +- `minutes` / `minute` +- `hours` / `hour` +- `days` / `day` +- `weeks` / `week ` +- `months` / `month` +- `quarters` / `quarter` +- `years` / `year` + +{{< code-block lang="sql" >}} +SELECT + DATE_TRUNC('month', event_time) AS month_start +FROM + events +{{< /code-block >}} + +### `REGEXP_LIKE` +{{< code-block lang="sql" >}} +SELECT + * +FROM + emails +WHERE + REGEXP_LIKE(email_address, '@example\.com$') +{{< /code-block >}} + +### `CARDINALITY` +{{< code-block lang="sql" >}} +SELECT + CARDINALITY(recipients) +FROM + emails +{{< /code-block >}} + +### `ARRAY_POSITION` +{{< code-block lang="sql" >}} +SELECT + ARRAY_POSITION(recipients, 'hello@example.com') +FROM + emails +{{< /code-block >}} + +### `STRING_TO_ARRAY` +{{< code-block lang="sql" >}} +SELECT + STRING_TO_ARRAY('a,b,c,d,e,f', ',') +{{< /code-block >}} + +### `ARRAY_AGG` +{{< code-block lang="sql" >}} +SELECT + sender, + ARRAY_AGG(subject) subjects, + ARRAY_AGG(ALL subject) all_subjects, + ARRAY_AGG(DISTINCT subject) distinct_subjects +FROM + emails +GROUP BY + sender +{{< /code-block >}} + +### `UNNEST` +{{< code-block lang="sql" >}} +SELECT + sender, + recipient +FROM + emails, + UNNEST(recipients) AS recipient +{{< /code-block >}} + +{{% /collapse-content %}} + +## Funciones de ventana + +Esta tabla proporciona información general de las funciones de ventana compatibles. Para más detalles y ejemplos, consulta la [Documentación de PostgreSQL][2]. + +| Función | Tipo de retorno | Descripción | +|-------------------------|-------------------|------------------------------------------------------------------------| +| `OVER` | N/A | Define una ventana para un conjunto de filas sobre las que pueden operar otras funciones de ventana. | +| `PARTITION BY` | N/A | Divide el conjunto de resultados en particiones, específicamente para aplicar funciones de ventana. | +| `RANK()` | entero | Asigna un rango a cada fila dentro de una partición, con espacios para los empates. | +| `ROW_NUMBER()` | entero | Asigna un número secuencial único a cada fila dentro de una partición. | +| `LEAD(column n)` | columna typeof | Devuelve el valor de la siguiente fila de la partición. | +| `LAG(column n)` | columna typeof | Devuelve el valor de la fila anterior de la partición. | +| `FIRST_VALUE(column n)` | columna typeof | Devuelve el primer valor de un conjunto ordenado de valores. | +| `LAST_VALUE(column n)` | columna typeof | Devuelve el último valor de un conjunto ordenado de valores. | +| `NTH_VALUE(column n, offset)`| columna typeof | Devuelve el valor en el desplazamiento especificado en un conjunto ordenado de valores. | + + +## Etiquetas + +DDSQL expone las etiquetas como un tipo `hstore`, que puedes consultar utilizando el operador de flecha de PostgreSQL. Por ejemplo: + +```sql +SELECT instance_type, count(instance_type) +FROM aws.ec2_instance +WHERE tags->'region' = 'us-east-1' -- region is a tag, not a column +GROUP BY instance_type +``` + +Las etiquetas son pares clave-valor en los que cada clave puede tener cero, uno o varios valores. Cuando se accede a la etiqueta, el valor devuelve una cadena que contiene todos los valores correspondientes. + +También puedes comparar valores de etiquetas como cadenas o conjuntos completos de etiquetas: + +```sql +SELECT * +FROM k8s.daemonsets da INNER JOIN k8s.deployments de +ON da.tags = de.tags -- for a specific tag: da.tags->'app' = de.tags->'app' +``` + +## Referencias adicionales + +{{< partial name="whats-next/whats-next.html" >}} + +[1]: /es/logs/workspaces/#analysis-cell +[2]: https://www.postgresql.org/docs/current/functions-window.html \ No newline at end of file diff --git a/content/es/developers/integrations/python.md b/content/es/developers/integrations/python.md index d0c34ba8278..d5b07e4de1e 100644 --- a/content/es/developers/integrations/python.md +++ b/content/es/developers/integrations/python.md @@ -11,7 +11,7 @@ Muchos sistemas operativos vienen con una versión preinstalada de Python. Sin e {{< tabs >}} {{% tab "MacOS" %}} -Instala Python 3.11 usando [Homebrew][1]: +Instala Python 3.12 usando [Homebrew][1]: 1. Actualizar Homebrew: ``` @@ -20,31 +20,31 @@ Instala Python 3.11 usando [Homebrew][1]: 2. Instalar Python: ``` - brew install python@3.11 + brew install python@3.12 ``` 3. Comprueba la salida de la instalación de Homebrew y ejecuta cualquier comando adicional recomendado por el script de instalación. 4. Comprueba que el binario de Python está instalado en tu `PATH` y que se ha instalado la versión correcta: ``` - which python3.11 + which python3.12 ``` Deberías ver la siguiente salida según la arquitectura de tu Mac: - Máquinas ARM (M1+): ``` - /opt/homebrew/bin/python3.11 + /opt/homebrew/bin/python3.12 ``` - MacOS en máquinas Intel: ``` - /usr/local/bin/python3.11 + /usr/local/bin/python3.12 ``` [1]: https://brew.sh/ {{% /tab %}} {{% tab "Windows" %}} -1. Descarga el [instalador ejecutable para Python 3.11 64 bit][1] y ejecútalo. +1. Descarga el [instalador ejecutable de Python 3.12 64-bit][1] y ejecútalo. 1. Selecciona la opción para añadir Python a tu PATH. 1. Haz clic en **Install Now** (Instalar ahora). 1. Una vez finalizada la instalación, reinicia el equipo. @@ -59,7 +59,7 @@ Instala Python 3.11 usando [Homebrew][1]: {{% /tab %}} {{% tab "Linux" %}} -Para instalaciones de Linux, evita modificar tu sistema Python. Datadog recomienda instalar Python 3.11 usando [pyenv][1] o [miniconda][2]. +Para instalaciones de Linux, evita modificar tu sistema de Python. Datadog recomienda instalar Python 3.12 usando [pyenv][1] o [miniconda][2]. [1]: https://github.com/pyenv/pyenv#automatic-installer [2]: https://conda.io/projects/conda/en/stable/user-guide/install/linux.html @@ -103,9 +103,9 @@ Tienes 2 opciones para instalar la CLI `ddev`. {{< tabs >}} {{% tab "MacOS" %}} -1. En tu navegador, descarga el archivo `curl`. El `-o` option specifies the file name that the downloaded package is written to. In this example, the file is written to `ddev-{{< sdk-version "integrations-core" >}}.pkg` en el directorio actual. +1. Descarga el archivo utilizando el comando `curl`. La opción -L permite redireccionamientos, y la opción -o especifica el nombre de archivo en el que se escribe el paquete descargado. En este ejemplo, el archivo se escribe en `ddev-{{< sdk-version "integrations-core" >}}.pkg` en el directorio actual. ```shell - curl -o ddev-{{< sdk-version "integrations-core" >}}.pkg https://github.com/DataDog/integrations-core/releases/download/ddev-v{{< sdk-version "integrations-core" >}}/ddev-{{< sdk-version "integrations-core" >}}.pkg + curl -L -o ddev-{{< sdk-version "integrations-core" >}}.pkg https://github.com/DataDog/integrations-core/releases/download/ddev-v{{< sdk-version "integrations-core" >}}/ddev-{{< sdk-version "integrations-core" >}}.pkg ``` 2. Ejecute el programa estándar de macOS [`installer`](https://ss64.com/osx/installer.html), especificando el archivo descargado `.pkg` como la fuente. Usa `-pkg` parameter to specify the name of the package to install, and the `-target /` parameter for the drive in which to install the package. The files are installed to `/usr/local/ddev`, and an entry is created at `/etc/paths.d/ddev` that instructs shells to add the `/usr/local/ddev` directory to. You must include `sudo` en el comando para conceder permiso de escritura a esas carpetas. ```shell diff --git a/content/es/glossary/terms/analytics.md b/content/es/glossary/terms/analytics.md new file mode 100644 index 00000000000..27ee28f197a --- /dev/null +++ b/content/es/glossary/terms/analytics.md @@ -0,0 +1,6 @@ +--- +core_product: +- log management +title: análisis +--- +El análisis de logs es el proceso de consultar, agrupar y visualizar logs para su investigación y exploración. \ No newline at end of file diff --git a/content/es/integrations/1password.md b/content/es/integrations/1password.md index 9651de1ff9f..54ac5091e93 100644 --- a/content/es/integrations/1password.md +++ b/content/es/integrations/1password.md @@ -40,8 +40,8 @@ tile: changelog: CHANGELOG.md classifier_tags: - Categoría::Recopilación de logs - - Categoría::Gestión de costes - - Categoría::Seguimiento de problemas + - Categoría::Gestión de eventos + - Categoría::Seguimiento de incidentes - Categoría::Seguridad - Tipo de datos enviados::Logs - Oferta::Integración @@ -62,14 +62,14 @@ tile: title: 1Password --- - + ## Información general Con [1Password Business][1], puedes enviar eventos de tu cuenta a Datadog Cloud SIEM utilizando la API de eventos de 1Password. Además, puedes: - Gestionar la conservación de datos de 1Password. - Crear widgets y dashboards personalizados. -- Definir reglas de detección que activen acciones específicas. +- Establecer reglas de detección que desencadenen acciones específicas. - Realizar referencias cruzadas entre eventos de 1Password con datos de otros servicios. La integración de Datadog con 1Password recopila logs utilizando la [API de eventos de 1Password][2], que genera tres tipos de logs: @@ -120,7 +120,7 @@ Busca tus logs de Datadog con `source:1password`. Si has instalado la integraci La integración 1Password no incluye métricas. -### Checks de servicio +### Checks de servicios La integración 1Password no incluye checks de servicio. @@ -134,7 +134,7 @@ La integración 1Password no incluye eventos. [1]: https://support.1password.com/explore/business/ [2]: https://developer.1password.com/docs/events-api/ -[3]: http://app.datadoghq.com/dash/integration/1Password-Overview +[3]: https://app.datadoghq.com/dash/integration/1Password-Overview [4]: https://start.1password.com/signin [5]: https://support.1password.com/events-reporting/#appendix-issue-or-revoke-bearer-tokens [6]: https://docs.datadoghq.com/es/help/ diff --git a/content/es/integrations/amazon_documentdb.md b/content/es/integrations/amazon_documentdb.md index 42d5b2692a8..4d4983697b8 100644 --- a/content/es/integrations/amazon_documentdb.md +++ b/content/es/integrations/amazon_documentdb.md @@ -31,7 +31,7 @@ version: '1.0' Amazon DocumentDB es un servicio de base de datos de documentos rápida, escalable, de alta disponibilidad y totalmente gestionada que admite cargas de trabajo de MongoDB. -## Configuración +## Configurar ### Instalación diff --git a/content/es/integrations/azure_data_factory.md b/content/es/integrations/azure_data_factory.md index 5fb06e782fd..30266b66e67 100644 --- a/content/es/integrations/azure_data_factory.md +++ b/content/es/integrations/azure_data_factory.md @@ -1,29 +1,64 @@ --- -aliases: -- /es/integrations/azure_datafactory +app_id: azure-datafactory +app_uuid: b85b780d-5e7f-4406-b2e6-d958445cb4f6 +assets: + dashboards: + azure_data_factory: assets/dashboard/azure_data_factory.json + integration: + auto_install: true + events: + creates_events: false + metrics: + check: + - azure.datafactory_factories.integration_runtime_available_memory + - azure.datafactory_factories.trigger_succeeded_runs + - azure.datafactory_factories.activity_succeeded_runs + - azure.datafactory_factories.pipeline_succeeded_runs + metadata_path: metadata.csv + prefix: azure.datafactory_factories + service_checks: + metadata_path: assets/service_checks.json + source_type_id: 287 + source_type_name: Azure Data Factory +author: + homepage: https://www.datadoghq.com + name: Datadog + sales_email: info@datadoghq.com + support_email: help@datadoghq.com categories: - azure - nube - almacenes de datos custom_kind: integración dependencies: [] -description: Rastrea las métricas clave de Azure Data Factory. -doc_link: https://docs.datadoghq.com/integrations/azure_data_factory/ +display_on_public_website: true draft: false git_integration_title: azure_data_factory -has_logo: true integration_id: azure-datafactory -integration_title: Microsoft Azure Data Factory +integration_title: Azure Data Factory integration_version: '' is_public: true -manifest_version: '1.0' +manifest_version: 2.0.0 name: azure_data_factory -public_title: Integración de Datadog y Microsoft Azure Data Factory +public_title: Azure Data Factory short_description: Rastrea las métricas clave de Azure Data Factory. -version: '1.0' +supported_os: [] +tile: + changelog: CHANGELOG.md + classifier_tags: + - Categoría::Azure + - Category::Cloud + - Category::Data Stores + - Offering::Integration + configuration: README.md#Setup + description: Rastrea las métricas clave de Azure Data Factory. + media: [] + overview: README.md#Overview + support: README.md#Support + title: Azure Data Factory --- - + ## Información general Azure Data Factory es un servicio de integración de datos en la nube que permite componer los servicios de almacenamiento, movimiento y procesamiento de datos en pipelines de datos automatizados. @@ -34,7 +69,7 @@ Utiliza la integración de Azure con Datadog para recopilar métricas de Data Fa ### Instalación -Si aún no lo has hecho, configura primero [Microsoft Azure integración][1]. No hay otros pasos de instalación. +Si aún no lo ha hecho, configure [Microsoft Azure integración][1]. No se requiere ningún paso de instalación adicional. ## Datos recopilados @@ -52,7 +87,7 @@ La integración Azure Data Factory no incluye checks de servicios. ## Solucionar problemas -¿Necesitas ayuda? Ponte en contacto con el [soporte de Datadog][3]. +¿Necesitas ayuda? Ponte en contacto con el [servicio de asistencia de Datadog][3]. [1]: https://docs.datadoghq.com/es/integrations/azure/ [2]: https://github.com/DataDog/dogweb/blob/prod/integration/azure_data_factory/azure_data_factory_metadata.csv diff --git a/content/es/integrations/cisco_aci.md b/content/es/integrations/cisco_aci.md index 829732fddf8..832a44bf765 100644 --- a/content/es/integrations/cisco_aci.md +++ b/content/es/integrations/cisco_aci.md @@ -18,8 +18,11 @@ assets: metadata_path: assets/service_checks.json source_type_id: 210 source_type_name: Cisco ACI + logs: + source: cisco-aci monitors: CPU usage is high for Cisco ACI device: assets/monitors/cpu_high.json + Cisco ACI critical severity fault: assets/monitors/critical_fault.json Health score of device is critical: assets/monitors/critical_health_score.json Interface for a Cisco ACI device is down: assets/monitors/interface_down.json author: @@ -28,6 +31,7 @@ author: sales_email: info@datadoghq.com support_email: help@datadoghq.com categories: +- log collection - network custom_kind: integración dependencies: @@ -37,7 +41,7 @@ draft: falso git_integration_title: cisco_aci integration_id: cisco-aci integration_title: CiscoACI -integration_version: 4.1.0 +integration_version: 4.6.0 is_public: verdadero manifest_version: 2.0.0 name: cisco_aci @@ -53,13 +57,14 @@ tile: - Supported OS::Linux - Supported OS::macOS - Supported OS::Windows - - Category::Red + - Category::Recopilación de logs + - Category::Network - Offering::Integration - configuration: README.md#Configuración + configuration: README.md#Setup description: Rastrea el rendimiento y el uso de Cisco ACI. media: [] - overview: README.md#Información general - support: README.md#Soporte + overview: README.md#Overview + support: README.md#Support title: CiscoACI --- @@ -88,7 +93,7 @@ El check de Cisco ACI está incluido con el Agent, así que simplemente [instala #### Host -A fin de configurar este check para un Agent que se ejecuta en un host: +Para configurar este check para un Agent que se ejecuta en un host: 1. Edita el archivo `cisco_aci.d/conf.yaml`, que se encuentra en la carpeta `conf.d/` en la raíz del [directorio de configuración del Agent][1]. Consulta el [cisco_aci.d/conf.yaml de ejemplo][2] para conocer todas las opciones de configuración disponibles: @@ -121,9 +126,20 @@ A fin de configurar este check para un Agent que se ejecuta en un host: # - ## @param send_ndm_metadata - boolean - optional - default: false - ## Set to `true` to enable Network Device Monitoring metadata (for devices and interfaces) to be sent. + ## Set to `true` to enable Network Device Monitoring metadata (for devices, interfaces, topology) to be sent + ## and to allow Cisco ACI fault collection to be enabled. # # send_ndm_metadata: false + + ## @param send_faultinst_faults - boolean - optional - default: false + ## Set to `true` to enable collection of Cisco ACI faultInst faults as logs. + # + # send_faultinst_faults: false + + ## @param send_faultdelegate_faults - boolean - optional - default: false + ## Set to `true` to enable collection of Cisco ACI faultDelegate faults as logs. + # + # send_faultdelegate_faults: false ``` *NOTA*: Asegúrate de especificar todos los inquilinos para la integración para recopilar métricas sobre aplicaciones, EPG, etc. @@ -136,7 +152,7 @@ A fin de configurar este check para un Agent que se ejecuta en un host: {{% /tab %}} {{% tab "Contenedores" %}} -#### En contenedores +#### Contenedores En el caso de los entornos en contenedores, consulta las [plantillas de integración de Autodiscovery][1] para obtener orientación sobre la aplicación de los parámetros que se indican a continuación. @@ -172,7 +188,7 @@ El check de Cisco ACI envía fallas de inquilino como eventos. {{< get-service-checks-from-git "cisco_aci" >}} -## Resolución de problemas +## Solucionar problemas ### Métricas `cisco_aci.tenant.*` faltantes Si faltan las métricas `cisco_aci.tenant.*`, puedes ejecutar el script `test/cisco_aci_query.py` para consultar manualmente el endpoint del inquilino. diff --git a/content/es/integrations/cri.md b/content/es/integrations/cri.md index 03b34f7352a..2536385ce90 100644 --- a/content/es/integrations/cri.md +++ b/content/es/integrations/cri.md @@ -24,7 +24,7 @@ author: support_email: help@datadoghq.com categories: - rastreo -- Kubernetes +- kubernetes custom_kind: integración dependencies: - https://github.com/DataDog/integrations-core/blob/master/cri/README.md @@ -44,9 +44,9 @@ supported_os: tile: changelog: CHANGELOG.md classifier_tags: - - Category::Containers + - Categoría::Contenedores - Categoría::Kubernetes - - Supported OS::Linux + - Sistema operativo compatible::Linux - Offering::Integration configuration: README.md#Configuración description: Seguimiento de todas tus métricas de CRI con Datadog @@ -56,14 +56,14 @@ tile: title: CRI --- - + ## Información general Este check monitoriza la interfaz de tiempo de ejecución de un contenedor -## Configuración +## Configurar ### Instalación diff --git a/content/es/integrations/dingtalk.md b/content/es/integrations/dingtalk.md index 573f0dcb391..33a70b78abc 100644 --- a/content/es/integrations/dingtalk.md +++ b/content/es/integrations/dingtalk.md @@ -32,7 +32,7 @@ Aprovecha la integración con DingTalk para: La integración DingTalk se instala con el [cuadro de la integración DingTalk][1] de Datadog. -## Configuración +## Configurar Para integrar Datadog en un grupo DingTalk: diff --git a/content/es/integrations/eks_fargate.md b/content/es/integrations/eks_fargate.md index be76c4be35e..f103084d1a1 100644 --- a/content/es/integrations/eks_fargate.md +++ b/content/es/integrations/eks_fargate.md @@ -75,143 +75,200 @@ tile:
En esta página se describe la integración de EKS Fargate. Para ECS Fargate, consulta la documentación sobre la integración de ECS Fargate de Datadog.
-Amazon EKS en AWS Fargate es un servicio gestionado de Kubernetes que automatiza ciertos aspectos del despliegue y mantenimiento de cualquier entorno estándar de Kubernetes. AWS Fargate gestiona los nodos de Kubernetes y los abstrae del usuario. +Amazon EKS Fargate es un servicio de Kubernetes administrado que automatiza determinados aspectos del despliegue y el mantenimiento de cualquier entorno de Kubernetes estándar. Los nodos de EKS Fargate son administrados por AWS Fargate y los abstrae del usuario. + +### Cómo Datadog monitoriza los pods de EKS Fargate + +Los pods de EKS Fargate no se ejecutan en nodos de EKS tradicionales respaldados por instancias de EC2. Mientras que el Agent reporta [checks de sistema][1], como `system.cpu.*` y `system.memory.*`, estos son sólo para el contenedor del Agent. Para recopilar datos de tus pods de EKS Fargate, ejecuta el Agent como sidecar dentro de *cada* uno de tus pods de aplicación deseados. Cada pod necesita un RBAC personalizado que conceda permisos al kubelet para que el Agent obtenga la información necesaria. + +El sidecar del Agent es responsable de monitorizar los otros contenedores en el mismo pod que él, además de comunicarse con el Cluster Agent para partes de sus informes. El Agent puede: + +- Informar la recopilación de métricas de Kubernetes del pod que ejecuta tus contenedores de aplicaciones y el Agent +- Ejecutar integraciones del Agent basadas en [Autodiscovery][2] en los contenedores del mismo pod +- Recopila métricas de APM y DogStatsD para contenedores en el mismo pod + +Si tienes un clúster mixto de nodos de EKS tradicionales y pods de Fargate, puedes gestionar los nodos de EKS con la [instalación estándar de Datadog Kubernetes][3] (Helm chart o Datadog Operator) y gestionar los pods de Fargate por separado. **Nota**: Cloud Network Monitoring (CNM) no es compatible con EKS Fargate. ## Configuración -Estos pasos cubren la configuración del Datadog Agent v7.17+ en un contenedor dentro de Amazon EKS en AWS Fargate. Consulta la [documentación de la integración de Datadog y Amazon EKS][1] si no utilizas AWS Fargate. +### Requisitos previos -Los pods de AWS Fargate no son pods físicos, lo que significa que excluyen los [checks de los sistemas basados en hosts][2], como CPU, memoria, etc. Para recopilar los datos de los pods de AWS Fargate, debes ejecutar el Agent como sidecar de un pod de aplicación con control de acceso basado en roles (RBAC) personalizado. Esto habilita las siguientes características: +- Un [perfil de AWS Fargate](#aws-fargate-profile) +- Un [secreto de Kubernetes llamado `Datadog-secret`](#secret-for-keys-and-tokens), que contiene tu clave de API de Datadog y el token del Cluster Agent +- Un [RBAC de AWS Fargate](#aws-fargate-rbac) -- Recopilación de las métricas de Kubernetes del pod que ejecuta los contenedores de aplicaciones y el Agent -- [Autodiscovery][3] -- Configuración de checks personalizados del Agent para establecer los contenedores en el mismo pod como destino -- APM y DogStatsD para los contenedores del mismo pod +#### Perfil de AWS Fargate -### Nodo de EC2 +Crea y especifica un [perfil de AWS Fargate][4] para tus pods de EKS Fargate. -Si no se especifica a través de [AWS Fargate Profile][4] que los pods deben ejecutarse en Fargate, los pods pueden utilizar máquinas de EC2 clásicas. En ese caso, consulta la [configuración de la integración de Datadog y Amazon EKS][5] para recopilar sus datos. Esto funciona con la ejecución del Agent como una carga de trabajo de tipo EC2. La configuración del Agent es la misma que la [configuración del Kubernetes Agent][6], y todas las opciones están disponibles. Para desplegar el Agent en nodos de EC2, utiliza la [configuración del DaemonSet del Datadog Agent][7]. +Si no especificas un perfil de AWS Fargate, tus pods utilizan máquinas de EC2 clásicas. Para monitorizar estos pods, utiliza la [instalación estándar de Datadog Kubernetes][3] con la opción [integración de Datadog y Amazon EKS][5]. -### Instalación +#### Secreto para claves y tokens -Para obtener las mejores cargas de trabajo de monitorización de la cobertura de observabilidad en AWS EKS Fargate, instala las integraciones de Datadog para los siguientes servicios: +Crea un [secreto de Kubernetes][6] llamado `Datadog-secret` que contenga: +- Tu [clave de API de Datadog][7] +- Un token alfanumérico de 32 caracteres para el Cluster Agent. El Agent y Cluster Agent utilizan este token para comunicarse. Crearlo de antemano asegura que tanto las configuraciones tradicionales como el pod de Fargate obtengan el mismo valor de token (a diferencia de dejar que el Datadog Operator o el Helm creen un token aleatorio para ti). Para más información sobre cómo se utiliza este token, consulta [Configuración del Cluster Agent][8]. -- [Kubernetes][8] -- [AWS][9] -- [EKS][10] -- [EC2][11] (si ejecutas un nodo de tipo EC2) +```shell +kubectl create secret generic datadog-secret -n \ + --from-literal api-key= \ + --from-literal token= +``` -Además, configura las integraciones para cualquier otro servicio de AWS que ejecutes con EKS (por ejemplo, [ELB][12]). +Si estás desplegando tu instalación tradicional de Datadog en un espacio de nombres y los pods de Fargate en otro espacio de nombres, crea un secreto en *ambos* espacios de nombres: -#### Instalación manual +```shell +# Create the secret in the namespace:datadog-agent +kubectl create secret generic datadog-secret -n datadog-agent \ + --from-literal api-key= \ + --from-literal token= -Para realizar la instalación, descarga la imagen personalizada del Agent: `datadog/agent` con la versión 7.17 o una superior. +# Create the secret in the namespace:fargate +kubectl create secret generic datadog-secret -n fargate \ + --from-literal api-key= \ + --from-literal token= +``` -Si el Agent se ejecuta como sidecar, solo puede comunicarse con contenedores del mismo pod. Ejecuta un Agent para cada pod que quieras monitorizar. +**Nota**: Para utilizar el Admission Controller para ejecutar el Agent en Fargate, el nombre de este secreto de Kubernetes _debe_ ser `Datadog-secret`. -### Configuración +#### RBAC de AWS Fargate -Para recopilar los datos de las aplicaciones que se ejecutan en AWS EKS Fargate a través de un nodo de Fargate, sigue estos pasos de configuración: +Crea un `ClusterRole` para los permisos necesarios y enlázalo a la `ServiceAccount` que utilizan tus pods: -- [Configurar las reglas de RBAC de AWS EKS Fargate](#aws-eks-fargate-rbac). -- [Desplegar el Agent como sidecar](#running-the-agent-as-a-sidecar). -- Configurar la recopilación de [métricas](#metrics-collection), [logs](#log-collection), [eventos](#events-collection) y [trazas](#traces-collection) de Datadog. +1. Crea un `ClusterRole` utilizando el siguiente manifiesto: -Para ver los contenedores de EKS Fargate en la Datadog Live Container View, habilita `shareProcessNamespace` en las especiaciones del pod. Consulta [Recopilación de procesos](#process-collection). + ```yaml + apiVersion: rbac.authorization.k8s.io/v1 + kind: ClusterRole + metadata: + name: datadog-agent-fargate + rules: + - apiGroups: + - "" + resources: + - nodes + - namespaces + - endpoints + verbs: + - get + - list + - apiGroups: + - "" + resources: + - nodes/metrics + - nodes/spec + - nodes/stats + - nodes/proxy + - nodes/pods + - nodes/healthz + verbs: + - get + ``` -#### RBAC de AWS EKS Fargate +2. Crea un `ClusterRoleBinding` para adjuntarlo al espacio de nombres `ServiceAccount` que tus pods están utilizando actualmente. Las siguientes `ClusterRoleBindings` hacen referencia a este `ClusterRole` creado previamente. -Utiliza el siguiente RBAC del Agent cuando despliegues el Agent como sidecar en AWS EKS Fargate: + ```yaml + apiVersion: rbac.authorization.k8s.io/v1 + kind: ClusterRoleBinding + metadata: + name: datadog-agent-fargate + roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: datadog-agent-fargate + subjects: + - kind: ServiceAccount + name: + namespace: + ``` -```yaml -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: datadog-agent -rules: - - apiGroups: - - "" - resources: - - nodes - - namespaces - - endpoints - verbs: - - get - - list - - apiGroups: - - "" - resources: - - nodes/metrics - - nodes/spec - - nodes/stats - - nodes/proxy - - nodes/pods - - nodes/healthz - verbs: - - get ---- -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRoleBinding -metadata: - name: datadog-agent -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: datadog-agent -subjects: - - kind: ServiceAccount - name: datadog-agent - namespace: default ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - name: datadog-agent - namespace: default -``` + #### Si tus pods no utilizan un ServiceAccount -#### Ejecución del Agent como sidecar + Si tus pods no utilizan un `ServiceAccount`, utiliza lo siguiente: -Puedes ejecutar el Agent como sidecar mediante el [Datadog Admission Controller][13] (requiere el Cluster Agent v7.52+) o con una configuración de sidecar manual. Con el Admission Controller, puedes inyectar un sidecar del Agent en cada pod que tenga la etiqueta (label) `agent.datadoghq.com/sidecar:fargate`. + ```yaml + apiVersion: rbac.authorization.k8s.io/v1 + kind: ClusterRoleBinding + metadata: + name: datadog-agent-fargate + roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: datadog-agent-fargate + subjects: + - kind: ServiceAccount + name: datadog-agent + namespace: fargate + --- + apiVersion: v1 + kind: ServiceAccount + metadata: + name: datadog-agent + namespace: fargate + ``` -Con la configuración manual, debes modificar cada manifiesto de carga de trabajo al añadir o cambiar el sidecar del Agent. Datadog recomienda utilizar el Admission Controller. + Esto crea un `ServiceAccount` llamado `Datadog-Agent` en el espacio de nombres `fargate` al que se hace referencia en la `ClusterRoleBinding`. Ajusta esto para el espacio de nombres de tus pods de Fargate y configúralo como el `serviceAccountName` en tu especificación de pod. -{{< tabs >}} -{{% tab "Datadog Operator" %}} -##### Admission Controller con Datadog Operator + #### Si utilizas varias ServiceAccounts en distintos espacios de nombres + Si estás utilizando varias `ServiceAccounts` a través de espacios de nombres para tus pods de Fargate, utiliza lo siguiente: -
Esta característica requiere el Cluster Agent v7.52.0+, el Datadog Operator v1.7.0+ y la integración de EKS Fargate. -
+ ```yaml + apiVersion: rbac.authorization.k8s.io/v1 + kind: ClusterRoleBinding + metadata: + name: datadog-agent-fargate + roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: datadog-agent-fargate + subjects: + - kind: ServiceAccount + name: + namespace: + - kind: ServiceAccount + name: + namespace: + - kind: ServiceAccount + name: + namespace: + ``` + +Para validar tu RBAC, consulta [Solucionar problemas: permisos de ServiceAccount](#serviceaccount-kubelet-permissions). + +### Instalación -La siguiente configuración permite que el Cluster Agent se comunique con los sidecars del Agent y acceda a características como la [recopilación de eventos][1], la [vista de recursos de Kubernetes][2] y los [checks de clústeres][3]. +Después de completar todos los requisitos previos, ejecuta el Datadog Agent como un contenedor sidecar dentro de cada uno de tus pods. Puedes hacerlo con la función de inyección automática de [Datadog Admission Controller][9] o manualmente. -**Requisitos previos** +El Admission Controller es un componente de Datadog que puede añadir automáticamente el Agent sidecar a cada pod que tenga la etiqueta `Agent.datadoghq.com/sidecar: fargate`. + +La configuración manual requiere que modifiques cada manifiesto de carga de trabajo cuando añadas o cambies el Agent sidecar. Datadog recomienda que utilices el Admission Controller en su lugar. + +**Nota**: Si tienes un clúster mixto de nodos de EKS tradicionales y pods de Fargate, configura la monitorización para tus nodos tradicionales con la [instalación estándar de Datadog Kubernetes][3] (con el secreto de Kubernetes de los requisitos previos) e instala la [integración de Datadog y AWS][10] y la [integración de Datadog y EKS][5]. A continuación, para monitorizar tus pods de Fargate, continúa con esta sección. + +{{< tabs >}} +{{% tab "Admission Controller - Datadog Operator" %}} +#### Admission Controller - Datadog Operator -* Configura el RBAC en el espacio de nombres de aplicación. Consulta la sección [RBAC de AWS EKS Fargate](#aws-eks-fargate-rbac) de esta página. -* Vincula el RBAC anterior al pod de aplicación al configurar el nombre de cuenta de servicio. -* Crea un secreto de Kubernetes que contenga tu clave de la API de Datadog y el token del Cluster Agent en los espacios de nombres de instalación y aplicación de Datadog: +1. Si aún no lo has hecho, [instala Helm][1] en tu máquina. +2. Instala el Datadog Operator: ```shell - kubectl create secret generic datadog-secret -n datadog-agent \ - --from-literal api-key= --from-literal token= - kubectl create secret generic datadog-secret -n fargate \ - --from-literal api-key= --from-literal token= + helm repo add datadog https://helm.datadoghq.com + helm install datadog-operator datadog/datadog-operator ``` - Para obtener más información sobre cómo se utilizan estos secretos, consulta la [Configuración del Cluster Agent][4]. -###### Configuración +3. Crea un archivo `Datadog-Agent.yaml` para definir un recurso personalizado `DatadogAgent`, con el Admission Controller y la inyección de Fargate activados: -1. Crea un recurso personalizado `DatadogAgent` en `datadog-agent.yaml` con el Admission Controller habilitado: - - ```yaml + ```yaml apiVersion: datadoghq.com/v2alpha1 kind: DatadogAgent metadata: name: datadog spec: global: + clusterName: clusterAgentTokenSecret: secretName: datadog-secret keyName: token @@ -224,214 +281,227 @@ La siguiente configuración permite que el Cluster Agent se comunique con los si agentSidecarInjection: enabled: true provider: fargate - ``` - A continuación, aplica la nueva configuración: + ``` +4. Aplica esta configuración: - ```shell - kubectl apply -n datadog-agent -f datadog-agent.yaml - ``` + ```shell + kubectl apply -n -f datadog-agent.yaml + ``` -2. Una vez que el Cluster Agent alcanza un estado de ejecución y registra los webhooks mutados del Admission Controller, se inyecta automáticamente un sidecar del Agent en cualquier pod creado con la etiqueta `agent.datadoghq.com/sidecar:fargate`. - **El Admission Controller no muta los pods ya creados**. - -**Resultado de ejemplo** - - A continuación se muestra un fragmento de `spec.containers` de un despliegue de Redis en el que el Admission Controller inyecta un sidecar del Agent. El sidecar se configura automáticamente con los valores predeterminados internos e incluye parámetros adicionales para ejecutarse en un entorno de EKS Fargate. El sidecar utiliza el repositorio de imágenes y las etiquetas (tags) configurados en `datadog-agent.yaml`. La comunicación entre el Cluster Agent y los sidecars se encuentra habilitada de manera predeterminada. - - {{< highlight yaml "hl_lines=7-29" >}} - containers: - - args: - - redis-server - image: redis:latest - # ... - - env: - - name: DD_API_KEY - valueFrom: - secretKeyRef: - key: api-key - name: datadog-secret - - name: DD_CLUSTER_AGENT_AUTH_TOKEN - valueFrom: - secretKeyRef: - key: token - name: datadog-secret - - name: DD_EKS_FARGATE - value: "true" - # ... - image: gcr.io/datadoghq/agent:7.51.0 - imagePullPolicy: IfNotPresent - name: datadog-agent-injected - resources: - limits: - cpu: 200m - memory: 256Mi - requests: - cpu: 200m - memory: 256Mi - {{< /highlight >}} - -###### Perfiles de sidecar y selectores personalizados - -Para ampliar la configuración del Agent o de sus recursos de contenedores, utiliza las propiedades de tu recurso `DatadogAgent`. Utiliza la propiedad `spec.features.admissionController.agentSidecarInjection.profiles` para añadir definiciones de variables de entorno y parámetros de recursos. Utiliza la propiedad `spec.features.admissionController.agentSidecarInjection.selectors` para configurar un selector personalizado y establecer los pods de una carga de trabajo como destino en lugar de actualizar la carga de trabajo para añadir las etiquetas `agent.datadoghq.com/sidecar:fargate`. - - 1. Crea un recurso personalizado `DatadogAgent` en el archivo `datadog-values.yaml` que configure un perfil de sidecar y un selector de pods personalizado. - - **Ejemplo** - - En el siguiente ejemplo, un selector tiene todos los pods establecidos como destino con la etiqueta `"app": redis`. El perfil de sidecar configura una variable de entorno `DD_PROCESS_AGENT_PROCESS_COLLECTION_ENABLED` y parámetros de recursos. - - ```yaml - spec: - features: - admissionController: - agentSidecarInjection: - enabled: true - provider: fargate - selectors: - - objectSelector: - matchLabels: - "app": redis - profiles: - - env: - - name: DD_PROCESS_AGENT_PROCESS_COLLECTION_ENABLED - value: "true" - resources: - requests: - cpu: "400m" - memory: "256Mi" - limits: - cpu: "800m" - memory: "512Mi" - ``` - - A continuación, aplica la nueva configuración: - - ```shell - kubectl apply -n datadog-agent -f datadog-agent.yaml - ``` - - 2. Una vez que el Cluster Agent alcanza un estado de ejecución y registra los webhooks mutados del Admission Controller, se inyecta automáticamente un sidecar del Agent en cualquier pod creado con la etiqueta `app:redis`. - **El Admission Controller no muta los pods ya creados**. - - **Resultado de ejemplo** - - A continuación se muestra un fragmento de `spec.containers` de un despliegue de Redis en el que el Admission Controller inyecta un sidecar del Agent. Las variables de entorno y los parámetros de recursos de `datadog-agent.yaml` se aplican automáticamente. - - {{< highlight yaml "hl_lines=12-30" >}} - labels: - app: redis - eks.amazonaws.com/fargate-profile: fp-fargate - pod-template-hash: 7b86c456c4 - # ... - containers: - - args: - - redis-server - image: redis:latest - # ... - - env: - - name: DD_API_KEY - valueFrom: - secretKeyRef: - key: api-key - name: datadog-secret - # ... - - name: DD_PROCESS_AGENT_PROCESS_COLLECTION_ENABLED - valor: "true" - # ... - image: gcr.io/datadoghq/agent:7.51.0 - imagePullPolicy: IfNotPresent - name: datadog-agent-injected - recursos: - limits: - cpu: 800m - memory: 512Mi - requests: - cpu: 400m - memory: 256Mi - {{< /highlight >}} - -[1]: https://docs.datadoghq.com/es/agent/kubernetes/?tab=helm#event-collection -[2]: https://docs.datadoghq.com/es/infrastructure/livecontainers/#kubernetes-resources-view -[3]: https://docs.datadoghq.com/es/agent/cluster_agent/clusterchecks/#overview -[4]: http://docs.datadoghq.com/agent/cluster_agent -{{% /tab %}} -{{% tab "Helm" %}} -##### Admission Controller con Helm +5. Después de que el Cluster Agent alcance un estado de ejecución y registre los webhooks mutantes del Admission Controller, añade la etiqueta `Agent.datadoghq.com/sidecar: fargate` a los pods que desees (no a la carga de trabajo principal) para activar la inyección del contenedor sidecar del Agent. -
Esta característica requiere el Cluster Agent v7.52.0+. -
+**Nota**: El Admission Controller sólo muta los pods nuevos, no los pods ya creados. No ajusta tu `serviceAccountName`. Si no has configurado el RBAC para este pod, el Agent no podrá conectarse a Kubernetes. + +**Ejemplo** + +A continuación, se muestra la salida de un pod de despliegue de Redis de ejemplo en el que el Admission Controller inyectó un Agent sidecar. Las variables de entorno y la configuración de recursos se aplican automáticamente en función de los valores predeterminados internos del perfil de Datadog Fargate. + +El sidecar utiliza el repositorio de imágenes y etiquetas configurado en `Datadog-Agent.yaml`. -La siguiente configuración permite que el Cluster Agent se comunique con los sidecars del Agent y acceda a características como la [recopilación de eventos][1], la [vista de recursos de Kubernetes][2] y los [checks de clústeres][3]. +{{< highlight yaml "hl_lines=15-37" >}} +metadata: + labels: + app: redis + eks.amazonaws.com/fargate-profile: fp-fargate + agent.datadoghq.com/sidecar: fargate +spec: + serviceAccountName: datadog-agent + containers: + - name: my-redis + image: redis:latest + args: + - redis-server + # (...) + + - name: datadog-agent-injected + image: gcr.io/datadoghq/agent:7.64.0 + env: + - name: DD_API_KEY + valueFrom: + secretKeyRef: + key: api-key + name: datadog-secret + - name: DD_EKS_FARGATE + valor: "true" + - name: DD_CLUSTER_AGENT_AUTH_TOKEN + valueFrom: + secretKeyRef: + key: token + name: datadog-secret + # (...) + recursos: + limits: + cpu: 200m + memory: 256Mi + requests: + cpu: 200m + memory: 256Mi +{{< /highlight >}} -**Requisitos previos** +##### Configuración personalizada con perfiles sidecar y selectores personalizados - Datadog Operador -* Configura el RBAC en el espacio de nombres de aplicación. Consulta la sección [RBAC de AWS EKS Fargate](#aws-eks-fargate-rbac) de esta página. -* Vincula el RBAC anterior al pod de aplicación al configurar el nombre de cuenta de servicio. -* Crea un secreto de Kubernetes que contenga tu clave de la API de Datadog y el token del Cluster Agent en los espacios de nombres de instalación y aplicación de Datadog: +Para configurar mejor el Agent o sus recursos de contenedor, utiliza las siguientes propiedades en tu recurso `DatadogAgent`: + +- `spec.features.admissionController.agentSidecarInjection.profiles`, para añadir definiciones de variables de entorno y ajustes de recursos +- `spec.features.admissionController.agentSidecarInjection.selectors`, para configurar un selector personalizado destinado a los pods de carga de trabajo deseados (en lugar de los pods con la etiqueta `Agent.datadoghq.com/sidecar: fargate` ) + +Si lo deseas, puedes ajustar el perfil del contenedor del Agent inyectado sin actualizar el selector de etiquetas. + +Por ejemplo, el siguiente `Datadog-Agent.yaml` utiliza un selector para dirigirse a todos los pods con la etiqueta `app: redis`. El perfil sidecar configura una variable de entorno `DD_PROCESS_CONFIG_PROCESS_COLLECTION_ENABLED` y nuevos ajustes de recursos. + +```yaml +#(...) +spec: + #(...) + features: + admissionController: + agentSidecarInjection: + enabled: true + provider: fargate + selectors: + - objectSelector: + matchLabels: + app: redis + profiles: + - env: + - name: DD_PROCESS_CONFIG_PROCESS_COLLECTION_ENABLED + value: "true" + resources: + requests: + cpu: "400m" + memory: "256Mi" + limits: + cpu: "800m" + memory: "512Mi" +``` + +Aplica esta configuración y espera a que el Cluster Agent alcance un estado de ejecución y registra los webhooks mutantes del Admission Controller. A continuación, se inyecta automáticamente un Agent sidecar en cualquier pod nuevo creado con la etiqueta `app: redis`. + +**Nota**: El Admission Controller no muta los pods que ya están creados. + +A continuación, se muestra la salida de un pod de despliegue de Redis en el que el Admission Controller inyectó un Agent sidecar basado en la etiqueta del pod `app: redis` en lugar de la etiqueta `Agent.datadoghq.com/sidecar: fargate`: + +{{< highlight yaml "hl_lines=29-38" >}} +metadata: + labels: + app: redis + eks.amazonaws.com/fargate-profile: fp-fargate +spec: + serviceAccountName: datadog-agent + containers: + - name: my-redis + image: redis:latest + args: + - redis-server + # (...) + + - name: datadog-agent-injected + image: gcr.io/datadoghq/agent:7.64.0 + env: + - name: DD_API_KEY + valueFrom: + secretKeyRef: + key: api-key + name: datadog-secret + - name: DD_EKS_FARGATE + valor: "true" + - name: DD_CLUSTER_AGENT_AUTH_TOKEN + valueFrom: + secretKeyRef: + key: token + name: datadog-secret + - name: DD_PROCESS_CONFIG_PROCESS_COLLECTION_ENABLED + valor: "true" + #(...) + recursos: + requests: + cpu: "400m" + memory: "256Mi" + limits: + cpu: "800m" + memory: "512Mi" +{{< /highlight >}} + +Las variables de entorno y la configuración de los recursos se aplican automáticamente en función del nuevo perfil de Fargate configurado en `DatadogAgent`. + +[1]: https://helm.sh/docs/intro/install/ +{{% /tab %}} +{{% tab "Admission Controller - Helm" %}} + +#### Admission Controller - Helm + +1. Si aún no lo has hecho, [instala Helm][1] en tu máquina. + +2. Añade el repositorio de Datadog Helm: ```shell - kubectl create secret generic datadog-secret -n datadog-agent \ - --from-literal api-key= --from-literal token= - kubectl create secret generic datadog-secret -n fargate \ - --from-literal api-key= --from-literal token= + helm repo add datadog https://helm.datadoghq.com + helm repo update ``` - Para obtener más información sobre cómo se utilizan estos secretos, consulta la [Configuración del Cluster Agent][4]. -###### Configuración +3. Crea un `Datadog-values.yaml` con Admission Controller y la inyección de Fargate activados: -1. Crea un archivo, `datadog-values.yaml`, que contenga: + ```yaml + datadog: + apiKeyExistingSecret: datadog-secret + clusterName: + clusterAgent: + tokenExistingSecret: datadog-secret + admissionController: + agentSidecarInjection: + enabled: true + provider: fargate + ``` - ```sh - datadog: - clusterName: - apiKeyExistingSecret: datadog-secret - agents: - enabled: false - clusterAgent: - tokenExistingSecret: datadog-secret - admissionController: - agentSidecarInjection: - enabled: true - provider: fargate - ``` - **Nota**: Utiliza `agents.enabled=false` para un clúster exclusivo de Fargate. En el caso de un clúster mixto, define `agents.enabled=true` para crear un DaemonSet destinado a la monitorización de cargas de trabajo en instancias de EC2. +4. Despliega el gráfico en el espacio de nombres que desees: -2. Despliega el gráfico: + ```shell + helm install datadog-agent -f datadog-values.yaml datadog/datadog + ``` - ```bash - helm install datadog-agent -f datadog-values.yaml datadog/datadog - ``` +5. Después de que el Cluster Agent alcance un estado de ejecución y registre los webhooks mutantes del Admission Controller, añade la etiqueta `Agent.datadoghq.com/sidecar: fargate` a los pods que desees (no a la carga de trabajo principal) para activar la inyección del contenedor sidecar del Agent. -3. Una vez que el Cluster Agent alcanza un estado de ejecución y registra los webhooks mutados del Admission Controller, se inyecta automáticamente un sidecar del Agent en cualquier pod creado con la etiqueta `agent.datadoghq.com/sidecar:fargate`. - **El Admission Controller no muta los pods ya creados**. +**Nota**: El Admission Controller sólo muta los pods nuevos, no los pods ya creados. No ajusta tu `serviceAccountName`. Si no has configurado el RBAC para este pod, el Agent no podrá conectarse a Kubernetes. -**Resultado de ejemplo** +En un clúster exclusivo para Fargate, puedes configurar `agents.enabled=false` para omitir la creación del DaemonSet tradicional para monitorizar cargas de trabajo en instancias de EC2. -A continuación se muestra un fragmento de `spec.containers` de un despliegue de Redis en el que el Admission Controller inyecta un sidecar del Agent. El sidecar se configura automáticamente con los valores predeterminados internos e incluye parámetros adicionales para ejecutarse en un entorno de EKS Fargate. El sidecar utiliza el repositorio de imágenes y las etiquetas configurados en los valores de Helm. La comunicación entre el Cluster Agent y los sidecars se encuentra habilitada de manera predeterminada. +**Ejemplo** -{{< highlight yaml "hl_lines=7-29" >}} +A continuación, se muestra la salida de un pod de despliegue de Redis de ejemplo en el que el Admission Controller inyectó un Agent sidecar. Las variables de entorno y la configuración de recursos se aplican automáticamente en función de los valores predeterminados internos del perfil de Datadog Fargate. + +El sidecar utiliza el repositorio de imágenes y etiquetas configurado en `Datadog-values.yaml`. + +{{< highlight yaml "hl_lines=15-37" >}} +metadata: + labels: + app: redis + eks.amazonaws.com/fargate-profile: fp-fargate + agent.datadoghq.com/sidecar: fargate +spec: + serviceAccountName: datadog-agent containers: - - args: - - redis-server + - name: my-redis image: redis:latest - # ... - - env: - - name: DD_API_KEY - valueFrom: - secretKeyRef: - key: api-key - name: datadog-secret - - name: DD_CLUSTER_AGENT_AUTH_TOKEN - valueFrom: - secretKeyRef: - key: token - name: datadog-secret - - name: DD_EKS_FARGATE - valor: "true" - # ... - image: gcr.io/datadoghq/agent:7.51.0 - imagePullPolicy: IfNotPresent - name: datadog-agent-injected + args: + - redis-server + # (...) + + - name: datadog-agent-injected + image: gcr.io/datadoghq/agent:7.64.0 + env: + - name: DD_API_KEY + valueFrom: + secretKeyRef: + key: api-key + name: datadog-secret + - name: DD_EKS_FARGATE + valor: "true" + - name: DD_CLUSTER_AGENT_AUTH_TOKEN + valueFrom: + secretKeyRef: + key: token + name: datadog-secret + # (...) recursos: limits: cpu: 200m @@ -439,358 +509,460 @@ A continuación se muestra un fragmento de `spec.containers` de un despliegue de requests: cpu: 200m memory: 256Mi -{{< /highlight >}} + {{< /highlight >}} -###### Perfiles de sidecar y selectores personalizados +##### Configuración personalizada con perfiles sidecar y selectores personalizados - Helm -Para ampliar la configuración del Agent o de sus recursos de contenedores, utiliza la propiedad de Helm `clusterAgent.admissionController.agentSidecarInjection.profiles` para añadir definiciones de variables de entorno y parámetros de recursos. Utiliza la propiedad `clusterAgent.admissionController.agentSidecarInjection.selectors` para configurar un selector personalizado y establecer los pods de una carga de trabajo como destino en lugar de actualizar la carga de trabajo para añadir las etiquetas `agent.datadoghq.com/sidecar:fargate`. +Para configurar mejor el Agent o sus recursos de contenedor, utiliza las siguientes propiedades en tu configuración de Helm: -1. Crea un archivo `datadog-values.yaml` de Helm que configure un perfil de sidecar y un selector de pods personalizado. +- `clusterAgent.admissionController.agentSidecarInjection.profiles`, para añadir definiciones de variables de entorno y ajustes de recursos +- `clusterAgent.admissionController.agentSidecarInjection.selectors`, para configurar un selector personalizado destinado a los pods de carga de trabajo deseados (en lugar de los pods con la etiqueta `Agent.datadoghq.com/sidecar: fargate`) - **Ejemplo** +Si lo deseas, puedes ajustar el perfil del contenedor del Agent inyectado sin actualizar el selector de etiquetas. - En el siguiente ejemplo, un selector tiene todos los pods establecidos como destino con la etiqueta `"app": redis`. El perfil de sidecar configura una variable de entorno `DD_PROCESS_AGENT_PROCESS_COLLECTION_ENABLED` y parámetros de recursos. +Por ejemplo, el siguiente `Datadog-values.yaml` utiliza un selector para dirigirse a todos los pods con la etiqueta `app: redis`. El perfil sidecar configura una variable de entorno `DD_PROCESS_CONFIG_PROCESS_COLLECTION_ENABLED` y nuevos ajustes de recursos. - ```yaml - clusterAgent: - admissionController: - agentSidecarInjection: - selectors: - - objectSelector: - matchLabels: - "app": redis - profiles: - - env: - - name: DD_PROCESS_AGENT_PROCESS_COLLECTION_ENABLED - value: "true" - resources: - requests: - cpu: "400m" - memory: "256Mi" - limits: - cpu: "800m" - memory: "512Mi" - ``` +```yaml +#(...) +clusterAgent: + admissionController: + agentSidecarInjection: + enabled: true + provider: fargate + selectors: + - objectSelector: + matchLabels: + app: redis + profiles: + - env: + - name: DD_PROCESS_CONFIG_PROCESS_COLLECTION_ENABLED + value: "true" + resources: + requests: + cpu: "400m" + memory: "256Mi" + limits: + cpu: "800m" + memory: "512Mi" +``` -2. Instala el chart: +Aplica esta configuración y espera a que el Cluster Agent alcance un estado de ejecución y registra los webhooks mutantes del Admission Controller. A continuación, se inyecta automáticamente un Agent sidecar en cualquier pod nuevo creado con la etiqueta `app: redis`. - ```shell - helm install datadog datadog/datadog -n datadog-agent \ - --set datadog.clusterName=cluster-name \ - --set agents.enabled=false \ - --set datadog.apiKeyExistingSecret=datadog-secret \ - --set clusterAgent.tokenExistingSecret=datadog-secret \ - --set clusterAgent.admissionController.agentSidecarInjection.enabled=true \ - --set clusterAgent.admissionController.agentSidecarInjection.provider=fargate \ - -f datadog-values.yaml - ``` - **Nota**: Utiliza `agents.enabled=false` para un clúster exclusivo de Fargate. En el caso de un clúster mixto, define `agents.enabled=true` para crear un DaemonSet destinado a la monitorización de cargas de trabajo en instancias de EC2. - -3. Una vez que el Cluster Agent alcanza un estado de ejecución y registra los webhooks mutados del Admission Controller, se inyecta automáticamente un sidecar del Agent en cualquier pod creado con la etiqueta `app:redis`. - **El Admission Controller no muta los pods ya creados**. - -**Resultado de ejemplo** - -A continuación se muestra un fragmento de `spec.containers` de un despliegue de Redis en el que el Admission Controller inyecta un sidecar del Agent. Las variables de entorno y los parámetros de recursos de `datadog-values.yaml` se aplican automáticamente. - -{{< highlight yaml "hl_lines=12-30" >}} -labels: - app: redis - eks.amazonaws.com/fargate-profile: fp-fargate - pod-template-hash: 7b86c456c4 -# ... -containers: -- args: - - redis-server - image: redis:latest -# ... -- env: - - name: DD_API_KEY - valueFrom: - secretKeyRef: - key: api-key - name: datadog-secret - # ... - - name: DD_PROCESS_AGENT_PROCESS_COLLECTION_ENABLED - valor: "true" - # ... - image: gcr.io/datadoghq/agent:7.51.0 - imagePullPolicy: IfNotPresent - name: datadog-agent-injected - recursos: - limits: - cpu: 800m - memory: 512Mi - requests: - cpu: 400m - memory: 256Mi +**Nota**: El Admission Controller no muta los pods que ya están creados. + +A continuación, se muestra la salida de un pod de despliegue de Redis en el que el Admission Controller inyectó un Agent sidecar basado en la etiqueta del pod `app: redis` en lugar de la etiqueta `Agent.datadoghq.com/sidecar: fargate`: + +{{< highlight yaml "hl_lines=29-37" >}} +metadata: + labels: + app: redis + eks.amazonaws.com/fargate-profile: fp-fargate +spec: + serviceAccountName: datadog-agent + containers: + - name: my-redis + image: redis:latest + args: + - redis-server + # (...) + + - name: datadog-agent-injected + image: gcr.io/datadoghq/agent:7.64.0 + env: + - name: DD_API_KEY + valueFrom: + secretKeyRef: + key: api-key + name: datadog-secret + - name: DD_EKS_FARGATE + valor: "true" + - name: DD_CLUSTER_AGENT_AUTH_TOKEN + valueFrom: + secretKeyRef: + key: token + name: datadog-secret + - name: DD_PROCESS_CONFIG_PROCESS_COLLECTION_ENABLED + valor: "true" + #(...) + recursos: + requests: + cpu: "400m" + memory: "256Mi" + limits: + cpu: "800m" + memory: "512Mi" {{< /highlight >}} +Las variables de entorno y la configuración de recursos se aplican automáticamente en función del nuevo perfil de Fargate establecido en la configuración de Helm. -[1]: https://docs.datadoghq.com/es/agent/kubernetes/?tab=helm#event-collection -[2]: https://docs.datadoghq.com/es/infrastructure/livecontainers/#kubernetes-resources-view -[3]: https://docs.datadoghq.com/es/agent/cluster_agent/clusterchecks/#overview -[4]: http://docs.datadoghq.com/agent/cluster_agent +[1]: https://helm.sh/docs/intro/install/ {{% /tab %}} {{% tab "Manual" %}} -##### Manual +#### Manual -Para empezar a recopilar datos de tu pod de tipo Fargate, despliega el Datadog Agent v7.17+ como sidecar de tu aplicación. Esta es la configuración mínima necesaria para recopilar métricas de la aplicación que se ejecuta en el pod. Observa la adición de `DD_EKS_FARGATE=true` en el manifiesto para desplegar el sidecar del Datadog Agent. +Para empezar a recopilar datos de tu pod de tipo Fargate, despliega el Agent v7.17+ como contenedor sidecar dentro del pod de tu aplicación utilizando el siguiente manifiesto: ```yaml apiVersion: apps/v1 kind: Deployment metadata: - name: "" - namespace: default + name: "" + namespace: default spec: - selector: - matchLabels: - app: "" - replicas: 1 - template: - metadata: - labels: - app: "" - name: "" - spec: - serviceAccountName: datadog-agent - containers: - - name: "" - image: "" - ## Ejecución del Agent como sidecar - - image: datadog/agent - name: datadog-agent - env: - - name: DD_API_KEY - value: "" - ## Define DD_SITE como "datadoghq.eu" para enviar los - ## datos del Agent al sitio de Datadog de la UE - - name: DD_SITE - value: "datadoghq.com" - - name: DD_EKS_FARGATE - value: "true" - - name: DD_CLUSTER_NAME - value: "" - - name: DD_KUBERNETES_KUBELET_NODENAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: spec.nodeName - resources: - requests: - memory: "256Mi" - cpu: "200m" - limits: - memory: "256Mi" - cpu: "200m" + replicas: 1 + selector: + matchLabels: + app: "" + template: + metadata: + labels: + app: "" + spec: + serviceAccountName: datadog-agent + containers: + # Your original container + - name: "" + image: "" + + # Running the Agent as a side-car + - name: datadog-agent + image: gcr.io/datadoghq/agent:7 + env: + - name: DD_API_KEY + valueFrom: + secretKeyRef: + key: api-key + name: datadog-secret + - name: DD_SITE + value: "" + - name: DD_EKS_FARGATE + value: "true" + - name: DD_CLUSTER_NAME + value: "" + - name: DD_KUBERNETES_KUBELET_NODENAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: spec.nodeName + resources: + requests: + memory: "256Mi" + cpu: "200m" + limits: + memory: "256Mi" + cpu: "200m" ``` -**Nota**: No olvides reemplazar `` por la [clave de la API de Datadog de tu organización][1]. +- Reemplaza `` por tu sitio: {{< region-param key="dd_site" code="true" >}}. Por defecto `datadoghq.com`. +- Asegúrate de que estás utilizando `serviceAccountName` con los permisos necesarios. +- Añade `DD_TAGS` para añadir etiquetas `:` con espacio adicional separado. La variable de entorno `DD_CLUSTER_NAME` establece tu etiqueta `kube_cluster_name`. -**Nota**: Añade el `kube_cluster_name:` que quieras a la lista de `DD_TAGS` para asegurarte de que tus métricas se etiqueten según el clúster deseado. Puedes añadir etiquetas adicionales aquí como etiquetas `:` separadas por espacios. Para los Agents `7.34+` y `6.34+`, esto no es necesario. En su lugar, establece la variable de entorno `DD_CLUSTER_NAME`. +Este manifiesto utiliza el secreto `Datadog-secret` creado en los pasos de requisitos previos. -###### Ejecución del Cluster Agent o el Cluster Checks Runner +#### Ejecución del Cluster Agent o el Cluster Checks Runner -Datadog recomienda ejecutar el Cluster Agent para acceder a características como la [recopilación de eventos][2], la [vista de recursos de Kubernetes][3] y los [checks de clústeres][4]. +Datadog recomienda ejecutar el Cluster Agent para acceder a características como la [recopilación de eventos][1], la [vista de recursos de Kubernetes][2] y los [checks de clústeres][3]. Cuando se utiliza EKS Fargate, hay dos escenarios posibles dependiendo de si el clúster de EKS ejecuta o no cargas de trabajo mixtas (de Fargate y que no son de Fargate). -Si el clúster de EKS ejecuta cargas de trabajo de Fargate y que no son de Fargate, y quieres monitorizar la carga de trabajo que no es de Fargate a través de Node Agent DaemonSet, añade el Cluster Agent o el Cluster Checks Runner a este despliegue. Para obtener más información, consulta la [Configuración del Cluster Agent][5]. - -El token del Cluster Agent debe ser accesible desde las tareas de Fargate que quieres monitorizar. Si utilizas el Helm Chart o el Datadog Operator, dicho token no es accesible de manera predeterminada porque se crea un secreto en el espacio de nombres de destino. - -Tienes dos opciones para que esto funcione correctamente: - -* Utilizar un valor de token codificado (`clusterAgent.token` en Helm, `credentials.token` en el Datadog Operator). Esto es práctico, pero menos seguro. -* Utilizar un secreto creado manualmente (`clusterAgent.tokenExistingSecret` en Helm, no disponible en el Datadog Operator) y replicarlo en todos los espacios de nombres donde las tareas de Fargate necesiten monitorización. Esto es seguro, pero requiere operaciones adicionales. -**Nota**: El valor de `token` debe tener un mínimo de 32 caracteres. - -Si el clúster de EKS solo ejecuta cargas de trabajo de Fargate, necesitas un despliegue independiente del Cluster Agent. Además, debes elegir una de las dos opciones para hacer que el token sea accesible, como se describió arriba. +Si el clúster de EKS ejecuta cargas de trabajo de Fargate y que no son de Fargate, y quieres monitorizar la carga de trabajo que no es de Fargate a través del DaemonSet del Node Agent, añade el Cluster Agent o el Cluster Checks Runner a este despliegue. Para obtener más información, consulta la [Configuración del Cluster Agent][4]. -Utiliza el siguiente archivo `values.yaml` de Helm: +Cuando despliegues tu Cluster Agent, utiliza el secreto y el token creados en los pasos de requisitos previos. +##### Helm ```yaml datadog: - apiKey: + apiKeyExistingSecret: datadog-secret clusterName: -agents: - enabled: false clusterAgent: - enabled: true - replicas: 2 - env: - - name: DD_EKS_FARGATE - value: "true" + tokenExistingSecret: datadog-secret ``` +Configura `agents.enabled=false` para desactivar el Agent de nodo estándar si estás utilizando *sólo* cargas de trabajo de Fargate. +##### Operación +```yaml +apiVersion: datadoghq.com/v2alpha1 +kind: DatadogAgent +metadata: + name: datadog +spec: + global: + clusterAgentTokenSecret: + secretName: datadog-secret + keyName: token + credentials: + apiSecret: + secretName: datadog-secret + keyName: api-key +``` + +##### Configuración del sidecar para Cluster Agent En ambos casos, es necesario modificar el manifiesto del sidecar del Datadog Agent para permitir la comunicación con el Cluster Agent: ```yaml - env: + containers: + #(...) + - name: datadog-agent + image: gcr.io/datadoghq/agent:7 + env: + #(...) + - name: DD_CLUSTER_NAME + value: - name: DD_CLUSTER_AGENT_ENABLED value: "true" - name: DD_CLUSTER_AGENT_AUTH_TOKEN - value: # Utiliza valueFrom: si usas un secreto + valueFrom: + secretKeyRef: + name: datadog-secret + key: token - name: DD_CLUSTER_AGENT_URL value: https://..svc.cluster.local:5005 - - name: DD_ORCHESTRATOR_EXPLORER_ENABLED # Obligatorio para obtener la vista de recursos de Kubernetes - value: "true" - - name: DD_CLUSTER_NAME - value: ``` -[1]: https://app.datadoghq.com/organization-settings/api-keys -[2]: https://docs.datadoghq.com/es/agent/kubernetes/?tab=helm#event-collection -[3]: https://docs.datadoghq.com/es/infrastructure/livecontainers/#kubernetes-resources-view -[4]: https://docs.datadoghq.com/es/agent/cluster_agent/clusterchecks/#overview -[5]: http://docs.datadoghq.com/agent/cluster_agent/setup/ -{{% /tab%}} -{{< /tabs>}} - - -## Rendimiento del clúster +Consulta el `DD_CLUSTER_AGENT_URL` relativo al nombre de servicio y espacio de nombres creado para tu Datadog Cluster Agent. -Para obtener información sobre el rendimiento de tu clúster de EKS, habilita un [Cluster Check Runner][14] para recopilar métricas del servicio [`kube-state-metrics`][15]. +[1]: https://docs.datadoghq.com/es/containers/kubernetes/configuration/#enable-kubernetes-event-collection +[2]: https://docs.datadoghq.com/es/infrastructure/containers/orchestrator_explorer +[3]: https://docs.datadoghq.com/es/agent/cluster_agent/clusterchecks/#overview +[4]: http://docs.datadoghq.com/agent/cluster_agent/setup/ +{{% /tab %}} +{{< /tabs >}} ## Recopilación de métricas ### Métricas de las integraciones -Utiliza [etiquetas de Autodiscovery con tu contenedor de aplicaciones][16] de modo que puedas empezar a recopilar sus métricas para las [integraciones del Agent compatibles][17]. +Utiliza [anotaciones de Autodiscovery con tu contenedor de aplicaciones][11] para empezar a recopilar tus métricas para las [integraciones del Agent][12] compatibles. ```yaml apiVersion: apps/v1 kind: Deployment metadata: - name: "" - namespace: default + name: "" + namespace: default spec: - replicas: 1 - selector: - matchLabels: - app: "" - template: + replicas: 1 + selector: + matchLabels: + app: "" + template: + metadata: + labels: + app: "" + annotations: + ad.datadoghq.com/.checks: | + { + "": { + "init_config": , + "instances": [] + } + } + spec: + serviceAccountName: datadog-agent + containers: + # Your original container + - name: "" + image: "" + + # Running the Agent as a side-car + - name: datadog-agent + image: gcr.io/datadoghq/agent:7 + env: + - name: DD_API_KEY + valueFrom: + secretKeyRef: + key: api-key + name: datadog-secret + - name: DD_SITE + value: "" + - name: DD_EKS_FARGATE + value: "true" + - name: DD_KUBERNETES_KUBELET_NODENAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: spec.nodeName + # (...) +``` + +### DogStatsD + +En EKS Fargate, tu contenedor de aplicaciones enviará las [métricas de DogStatsD][13] al contenedor sidecar del Datadog Agent. El Agent acepta estas métricas por defecto a través del puerto `8125`. + +No es necesario que configures la dirección `DD_AGENT_HOST` en tu contenedor de aplicaciones cuando envíes estas métricas. Deja que este valor por defecto sea `localhost`. + + +### Live Containers + +El Datadog Agent v6.19+ es compatible con los contenedores activos en la integración de EKS Fargate. Los contenedores activos aparecen en la página [Contenedores][14]. + +### Vista de recursos de Kubernetes + +Para recopilar vistas de recursos de Kubernetes, necesitas una [configuración del Cluster Agent][8] y una conexión válida entre el Agent sidecar y el Cluster Agent. Cuando se utiliza la configuración de inyección sidecar del Admission Controller, se conecta automáticamente. Al configurar el sidecar manualmente, asegúrate de que estás [conectando el Agent sidecar](#configuring-sidecar-for-cluster-agent). + +## Recopilación de procesos + +{{< tabs >}} +{{% tab "Admission Controller - Datadog Operator" %}} + +Para recopilar todos los procesos que se ejecutan en tu pod de Fargate: + +1. [Establece `shareProcessNamespace: true` en las especificaciones de tu pod][1]. Por ejemplo: + + ```yaml + apiVersion: apps/v1 + kind: Deployment metadata: - labels: - app: "" - name: "" - annotations: - ad.datadoghq.com/.check_names: '[]' - ad.datadoghq.com/.init_configs: '[]' - ad.datadoghq.com/.instances: '[]' + name: "" + namespace: default spec: - serviceAccountName: datadog-agent - containers: - - name: "" - image: "" - ## Running the Agent as a side-car - - image: datadog/agent - name: datadog-agent - env: - - name: DD_API_KEY - value: "" - ## Set DD_SITE to "datadoghq.eu" to send your - ## Agent data to the Datadog EU site - - name: DD_SITE - value: "datadoghq.com" - - name: DD_EKS_FARGATE - value: "true" - - name: DD_KUBERNETES_KUBELET_NODENAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: spec.nodeName - resources: - requests: - memory: "256Mi" - cpu: "200m" - limits: - memory: "256Mi" - cpu: "200m" -``` + replicas: 1 + selector: + matchLabels: + app: "" + template: + metadata: + labels: + app: "" + agent.datadoghq.com/sidecar: fargate + spec: + serviceAccountName: datadog-agent + shareProcessNamespace: true + containers: + # Your original container + - name: "" + image: "" + ``` -**Notas**: +2. Establece la variable de entorno del Agent `DD_PROCESS_CONFIG_PROCESS_COLLECTION_ENABLED=true` añadiendo un [perfil sidecar personalizado en tu configuración `DatadogAgent` del Operator](#custom-configuration-with-sidecar-profiles-and-custom-selectors---datadog-operator): -- No olvides reemplazar `` por la [clave de la API de Datadog de tu organización][18]. -- Las métricas de contenedores no están disponibles en Fargate porque el volumen `cgroups` del host no puede montarse en el Agent. La vista de [Live Containers][19] informa 0 para CPU y memoria. + ```yaml + #(...) + spec: + #(...) + features: + admissionController: + agentSidecarInjection: + enabled: true + provider: fargate + profiles: + - env: + - name: DD_PROCESS_CONFIG_PROCESS_COLLECTION_ENABLED + value: "true" + ``` -### DogStatsD +[1]: https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/ +{{% /tab %}} -Configura el puerto de contenedor `8125` con el contenedor del Agent de modo que puedas reenviar las [métricas de DogStatsD][20] desde tu contenedor de aplicaciones a Datadog. +{{% tab "Admission Controller - Helm" %}} -```yaml -apiVersion: apps/v1 -kind: Deployment -metadata: - name: "" - namespace: default -spec: - replicas: 1 - selector: - matchLabels: - app: "" - template: +Para recopilar todos los procesos que se ejecutan en tu pod de Fargate: + +1. [Establece `shareProcessNamespace: true` en las especificaciones de tu pod][1]. Por ejemplo: + + ```yaml + apiVersion: apps/v1 + kind: Deployment metadata: - labels: - app: "" - name: "" + name: "" + namespace: default spec: - serviceAccountName: datadog-agent - containers: - - name: "" - image: "" - ## Ejecución del Agent como sidecar - - image: datadog/agent - name: datadog-agent - ## Habilitación del puerto 8125 para la recopilación de métricas de DogStatsD - ports: - - containerPort: 8125 - name: dogstatsdport - protocol: UDP - env: - - name: DD_API_KEY - value: "" - ## Define DD_SITE como "datadoghq.eu" para enviar los - ## datos del Agent al sitio de Datadog de la UE - - name: DD_SITE - value: "datadoghq.com" - - name: DD_EKS_FARGATE - value: "true" - - name: DD_KUBERNETES_KUBELET_NODENAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: spec.nodeName - resources: - requests: - memory: "256Mi" - cpu: "200m" - limits: - memory: "256Mi" - cpu: "200m" -``` + replicas: 1 + selector: + matchLabels: + app: "" + template: + metadata: + labels: + app: "" + agent.datadoghq.com/sidecar: fargate + spec: + serviceAccountName: datadog-agent + shareProcessNamespace: true + containers: + # Your original container + - name: "" + image: "" + ``` -**Nota**: No olvides reemplazar `` por la [clave de la API de Datadog de tu organización][18]. +2. Establece la variable de entorno del Agent `DD_PROCESS_CONFIG_PROCESS_COLLECTION_ENABLED=true` añadiendo un [perfil sidecar personalizado en tu configuración de Helm](#custom-configuration-with-sidecar-profiles-and-custom-selectors---helm): -### Live Containers + ```yaml + clusterAgent: + admissionController: + agentSidecarInjection: + enabled: true + provider: fargate + profiles: + - env: + - name: DD_PROCESS_CONFIG_PROCESS_COLLECTION_ENABLED + value: "true" + ``` +[1]: https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/ +{{% /tab %}} +{{% tab "Manual" %}} -El Datadog Agent v6.19+ admite contenedores activos en la integración de EKS Fargate. Los contenedores activos aparecen en la página [Containers][19] (Contenedores). +Para recopilar todos los procesos que se ejecutan en tu pod de Fargate, establece la variable de entorno del Agent `DD_PROCESS_CONFIG_PROCESS_COLLECTION_ENABLED=true` y [establece `shareProcessNamespace: true` en las especificaciones de tu pod][1]. -### Live Processes +Por ejemplo: -El Datadog Agent v6.19+ admite procesos activos en la integración de EKS Fargate. Los procesos activos aparecen en la página [Processes][21] (Procesos). Para habilitar los procesos activos, [habilita shareProcessNamespace en las especificaciones del pod][22]. +```yaml +apiVersion: apps/v1 +kind: Deployment +metadata: + name: "" + namespace: default +spec: + replicas: 1 + selector: + matchLabels: + app: "" + template: + metadata: + labels: + app: "" + spec: + serviceAccountName: datadog-agent + shareProcessNamespace: true + containers: + # Your original container + - name: "" + image: "" + + # Running the Agent as a side-car + - name: datadog-agent + image: gcr.io/datadoghq/agent:7 + env: + - name: DD_API_KEY + valueFrom: + secretKeyRef: + key: api-key + name: datadog-secret + - name: DD_SITE + value: "" + - name: DD_EKS_FARGATE + value: "true" + - name: DD_KUBERNETES_KUBELET_NODENAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: spec.nodeName + - name: DD_PROCESS_CONFIG_PROCESS_COLLECTION_ENABLED + value: "true" + # (...) +``` -### Vista de recursos de Kubernetes +[1]: https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/ +{{% /tab %}} +{{< /tabs >}} -Para recopilar las vistas de recursos de Kubernetes, necesitas una [Configuración del Cluster Agent](#running-the-cluster-agent-or-the-cluster-checks-runner). ## Recopilación de logs -### Recopilación de logs de EKS en Fargate con Fluent Bit. +### Recopilación de logs de EKS en Fargate con Fluent Bit -Monitoriza los logs de EKS Fargate mediante [Fluent Bit][23] para enrutar los logs de EKS a CloudWatch Logs y el [Datadog Forwarder][24] para enrutar logs a Datadog. +Monitoriza los logs de EKS Fargate con [Fluent Bit][15] para enrutar logs de EKS a logs de CloudWatch y el [Datadog Forwarder][16] para enrutar logs a Datadog. 1. Para configurar Fluent Bit de modo que envíe logs a CloudWatch, crea un ConfigMap de Kubernetes que especifique CloudWatch Logs como salida. El ConfigMap especifica el grupo de logs, la región, la cadena de prefijo y si se debe crear automáticamente el grupo de logs. @@ -810,147 +982,202 @@ Monitoriza los logs de EKS Fargate mediante [Fluent Bit][23] para enrutar los lo log_stream_prefix awslogs-firelens-example auto_create_group true ``` -2. Utiliza el [Datadog Forwarder][24] para recopilar logs de CloudWatch y enviarlos a Datadog. +2. Utiliza [Datadog Forwarder][16] para recopilar logs de CloudWatch y enviarlos a Datadog. ## Recopilación de trazas -Configura el puerto de contenedor `8126` con el contenedor del Agent para recopilar las trazas de tu contenedor de aplicaciones. [Obtén más información sobre cómo configurar el rastreo][25]. +En EKS Fargate, tu contenedor de aplicaciones envía sus trazas al contenedor sidecar del Datadog Agent. El Agent acepta estas trazas a través del puerto `8126` por defecto. + +No es necesario que configures la dirección `DD_AGENT_HOST` en tu contenedor de aplicaciones cuando envíes estas métricas. Deja que este valor por defecto sea `localhost`. + +Establece [`shareProcessNamespace: true` en las especificaciones del pod][17] para ayudar al Agent a detectar el origen. ```yaml apiVersion: apps/v1 kind: Deployment metadata: - name: "" - namespace: default + name: "" + namespace: default spec: - replicas: 1 - selector: - matchLabels: - app: "" - template: - metadata: - labels: - app: "" - name: "" - spec: - serviceAccountName: datadog-agent - ## Colocación del Agent en el mismo espacio de nombres que la aplicación para la detección del origen con cgroup v2 - shareProcessNamespace: true - containers: - - name: "" - image: "" - ## Ejecución del Agent como sidecar - - image: datadog/agent - name: datadog-agent - ## Habilitación del puerto 8126 para la recopilación de trazas - ports: - - containerPort: 8126 - name: traceport - protocol: TCP - env: - - name: DD_API_KEY - value: "" - ## Define DD_SITE como "datadoghq.eu" para enviar los - ## datos del Agent al sitio de Datadog de la UE - - name: DD_SITE - value: "datadoghq.com" - - name: DD_EKS_FARGATE - value: "true" - - name: DD_APM_ENABLED - value: "true" - - name: DD_KUBERNETES_KUBELET_NODENAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: spec.nodeName - resources: - requests: - memory: "256Mi" - cpu: "200m" - limits: - memory: "256Mi" - cpu: "200m" + replicas: 1 + selector: + matchLabels: + app: "" + template: + metadata: + labels: + app: "" + spec: + serviceAccountName: datadog-agent + shareProcessNamespace: true + containers: + # Your original container + - name: "" + image: "" + + # Running the Agent as a side-car + - name: datadog-agent + image: gcr.io/datadoghq/agent:7 + # (...) ``` -**Nota**: No olvides reemplazar `` por la [clave de la API de Datadog de tu organización][18]. +[Más información sobre cómo configurar el rastreo][18]. ## Recopilación de eventos -Para recopilar eventos del servidor de la API de AWS EKS Fargate, ejecuta un [Datadog Cluster Agent dentro de tu clúster de EKS](#running-the-cluster-agent-or-the-cluster-checks-runner) y [habilita la recopilación de eventos del Cluster Agent][19]. - -Opcionalmente, despliega los ejecutores de checks de clústeres además de configurar el Datadog Cluster Agent para habilitar los checks de clústeres. +Para recopilar eventos de tu servidor API de Amazon EKS Fargate, ejecuta el [Datadog Cluster Agent][8] dentro de tu clúster de EKS. El Cluster Agent recopila eventos de Kubernetes, incluidos los pods de EKS Fargate, de forma predeterminada. **Nota**: También puedes recopilar eventos si ejecutas el Datadog Cluster Agent en un pod de Fargate. -## Recopilación de procesos - -Para el Agent 6.19+/7.19+, está disponible la [Recopilación de procesos][26]. Habilita `shareProcessNamespace` en las especificaciones del pod para recopilar todos los procesos que se estén ejecutando en el pod de Fargate. Por ejemplo: - -``` -apiVersion: v1 -kind: Pod -metadata: - name: -spec: - shareProcessNamespace: true -... -``` - -**Nota**: Las métricas de CPU y memoria no están disponibles. - ## Datos recopilados ### Métricas -El check eks_fargate envía una métrica de frecuencia `eks.fargate.pods.running` que se etiqueta según `pod_name` y `virtual_node` para que puedas realizar un seguimiento de cuántos pods se están ejecutando. +El check `eks_fargate` envía una métrica de frecuencia `eks.fargate.pods.running` con las etiquetas `pod_name` y `virtual_node` para que puedas realizar un seguimiento de cuántos pods se están ejecutando. ### Checks de servicio -eks_fargate no incluye checks de servicios. +El check `eks_fargate` no incluye ningún check de servicio. ### Eventos -eks_fargate no incluye ningún evento. +El check de `eks_fargate` no incluye ningún evento. ## Solucionar problemas -¿Necesitas ayuda? Ponte en contacto con el [servicio de asistencia de Datadog][21]. +### Permisos ServiceAccount de Kubelet + +Asegúrate de que tienes los permisos correctos en `ServiceAccount` asociados a tu pod. Si tu pod no tiene una `ServiceAccount` asociada o no está vinculado al ClusterRole correcto, no tiene acceso al Kubelet. + +Para validar tu acceso, ejecuta: + +```shell +kubectl auth can-i get nodes/pods --as system:serviceaccount:: +``` + +Por ejemplo, si tu pod de Fargate está en el espacio de nombres `fargate` con el ServiceAccount `Datadog-Agent`: +```shell +kubectl auth can-i get nodes/pods --as system:serviceaccount:fargate:datadog-agent +``` + +Esto devuelve `yes` o `no` en función del acceso. + + +### Contexto de seguridad del contenedor del Datadog Agent + +El contenedor del Datadog Agent está diseñado para ejecutarse como el usuario dd-agent (UID: 100). Si anulas el contexto de seguridad predeterminado estableciendo, por ejemplo, `runAsUser: 1000` en las especificaciones del pod, el contenedor no se iniciará debido a permisos insuficientes. Puedes ver errores como: + +```log +[s6-init] making user provided files available at /var/run/s6/etc...exited 0. +s6-chown: fatal: unable to chown /var/run/s6/etc/cont-init.d/50-ecs.sh: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/cont-init.d/50-eks.sh: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/cont-init.d/60-network-check.sh: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/cont-init.d/59-defaults.sh: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/cont-init.d/60-sysprobe-check.sh: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/cont-init.d/50-ci.sh: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/cont-init.d/89-copy-customfiles.sh: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/cont-init.d/01-check-apikey.sh: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/cont-init.d/51-docker.sh: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/cont-init.d/50-kubernetes.sh: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/cont-init.d/50-mesos.sh: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/services.d/trace/run: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/services.d/security/run: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/services.d/sysprobe/run: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/services.d/agent/run: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/services.d/process/run: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/services.d/security/finish: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/services.d/trace/finish: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/services.d/sysprobe/finish: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/services.d/agent/finish: Operation not permitted +s6-chown: fatal: unable to chown /var/run/s6/etc/services.d/process/finish: Operation not permitted +[s6-init] ensuring user provided files have correct perms...exited 0. +[fix-attrs.d] applying ownership & permissions fixes... +[fix-attrs.d] done. +[cont-init.d] executing container initialization scripts... +[cont-init.d] 01-check-apikey.sh: executing... +[cont-init.d] 01-check-apikey.sh: exited 0. +[cont-init.d] 50-ci.sh: executing... +[cont-init.d] 50-ci.sh: exited 0. +[cont-init.d] 50-ecs.sh: executing... +[cont-init.d] 50-ecs.sh: exited 0. +[cont-init.d] 50-eks.sh: executing... +ln: failed to create symbolic link '/etc/datadog-agent/datadog.yaml': Permission denied +[cont-init.d] 50-eks.sh: exited 0. +[cont-init.d] 50-kubernetes.sh: executing... +[cont-init.d] 50-kubernetes.sh: exited 0. +[cont-init.d] 50-mesos.sh: executing... +[cont-init.d] 50-mesos.sh: exited 0. +[cont-init.d] 51-docker.sh: executing... +[cont-init.d] 51-docker.sh: exited 0. +[cont-init.d] 59-defaults.sh: executing... +touch: cannot touch '/etc/datadog-agent/datadog.yaml': Permission denied +[cont-init.d] 59-defaults.sh: exited 1. +``` + +Desde el Datadog Cluster Agent v7.62+, anular el contexto de seguridad para el sidecar Datadog Agent te permite mantener estándares de seguridad consistentes a través de tus despliegues de Kubernetes. Tanto si utilizas el recurso personalizado DatadogAgent como los valores de Helm, puedes asegurarte de que el contenedor del Agent se ejecuta con el usuario adecuado, dd-agent (UID 100), según lo necesite tu entorno. + +Siguiendo los ejemplos, puedes desplegar el sidecar Agent en entornos donde debe anularse el contexto de seguridad predeterminado del pod. + +Datadog Operator + +```yaml +apiVersion: datadoghq.com/v2alpha1 +kind: DatadogAgent +metadata: + name: datadog +spec: + features: + admissionController: + agentSidecarInjection: + enabled: true + provider: fargate + - securityContext: + runAsUser: 100 +``` + +Helm + +```yaml +clusterAgent: + admissionController: + agentSidecarInjection: + profiles: + - securityContext: + runAsUser: 100 +``` + +¿Necesitas ayuda? Ponte en contacto con el [soporte de Datadog][19]. ## Referencias adicionales -Más enlaces, artículos y documentación útiles: +Documentación útil adicional, enlaces y artículos: -- [Métricas clave para la monitorización de AWS Fargate][27] -- [Cómo recopilar métricas y logs de las cargas de trabajo de AWS Fargate][28] -- [Monitorización de AWS Fargate con Datadog][29] +- [Métricas clave para monitorizar AWS Fargate][20] +- [Cómo recopilar métricas y logs de las cargas de trabajo de AWS Fargate][21] +- [Monitorización de AWS Fargate con Datadog][22] +- [Rastrear API Gateway mediante un proxy en las solicitudes a ECS Fargate][23] -[1]: http://docs.datadoghq.com/integrations/amazon_eks/ -[2]: http://docs.datadoghq.com/integrations/system -[3]: https://docs.datadoghq.com/es/getting_started/agent/autodiscovery/ +[1]: http://docs.datadoghq.com/integrations/system +[2]: https://docs.datadoghq.com/es/getting_started/agent/autodiscovery/ +[3]: http://docs.datadoghq.com/containers/kubernetes/installation [4]: https://docs.aws.amazon.com/eks/latest/userguide/fargate-profile.html [5]: http://docs.datadoghq.com/integrations/amazon_eks/#setup -[6]: http://docs.datadoghq.com/agent/kubernetes -[7]: http://docs.datadoghq.com/agent/kubernetes/daemonset_setup -[8]: https://app.datadoghq.com/account/settings#integrations/kubernetes -[9]: https://app.datadoghq.com/account/settings#integrations/amazon-web-services -[10]: https://app.datadoghq.com/account/settings#integrations/amazon-eks -[11]: https://app.datadoghq.com/account/settings#integrations/amazon-ec2 -[12]: http://docs.datadoghq.com/integrations/kubernetes -[13]: https://docs.datadoghq.com/es/containers/cluster_agent/admission_controller/?tab=operator -[14]: https://docs.datadoghq.com/es/containers/guide/clustercheckrunners -[15]: https://github.com/kubernetes/kube-state-metrics -[16]: https://docs.datadoghq.com/es/agent/kubernetes/integrations/ -[17]: https://docs.datadoghq.com/es/integrations/#cat-autodiscovery -[18]: https://app.datadoghq.com/organization-settings/api-keys -[19]: https://app.datadoghq.com/containers -[20]: http://docs.datadoghq.com/tracing/setup -[21]: https://app.datadoghq.com/process -[22]: https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/ -[23]: https://aws.amazon.com/blogs/containers/fluent-bit-for-amazon-eks-on-aws-fargate-is-here/ -[24]: https://docs.datadoghq.com/es/serverless/libraries_integrations/forwarder/ -[25]: http://docs.datadoghq.com/tracing/#send-traces-to-datadog -[26]: https://docs.datadoghq.com/es/agent/kubernetes/daemonset_setup/?tab=k8sfile#process-collection -[27]: https://www.datadoghq.com/blog/aws-fargate-metrics/ -[28]: https://www.datadoghq.com/blog/tools-for-collecting-aws-fargate-metrics/ -[29]: https://www.datadoghq.com/blog/aws-fargate-monitoring-with-datadog/ \ No newline at end of file +[6]: https://kubernetes.io/docs/concepts/configuration/secret/ +[7]: https://app.datadoghq.com/organization-settings/api-keys +[8]: http://docs.datadoghq.com/agent/cluster_agent/setup/ +[9]: https://docs.datadoghq.com/es/containers/cluster_agent/admission_controller/?tab=operator +[10]: https://app.datadoghq.com/account/settings#integrations/amazon-web-services +[11]: https://docs.datadoghq.com/es/agent/kubernetes/integrations/ +[12]: https://github.com/DataDog/integrations-core +[13]: https://docs.datadoghq.com/es/developers/dogstatsd/ +[14]: https://app.datadoghq.com/containers +[15]: https://aws.amazon.com/blogs/containers/fluent-bit-for-amazon-eks-on-aws-fargate-is-here/ +[16]: https://docs.datadoghq.com/es/serverless/libraries_integrations/forwarder/ +[17]: https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/ +[18]: http://docs.datadoghq.com/tracing/#send-traces-to-datadog +[19]: https://docs.datadoghq.com/es/help/ +[20]: https://www.datadoghq.com/blog/aws-fargate-metrics/ +[21]: https://www.datadoghq.com/blog/tools-for-collecting-aws-fargate-metrics/ +[22]: https://www.datadoghq.com/blog/aws-fargate-monitoring-with-datadog/ +[23]: https://docs.datadoghq.com/es/tracing/trace_collection/proxy_setup/apigateway \ No newline at end of file diff --git a/content/es/integrations/firefly.md b/content/es/integrations/firefly.md index 1945599074d..7f88b413036 100644 --- a/content/es/integrations/firefly.md +++ b/content/es/integrations/firefly.md @@ -34,15 +34,15 @@ supported_os: tile: changelog: CHANGELOG.md classifier_tags: - - Category::Automation - - Category::Cloud - - Category::Configuration & Deployment - - Category::Developer Tools + - Categoría::Automatización + - Categoría::Nube + - Categoría::Configuración y despliegue + - Categoría::Herramientas de desarrollo - Category::Notifications - Offering::Integration - - Supported OS::Linux - - Supported OS::Windows - - Supported OS::macOS + - Sistema operativo compatible::Linux + - Sistema operativo compatible::Windows + - Sistema operativo compatible::macOS configuration: README.md#Configuración description: Actualiza tu nube media: @@ -82,7 +82,7 @@ Obtén notificaciones en tiempo real de cualquier discrepancia entre tu Infrastr ### Detectar y corregir infracciones de políticas Utiliza el motor de políticas unificado de Firefly para encontrar errores de configuración peligrosos o desaprovechamientos costosos y recibe alertas sobre infracciones de políticas, tanto de políticas personalizadas como preconfiguradas. -## Configuración +## Configurar ### Configurar la integración de Firefly y Datadog 1. Crea una nueva clave de aplicación y una clave API Datadog. diff --git a/content/es/integrations/guide/_index.md b/content/es/integrations/guide/_index.md index 8766304affd..fd7b3fd13bc 100644 --- a/content/es/integrations/guide/_index.md +++ b/content/es/integrations/guide/_index.md @@ -10,25 +10,27 @@ title: Guías de integración --- {{< whatsnext desc="Guías generales:" >}} - {{< nextlink href="integrations/guide/requests" tag=" documentation" >}}Solicitar integraciones de Datadog{{< /nextlink >}} - {{< nextlink href="/integrations/guide/reference-tables/" tag=" Documentation" >}}Añadir metadatos personalizados con tablas de referencia{{< /nextlink >}} - {{< nextlink href="integrations/guide/source-code-integration" tag=" Documentation" >}}Integración de código fuente en Datadog{{< /nextlink >}} + {{< nextlink href="integrations/guide/requests" tag=" documentation" >}}Solicitar integraciones Datadog{{< /nextlink >}} + {{< nextlink href="/integrations/guide/reference-tables/" tag=" documentation" >}}Añadir metadatos personalizados con tablas de referencia{{< /nextlink >}} + {{< nextlink href="integrations/guide/source-code-integration" tag=" documentation" >}}Integración del código fuente en Datadog{{< /nextlink >}} + {{< nextlink href="integrations/guide/high_availability" tag=" Documentation" >}}Soporte de alta disponibilidad para el Datadog Agent{{< /nextlink >}} {{< nextlink href="integrations/guide/cloud-metric-delay" tag=" cloud" >}}Retraso de métricas en la nube{{< /nextlink >}} - {{< nextlink href="integrations/guide/add-event-log-files-to-the-win32-ntlogevent-wmi-class" tag=" Windows" >}}Añadir archivos de logs de eventos a la clase WMI `Win32_NTLogEvent`{{< /nextlink >}} + {{< nextlink href="integrations/guide/add-event-log-files-to-the-win32-ntlogevent-wmi-class" tag=" Windows" >}}Añadir archivos de logs de eventos a la`Win32_NTLogEvent` clase WMI{{< /nextlink >}} {{< nextlink href="integrations/guide/retrieving-wmi-metrics" tag=" Windows" >}}Recuperar métricas de WMI{{< /nextlink >}} {{< nextlink href="integrations/guide/mongo-custom-query-collection" tag=" MongoDB" >}}Recopilar métricas personalizadas de MongoDB{{< /nextlink >}} - {{< nextlink href="integrations/guide/prometheus-metrics" tag=" Prometheus" >}}Asignación de métricas de Prometheus a métricas de Datadog{{< /nextlink >}} - {{< nextlink href="integrations/guide/prometheus-host-collection" tag=" Prometheus" >}}Recopilación de métricas de Prometheus y OpenMetrics desde un host{{< /nextlink >}} - {{< nextlink href="integrations/guide/freshservice-tickets-using-webhooks" tag=" Webhooks" >}}Tiques de Freshservice mediante webhooks{{< /nextlink >}} - {{< nextlink href="integrations/guide/hadoop-distributed-file-system-hdfs-integration-error" tag=" Hadoop" >}}Error de integración de Hadoop Distributed File System (HDFS){{< /nextlink >}} - {{< nextlink href="integrations/guide/hcp-consul" tag=" Consul" >}}Monitorización de HCP Consul con Datadog{{< /nextlink >}} + {{< nextlink href="integrations/guide/prometheus-metrics" tag=" Prometheus" >}}Apuntar métricas de Prometheus a métricas de Datadog{{< /nextlink >}} + {{< nextlink href="integrations/guide/prometheus-host-collection" tag=" Prometheus" >}}Recopilar métricas de Prometheus y OpenMetrics a partir de un host{{< /nextlink >}} + {{< nextlink href="integrations/guide/freshservice-tickets-using-webhooks" tag=" Webhooks" >}}Tickets de Freshservice mediante webhooks{{< /nextlink >}} + {{< nextlink href="integrations/guide/hadoop-distributed-file-system-hdfs-integration-error" tag=" Hadoop" >}}Error de la integración Hadoop Distributed File System (HDFS){{< /nextlink >}} + {{< nextlink href="integrations/guide/hcp-consul" tag=" Consul" >}}Monitorizar HCP Consul con Datadog{{< /nextlink >}} {{< nextlink href="integrations/guide/agent-failed-to-retrieve-rmiserver-stub" tag=" kafka" >}}El Agent no pudo recuperar un stub de RMIServer{{< /nextlink >}} - {{< nextlink href="integrations/guide/send-tcp-udp-host-metrics-to-the-datadog-api/" tag=" network" >}}Envío de métricas de host TCP/UDP a la API de Datadog{{< /nextlink >}} - {{< nextlink href="integrations/guide/snmp-commonly-used-compatible-oids/" tag=" snmp" >}}SNMP usados con frecuencia y OIDs compatibles{{< /nextlink >}} - {{< nextlink href="integrations/guide/versions-for-openmetrics-based-integrations" tag=" openmetrics" >}}Versiones de las integraciones basadas en OpenMetrics{{< /nextlink >}} + {{< nextlink href="integrations/guide/send-tcp-udp-host-metrics-to-the-datadog-api/" tag=" network" >}}Enviar métricas de host TCP/UDP a la API de Datadog{{< /nextlink >}} + {{< nextlink href="integrations/guide/snmp-commonly-used-compatible-oids/" tag=" snmp" >}}Identificadores de objeto (OID) compatibles y frecuentemente utilizados de SNMP{{< /nextlink >}} + {{< nextlink href="integrations/guide/versions-for-openmetrics-based-integrations" tag=" openmetrics" >}}Versiones de integraciones basadas en OpenMetrics{{< /nextlink >}} {{< nextlink href="integrations/guide/cloud-foundry-setup" tag=" pivotal cloud foundry" >}}Configuración manual de Pivotal Cloud Foundry{{< /nextlink >}} - {{< nextlink href="integrations/guide/application-monitoring-vmware-tanzu" tag=" VMWare Tanzu" >}}Monitorización de aplicaciones de Datadog para VMware Tanzu{{< /nextlink >}} - {{< nextlink href="integrations/guide/cluster-monitoring-vmware-tanzu" tag=" VMWare Tanzu" >}}Monitorización de clústeres de Datadog para VMware Tanzu{{< /nextlink >}} + {{< nextlink href="integrations/guide/application-monitoring-vmware-tanzu" tag=" VMWare Tanzu" >}}Datadog Application Monitoring para VMware Tanzu{{< /nextlink >}} + {{< nextlink href="integrations/guide/cluster-monitoring-vmware-tanzu" tag=" VMWare Tanzu" >}}Datadog Cluster Monitoring para VMware Tanzu{{< /nextlink >}} + {{< nextlink href="integrations/guide/fips-integrations" tag=" fips" >}}Integraciones del Agent verificadas por FIPS{{< /nextlink >}} {{< /whatsnext >}} {{< whatsnext desc="Guías de AWS:" >}} @@ -46,26 +48,27 @@ title: Guías de integración {{< /whatsnext >}} {{< whatsnext desc="Guías de Azure:" >}} - {{< nextlink href="integrations/guide/azure-manual-setup" tag=" Azure" >}}Guía de configuración manual de Azure{{< /nextlink >}} - {{< nextlink href="integrations/guide/azure-native-manual-setup" tag=" Azure" >}}Guía de configuración manual de Azure Native{{< /nextlink >}} - {{< nextlink href="integrations/guide/azure-programmatic-management" tag=" Azure" >}}Guía de gestión programática de la integración de Azure{{< /nextlink >}} - {{< nextlink href="integrations/guide/azure-native-programmatic-management" tag=" Azure" >}}Guía de gestión programática de la integración de Azure Native{{< /nextlink >}} - {{< nextlink href="integrations/guide/azure-portal" tag=" Azure" >}}Gestión de la integración de Azure Native{{< /nextlink >}} - {{< nextlink href="integrations/guide/azure-cloud-adoption-framework" tag=" Azure" >}}Marco de adopción en la nube de Azure con Datadog{{< /nextlink >}} + {{< nextlink href="integrations/guide/azure-manual-setup" tag=" Azure" >}}Guía para la configuración manual de Azure{{< /nextlink >}} + {{< nextlink href="integrations/guide/azure-native-manual-setup" tag=" Azure" >}}Guía para la configuración manual de Azure Native{{< /nextlink >}} + {{< nextlink href="integrations/guide/azure-programmatic-management" tag=" Azure" >}}Guía para la gestión mediante programación de la integración Azure{{< /nextlink >}} + {{< nextlink href="integrations/guide/azure-native-programmatic-management" tag=" Azure" >}}Guía para la gestión mediante programación de la integración Azure Native{{< /nextlink >}} + {{< nextlink href="integrations/guide/azure-portal" tag=" Azure" >}}Gestionar la integración Azure Native{{< /nextlink >}} + {{< nextlink href="integrations/guide/azure-cloud-adoption-framework" tag=" Azure" >}}Marco de adopción de Azure Cloud con Datadog{{< /nextlink >}} {{< nextlink href="integrations/guide/azure-troubleshooting" tag=" Azure" >}}Solucionar problemas de Azure{{< /nextlink >}} - {{< nextlink href="integrations/guide/azure-architecture-and-configuration" tag=" Azure" >}}Arquitectura y configuración de Azure{{< /nextlink >}} - {{< nextlink href="integrations/guide/azure-status-metric" tag=" Azure" >}}Estado y métricas de recuento de Azure{{< /nextlink >}} - {{< nextlink href="integrations/guide/azure-vms-appear-in-app-without-metrics" tag=" Azure" >}}Aparecen VMs de Azure en la aplicación sin métricas{{< /nextlink >}} - {{< nextlink href="integrations/guide/powered-down-azure-vm-on-infrastructure-list" tag=" Azure" >}}VMs de Azure apagadas en la lista de infraestructura{{< /nextlink >}} - {{< nextlink href="integrations/guide/powershell-command-to-install-azure-datadog-extension" tag=" Azure" >}}Comandos para instalar la extensión de Azure Datadog{{< /nextlink >}} - {{< nextlink href="integrations/guide/azure-graph-api-permissions" tag=" Azure" >}}Permisos de la API de Microsoft Graph para monitorizar Azure{{< /nextlink >}} + {{< nextlink href="integrations/guide/azure-architecture-and-configuration" tag=" Azure" >}}Configuración y arquitectura de Azure{{< /nextlink >}} + {{< nextlink href="integrations/guide/azure-count-metric" tag=" Azure" >}}Métrica de recuento Azure{{< /nextlink >}} + {{< nextlink href="integrations/guide/azure-vms-appear-in-app-without-metrics" tag=" Azure" >}}En la aplicación aparecen máquinas virtuales Azure sin métricas{{< /nextlink >}} + {{< nextlink href="integrations/guide/powered-down-azure-vm-on-infrastructure-list" tag=" Azure" >}}Máquinas virtuales Azure desconectadas en la lista de infraestructuras{{< /nextlink >}} + {{< nextlink href="integrations/guide/powershell-command-to-install-azure-datadog-extension" tag=" Azure" >}}Comandos para instalar la extensión Azure Datadog{{< /nextlink >}} + {{< nextlink href="integrations/guide/azure-graph-api-permissions" tag=" Azure" >}}Permisos a la API de Microsoft Graph para monitorizar Azure{{< /nextlink >}} {{< /whatsnext >}} {{< whatsnext desc="Guías de JMX:" >}} - {{< nextlink href="integrations/guide/running-jmx-commands-in-windows" tag=" jmx" >}}Ejecución de comandos de JMX en Windows{{< /nextlink >}} - {{< nextlink href="integrations/guide/collecting-composite-type-jmx-attributes" tag=" jmx" >}}Recopilación de atributos de JMX de tipo compuesto{{< /nextlink >}} - {{< nextlink href="integrations/guide/use-bean-regexes-to-filter-your-jmx-metrics-and-supply-additional-tags" tag=" jmx" >}}Uso de expresiones regulares de bean para filtrar tus métricas de JMX y proporcionar etiquetas adicionales{{< /nextlink >}} - {{< nextlink href="integrations/guide/jmx_integrations/" tag=" jmx" >}}¿Qué integraciones usan Jmxfetch?{{< /nextlink >}} + {{< nextlink href="integrations/guide/running-jmx-commands-in-windows" tag=" jmx" >}}Ejecutar comandos JMX en Windows{{< /nextlink >}} + {{< nextlink href="integrations/guide/collecting-composite-type-jmx-attributes" tag=" jmx" >}}Recopilar atributos de tipo compuesto de JMX{{< /nextlink >}} + {{< nextlink href="integrations/guide/use-bean-regexes-to-filter-your-jmx-metrics-and-supply-additional-tags" tag=" jmx" >}}Utilizar expresiones regulares (regex) de beans para filtrar tus métricas de JMX y proporcionar etiquetas (tags) adicionales{{< /nextlink >}} + {{< nextlink href="integrations/guide/jmx_integrations/" tag=" jmx" >}}¿Cuáles integraciones utilizan Jmxfetch?{{< /nextlink >}} + {{< nextlink href="integrations/guide/jmxfetch-fips/" tag=" jmx" >}}Modo JMXFetch FIPS-140{{< /nextlink >}} {{< /whatsnext >}} {{< whatsnext desc="Guías de bases de datos:" >}} diff --git a/content/es/integrations/hikaricp.md b/content/es/integrations/hikaricp.md new file mode 100644 index 00000000000..6d5cf1fc6ae --- /dev/null +++ b/content/es/integrations/hikaricp.md @@ -0,0 +1,118 @@ +--- +app_id: hikaricp +app_uuid: fa40ec7e-e8f6-4c4b-a675-31716b23a9fa +assets: + integration: + auto_install: true + configuration: + spec: assets/configuration/spec.yaml + events: + creates_events: false + metrics: + check: hikaricp.connections.active + metadata_path: metadata.csv + prefix: hikaricp. + service_checks: + metadata_path: assets/service_checks.json + source_type_id: 10308 + source_type_name: hikaricp +author: + homepage: https://github.com/DataDog/integrations-extras + name: Comunidad + sales_email: damien.bertau@blablacar.com + support_email: damien.bertau@blablacar.com +categories: [] +custom_kind: integración +dependencies: +- https://github.com/DataDog/integrations-extras/blob/master/hikaricp/README.md +display_on_public_website: true +draft: false +git_integration_title: hikaricp +integration_id: hikaricp +integration_title: HikariCP +integration_version: 1.2.0 +is_public: true +manifest_version: 2.0.0 +name: hikaricp +public_title: HikariCP +short_description: Integración de HikariCP con openmetrics v2 +supported_os: +- linux +- windows +- macos +tile: + changelog: CHANGELOG.md + classifier_tags: + - Supported OS::Linux + - Supported OS::Windows + - Supported OS::macOS + - Offering::Integration + configuration: README.md#Setup + description: Integración de HikariCP con openmetrics v2 + media: [] + overview: README.md#Overview + support: README.md#Support + title: HikariCP +--- + + + + +## Información general +[HikariCP][1] es un marco de agrupación de conexiones JDBC ligero y rápido. +Este check monitoriza HikariCP a través del Datadog Agent. + +## Configuración + +### Instalación + +Para instalar el check de HikariCP en tu host: + + +1. Instala el [kit de herramientas para desarrolladores][2] + en cualquier máquina. + +2. Clona el repositorio [integrations-extras][3] y navega hasta el directorio. + +3. Ejecuta `ddev release build hikaricp` para crear el paquete. + +4. [Descarga el Datadog Agent][4]. + +5. Sube el artefacto de compilación a cualquier host con un Agent y + ejecuta `datadog-agent integration install -w + path/to/hikaricp/dist/.whl`. + +### Configuración + +1. Edita el archivo `hikaricp/conf.yaml`, en la carpeta `conf.d/` en la raíz de tu directorio de configuración del Agent para comenzar a recopilar tus datos de rendimiento de HikariCP. Consulta el [hikaricp/conf.yaml de ejemplo][5] para todas las opciones disponibles de configuración. + +2. [Reinicia el Agent][6]. + +### Validación + +[Ejecuta el subcomando de estado del Agent[7] y busca `hikaricp` en la sección Checks. + +## Datos recopilados + +### Métricas +{{< get-metrics-from-git "hikaricp" >}} + + +### Eventos + +HikariCP no incluye ningún evento. + +## Solucionar problemas + +¿Necesitas ayuda? Ponte en contacto con el [equipo de asistencia de Datadog][10]. + +[1]: https://github.com/brettwooldridge/HikariCP +[2]: https://docs.datadoghq.com/es/developers/integrations/python/ +[3]: https://github.com/DataDog/integrations-extras +[4]: https://app.datadoghq.com/account/settings/agent/latest +[5]: https://github.com/DataDog/integrations-extras/blob/master/hikaricp/datadog_checks/hikaricp/data/conf.yaml.example +[6]: https://docs.datadoghq.com/es/agent/guide/agent-commands/#start-stop-and-restart-the-agent +[7]: https://docs.datadoghq.com/es/agent/guide/agent-commands/#agent-status-and-information +[8]: https://github.com/DataDog/integrations-extras/blob/master/hikaricp/metadata.csv +[9]: https://github.com/DataDog/integrations-extras/blob/master/hikaricp/assets/service_checks.json +[10]: https://docs.datadoghq.com/es/help/ \ No newline at end of file diff --git a/content/es/integrations/microsoft_defender_for_cloud.md b/content/es/integrations/microsoft_defender_for_cloud.md new file mode 100644 index 00000000000..0b4c7868f28 --- /dev/null +++ b/content/es/integrations/microsoft_defender_for_cloud.md @@ -0,0 +1,117 @@ +--- +app_id: microsoft-defender-for-cloud +app_uuid: e9e9981e-c97a-4395-a98b-b39b2adf1bb6 +assets: + dashboards: + MicrosoftDefenderforCloud-Overview: assets/dashboards/MicrosoftDefenderforCloud-Overview_dashboard.json + integration: + auto_install: false + events: + creates_events: false + service_checks: + metadata_path: assets/service_checks.json + source_type_id: 10376 + source_type_name: Microsoft Defender for Cloud +author: + homepage: https://www.datadoghq.com + name: Datadog + sales_email: info@datadoghq.com + support_email: help@datadoghq.com +categories: +- azure +- nube +- recopilación de logs +- seguridad +custom_kind: integración +dependencies: [] +display_on_public_website: true +draft: false +git_integration_title: microsoft_defender_for_cloud +integration_id: microsoft-defender-for-cloud +integration_title: Microsoft Defender for Cloud +integration_version: '' +is_public: true +manifest_version: 2.0.0 +name: microsoft_defender_for_cloud +public_title: Microsoft Defender for Cloud +short_description: Monitorizar Microsoft Defender for Cloud +supported_os: [] +tile: + changelog: CHANGELOG.md + classifier_tags: + - Categoría::Azure + - Categoría::Nube + - Categoría::Recopilación de logs + - Categoría::Seguridad + - Oferta::Integración + configuration: README.md#Configuración + description: Monitorizar Microsoft Defender for Cloud + media: [] + overview: README.md#Información general + support: README.md#Soporte + title: Microsoft Defender for Cloud +--- + + + + +## Información general + +Recopila logs y alertas de [Microsoft Defender for Cloud][1]. + +Defender for Cloud es una plataforma de protección de aplicaciones nativa en la nube (CNAPP) que monitoriza las aplicaciones de Microsoft Azure, ofrece información sobre los riesgos de seguridad de Azure mediante la gestión de la postura de seguridad en la nube (CSPM) y protege las cargas de trabajo en la nube de Azure para servidores, contenedores, almacenamiento y bases de datos (CWPP). + +Habilita Datadog Cloud SIEM para utilizar reglas de seguridad predefinidas y monitorizar tu entorno Azure junto con el resto de tu infraestructura de seguridad. + +## Configuración + +### Instalación + +Esta integración requiere que la integración Datadog Azure esté habilitada y reenvía logs a Datadog a través de Azure utilizando centros de eventos. La integración requiere que la versión del forwarder de logs sea `1.0.1` o posterior. + +### Configuración + +Configura Defender for Cloud para [exportar logs continuamente][2] al centro de eventos. No es necesaria ninguna configuración adicional en Datadog. + +### Validación + +Sigue [estas instrucciones de Microsoft][3] para generar alertas de muestras en Defender for Cloud. + +Se puede acceder a los logs de Defender for Cloud utilizando `source:microsoft-defender-for-cloud` en Gestión de Logs. + +Si utilizas Datadog Cloud SIEM, confirma que las reglas de detección de Microsoft Defender for Cloud están activadas: +1. En el menú de Datadog, ve a **Security** > **Configuration** (Seguridad > Configuración) y amplía **Cloud SIEM**. +1. Selecciona "Reglas de detección". En la parte derecha, haz clic en el selector **Group By** (Agrupar por) y selecciona **Fuente** para agrupar las reglas de detección por fuente. +1. Desplázate hacia abajo y amplía la sección titulada **Azure**. Desplázate por la lista hasta encontrar las reglas de Microsoft Defender for Cloud. Asegúrate de que las reglas están activadas. + + +## Datos recopilados + +### Métricas + +Microsoft Defender for Cloud no incluye métricas. + +### Checks de servicio + +Microsoft Defender for Cloud no incluye checks de servicios. + +### Eventos + +Microsoft Defender for Cloud no incluye eventos. + +## Solucionar problemas + +Para confirmar que Cloud SIEM está recibiendo alertas de Defender for Cloud, sigue estos pasos: +1. En el menú de Datadog, ve a **Security** > **Configuration** (Seguridad > Configuración) y amplía **Cloud SIEM**. +1. Selecciona **Fuentes de logs** y desplázate hasta **Azure**. +1. Comprueba si Microsoft Defender for Cloud aparece como **Instalado**. +1. Inspecciona el gráfico de columnas para confirmar que se están recibiendo logs. +1. Si se reciben logs, ve a **Logs** > **Search** (Logs > Buscar) y busca `source:microsoft-defender-for-cloud`. Es posible que tengas que cambiar el periodo de tiempo para que aparezcan los logs. +1. Inspecciona los logs y confirma que están bien formados. + +Si sigues teniendo problemas, ponte en contacto con el [servicio de asistencia de Datadog][4]. + +[1]: https://learn.microsoft.com/en-us/azure/defender-for-cloud/defender-for-cloud-introduction +[2]: https://learn.microsoft.com/en-us/azure/defender-for-cloud/continuous-export?tabs=azure-portal +[3]: https://learn.microsoft.com/en-us/azure/defender-for-cloud/alert-validation +[4]: https://docs.datadoghq.com/es/help/ \ No newline at end of file diff --git a/content/es/integrations/microsoft_teams.md b/content/es/integrations/microsoft_teams.md index a1e589126ab..fa64300958e 100644 --- a/content/es/integrations/microsoft_teams.md +++ b/content/es/integrations/microsoft_teams.md @@ -55,13 +55,18 @@ tile: Integrarse con Microsoft Teams para: {{< site-region region="us,us3,us5,eu,ap1" >}} + - Recibir notificaciones de alertas en Datadog y eventos en Microsoft Teams. - Gestionar las incidencias desde Microsoft Teams. - Silenciar los monitores activados directamente desde Microsoft Teams. -{{< /site-region >}} -{{< site-region region="gov" >}} + {{< /site-region >}} + {{< site-region region="gov" >}} - Recibir notificaciones de alertas en Datadog y eventos en Microsoft Teams. - Silenciar los monitores activados directamente desde Microsoft Teams. + {{< /site-region >}} + +{{< site-region region="gov" >}} +**Nota**: Aunque tu cuenta de Datadog esté alojada en el entorno seguro US1-FED, es tu responsabilidad gestionar la seguridad de tu entorno Microsoft Teams, incluyendo el acceso, los permisos y la protección de los datos. {{< /site-region >}} ## Configuración @@ -86,18 +91,20 @@ Asegúrate de haber añadido la aplicación Datadog para el Gobierno a todos los {{< /site-region >}} {{< site-region region="us,us3,us5,eu,ap1" >}} + 1. Abre Microsoft Teams. 2. En la barra de herramientas vertical, haz clic en **Apps** (Aplicaciones). 3. Busca "Datadog" y haz clic en **Open** (Abrir). 4. En el modal que se abre, selecciona el canal principal del equipo donde debe añadirse la aplicación. Haz clic en **Go** (Listo) para completar la instalación. -{{< /site-region >}} + {{< /site-region >}} {{< site-region region="gov" >}} + 1. Abre Microsoft Teams. 2. En la barra de herramientas vertical, haz clic en **Apps** (Aplicaciones). 3. Busca "Datadog para el Gobierno" y haz clic en **Open** (Abrir). 4. En el modal que se abre, selecciona el canal principal del equipo donde debe añadirse la aplicación. Haz clic en **Go** (Listo) para completar la instalación. -{{< /site-region >}} + {{< /site-region >}} {{< site-region region="us,us3,us5,eu,ap1" >}} {{< img src="integrations/microsoft_teams/microsoft_teams_add_app_to_team.png" alt="Microsoft Teams Añadir aplicación al equipo" >}} @@ -114,15 +121,16 @@ Una vez que el bot se haya añadido al equipo, configura el gestor de notificaci Microsoft ha anunciado que los conectores de Office 365 para Microsoft Teams quedan obsoletos. Esto tiene los siguientes efectos: -* Todos los conectores de Datadog dejarán de funcionar el 31 de enero de 2025. -* Los conectores de webhooks entrantes sin [URL actualizadas][2] dejarán de funcionar el 31 de enero de 2025. -* Todos los conectores dejarán de funcionar el 31 de diciembre de 2025 (previamente era el 1 de octubre de 2024). +- Todos los conectores de Datadog dejarán de funcionar el 31 de enero de 2025. +- Los conectores de webhooks entrantes sin [URL actualizadas][2] dejarán de funcionar el 31 de enero de 2025. +- Todos los conectores dejarán de funcionar el 31 de diciembre de 2025 (previamente era el 1 de octubre de 2024). Para obtener más información, consulta la [entrada de blog][3] de Microsoft. Para migrar todos los gestores de notificaciones que utilizan actualmente los conectores de Office 365 legacy a integraciones Datadog basadas en inquilinos: {{< site-region region="us,us3,us5,eu,ap1" >}} + 1. Sigue los [pasos de configuración](#setup) para conectar tu inquilino de Microsoft a Datadog. 2. Añade la aplicación Datadog a todos los equipos en los que tengas configurado un conector legacy de Office 365. 3. Para cada gestor de un conector de notificaciones legacy en el [cuadro de la integración Microsoft Teams][1]: @@ -135,6 +143,7 @@ Para migrar todos los gestores de notificaciones que utilizan actualmente los co {{< /site-region >}} {{< site-region region="gov" >}} + 1. Sigue los [pasos de configuración](#setup) para conectar tu inquilino de Microsoft a Datadog. 2. Añade la aplicación Datadog para el Gobierno a todos los equipos en los que tengas configurado un conector legacy de Office 365. 3. Para cada gestor de un conector de notificaciones legacy en el [cuadro de la integración Microsoft Teams][1]: @@ -150,6 +159,29 @@ Para migrar todos los gestores de notificaciones que utilizan actualmente los co Desde un monitor Datadog, envía una notificación a Microsoft Teams utilizando la [función `@-notification`][1]. Envía la notificación a la dirección `@teams-`, sustituyendo `` por el nombre de tu gestor de Microsoft Teams. Para silenciar un monitor activado desde Microsoft Teams, haz clic en **Mute Monitor** (Silenciar Monitor), selecciona la **Duración del silencio** y haz clic en **Mute** (Silenciar). +#### Menciones de usuarios + +Las menciones de usuarios te permiten notificar a usuarios específicos de tus canales de Microsoft Teams cuando se activan las alertas de monitor. Esto ayuda a garantizar que se notifiquen los eventos importantes a las personas adecuadas. Para mencionar a un usuario específico, sigue los pasos que se indican a continuación para encontrar su nombre principal de usuario (UPN). + +**Sintaxis: `{User Principal Name}` + +**Ejemplo**: `user@microsoft.com` + +**Ejemplo de notificación completa**: `@Teams-CHANNEL_NAME user@microsoft.com another.user@microsoft.com` + +**Para encontrar el nombre principal de usuario (UPN) de un usuario:** + +1. **Método 1 (sólo funciona si el UPN coincide con el correo electrónico):** + - En Microsoft Teams, haz clic en la foto de perfil o en el nombre del usuario para abrir su tarjeta de contacto. + - El correo electrónico que aparece en el campo `Chat` suele ser el UPN. Si difieren, utiliza el método 2 a continuación. + +2. **Método 2 (funciona siempre, pero requiere permisos de Azure Portal):** + - Inicia sesión en el [Microsoft Azure Portal][4]. + - Ve a `Microsoft Entra ID` > `Manage` > `Users`. + - Localiza al usuario en la lista y copia su UPN de la columna `User principal name`. + +Datadog recomienda probar tus notificaciones de monitor para garantizar una entrega fiable. Para obtener instrucciones, consulta [Probar notificaciones][5]. + #### Dashboards Puedes publicar snapshots de widgets de dashboard en cualquier equipo o chat. Para consultar la lista de los widgets admitidos, consulta [Informes programados][7]. @@ -167,13 +199,46 @@ Para compartir un widget de dashboard en Teams: {{< img src="integrations/microsoft_teams/dashboard_share_gov.png" alt="Compartir un widget de dashboard en Microsoft Teams">}} {{< /site-region >}} +### Limitar el acceso de edición + +Por defecto, todos los usuarios tienen acceso completo a los inquilinos de Microsoft Teams conectados. + +Utiliza el [control de acceso granular][6] para limitar los roles que pueden editar un inquilino específico: + +1. Mientras visualizas un inquilino, haz clic en el icono de engranaje de la esquina superior derecha para abrir el menú de configuración. +2. Selecciona **Permissions** (Permisos). +3. Haz clic en **Restrict Access** (Acceso restringido). El cuadro de diálogo se actualiza para mostrar que los miembros de tu organización tienen acceso de **Visor** por defecto. +4. Utiliza el desplegable para seleccionar uno o varios roles, equipos o usuarios que pueden editar el inquilino de Microsoft Teams. +5. Haz clic en **Add** (Añadir). El cuadro de diálogo se actualiza para mostrar que el rol seleccionado tiene el permiso de **Editor**. +6. Haz clic en **Save** (Guardar). + +**Nota:** Para conservar tu acceso de edición al inquilino, debes incluir al menos un rol al que pertenezcas antes de guardar. + +Si tienes acceso de edición, puedes restablecer el acceso general a un inquilino restringido siguiendo estos pasos: + +1. Mientras visualizas el inquilino, haz clic en el icono de engranaje de la esquina superior derecha para abrir el menú de configuración. +2. Selecciona **Permissions** (Permisos). +3. Haz clic en **Restore Full Access** (Restablecer acceso completo). +4. Haz clic en **Save** (Guardar). + +Para editar los permisos de los inquilinos a través de la API: + +1. Ve al [cuadro de la integración Microsoft Teams][1]. +2. Haz clic en la pestaña **Inquilinos**. +3. Copia el ID de inquilino mostrado para el inquilino seleccionado. +4. Utiliza la [API de políticas de restricción][7], donde el tipo de recurso es `integration-account` y el ID es `microsoft-Teams:`. [1]: https://app.datadoghq.com/integrations/microsoft-teams [2]: https://learn.microsoft.com/en-us/microsoftteams/m365-custom-connectors#update-connectors-url [3]: https://devblogs.microsoft.com/microsoft365dev/retirement-of-office-365-connectors-within-microsoft-teams/ +[4]: https://portal.azure.com +[5]: https://docs.datadoghq.com/es/monitors/notify/#test-notifications +[6]: https://docs.datadoghq.com/es/account_management/rbac/granular_access/ +[7]: https://docs.datadoghq.com/es/api/latest/restriction-policies/ {{% /tab %}} -{{% tab "Webhooks de Microsoft Workflows" %}} +{{% tab "Microsoft Workflows Webhooks" %}} + ### ¿Qué son los webhooks de Microsoft Workflows? Workflows / Power Automate es un producto de Microsoft para crear flujos de trabajo automatizados. Microsoft Workflows puede utilizarse para enviar notificaciones con webhooks entrantes. Si no puedes instalar la aplicación Datadog en tu inquilino de Microsoft Teams (recomendado) o si quieres enviar notificaciones a canales privados, puedes configurar gestores Datadog para enviar notificaciones a canales de Microsoft Teams a través de Microsoft Workflows. Esta integración está pensada para su uso con la siguiente plantilla de Microsoft Workflows: [Publicar en un canal cuando se recibe una solicitud de webhook][1] @@ -185,12 +250,14 @@ Workflows / Power Automate es un producto de Microsoft para crear flujos de trab Microsoft [ha anunciado][2] que los conectores de Office 365 para Microsoft Teams quedan obsoletos y las URL de los conectores existentes dejarán de funcionar el 31 de enero de 2025. Microsoft promueve el uso de webhooks entrantes de Microsoft Workflows como sustituto de los conectores legacy. Sigue los pasos que se indican a continuación para migrar todos los gestores de notificaciones que utilizan actualmente conectores de Office 365 legacy a la integración de webhooks de Microsoft Workflows de Datadog. Para cada gestor de un conector de notificaciones legacy en el cuadro de la integración Microsoft Teams: + 1. Sigue los [pasos de configuración](#create-a-microsoft-workflows-webhook) para crear un gestor de webhook de flujo de trabajo para el canal de Microsoft Teams elegido. 2. En la sección Webhooks de Microsoft Workflows, asigna al nuevo gestor el mismo nombre que el gestor del conector al que debe sustituir. Por ejemplo, si el gestor del conector legacy se denomina `channel-123`, asigna el nombre `channel-123` a su nuevo gestor en la sección Webhooks de Microsoft Workflows. Este nuevo gestor sustituye al gestor de conector legacy existente. ### Crear un webhook de Microsoft Workflows #### Requisitos previos + - Para crear un nuevo flujo de trabajo, se requiere una cuenta Microsoft, tanto para la propiedad del flujo de trabajo como para enviar notificaciones a los canales (no es necesario que sean de la misma cuenta Microsoft). - La cuenta propietaria del flujo de trabajo (configurada en el paso 2 a continuación) es la cuenta que puede editar y renovar el flujo de trabajo. Para facilitar el acceso compartido, utiliza una cuenta de servicio. - La cuenta que envía notificaciones a los canales (configurada en el paso 8 a continuación) realiza publicaciones como usuario de la cuenta. Esta cuenta debe formar parte del equipo al que quieres enviar notificaciones. Si envías notificaciones a un canal privado, esta cuenta también debe ser añadida al canal. Si quieres darle a esta cuenta un nombre como "Notificaciones Datadog" utiliza una cuenta de servicio. @@ -214,7 +281,7 @@ Para cada gestor de un conector de notificaciones legacy en el cuadro de la inte {{< img src="integrations/microsoft_teams/microsoft_teams_workflows_step_7.png" alt="Instrucciones, paso 7" style="width:90%;" >}} 8. Utiliza los desplegables para seleccionar el equipo y el canal. {{< img src="integrations/microsoft_teams/microsoft_teams_workflows_step_8.png" alt="Instrucciones, paso 8" style="width:90%;" >}} -9. Asegúrate de que el flujo de trabajo está conectado a la cuenta Microsoft elegida para enviar notificaciones (por ejemplo, una cuenta de servicio denominada "Notificaciones Datadog"). Las notificaciones aparecerán como enviadas por "`` vía Workflows". Esta cuenta debe tener acceso al canal de Microsoft Teams configurado. Para cambiar la cuenta, haz clic en **Change connection** (Cambiar conexión) y sigue las instrucciones para configurar otra cuenta Microsoft. +9. Asegúrate de que el flujo de trabajo está conectado a la cuenta de Microsoft prevista para el envío de notificaciones (por ejemplo, una cuenta de servicio denominada "Notificaciones de Datadog"). Las notificaciones aparecerán como enviadas por "`` a través de Workflows". Esta cuenta debe tener acceso al canal de Microsoft Teams configurado. Para cambiar la cuenta, haz clic en **Change connection** (Cambiar connection) y sigue las instrucciones para configurar otra cuenta de Microsoft. {{< img src="integrations/microsoft_teams/microsoft_teams_workflows_step_9.png" alt="Instrucciones, paso 9" style="width:90%;" >}} 10. Pulsa el botón **Save** (Guardar). {{< img src="integrations/microsoft_teams/microsoft_teams_workflows_step_10.png" alt="Instrucciones, paso 10" style="width:90%;" >}} @@ -231,46 +298,110 @@ Para cada gestor de un conector de notificaciones legacy en el cuadro de la inte 17. Haz clic en **Save** (Guardar). ### Canales privados + Para enviar notificaciones a canales privados, la cuenta configurada dentro del bloque **Publicar tarjeta en chat o canal** debe tener acceso al canal. Esto permite que el flujo de trabajo envíe notificaciones en nombre de esa cuenta de usuario. + 1. Dentro del bloque **Publicar tarjeta en chat o canal**, cambia **Post as** (Publicar como) a **User** (Usuario). {{< img src="integrations/microsoft_teams/microsoft_teams_workflows_private_channels_step_1.png" alt="Instrucciones para canales privados, paso 1" style="width:30%;" >}} 2. A continuación, para elegir la cuenta, haz clic en **Change connection** (Cambiar conexión) y sigue las instrucciones para cambiar la cuenta. {{< img src="integrations/microsoft_teams/microsoft_teams_workflows_private_channels_step_2.png" alt="Instrucciones para canales privados, paso 2" style="width:90%;" >}} ### Limitaciones + - Si eres cliente de Microsoft 365, los flujos de trabajo se desactivarán automáticamente después de 90 días sin activaciones exitosas. Cuando un flujo de trabajo está a punto de caducar, Microsoft envía un correo electrónico a la cuenta a la que pertenece el flujo de trabajo. Este temporizador de 90 días se puede restablecer ejecutando un test dentro de Microsoft Workflows. - Cuando se utiliza la plantilla, todos los mensajes se adjuntan con una línea de texto que indica quién ha creado el flujo de trabajo junto con un enlace a la plantilla. {{< img src="integrations/microsoft_teams/microsoft_teams_workflows_used_a_template.png" alt="Usuario utilizado como plantilla" style="width:90%;" >}} Para eliminar esto, ve a tu flujo de trabajo y haz clic en **Save As** (Guardar como) para hacer una copia, ve hasta la copia buscándola dentro de **Mis Flujos** y utiliza el nuevo webhook del flujo de trabajo copiado en lugar del flujo de trabajo original. + - Microsoft Workflows no admite funciones interactivas para los mensajes que publica (como silenciar monitores directamente desde Microsoft Teams). - Microsoft Workflows no admite canales compartidos. +- Microsoft Workflows no admite menciones de usuarios cuando se publica un webhook de Workflows como usuario. ### Utilización -Desde un monitor Datadog, envía una notificación a Microsoft Teams utilizando la [función `@-notification` ][1]. Envía la notificación a la dirección `@teams-`, sustituyendo `` por el nombre de tu gestor de Microsoft Teams. +Desde un monitor Datadog, envía una notificación a Microsoft Teams utilizando la [función `@-notification`][1]. Envía la notificación a la dirección `@teams-`, sustituyendo `` por el nombre de tu gestor de Microsoft Teams. + +#### Menciones de usuarios con identificadores de webhooks de Microsoft Workflows + +Las menciones de usuarios te permiten notificar a usuarios específicos de tus canales de Microsoft Teams cuando se activan las alertas de monitor. Esto ayuda a garantizar que se notifiquen los eventos importantes a las personas adecuadas. Para mencionar a un usuario específico, sigue los pasos que se indican a continuación para encontrar su nombre principal de usuario (UPN). + +**Sintaxis: `{User Principal Name}` + +**Ejemplo**: `user@microsoft.com` + +**Ejemplo de notificación completa**: `@Teams-CHANNEL_NAME user@microsoft.com another.user@microsoft.com` + +**Para encontrar el nombre de usuario principal (UPN) de un usuario:** + +1. **Método 1 (sólo funciona si el UPN coincide con el correo electrónico):** + - En Microsoft Teams, haz clic en la foto de perfil o en el nombre del usuario para abrir su tarjeta de contacto. + - El correo electrónico que aparece en el campo `Chat` suele ser el UPN. Si difieren, utiliza el método 2 a continuación. + +2. **Método 2 (funciona siempre, pero requiere permisos de Azure Portal):** + - Inicia sesión en el [Microsoft Azure Portal][5]. + - Ve a `Microsoft Entra ID` > `Manage` > `Users`. + - Localiza al usuario en la lista y copia su UPN de la columna `User principal name`. + +
Las menciones de usuarios NO son compatibles con los identificadores de webhooks de Workflows publicados como usuario (para canales privados). Incluir una mención de usuario al publicar un webhook de Workflows como usuario fallará. Para incluir menciones de usuarios utilizando webhooks de Workflows debes utilizar el Flow Bot.
+ +Datadog recomienda probar tus notificaciones de monitor para garantizar una entrega fiable. Para obtener instrucciones, consulta [Probar notificaciones][6]. + +### Limitar el acceso de edición + +Por defecto, todos los usuarios tienen acceso completo a cada identificador de webhook de Microsoft Workflows. + +Utiliza el [control de acceso granular][7] para limitar los roles que pueden editar un identificador de webhook de Workflows específico: + +1. Mientras visualizas los **webhooks de Workflows**, pasa el ratón sobre un identificador restringido para revelar las acciones en el lado derecho de la fila. +2. Haz clic en el icono del candado con la etiqueta **Permisos**. +3. Haz clic en **Restrict Access** (Acceso restringido). El cuadro de diálogo se actualiza para mostrar que los miembros de tu organización tienen acceso de **Visor** por defecto. +4. Utiliza el desplegable para seleccionar uno o varios roles, equipos o usuarios que pueden editar el identificador de webhook de Workflows. +5. Haz clic en **Add** (Añadir). El cuadro de diálogo se actualiza para mostrar que el rol seleccionado tiene el permiso de **Editor**. +6. Haz clic en **Save** (Guardar). + +**Nota:** Para conservar tu acceso de edición al identificador de webhook de Workflows, debes incluir al menos un rol al que pertenezcas antes de guardar. + +Si tienes acceso de edición, puedes restablecer el acceso general a un identificador de webhook de Workflows restringido siguiendo estos pasos: + +1. Mientras visualizas los **webhooks de Workflows**, pasa el ratón sobre el identificador restringido para revelar las acciones en el lado derecho de la fila. +2. Haz clic en el icono del candado con la etiqueta **Permisos**. +3. Haz clic en **Restore Full Access** (Restablecer acceso completo). +4. Haz clic en **Save** (Guardar). + +Para editar permisos de webhooks de Workflows a través de la API: + +1. Obtén los ID de webhooks de Workflows utilizando la [API de la integración Microsoft Teams ][8]. +2. Utiliza la [API de políticas de restricción][9], donde el tipo de recurso es `integration-webhook` y el ID es `microsoft-teams:`. [1]: https://make.preview.powerautomate.com/galleries/public/templates/d271a6f01c2545a28348d8f2cddf4c8f/post-to-a-channel-when-a-webhook-request-is-received [2]: https://devblogs.microsoft.com/microsoft365dev/retirement-of-office-365-connectors-within-microsoft-teams/ [3]: https://teams.microsoft.com/l/app/c3a1996d-db0f-4857-a6ea-7aabf0266b00?source=app-details-dialog [4]: https://app.datadoghq.com/integrations/microsoft-teams +[5]: https://portal.azure.com +[6]: https://docs.datadoghq.com/es/monitors/notify/#test-notifications +[7]: https://docs.datadoghq.com/es/account_management/rbac/granular_access/ +[8]: https://docs.datadoghq.com/es/api/latest/microsoft-teams-integration/#get-all-workflows-webhook-handles +[9]: https://docs.datadoghq.com/es/api/latest/restriction-policies/ {{% /tab %}} {{% tab "Conectores (obsoletos)" %}} + ### Migrar los conectores de legacy a la integración basada en inquilinos Microsoft ha anunciado que los conectores de Office 365 para Microsoft Teams quedan obsoletos. Esto tiene los siguientes efectos: -* Todos los conectores de Datadog dejarán de funcionar el 31 de enero de 2025. -* Los conectores de webhooks entrantes sin [URL actualizadas][1] dejarán de funcionar el 31 de enero de 2025. -* Todos los conectores dejarán de funcionar el 31 de diciembre de 2025 (previamente era el 1 de octubre de 2024). +- Todos los conectores de Datadog dejarán de funcionar el 31 de enero de 2025. +- Los conectores de webhooks entrantes sin [URL actualizadas][1] dejarán de funcionar el 31 de enero de 2025. +- Todos los conectores dejarán de funcionar el 31 de diciembre de 2025 (previamente era el 1 de octubre de 2024). Para obtener más información, consulta la [entrada de blog][2] de Microsoft. Para migrar todos los gestores de notificaciones que utilizan actualmente los conectores de Office 365 legacy a la integración de Datadog basada en inquilinos: {{< site-region region="us,us3,us5,eu,ap1" >}} + 1. Sigue los [pasos de configuración][2] para conectar tu inquilino de Microsoft a Datadog. 2. Añade la aplicación Datadog a todos los equipos en los que tengas configurado un conector legacy de Office 365. 3. Para cada gestor de un conector de notificaciones legacy en el [cuadro de la integración Microsoft Teams][1]: @@ -284,6 +415,7 @@ Para migrar todos los gestores de notificaciones que utilizan actualmente los co {{< /site-region >}} {{< site-region region="gov" >}} + 1. Sigue los [pasos de configuración][2] para conectar tu inquilino de Microsoft a Datadog. 2. Añade la aplicación Datadog para el Gobierno a todos los equipos en los que tengas configurado un conector legacy de Office 365. 3. Para cada gestor de un conector de notificaciones legacy en el [cuadro de la integración Microsoft Teams][1]: @@ -293,21 +425,23 @@ Para migrar todos los gestores de notificaciones que utilizan actualmente los co [1]: https://app.datadoghq.com/integrations/microsoft-teams [2]: https://docs.datadoghq.com/es/integrations/microsoft_teams/?tab=datadogapprecommended#setup + {{< /site-region >}} ### Migrar conectores legacy a la integración de webhooks de Microsoft Workflows Microsoft ha anunciado que los conectores de Office 365 para Microsoft Teams quedan obsoletos. Esto tiene los siguientes efectos: -* Todos los conectores de Datadog dejarán de funcionar el 31 de enero de 2025. -* Los conectores de webhooks entrantes sin [URL actualizadas][1] dejarán de funcionar el 31 de enero de 2025. -* Todos los conectores dejarán de funcionar el 31 de diciembre de 2025 (previamente era el 1 de octubre de 2024). +- Todos los conectores de Datadog dejarán de funcionar el 31 de enero de 2025. +- Los conectores de webhooks entrantes sin [URL actualizadas][1] dejarán de funcionar el 31 de enero de 2025. +- Todos los conectores dejarán de funcionar el 31 de diciembre de 2025 (previamente era el 1 de octubre de 2024). Para obtener más información, consulta la [entrada de blog][2] de Microsoft. Para migrar todos los gestores de notificaciones que utilizan actualmente los conectores de Office 365 legacy a la integración de webhooks de Microsoft Workflows de Datadog, consulta [Webhooks de Microsoft Workflows][3]. ### Configuración del conector (obsoleto) +
Los gestores de notificaciones legacy no se ven afectados por la nueva configuración, a menos que utilices el mismo @teams-HANDLE_NAME, en cuyo caso la nueva configuración anula la configuración legacy.
@@ -334,6 +468,7 @@ Los gestores de notificaciones legacy no se ven afectados por la nueva configura {{< /tabs >}} {{< site-region region="us,us3,us5,eu,ap1" >}} + ## Datadog Incident Management en Microsoft Teams ### Configuración de la cuenta @@ -348,22 +483,76 @@ En primer lugar, instala la aplicación Datadog en Microsoft Teams: A continuación, conecta tu inquilino de Microsoft a Datadog: -1. En Datadog, ve al [cuadro de la integración Microsoft Teams][1]. +1. En Datadog, ve al [cuadro de la integración Microsoft Teams][3]. 2. Haz clic en **Add Tenant** (Agregar inquilino), que te redirigirá a Microsoft. 3. Sigue las instrucciones y haz clic en **OK** (Aceptar). -Algunas funciones de Datadog Incident Management necesitan permiso para realizar acciones en tu inquilino, por ejemplo, crear un nuevo -equipo para un incidente. Se requiere una persona autorizada para conceder el permiso de administrador de todo el inquilino en nombre de la organización Microsoft, -como por ejemplo un usuario que tenga asignado el rol de *Administrador global*. Consulta la [documentación de Microsoft Entra ID][5] para obtener más -información sobre quién puede conceder el permiso de administrador de todo el inquilino a la aplicación Datadog. -Para conceder el consentimiento: +### Concesión de permisos adicionales +Algunas funciones de Datadog Incident Management necesitan permiso para realizar acciones en tu inquilino, como por ejemplo, crear un nuevo +canal para un incidente. Para conceder el consentimiento de administrador de todo el inquilino, se necesita una persona autorizada para hacerlo +en nombre de la organización Microsoft, como un usuario con el rol *Administrador global*. Consulta la [documentación de Microsoft Entra ID][5] para obtener más +información sobre quién puede conceder el consentimiento de administrador de todo el inquilino a la aplicación Datadog. + +Puedes elegir conceder a Datadog permisos de aplicación y delegados o sólo permisos delegados. El uso de permisos de aplicación y delegados es fácil de configurar, mientras que el uso de permisos delegados te ofrece un control más preciso de la aplicación Datadog en tu inquilino. Para obtener más información, consulta la [Documentación general sobre permisos y consentimientos de Microsoft][11]. + +{{< tabs >}} + +{{% tab "Using Application Permissions" %}} + +1. Navega hasta el [cuadro de integración de Microsoft Teams][1] en Datadog. +2. Para el inquilino en el que quieres utilizar Incident Management, haz clic en el icono del engranaje situado a la derecha. +3. Haz clic en **Grant application permissions** (Conceder permisos de aplicación) y se te redirigirá a Microsoft. Este paso debe realizarlo un usuario que pueda conceder el permiso de administrador de todo el inquilino. Este usuario debe tener una cuenta Datadog, pero no es necesario que el correo electrónico utilizado para su cuenta Datadog coincida con el correo electrónico de su cuenta Microsoft. +4. Sigue las instrucciones y haz clic en **OK** (Aceptar). + + +[1]: https://app.datadoghq.com/integrations/microsoft-teams +{{% /tab %}} + +{{% tab "Using Delegated Permissions" %}} +Los permisos delegados permiten a Datadog operar dentro de tu inquilino Microsoft Teams como usuario. Datadog podrá realizar cualquier acción que ese usuario pueda realizar y acceder a los recursos a los que ese usuario pueda acceder. -1. Ve al [cuadro de la integración Microsoft Teams][3] en Datadog. +En primer lugar, concede permisos delegados a la aplicación Datadog: +1. Navega hasta el [cuadro de integración de Microsoft Teams][1] en Datadog. 2. Para el inquilino en el que quieres utilizar Incident Management, haz clic en el icono del engranaje situado a la derecha. -3. Haz clic en **Authorize Tenant** (Autorizar inquilino) y se te redirigirá a Microsoft. Este paso debe realizarlo un usuario que pueda conceder el permiso de administrador de todo el inquilino. Este usuario debe tener una cuenta Datadog, pero no es necesario que el correo electrónico utilizado para su cuenta Datadog coincida con el correo electrónico de su cuenta Microsoft. +3. Haz clic en **Grant delegated permissions** (Conceder permisos delegados) y se te redirigirá a Microsoft. Este paso debe realizarlo un usuario que pueda conceder el permiso de administrador de todo el inquilino. Este usuario debe tener una cuenta Datadog, pero no es necesario que el correo electrónico utilizado para su cuenta Datadog coincida con el correo electrónico de su cuenta Microsoft. 4. Sigue las instrucciones y haz clic en **OK** (Aceptar). +A continuación, crea la cuenta de servicio para que Datadog: +1. Cree un usuario de cuenta de servicio de Office365. Datadog recomienda asignar a este usuario de cuenta de servicio un nombre como 'Datadog' para distinguirlo de los usuarios reales de Microsoft Teams y evitar confusiones. +2. Asigne una licencia de Microsoft Teams a la cuenta de servicio. +3. Añada el usuario de la cuenta de servicio a cada equipo en el que quieres gestionar la respuesta a incidentes. Esto incluye los equipos donde se crean nuevos canales de incidentes y los equipos desde donde los usuarios declaran incidentes. +4. Asegúrate de que esos equipos tienen los siguientes permisos habilitados: + - `Allow members to create and update channels` + - `Allow members to delete and restore channels` + - `Allow members to create, update, and remove tabs` + + Para activar estos permisos, haz clic en **...** junto al nombre del equipo > **Gestionar equipo** > **Configuración** > **Permisos de miembro**. + +Por último, conecta el usuario de la cuenta de servicio que creaste en el primera paso. +1. Asegúrate de que has iniciado sesión como el usuario de la cuenta de servicio que acabas de crear. **Nota**: No es necesario crear un usuario Datadog para la cuenta de servicio, y el usuario de la cuenta de servicio no está conectado al usuario Datadog que realiza este paso. +2. Navega hasta el [cuadro de integración de Microsoft Teams][1] en Datadog. +3. Para el inquilino en el que quieres utilizar Incident Management, haz clic en el icono del engranaje situado a la derecha. +4. Haz clic en **Connect delegated user** (Conectar usuario delegado) y se te redirigirá a Microsoft. **Nota**: No es necesario ser administrador de todo el inquilino para realizar este paso. +5. Sigue las instrucciones y haz clic en **OK** (Aceptar). + +#### Nota importante sobre los tokens de actualización + +Cuando te conectas a Microsoft Teams utilizando una cuenta de servicio delegada, Datadog utiliza un token de actualización para conservar el acceso sin necesidad de iniciar sesión repetidamente. Este token puede dejar de ser válido si cambia la contraseña de la cuenta de servicio, si se desactiva la cuenta o si Microsoft revoca el token. + +Estos tokens también caducan a los 90 días. Cada vez que Datadog realiza un acción en nombre del usuario delegado, se emite un nuevo token, pero si el usuario delegado no se utiliza durante 90 días, el token caduca y la integración deja de funcionar. + +Si el token deja de ser válido o caduca, tendrás que volver a conectar la cuenta de servicio para restaurar la funcionalidad. + +Para obtener más información, consulta la documentación de Microsoft sobre [actualización de tokens en la plataforma de identidad de Microsoft][2]. + + +[1]: https://app.datadoghq.com/integrations/microsoft-teams +[2]: https://learn.microsoft.com/en-us/entra/identity-platform/refresh-tokens +{{% /tab %}} + +{{< /tabs >}} + ### Configuración del usuario Para realizar acciones en Datadog desde Microsoft Teams es necesario conectar las cuentas Datadog y Microsoft Team. @@ -380,13 +569,12 @@ Para conectar tu cuenta desde Microsoft Teams: 6. Se te redirigirá de nuevo al [cuadro de la integración Microsoft Teams][3]. 7. Crea una clave de aplicación haciendo clic en **Create** (Crear) en el mensaje del [cuadro de la integración Microsoft Teams][3]. - También puedes conectar tus cuentas desde Datadog: 1. En Datadog, ve al [cuadro de la integración Microsoft Teams][3]. 2. Haz clic en **Connect** (Conectar) en el inquilino que aparece en la lista. 3. Sigue las instrucciones y haz clic en **OK** (Aceptar). -5. En el [cuadro de la integración Microsoft Teams][3], crea una clave de aplicación haciendo clic en **Create** (Crear) en el mensaje anterior. +4. En el [cuadro de la integración Microsoft Teams][3], crea una clave de aplicación haciendo clic en **Create** (Crear) en el mensaje anterior. {{< img src="integrations/microsoft_teams/microsoft_teams_connect_account_from_datadog_v2.png" alt="Conectar cuentas desde el cuadro de la integración Microsoft Teams" >}} @@ -396,13 +584,11 @@ También puedes conectar tus cuentas desde Datadog: Para declarar una nueva incidencia desde Microsoft Teams: -1. Inicia una conversación en cualquier equipo. -2. Escribe `@Datadog` o utiliza el botón `...` para abrir el menú **Connect Datadog Account**. (Extensiones de mensajería) y selecciona la aplicación **Datadog**. -3. Selecciona **Create an Incident** (Crear una incidencia). -4. Rellena el formulario con la información pertinente. -5. Haz clic en **Create** (Crear). +1. Inicia una conversación en un canal de cualquier equipo o un chat con la aplicación Datadog. +2. Tipo `@Datadog incident (incidente)` +3. Aparece una tarjeta adaptable. Haz clic en el botón **Declare Incident** (Declarar incidente) para abrir la pestaña Datadog y declarar un incidente. -Cualquiera en tu inquilino de Microsoft Teams puede declarar una incidencia, independientemente de si tiene acceso a Datadog. +Un usuario debe conectar su cuenta Microsoft Teams a su cuenta Datadog para declarar un incidente. Cuando se crea una nueva incidencia, se crea un equipo correspondiente denominado `incident-(unique number ID)`. @@ -423,6 +609,7 @@ Haz una lista de todas las incidencias abiertas (activas y estables) con: Utiliza el menú "More actions" (Más acciones) en cualquier mensaje dentro de un equipo de incidencias en el extremo derecho para enviar ese mensaje a la Línea de tiempo de la incidencia. #### Canal de actualización de incidencias + El uso de un canal de actualizaciones de incidencias proporciona a las partes interesadas visibilidad en toda la organización del estado de todas las incidencias directamente desde Microsoft Teams. Selecciona en qué equipo y canal de tu cuenta deseas publicar estas actualizaciones y el canal recibirá las siguientes publicaciones: - Nuevas incidencias declaradas. @@ -452,6 +639,7 @@ Una vez instalada la aplicación de Microsoft Teams, puedes ir a la página **In [8]: https://learn.microsoft.com/en-us/microsoftteams/app-permissions#what-can-apps-do-in-teams [9]: https://learn.microsoft.com/en-us/microsoftteams/private-channels#private-channel-limitations [10]: https://devblogs.microsoft.com/microsoft365dev/retirement-of-office-365-connectors-within-microsoft-teams/ +[11]: https://learn.microsoft.com/en-us/graph/permissions-overview {{< /site-region >}} ## Datos recopilados @@ -472,74 +660,159 @@ La integración Microsoft Teams no incluye checks de servicios. La integración Microsoft Teams recibe los siguientes permisos para los equipos a los que se ha añadido. Para obtener más información, consulta la [referencia de los permisos de Microsoft App][1]. -| Descripción del permiso | Motivo de la solicitud | -|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------| -| Recibir mensajes y datos que yo le facilite. | Los usuarios pueden interactuar con la aplicación Datadog en un chat personal. | -| Enviarme mensajes y notificaciones. | Los usuarios pueden interactuar con la aplicación Datadog en un chat personal. | -| Acceder a la información de mi perfil, como mi nombre, dirección de correo electrónico, nombre de la empresa e idioma preferido. | Permitir a los usuarios configurar notificaciones de Microsoft Teams y flujos de trabajo dentro de la interfaz de usuario de Datadog. | -| Recibir mensajes y datos que los miembros de un equipo o chat le proporcionan en un canal o chat. | Los usuarios pueden interactuar con Datadog a través de los comandos @Datadog. | -| Enviar mensajes y notificaciones en un canal o chat. | Enviar notificaciones de Datadog a los objetivos configurados. | -| Acceder a la información de este equipo o chat, como el nombre del equipo o chat, la lista de canales, y la nómina (incluidos los nombres y direcciones de correo electrónico de los miembros del equipo o chat), y utilizarlos para ponerte en contacto con ellos. | Permitir a los usuarios configurar las notificaciones de Microsoft Teams y flujos de trabajo dentro de Datadog. | +| Descripción del permiso | Motivo de la solicitud | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | +| Recibir mensajes y datos que yo le facilite. | Los usuarios pueden interactuar con la aplicación Datadog en un chat personal. | +| Enviarme mensajes y notificaciones. | Los usuarios pueden interactuar con la aplicación Datadog en un chat personal. | +| Acceder a la información de mi perfil, como mi nombre, dirección de correo electrónico, nombre de la empresa e idioma preferido. | Permitir a los usuarios configurar notificaciones de Microsoft Teams y flujos de trabajo dentro de la interfaz de usuario de Datadog. | +| Recibir mensajes y datos que los miembros de un equipo o chat le proporcionan en un canal o chat. | Los usuarios pueden interactuar con Datadog a través de los comandos @Datadog. | +| Enviar mensajes y notificaciones en un canal o chat. | Enviar notificaciones de Datadog a los objetivos configurados. | +| Acceder a la información de este equipo o chat, como el nombre del equipo o chat, la lista de canales, y la nómina (incluidos los nombres y direcciones de correo electrónico de los miembros del equipo o chat), y utilizarlos para ponerte en contacto con ellos. | Permitir a los usuarios configurar las notificaciones de Microsoft Teams y flujos de trabajo dentro de Datadog. | {{< site-region region="us,us3,us5,eu,ap1" >}} -Se necesitan permisos adicionales para utilizar las funciones de Incident Management en la integración Microsoft Teams. Esto debe ser autorizado por un usuario con permisos para todo el inquilino (consulta [Datadog Incident Management in Microsoft Teams:: configuración de la cuenta](#account-setup) para obtener instrucciones detalladas). +Se necesitan permisos adicionales para utilizar las funciones de Incident Management en la integración Microsoft Teams. Estos deben ser autorizados por un usuario con permisos para todo el inquilino (consulta [Gestión de incidencias de Datadog en Microsoft Teams: configuración de la cuenta](#account-setup) para obtener instrucciones detalladas). Para obtener más información sobre estos permisos, consulta la [referencia de los permisos de Microsoft Graph][6]. +{{< tabs >}} +{{% tab "Using Application Permissions" %}} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
API / Nombre de permisosTipoMotivo de la solicitud
Channel.CreateDe aplicación y delegadasCrea canales para gestionar y corregir incidentes utilizando Datadog Incident Management.
Channel.Delete.AllDe aplicación y delegadoArchiva automáticamente canales de incidentes después de un periodo de tiempo especificado.
ChannelMessage.Read.AllDe aplicación y delegadoSincroniza automáticamente mensajes de línea de tiempo con la línea de tiempo del incidente desde un canal de incidentes.
ChannelSettings.ReadWrite.AllDe aplicación y delegadoCrea y modifica canales para corregir incidentes utilizando Datadog Incident Management.
Directory.Read.All,GroupMember.Read.AllDe aplicaciónProporciona sugerencias para autocompletar nombres de equipos y canales para la configuración de Datadog Incident Management.
TeamsTab.CreateDe aplicación y delegadoCrea una pestaña en un equipo para la aplicación Datadog (este permiso es necesario para una próxima experiencia de declaración de incidentes de Microsoft Teams).
OnlineMeetings.ReadWriteDelegadoCrea automáticamente una reunión en un equipo para la aplicación Datadog (este permiso es necesario para una próxima experiencia de declaración de incidentes de Microsoft Teams).
TeamsAppInstallation. + ReadWriteSelfForTeamDelegadoPermite que la aplicación Datadog compruebe si se trata del miembro de un equipo.
TeamsTab.Read.AllDelegadoComprueba si se creó una pestaña de Datadog en un canal (este permiso es necesario para una próxima experiencia de declaración de incidentes de Microsoft Teams).
User.ReadDelegadoProporciona información acerca del usuario que inició sesión para conectar una cuenta de Microsoft Teams con una cuenta de Datadog correspondiente.
User.Read.AllDelegadoMuestra el nombre del usuario de Microsoft Teams que actualizó o creó un incidente.
Team.ReadBasic.AllDelegadoMuestra los equipos cuyas cuentas de servicio son miembros en la página de parámetros de incidentes.
+{{% /tab %}} +{{% tab "Using Delegated Permissions" %}} - + - - + + - - - + + + - - + + - - + + + + + + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + +
API / Nombre de los permisosAPI / Nombre de permisos Tipo Motivo de la solicitud
Channel.CreateAplicaciónCrear canales para gestionar y corregir incidentes utilizando Datadog Incident Management.DelegadoCrea canales para gestionar y corregir incidentes utilizando Datadog Incident Management.
Channel.DeleteAplicaciónArchivar automáticamente canales de incidentes luego de un periodo especificado.Channel.Delete.AllDelegadoArchiva automáticamente canales de incidentes después de un periodo de tiempo especificado.
ChannelMessage.Read.AllAplicaciónSincronizar automáticamente mensajes de líneas de tiempo con la línea de tiempo del incidente desde un canal de incidentes.DelegadoSincroniza automáticamente mensajes de línea de tiempo con la línea de tiempo del incidente desde un canal de incidentes.
ChannelSettings.ReadWrite.AllAplicaciónCrear y modificar canales para corregir incidentes utilizando Datadog Incident Management.DelegadoCrea y modifica canales para corregir incidentes utilizando Datadog Incident Management.
TeamsTab.CreateDelegadoCrea una pestaña en un equipo para la aplicación Datadog (este permiso es necesario para una próxima experiencia de declaración de incidentes de Microsoft Teams).
OnlineMeetings.ReadWriteDelegadoCrea automáticamente una reunión en un equipo para la aplicación Datadog (este permiso es necesario para una próxima experiencia de declaración de incidentes de Microsoft Teams).
GroupMember.Read.AllAplicaciónSugiere opciones de rellenado automático de nombres de equipos y canales para la configuración de Datadog Incident Management.TeamsAppInstallation. + ReadWriteSelfForTeamDelegadoPermite que la aplicación Datadog compruebe si se trata del miembro de un equipo.
Team.Create*AplicaciónCrear equipos para gestionar y corregir incidentes utilizando Datadog Incident Management.TeamsTab.Read.AllDelegadoComprueba si se creó una pestaña de Datadog en un canal (este permiso es necesario para una próxima experiencia de declaración de incidentes de Microsoft Teams).
TeamMember.ReadWrite.All*AplicaciónAñadir usuarios a equipos para gestionar incidentes utilizando Datadog Incident Management.User.ReadDelegadoProporciona información acerca del usuario que inició sesión para conectar una cuenta de Microsoft Teams con una cuenta de Datadog correspondiente.
TeamsAppInstallation.ReadWrite.All*AplicaciónAñade la aplicación Datadog a los equipos creados por Datadog Incident Management.User.Read.AllDelegadoMuestra el nombre del usuario de Microsoft Teams que actualizó o creó un incidente.
TeamSettings.ReadWrite.All*AplicaciónMantiene Datadog Incident Management actualizado con el estado de los equipos de incidentes.Team.ReadBasic.AllDelegadoMuestra los equipos cuyas cuentas de servicio son miembros en la página de parámetros de incidentes.
-* Estos permisos son para funciones obsoletas que ya no utiliza la aplicación Datadog Incident Management -y pronto se eliminarán. Pueden revocarse en el portal de Microsoft Azure sin que ello afecte a la funcionalidad. + +{{% /tab %}} + +{{< /tabs >}} [1]: https://docs.datadoghq.com/es/monitors/notifications/#notification [2]: https://docs.datadoghq.com/es/help/ @@ -554,7 +827,7 @@ y pronto se eliminarán. Pueden revocarse en el portal de Microsoft Azure sin qu {{< /site-region >}} -## Resolución de problemas +## Solucionar problemas ### Uso de SSO @@ -565,14 +838,19 @@ Sigue los siguientes pasos para configurar nuevos conectores de canal: 2. Después de que el paso de configuración 3 te redirija a Datadog desde la página de MS Teams, abre una nueva pestaña e inicia sesión en Datadog con tu SSO. A continuación, realiza el paso de configuración 4 por separado. ### ¿Por qué no aparece mi equipo en el cuadro de la integración? + {{< site-region region="us,us3,us5,eu,ap1" >}} Si añadieras el bot al equipo antes de añadir el inquilino a Datadog, entonces a Datadog se le pasaría el evento de unirse al equipo al no saber que el equipo existe. Puedes tratar de: + - Sincroniza los canales estándar de tu equipo con Datadog publicando `@Datadog sync` en cualquier canal estándar de ese equipo: + 1. Ve a un canal estándar del equipo que quieres sincronizar. 2. Inicia una publicación en el canal. 3. Publica `@Datadog sync` en el canal y espera un mensaje de confirmación en el subproceso que indique el éxito de la operación. + - Elimina la aplicación Datadog del equipo y luego vuelve a añadirla. **Nota**: Esto elimina los conectores configurados para ese equipo. Realiza esta acción sólo cuando tengas todo listo para migrar todos los conectores de ese equipo a una integración Datadog basada en inquilinos: + 1. Haz clic en los tres puntos situados junto al nombre del equipo en la barra lateral izquierda. 2. Haz clic en **Manage Team** (Gestionar equipo). 3. Ve a pestaña con la etiqueta **Apps** (Aplicaciones). @@ -581,16 +859,21 @@ Puedes tratar de: 6. Vuelve a añadir la aplicación Datadog siguiendo los [pasos de configuración][1]. [1]: https://docs.datadoghq.com/es/integrations/microsoft_teams/?tab=datadogapprecommended#setup + {{< /site-region >}} {{< site-region region="gov" >}} Si añadieras el bot al equipo antes de añadir el inquilino a Datadog, entonces a Datadog se le pasaría el evento de unirse al equipo al no saber que el equipo existe. Puedes tratar de: + - Sincroniza los canales estándar de tu equipo con Datadog publicando `@Datadog for Government sync` en cualquier canal estándar de ese equipo: + 1. Ve a un canal estándar del equipo que quieres sincronizar. 2. Inicia una publicación en el canal. 3. Publica `@Datadog for Government sync` en el canal y espera un mensaje de confirmación en el hilo indicando el éxito de la operación. + - Elimina la aplicación Datadog para el Gobierno del equipo y luego vuelve a añadirla. **Nota**: Esto elimina los conectores configurados para ese equipo. Realiza esta acción sólo cuando tengas todo listo para migrar todos los conectores de ese equipo a una integración Datadog basada en inquilinos. + 1. Haz clic en los tres puntos situados junto al nombre del equipo en la barra lateral izquierda. 2. Haz clic en **Manage Team** (Gestionar equipo). 3. Ve a pestaña con la etiqueta **Apps** (Aplicaciones). @@ -599,19 +882,53 @@ Puedes tratar de: 6. Vuelve a añadir la aplicación Datadog para el Gobierno siguiendo los [pasos de configuración][1]. [1]: https://docs.datadoghq.com/es/integrations/microsoft_teams/?tab=datadogapprecommended#setup&site=gov + {{< /site-region >}} ### ¿El bot admite canales privados? + Debido a las limitaciones de los canales privados en [Microsoft Teams][2], los canales privados no son compatibles con el bot. Si quieres enviar notificaciones a canales privados, consulta [Webhooks de Microsoft Workflows][3]. +{{< site-region region="us,us3,us5,eu,ap1" >}} + +### ¿Se admiten varias menciones de usuarios en las notificaciones de monitor? + +Sí, puedes incluir varias menciones de usuarios en una sola notificación para asegurarte de que se notifica a todos los miembros pertinentes del equipo. + +**Ejemplo**: `@Teams-handle user1@microsoft.com user2@microsoft.com user3@microsoft.com` + +
Cuando se incluyen diferentes menciones de usuarios en una notificación y una de ellas no es válida, los usuarios válidos seguirán recibiendo notificaciones, pero las menciones de usuarios no válidas pueden hacer que las menciones aparezcan desordenadas.
+ +{{< /site-region >}} + {{< site-region region="gov" >}} + ### ¿Es compatible la aplicación Datadog para el Gobierno con GCC o GCC High? + Actualmente, la aplicación Datadog para el Gobierno solo es compatible con los clientes de Datadog US1-FED que intentan conectarse a su inquilino `commercial` de Microsoft Teams. Los inquilinos GCC y GCC High no son compatibles con la aplicación. {{< /site-region >}} -¿Necesitas ayuda? Ponte en contacto con el [soporte de Datadog][4]. +### ¿Por qué no funciona una función de incidentes cuando se utilizan permisos delegados? +En primer lugar, asegúrate de que el usuario de la cuenta de servicio es miembro del equipo en el que se utiliza la función. +- Si no se está creando la pestaña de incidentes, asegúrate de que has permitido a los miembros crear, actualizar y eliminar pestañas en los canales de ese equipo. +- Si no se están creando o renombrando nuevos canales de incidentes, asegúrate de que has permitido a los miembros crear y actualizar canales en ese equipo. +- Si los canales de incidentes no se están archivando, asegúrate de que has permitido a los miembros eliminar y restaurar canales en ese equipo. + +Por último, es posible que el token del usuario delegado haya caducado o haya sido revocado. Si ese es el caso, vuelve a conectar al usuario delegado. + +### ¿Por qué se me pide que compruebe la configuración de mi aplicación cuando intento declarar un incidente? +Para utilizar la nueva experiencia de declaración de incidentes, asegúrate de lo siguiente: +- La versión de tu aplicación es 3.1.23 o posterior. Consulta las instrucciones para [actualizar la versión de la aplicación][4]. +- Si utilizas permisos de aplicación, asegúrate de haber concedido el permiso de aplicación `TeamsTab.Create` +- Si utiliza permisos delegados, asegúrate de haber concedido los permisos delegados `TeamsTab.Create` y `TeamsTab.Read.All`. +- Si estás utilizando permisos delegados, asegúrate de que la cuenta de servicio es miembro del equipo en el que estás ejecutando el comando `@Datadog incident (incidente)`. + +También puedes utilizar la nueva experiencia de declaración de incidentes haciendo clic en el signo `+` en la parte superior de un canal y buscando la aplicación Datadog. + +¿Necesitas ayuda? Ponte en contacto con el [servicio de asistencia de Datadog][5]. [1]: https://learn.microsoft.com/en-us/microsoftteams/app-permissions#what-can-apps-do-in-teams [2]: https://learn.microsoft.com/en-us/microsoftteams/private-channels#private-channel-limitations [3]: https://docs.datadoghq.com/es/integrations/microsoft_teams/?tab=microsoftworkflowswebhooks#what-are-microsoft-workflows-webhooks -[4]: https://docs.datadoghq.com/es/help/ \ No newline at end of file +[4]: https://support.microsoft.com/en-us/office/update-an-app-in-microsoft-teams-3d53d136-5c5d-4dfa-9602-01e6fdd8015b +[5]: https://docs.datadoghq.com/es/help/ \ No newline at end of file diff --git a/content/es/integrations/neoload.md b/content/es/integrations/neoload.md index 4f69367768b..cb8e7396b88 100644 --- a/content/es/integrations/neoload.md +++ b/content/es/integrations/neoload.md @@ -49,11 +49,11 @@ tile: changelog: CHANGELOG.md classifier_tags: - Category::Notifications - - Category::Tests + - Categoría::Tests - Offering::Integration - - Supported OS::Linux - - Supported OS::Windows - - Supported OS::macOS + - Sistema operativo compatible::Linux + - Sistema operativo compatible::Windows + - Sistema operativo compatible::macOS configuration: README.md#Configuración description: Monitorizar y analizar los resultados de tests de rendimiento de NeoLoad media: @@ -77,7 +77,7 @@ Con la integración NeoLoad puedes realizar un seguimiento de las métricas de l - Correlacionar el rendimiento de la aplicación con las métricas de los tests de carga en NeoLoad. - Analizar y visualizar métricas de NeoLoad en Datadog, como el rendimiento, los errores y el rendimiento, utilizando el dashboard predefinido o el [Explorador de métricas][2]. -## Configuración +## Configurar ### Configuración diff --git a/content/es/integrations/new_relic.md b/content/es/integrations/new_relic.md new file mode 100644 index 00000000000..b497ac6c984 --- /dev/null +++ b/content/es/integrations/new_relic.md @@ -0,0 +1,175 @@ +--- +"app_id": "new-relic" +"app_uuid": "82c7d333-a23e-44f9-a6c5-cd22fb541022" +"assets": + "integration": + "auto_install": false + "events": + "creates_events": true + "metrics": + "check": + - "new_relic.application_summary.apdex_score" + - "new_relic.apdex.score" + "metadata_path": "metadata.csv" + "prefix": "new_relic." + "service_checks": + "metadata_path": "assets/service_checks.json" + "source_type_id": !!int "54" + "source_type_name": "New Relic" +"author": + "homepage": "https://www.datadoghq.com" + "name": "Datadog" + "sales_email": "info@datadoghq.com" + "support_email": "help@datadoghq.com" +"categories": +- "notifications" +- "event management" +"custom_kind": "integración" +"dependencies": [] +"display_on_public_website": true +"draft": false +"git_integration_title": "new_relic" +"integration_id": "new-relic" +"integration_title": "New Relic" +"integration_version": "" +"is_public": true +"manifest_version": "2.0.0" +"name": "new_relic" +"public_title": "New Relic" +"short_description": "New Relic es un servicio de monitorización de aplicación para aplicaciones web y móviles" +"supported_os": [] +"tile": + "changelog": "CHANGELOG.md" + "classifier_tags": + - "Category::Notifications" + - "Category::Event Management" + - "Offering::Integration" + "configuration": "README.md#Setup" + "description": "New Relic es un servicio de monitorización de aplicación para aplicaciones web y móviles" + "media": [] + "overview": "README.md#Overview" + "support": "README.md#Support" + "title": "New Relic" +--- + + + +## Información general + +
La integración de New Relic APM está obsoleta y tiene una funcionalidad reducida. Las etiquetas de métrica de APM no están disponibles.
+ +
A partir del 1 de marzo de 2025, la API REST v2 de NewRelic ya no acepta claves de la API REST. + +Con el fin de mantener la funcionalidad de esta integración, reemplaza tu clave de la API REST existente con una clave de la API de usuario en la configuración de integración.
+ +Conéctate a New Relic para ver las alertas de New Relic en tu flujo de eventos. + +## Configuración + +### Alertas de New Relic en flujo de eventos + +Completa los siguientes pasos en **New Relic**. + +1. En la pestaña "Alerts & AI" (Alertas e IA), navega a "Notification Channels" (Canales de notificación). +2. Selecciona "New Notification Channel" (Nuevo canal de notificación). +3. Selecciona "Webhook" como tipo de canal. +4. Nombra tu canal "Datadog". +5. Introduce esta URL base: + + ```text + https://app.datadoghq.com/intake/webhook/newrelic?api_key= + ``` + +6. Haz clic en "Custom Payload" (Carga útil personalizada) y asegúrate de que la carga útil está en formato JSON. +**Nota:** Consulta la sección siguiente para obtener instrucciones sobre la inclusión de etiquetas (tags) personalizadas en JSON. +7. Haz clic en "Create Channel" (Crear canal). +8. Haz clic en "Alert Policies" (Políticas de alerta). +9. Selecciona las políticas de alerta que deseas que se envíen a Datadog. + +### Formato de Webhook requerido + +Esta sección describe los distintos tipos de alertas de New Relic que se pueden procesar en Datadog, detallando los campos obligatorios para cada tipo de alerta. Si falta alguno de los campos obligatorios, evento se rechazará y no aparecerá en el Event Explorer. + +#### Notificación de despliegue + +Si "despliegue" está en la carga útil del webhook, se tratará como evento INFO. + +Campos obligatorios: + +1. fecha_de_creación +2. revisión +3. descripción +4. desplegado_por +5. registro de cambios + +#### Alerta + +Si "alerta" está en la carga útil del webhook, el tipo de evento se determinará a partir de la descripción corta de acuerdo con las siguientes reglas: +1. ÉXITO si en la descripción aparece "finalizado", "cerrado" o "recuperado". +2. INFO si "reconocido" está en la descripción +3. ERROR en todos los demás casos + +Campos obligatorios +1. descripción_breve +2. mensaje +3. url_dd_alerta +4. fecha_de_creación +5. gravedad + +#### Valor predeterminado + +Si no se cumplen los criterios anteriores, el campo de gravedad se asignará a un tipo de alerta. + +Campos obligatorios: +1. id_de_cuenta +2. nombre_de_cuenta +3. id_de_condición +4. nombre_de_condición +5. estado_actual +6. detalles +7. ltipo_de_evento +8. url_reconocimiento_incidente +9. objetivos +10. id_de_incidente +11. url_del_incidente +12. nombre_de_la_política +13. URL_de_la_política +14. Gravedad - Este campo debe ser uno de los siguientes: información ,advertencia o crítico. Se asignará a un tipo de evento de información, advertencia y error. +15. marca de tiempo + + +### Incluye una etiqueta personalizada en las alertas beta + +Puedes incluir etiquetas personalizadas con la opción "Use Custom Payload" (Usar carga útil personalizada) a través de la función de alertas beta de New Relic. Para configurar esto, navega a tu cuenta de New Relic y haz clic en el botón 'Alerts Beta' (Alertas beta) en la esquina superior derecha de la pantalla. A continuación, selecciona la sección 'Notification channels' (Canal de notificación) y busca el webhook que has configurado para Datadog. Aquí debería haber una sección llamada "Use Custom Payload" (Usar carga útil personalizada) y, una vez seleccionada, se expande para mostrar una carga útil JSON. Tienes que modificar esta carga añadiendo un atributo "tags". Por ejemplo, una carga útil modificada podría tener este aspecto: + +```json +{ + "account_id": "$ACCOUNT_ID", + "account_name": "$ACCOUNT_NAME", + "condition_id": "$CONDITION_ID", + "condition_name": "$CONDITION_NAME", + "current_state": "$EVENT_STATE", + "details": "$EVENT_DETAILS", + "event_type": "$EVENT_TYPE", + "incident_acknowledge_url": "$INCIDENT_ACKNOWLEDGE_URL", + "incident_id": "$INCIDENT_ID", + "incident_url": "$INCIDENT_URL", + "owner": "$EVENT_OWNER", + "policy_name": "$POLICY_NAME", + "policy_url": "$POLICY_URL", + "runbook_url": "$RUNBOOK_URL", + "severity": "$SEVERITY", + "targets": "$TARGETS", + "timestamp": "$TIMESTAMP", + "tags": ["application:yourapplication", "host:yourhostname", "sometag"] +} +``` + +Una vez finalizadas las modificaciones, selecciona **Update Channel** (Actualizar canal) para guardar los cambios. + +## Solucionar problemas + +¿Necesitas ayuda? Contacta con el [equipo de soporte de Datadog][1]. + +[1]: https://docs.datadoghq.com/help/ + diff --git a/content/es/integrations/oci_vcn.md b/content/es/integrations/oci_vcn.md new file mode 100644 index 00000000000..00f7e0a63d4 --- /dev/null +++ b/content/es/integrations/oci_vcn.md @@ -0,0 +1,117 @@ +--- +app_id: oci-vcn +app_uuid: 9bea50e7-6c44-48aa-b46e-66a98c0df1b3 +assets: + dashboards: + OCI-VCN-Overview: assets/dashboards/oci-vcn-overview-dashboard.json + integration: + auto_install: true + events: + creates_events: false + metrics: + check: + - oci.vcn.smartnic_buffer_drops_from_host + - oci.vcn.smartnic_buffer_drops_from_network + - oci.vcn.vnic_conntrack_is_full + - oci.vcn.vnic_conntrack_util_percent + - oci.vcn.vnic_egress_drops_conntrack_full + - oci.vcn.vnic_egress_drops_security_list + - oci.vcn.vnic_egress_drops_throttle + - oci.vcn.vnic_from_network_bytes + - oci.vcn.vnic_from_network_packets + - oci.vcn.vnic_ingress_drops_conntrack_full + - oci.vcn.vnic_ingress_drops_security_list + - oci.vcn.vnic_ingress_drops_throttle + - oci.vcn.vnic_to_network_bytes + - oci.vcn.vnic_to_network_packets + metadata_path: metadata.csv + prefix: oci. + service_checks: + metadata_path: assets/service_checks.json + source_type_id: 24743904 + source_type_name: OCI VCN + monitors: + A Connection Tracking Table is full: assets/monitors/full-connections.json + A VCN is experiencing a volume of egress packet drops: assets/monitors/high-egress-drops.json + A VCN is experiencing a volume of ingress packet drops: assets/monitors/high-ingress-drops.json +author: + homepage: https://www.datadoghq.com + name: Datadog + sales_email: info@datadoghq.com + support_email: help@datadoghq.com +categories: +- la red +- nube +- oracle +- métricas +custom_kind: integración +dependencies: [] +display_on_public_website: true +draft: false +git_integration_title: oci_vcn +integration_id: oci-vcn +integration_title: OCI VCN +integration_version: '' +is_public: true +manifest_version: 2.0.0 +name: oci_vcn +public_title: OCI VCN +short_description: OCI Virtual Cloud Network (VCN) te permite crear redes de nube + aislada segura para gestionar y segmentar tus recursos. +supported_os: [] +tile: + changelog: CHANGELOG.md + classifier_tags: + - Category::Network + - Category::Cloud + - Category::Oracle + - Category::Metrics + - Offering::Integration + configuration: README.md#Setup + description: OCI Virtual Cloud Network (VCN) te permite crear redes de nube aislada + segura para gestionar y segmentar tus recursos. + media: [] + overview: README.md#Overview + support: README.md#Support + title: OCI VCN +--- + + + + +## Información general + +Las Virtual Cloud Networks (VCNs) de Oracle Cloud Infrastructure (OCI) son centros de datos privados y flexibles en la nube con políticas de seguridad y administración integrada y solución de problemas. + +Esta integración te permite monitorizar el rendimiento, la producción y el estado de tus VCNs mediante la recopilación de métricas y etiquetas del espacio de nombres [`oci_vcn`][1]. + +## Configuración + +### Instalación + +Después de configurar la integración de [Oracle Cloud Infrastructure][2], asegúrate de que el espacio de nombres `oci_vcn` está incluido en tu [Connector Hub][3]. + +## Datos recopilados + +### Métricas +{{< get-metrics-from-git "oci_vcn" >}} + + +### Eventos + +La integración de OCI VPN no incluye eventos. + +### Checks de servicio + +La integración de OCI VCN no incluye ningún check de servicio. + +## Resolución de problemas + +¿Necesitas ayuda? Ponte en contacto con el [servicio de asistencia de Datadog][5]. + + +[1]: https://docs.oracle.com/en-us/iaas/Content/Network/Reference/vnicmetrics.htm#VNIC_Metrics +[2]: https://docs.datadoghq.com/es/integrations/oracle_cloud_infrastructure/ +[3]: https://cloud.oracle.com/connector-hub/service-connectors +[4]: https://github.com/DataDog/integrations-internal-core/blob/main/oci_vcn/metadata.csv +[5]: https://docs.datadoghq.com/es/help/ \ No newline at end of file diff --git a/content/es/integrations/rapdev_glassfish.md b/content/es/integrations/rapdev_glassfish.md new file mode 100644 index 00000000000..a5835732e40 --- /dev/null +++ b/content/es/integrations/rapdev_glassfish.md @@ -0,0 +1,119 @@ +--- +algolia: + subcategory: Integraciones del Marketplace +app_id: rapdev-glassfish +app_uuid: 58392a75-5d53-43ad-aeb9-62129ccf086b +assets: + dashboards: + RapDev Glassfish Overview Dashboard: assets/dashboards/overview_dashboard.json + integration: + auto_install: false + configuration: + spec: assets/configuration/spec.yaml + events: + creates_events: false + metrics: + check: rapdev.glassfish.up_time + metadata_path: metadata.csv + prefix: rapdev.glassfish. + service_checks: + metadata_path: assets/service_checks.json + source_type_id: 10424 + source_type_name: RapDev Glassfish + monitors: + Glassfish Virtual Server is Off: assets/monitors/virtual_server_state.json +author: + homepage: https://www.rapdev.io + name: RapDev + sales_email: ddsales@rapdev.io + support_email: support@rapdev.io + vendor_id: rapdev +categories: +- marketplace +- herramientas de desarrollo +custom_kind: integración +dependencies: [] +display_on_public_website: true +draft: false +git_integration_title: rapdev_glassfish +integration_id: rapdev-glassfish +integration_title: Glassfish +integration_version: '' +is_public: true +legal_terms: + eula: assets/EULA.pdf +manifest_version: 2.0.0 +name: rapdev_glassfish +pricing: +- billing_type: recuento_etiquetas + includes_assets: true + metric: datadog.marketplace.rapdev.glassfish + product_id: glassfish + short_description: Precio unitario por instancia. + tag: instancia_glassfish + unit_label: Instancia Glassfish + unit_price: 10 +public_title: Glassfish +short_description: Monitorizar el estado de tus aplicaciones y servicios Glassfish +supported_os: +- Linux +- Windows +- macOS +tile: + changelog: CHANGELOG.md + classifier_tags: + - Categoría::Marketplace + - Oferta::Integración + - Sistema operativo compatible::Linux + - Sistema operativo compatible::Windows + - Sistema operativo compatible::macOS + - Categoría::Herramientas de desarrollo + - Tipo de datos enviados::Métricas + - Tipo de datos enviados::Logs + configuration: README.md#Configuración + description: Monitorizar el estado de tus aplicaciones y servicios Glassfish + media: + - caption: Información general de la aplicación + image_url: images/applications-overview.png + media_type: imagen + - caption: Información general del servicio HTTP + image_url: images/http-service-overview.png + media_type: imagen + - caption: Información general de máquinas virtuales Java, redes y servicios de + transacción + image_url: images/jvm-network-ts.png + media_type: imagen + overview: README.md#Información general + support: README.md#Soporte + title: Glassfish + uninstallation: README.md#Desinstalación +--- + + + + +## Información general +GlassFish es la implementación de Eclipse de Jakarta EE (anteriormente la implementación de referencia de Oracle) y admite Jakarta REST, Jakarta CDI, Jakarta Security, Jakarta Persistence, Jakarta Transactions, Jakarta Servlet, Jakarta Faces, Jakarta Messaging, y más. Esto permite a los desarrolladores crear aplicaciones empresariales que son portátiles y escalables, y que se integran con las tecnologías legacy. La integración Glassfish permite a los usuarios monitorizar varios módulos diferentes dentro de Glassfish, como aplicaciones, servicios HTTP, JMS, métricas de máquina virtual Java (JVM), redes y servicios de transacción. + + +## Agent +Para solicitar asistencia o funciones, ponte en contacto con RapDev.io a través de los siguientes canales: + +- Soporte: [support@rapdev.io][6] +- Ventas: [sales@rapdev.io][7] +- Chat: [rapdev.io][5] +- Teléfono: 855-857-0222 + +--- +Hecho con ❤️ en Boston + +*¿Esta no es la integración que estás buscando? ¿No encuentras una función esencial para tu organización? ¡Envíanos una [nota][6] a RapDev y la crearemos!* + +[1]: https://docs.oracle.com/cd/E19355-01/820-1072/6ncp48v4e/index.html +[3]: https://docs.datadoghq.com/es/agent/guide/agent-commands/#agent-status-and-information +[4]: https://docs.datadoghq.com/es/agent/guide/agent-commands/?tab=agentv6v7#restart-the-agent +[5]: https://www.rapdev.io/#Get-in-touch +[6]: mailto:support@rapdev.io +[7]: mailto:sales@rapdev.io +--- +Esta aplicación está disponible a través del Marketplace Datadog y cuenta con el respaldo de un socio tecnológico de Datadog. Para utilizarla, adquiere esta aplicación en el Marketplace. \ No newline at end of file diff --git a/content/es/integrations/reflectiz.md b/content/es/integrations/reflectiz.md new file mode 100644 index 00000000000..2edc53c56d1 --- /dev/null +++ b/content/es/integrations/reflectiz.md @@ -0,0 +1,197 @@ +--- +app_id: reflectiz +app_uuid: 79767e7d-f5db-4528-aeea-1cd68649ccd8 +assets: + dashboards: + web exposure alerts dashboard: assets/dashboards/WebExposureAlertsDashboard.json + web exposure rating dashboard: assets/dashboards/WebExposureRatingDashboard.json + integration: + auto_install: true + configuration: {} + events: + creates_events: false + metrics: + check: reflectiz.v1.rating.overall + metadata_path: metadata.csv + prefix: reflectiz. + service_checks: + metadata_path: assets/service_checks.json + source_type_id: 5421 + source_type_name: reflectiz + oauth: assets/oauth_clients.json +author: + contact_link: https://www.reflectiz.com/ + homepage: https://www.reflectiz.com/ + name: Reflectiz + sales_email: inbound@reflectiz.com + support_email: support@reflectiz.com +categories: +- seguridad +custom_kind: integración +dependencies: +- https://github.com/DataDog/integrations-extras/blob/master/reflectiz/README.md +display_on_public_website: true +draft: false +git_integration_title: reflectiz +integration_id: reflectiz +integration_title: Reflectiz +integration_version: '' +is_public: true +manifest_version: 2.0.0 +name: reflectiz +public_title: Reflectiz +short_description: La integración Reflectiz proporciona información sobre la seguridad + de tu sitio web. +supported_os: +- linux +- windows +- macos +tile: + changelog: CHANGELOG.md + classifier_tags: + - Supported OS::Linux + - Supported OS::Windows + - Supported OS::macOS + - Category::Security + - Submitted Data Type::Metrics + - Submitted Data Type::Logs + - Offering::Integration + configuration: README.md#Configuración + description: La integración Reflectiz proporciona información sobre la seguridad + de tu sitio web. + media: + - caption: Dashboard de calificación de la exposición web + image_url: images/dashboard_2.png + media_type: imagen + - caption: Dashboard de alertas de exposición web + image_url: images/dashboard_1.png + media_type: imagen + overview: README.md#Información general + support: README.md#Soporte + title: Reflectiz + uninstallation: README.md#Desinstalación +--- + + +## Información general + +La innovadora solución agentless de Reflectiz monitoriza y detecta vulnerabilidades en todas las aplicaciones de primeras, terceras y cuartas parte de tu ecosistema en línea, lo que te proporciona una visibilidad completa de tu exposición al riesgo web. Prioriza y corrige eficazmente los riesgos y los problemas de cumplimiento mediante tu sistema propietario de calificación de la exposición. + +Esta integración mejora la seguridad de tu sitio web mediante la introducción de la **Calificación de la exposición web** y las **Alertas de exposición web** en Datadog, lo que permite la evaluación proactiva y la mitigación de los riesgos de seguridad. + +La integración ofrece una combinación de logs y métricas para apoyar tanto las calificaciones como las alertas. + +### Funciones + +- **Calificación de la exposición web**: Obtén una calificación de seguridad clara y completa de los componentes de tu sitio web. La función Reflectiz Rating proporciona una evaluación rápida del estado de seguridad de tu sitio web, lo que te ayuda a comprender dónde te encuentras y qué mejoras son necesarias. +- **Alertas de exposición web**: Mantente al tanto en tiempo real de los posibles riesgos y vulnerabilidades. La integración genera alertas detalladas que te notifican de los errores de configuración, de las actividades sospechosas y de las amenazas emergentes para que puedas tomar medidas inmediatas. +- **Integración continua con Datadog**: Consulta tanto la clasificación como las alertas de riesgo de Reflectiz directamente en tu entorno Datadog. Esto te permitirá monitorizar la seguridad de tu sitio web junto con las métricas de rendimiento e infraestructura, todo en una plataforma centralizada. +- **Priorizar lo que más importa**: Con la calificación y las alertas procesables de Reflectiz, puedes identificar y priorizar fácilmente los riesgos más críticos, centrando tus esfuerzos en las áreas que más atención necesitan. + +## Configuración + +### En Datadog + +1. Ve a la pestaña **integraciones** en Datadog. +2. Busca el cuadro **Reflectiz** y haz clic en **Install Integration** (Instalar integración). +3. Haz clic en **Connect Accounts** (Conectar cuentas) para iniciar el proceso de autorización. Se te redirigirá a la plataforma Reflectiz. + +### En la plataforma Reflectiz + +1. Introduce tus credenciales de Reflectiz para acceder a tu cuenta. +2. Elige la licencia adecuada para la integración. + +Una vez completado este flujo, los datos de alertas de exposición web y de calificación estarán disponibles en los dashboards incluidos. + +### Vincular sitios de Reflectiz con hosts + +Para que tus datos sean más eficaces y significativos, puedes vincular cada uno de tus sitios de Reflectiz a un host en Datadog: + +1. Abre la [lista de hosts][1] de Datadog. +2. Selecciona un host. +3. Añade una etiqueta (tag) en la sección **Etiqueta de usuario**. La etiqueta debe seguir el formato `reflectiz.host.site:{domain}`, donde `domain` es el sitio de Reflectiz que quieres vincular en el formato `example.com`.
Si quieres añadir sitios adicionales a un único host, puedes añadir más etiquetas siguiendo el formato `reflectiz.host.site.1:{domain}`, `reflectiz.host.site.2:{domain}`, y así sucesivamente. + +Una vez completados estos pasos, todas las métricas y logs se etiquetan con el correspondiente host. + + +## Desinstalación + + + +1. En Datadog, ve a **Integraciones** > selecciona el cuadro de Reflectiz > haz clic en **Uninstall Integration** (Desinstalar integración). +2. Además, asegúrate de que todas las claves de API asociadas a esta integración se hayan desactivado buscando el nombre de la integración en la [página Claves de API][2]. + + +## Datos recopilados + +### Logs + +La integración Reflectiz envía diferentes tipos de logs a Datadog, cada uno asociado a un servicio específico. Estos logs proporcionan información detallada sobre los análisis, los riesgos de las aplicaciones y los riesgos de los dominios, lo que te ayuda a monitorizar la seguridad de tu sitio web de forma eficaz. + +#### Logs de análisis +- **Nombre de servicio del log**: `reflectiz.v1.scan` +- **Etiquetas**: + - `reflectiz.site`: El sitio analizado. + - `reflectiz.scan`: El identificador del análisis. + - `reflectiz.scan.number`: El identificador del análisis como un número entero (para más opciones de filtrado). + +Estos logs se activan cada vez que se ejecuta un análisis en un sitio web. + +#### Logs de alertas +- **Nombre de servicio del log**: `reflectiz.v1.alerts` +- **Etiquetas**: + - `reflectiz.site`: El sitio analizado. + - `reflectiz.scan`: El identificador del análisis. + - `reflectiz.scan.number`: El identificador del análisis como un número entero (para más opciones de filtrado). + - `reflectiz.app`: La aplicación relacionada con la alerta, si está presente. + - `reflectiz.domain`: El dominio relacionado con la alerta, si está presente. + +En estos logs se resaltan las alertas activadas durante el análisis del sitio. + + +#### Clasificación de logs de análisis +- **Nombre de servicio del log**: `reflectiz.v1.scan` +- **Etiquetas**: + - `reflectiz.site`: El sitio analizado. + - `reflectiz.scan`: El identificador del análisis. + - `reflectiz.scan.number`: El identificador del análisis como un número entero (para más opciones de filtrado). + +Estos logs se activan cada vez que se ejecuta un análisis en un sitio web y se calculan las calificaciones, y pueden ser útiles a la hora de filtrar los datos de calificación. + +#### Logs de riesgos de la aplicación +- **Nombre de servicio del log**: `reflectiz.v1.rating.app.risks` +- **Etiquetas**: + - `reflectiz.site`: El sitio analizado. + - `reflectiz.scan`: El identificador del análisis. + - `reflectiz.scan.number`: El identificador del análisis como un número entero (para más opciones de filtrado). + - `reflectiz.app`: La aplicación analizada. + +Estos logs destacan los riesgos relacionados con aplicaciones específicas de tu sitio, lo que te ayuda a detectar vulnerabilidades. + +#### Logs de riesgos de dominios +- **Nombre de servicio del log**: `reflectiz.v1.rating.domain.risks` +- **Etiquetas**: + - `reflectiz.site`: El sitio analizado. + - `reflectiz.scan`: El identificador del análisis. + - `reflectiz.scan.number`: El identificador del análisis como un número entero (para más opciones de filtrado). + - `reflectiz.domain`: El dominio analizado. + +Estos logs se centran en los riesgos relacionados con los dominios, proporcionando una imagen clara de las vulnerabilidades específicas de cada dominio. + + +### Métricas +Para ver la lista de métricas proporcionadas por esta integración, consulta [metadata.csv][3]. + +## Asistencia +Para solicitar asistencia o funciones, ponte en contacto con Reflectiz a través de los siguientes canales: + +- Soporte: [support@reflectiz.com][4] +- Ventas: [inbound@reflectiz.com][5] +- Página web: [reflectiz.com][6] + +[1]: https://app.datadoghq.com/infrastructure +[2]: https://app.datadoghq.com/organization-settings/api-keys?filter=Reflectiz +[3]: https://github.com/DataDog/integrations-extras/blob/master/reflectiz/metadata.csv +[4]: mailto:support@reflectiz.com +[5]: mailto:inbound@reflectiz.com +[6]: https://reflectiz.com \ No newline at end of file diff --git a/content/es/integrations/servicenow.md b/content/es/integrations/servicenow.md index ee8784960ae..a1744472c24 100644 --- a/content/es/integrations/servicenow.md +++ b/content/es/integrations/servicenow.md @@ -1,109 +1,244 @@ --- -categories: -- alerting -- incidents -- issue tracking -- notifications -custom_kind: integración -dependencies: [] -description: Haz que tus alertas de Datadog generen y actualicen automáticamente los - tiques. -doc_link: https://docs.datadoghq.com/integrations/servicenow/ -draft: false -further_reading: -- link: https://www.datadoghq.com/blog/create-servicenow-tickets-from-datadog-alerts/ - tag: Blog - text: Crear tiques de ServiceNow a partir de alertas de Datadog -- link: https://www.datadoghq.com/blog/servicenow-cmdb-it-management-datadog/ - tag: Blog - text: Gestiona tu infraestructura con ServiceNow CMDB y Datadog -git_integration_title: servicenow -has_logo: true -integration_id: '' -integration_title: ServiceNow -integration_version: '' -is_public: true -manifest_version: '1.0' -name: servicenow -public_title: Integración de Datadog y ServiceNow -short_description: Haz que tus alertas de Datadog generen y actualicen automáticamente - los tiques. -team: integraciones web -version: '1.0' +"app_id": "servicenow" +"app_uuid": "5bd1d6c7-614b-4c49-95ad-d200041735c3" +"assets": + "integration": + "auto_install": falso + "events": + "creates_events": falso + "service_checks": + "metadata_path": "assets/service_checks.json" + "source_type_id": !!int "105" + "source_type_name": "ServiceNow" +"author": + "homepage": "https://www.datadoghq.com" + "name": "Datadog" + "sales_email": "info@datadoghq.com" + "support_email": "help@datadoghq.com" +"categories": +- "alerting" +- "incidents" +- "notifications" +- "network" +- "collaboration" +- "security" +- "event management" +"custom_kind": "integración" +"dependencies": [] +"display_on_public_website": verdadero +"draft": falso +"git_integration_title": "servicenow" +"integration_id": "servicenow" +"integration_title": "ServiceNow" +"integration_version": "" +"is_public": verdadero +"manifest_version": "2.0.0" +"name": "servicenow" +"public_title": "ServiceNow" +"short_description": "Crea incidentes de ServiceNow, rellena los CI de la CMDB y enriquece recursos, logs y eventos de Datadog con datos de la CMDB" +"supported_os": [] +"tile": + "changelog": "CHANGELOG.md" + "classifier_tags": + - "Category::Alertas" + - "Category::Incidents" + - "Category::Notifications" + - "Category::Network" + - "Category::Collaboration" + - "Category::Security" + - "Category::Event Management" + - "Offering::Integration" + "configuration": "README.md#Setup" + "description": "Crea incidentes de ServiceNow, rellena los CI de la CMDB y enriquece recursos, logs y eventos de Datadog con datos de la CMDB" + "media": + - "caption": "Enriquece tu host Datadog con metadatos de la CMDB" + "image_url": "images/carousel_1.png" + "media_type": "imagen" + - "caption": "Enriquece tus dispositivos de red Datadog con metadatos de la CMDB" + "image_url": "images/carousel_2.png" + "media_type": "imagen" + - "caption": "Enriquece logs y eventos con tablas de referencia de la CMDB" + "image_url": "images/carousel_3.png" + "media_type": "imagen" + - "caption": "Crea tickets de ServiceNow a partir de alertas de Datadog" + "image_url": "images/carousel_4.png" + "media_type": "imagen" + - "caption": "Crea incidentes de ServiceNow con Datadog Incident Management" + "image_url": "images/carousel_5.png" + "media_type": "imagen" + "overview": "README.md#Overview" + "resources": + - "resource_type": "blog" + "url": "https://www.datadoghq.com/blog/servicenow-cmdb-it-management-datadog/" + - "resource_type": "blog" + "url": "https://www.datadoghq.com/blog/create-servicenow-tickets-from-datadog-alerts/" + - "resource_type": "documentación" + "url": "https://docs.datadoghq.com/integrations/servicenow/" + "support": "README.md#Support" + "title": "ServiceNow" --- - + + ## Información general -ServiceNow es una plataforma de servicio de gestión de TI para el registro, seguimiento y gestión de los procesos de TI de nivel empresarial de una empresa en una única localización. +ServiceNow es una plataforma de gestión de servicios de TI para el registro, el seguimiento y la gestión de los procesos de TI de nivel empresarial de una compañía en una única localización. +La integración Datadog ServiceNow es una integración bidireccional que te permite: -La integración de Datadog y ServiceNow es una integración bidireccional que te permite: +ITOM/ITSM +- Enviar eventos generados en Datadog a tickets de ServiceNow, así como gestionar el flujo de trabajo de resolución desde dentro de Datadog a través de la gestión de servicios de TI (ITSM) y la gestión de operaciones de TI (ITOM). -- Envía eventos generados por Datadog a tiques de ServiceNow, además de gestionar el flujo de trabajo de resolución desde Datadog hasta la gestión de servicios de TI (ITSM) y gestión de operaciones de TI (ITOM) -- Utiliza Datadog como mecanismo de detección para elementos de configuración (CI) de ServiceNow Configuration Management Database (CMDB) con el conector de gráficos de servicio. -- Mejora la información específica del negocio almacenada como CIs en ServiceNow CMDB con tu información de hosts, servicios y dispositivos de Datadog, lo que te permite comprender mejor el uso de infraestructura, acelerar la solución de problemas y maximizar el uso de recursos. +Conector de gráficos de servicio +- Utilizar Datadog como mecanismo de detección de elementos de configuración (CI) de la Configuration Management Database (CMDB) de ServiceNow con el conector de gráficos de servicio de Datadog. -Datadog se integra con las siguientes herramientas de ServiceNow: +Enriquecimiento de la CMDB +- Enriquecer la información específica de la empresa almacenada en forma de CI en la CMDB de ServiceNow con tu información de hosts, servicios y dispositivos de Datadog, lo que te permite comprender mejor el uso de la infraestructura, acelerar la resolución de problemas y maximizar el uso de recursos. +- Crear tablas de referencia de Datadog para enriquecer automáticamente logs y eventos con campos adicionales de tus CI de ServiceNow. Las tablas de referencia te permiten asignar conjuntos de campos de valor a una clave principal (como nombre de host) y añadir automáticamente estos campos a todos los logs o eventos que contengan la clave especificada. -- ITOM -- ITSM -- CMDB **Nota**: la integración de Datadog y ServiceNow es compatible con [versiones de ServiceNow][1] que no figuran como finalizadas. -### Configurar el cuadro de ServiceNow en Datadog +### Instalar la aplicación + +La aplicación puede instalarse de dos maneras: + +1. Instala la última versión de la aplicación `ITOM/ITSM integración for Datadog` desde la tienda de ServiceNow. + +![Integración ITSM/ITOM Tienda de aplicaciones ServiceNow][2] + +2. Descarga el último conjunto de actualización: [`Datadog-Snow_Update_Set_v2.7.2.xml`][3] y cárgalo en tu instancia ServiceNow manualmente. + +**Changelog** +- v2.4.0 >= Sincronización unidireccional con Case Management +- v2.5.0 >= Sincronización bidireccional con Case Management y la tabla ITSM de la integración con Incident Management. Además, la sincronización bidireccional con Case Management sólo es compatible con ITSM de ServiceNow. +- v2.6.0 >= Notificaciones de monitor en formato de plantilla con ITOM/ITSM +- v2.7.0 >= Case Management mejorado con soporte para incidentes creados manualmente, ingesta de alertas correlacionadas y sincronización unidireccional de atributos adicionales. Incident Management admite ahora la sincronización bidireccional. Por último, una corrección de errores para el estado de resolución del monitor. + +**Instalación del conjunto de actualización en ServiceNow:** + +**Nota**: Si tienes modificaciones personalizadas en el mapa de transformación, se te informará de cualquier conflicto y podrás elegir los cambios adecuados en función de tus necesidades. Antes de cualquier actualización, se recomienda hacer una copia de seguridad de las personalizaciones existentes del mapa de transformación. + +1. Importa manualmente el archivo XML del conjunto de actualización que descargaste, a tu instancia ServiceNow. +2. Una vez importado el archivo XML, el conjunto de actualización debería mostrar un estado `Loaded`. Haz clic en el nombre del conjunto de actualización para obtener una vista previa de los cambios. +3. Después de acceder a la vista previa del conjunto de actualización para asegurarte de que no hay errores, selecciona **Commit Update Set** (Confirmar el conjunto de actualización) para fusionar la aplicación en tu sistema. + +Una vez instalada la aplicación, busca **Datadog** en el menú de navegación de ServiceNow para acceder a todas las tablas y a la página de configuración para configurar la sincronización bidireccional. + +- `Configuration` +- `Datadog Incidents ITSM` +- `Cases ITOM`, anteriormente `Datadog Cases ITOM` +- `Cases ITSM`, anteriormente `Datadog Cases ITSM` +- `legacy Monitors ITOM`, anteriormente `Datadog Monitors ITOM` +- `legacy Monitors ITSM`, anteriormente `Datadog Monitors ITSM` +- `Templated Monitors ITOM` +- `Templated Monitors ITSM` + +### Crea una cuenta de ServiceNow con los permisos correctos para Datadog + +Para utilizar la integración, crea un usuario de ServiceNow (por ejemplo, con el nombre de usuario "datadog" o "integración_datadog") y asígnale los siguientes roles: + +- `x_datad_datadog.user` y +- `import_set_loader` y +- `import_transformer` + +#### Resolución de incidentes + +
La sincronización bidireccional con Case Management sólo es compatible con ITSM de ServiceNow.
+ +Si quieres sincronizar el estado del incidente para su resolución, el usuario de ServiceNow necesita tener uno de los siguientes roles: + +- `ITIL` o +- `list_updater` o +- `sn_incident_write` + +#### Enviar notificaciones de monitor directamente a las tablas Incidentes y Eventos + +Si deseas enviar notificaciones directamente a la tabla **Event** (Evento) del módulo de ITOM o a la tabla **Incident** (Incidentes) del módulo de ITSM, el usuario de ServiceNow necesita uno de los siguientes roles: + +- `ITIL` para ITSM +- `evt_mgmt_integration` para ITOM + +**Nota**: Las actualizaciones manuales realizadas a un ticket en ServiceNow por este usuario de ServiceNow ("Datadog" o "datadog_integration") no se sincronizan con Datadog. -1. Navega en Datadog hasta el [cuadro de integración de ServiceNow][2] en la página Integraciones. +## Configurar el cuadro de ServiceNow en Datadog + +1. En Datadog, ve al [cuadro de la integración ServiceNow][4] en la página Integraciones. 2. Haz clic en **Add New Instance** (Añadir nueva instancia). 3. Añade el nombre de la instancia, que es el subdominio de tu dominio de ServiceNow: `.service-now.com`. 4. Añade el nombre de usuario y la contraseña de tu instancia de ServiceNow. **Nota**: Puedes crear un usuario limitado en ServiceNow sólo para Datadog. -{{< img src="integrations/servicenow/servicenow-configuration-new-instance-12-23.png" alt="nueva instancia de la integración de servicenow" >}} +![nueva instancia de la integración servicenow][5] ## Configuración de CMDB -### Conector gráfico de servicio para Datadog +### Conector de gráficos de servicio para Datadog -[El conector de gráfico de servicio para la observabilidad de Datadog][3] puede rellenar automáticamente el servidor y los elementos de configuración (CI) de la base de datos en la CMDB para nuevos recursos detectados por Datadog. El conector de gráfico de servicio está disponible a través del [almacén] de ServiceNow[4]. +El [conector de gráficos de servicio de observabilidad - Datadog][6] puede rellenar automáticamente los elementos de configuración (CI) del servidor y la base de datos en la CMDB con los nuevos recursos detectados por Datadog. El conector de gráficos de servicios está disponible a través de la [tienda][7] de ServiceNow. -Para la configuración, sigue las instrucciones de configuración guiada del Conector de gráfico de servicio. +Para la configuración, sigue las instrucciones de configuración guiada del conector de gráficos de servicio. Tipos de CI compatibles: - Servidor - Amazon RDS -Las notas siguientes sólo se aplican si ya has configurado la integración para ServiceNow ITOM/ITSM: +Las notas siguientes sólo se aplican si ya has configurado la integración para la ITOM/ITSM ServiceNow: + +- El conector de gráficos de servicio no utiliza los valores `Target table` y `Custom table` del cuadro de configuración. Puedes guardar la integración con los valores por defecto de la tabla de destino. +- El mismo usuario de ITOM/ITSM puede utilizarse para el conector de gráficos de servicio otorgando a este usuario el rol de `cmdb_import_api_admin`, tal y como se describe en las instrucciones de configuración guiada del conector de gráficos de servicio. + +### Personalización de los campos CI + +En el cuadro de la integración [Datadog ServiceNow][4], haz clic en la pestaña **Configurar** y luego en la pestaña **Conector de gráficos de servicio**. Expande la sección **Personalizar campos CI**. Están disponibles las siguientes opciones: + +Tipo CI +: El tipo de CI al que se aplica este campo. + +Campo ServiceNow +: El campo en ServiceNow al que aplicarlo. + +Etiqueta (tag) Datadog +: La etiqueta para enviar desde recursos de Datadog. (Si se encuentran varias etiquetas con el mismo nombre, se separarán mediante comas). + +Por ejemplo, para añadir un campo CI con un tipo CI de `host` y un campo `host Name` de ServiceNow, añade cualquier atributo de etiqueta de _host_ al campo `Datadog etiquetar`. + +**Nota**: El campo `Datadog etiquetar` debe ser una etiqueta de _host_ que exista en hosts de Datadog, _no_ una etiqueta de atributo en un host. + +![Captura de pantalla del cuadro de la integración ServiceNow que muestra la pestaña Conector de gráficos de servicio][8] -- El Conector de gráfico de servicio no utiliza los valores `Target table` y `Custom table` del cuadro de configuración. Puedes guardar la integración con los valores por defecto de la tabla de destino. -- El mismo usuario ITOM/ITSM puede utilizarse para el Conector de gráfico de servicio otorgando a este usuario el rol de cmdb_import_api_admin tal y como se describe en las instrucciones de configuración guiada del Conector de gráfico de servicio. ### Etiquetado de host Mejora tus hosts de Datadog con metadatos de ServiceNow CMDB a través del etiquetado de host. -Para permitir la ingesta de etiquetas (tags) de host: +Para permitir la ingesta de etiquetas de host: -1. Configura una consulta del [Query Builder][5] en tu instancia de ServiceNow que devuelva todos los hosts que deseas etiquetar en Datadog. +1. Configura una consulta de [Query Builder][9] en tu instancia ServiceNow, que devuelva todos los hosts que quieres etiquetar en Datadog. 1. Programa la consulta para que se ejecute en el intervalo de actualización que desees. -1. Una vez guardada la consulta en ServiceNow, ve al cuadro de integración de ServiceNow de Datadog. Selecciona **Host Tagging** (Etiquetado de host) en la pestaña **CMDB Enrichment** (Mejora de la CMBD). +1. Una vez guardada la consulta en ServiceNow, ve al cuadro de la integración ServiceNow de Datadog y selecciona **Host Tagging* (Etiquetado de hosts) en la pestaña **Enriquecimiento de la CMDB** en **Configurar**. 1. En **Query Configuration** (Configuración de consulta), haz clic en el botón **Add New Query** (Añadir nueva consulta). 1. Selecciona la **ServiceNow Instance** (Instancia de ServiceNow) y la **Query** (Consulta) de los menús desplegables. 1. Selecciona un valor para la columna **Hostname** (Nombre de host) que asigne el campo de nombre de host del CI raíz de tu consulta al campo de nombre de host de Datadog. 1. Selecciona cualquier reasignación de nombre de campo opcional con **Column Name Maps** (Asignaciones de nombre de columna). -1. Haz clic en **Guardar**. +1. Haz clic en **Save** (Guardar). Espera que las etiquetas de host se rellenen en Datadog poco después de las ejecuciones programadas de tus consultas. -{{< img src="integrations/servicenow/host-tags.jpg" alt="Captura de pantalla de la pestaña Información del host que muestra las etiquetas de host de ServiceNow" >}} +![Captura de pantalla de la pestaña Información de host, que muestra etiquetas de host de ServiceNow][10] + +Monitoriza el proceso de ingesta en el [Explorador de eventos][11] de Datadog delimitando tu consulta de búsqueda con `source:servicenow`. -Monitoriza el proceso de ingesta en el Datadog [Events Explorer][6] mediante el alcance de tu consulta de búsqueda en `source:servicenow`. +![Captura de pantalla de una ingesta en ejecución][12] -{{< img src="integrations/servicenow/ingestion-progress.jpg" alt="Captura de pantalla que muestra una ingesta en ejecución" >}} +#### Etiquetado adicional de campos que no son CMDB -#### Solucionar problemas +Algunas tablas de ServiceNow no son CMDB y no se pueden seleccionar en el Query Builder. Para enriquecer hosts de Datadog con etiquetas de estas tablas, haz clic en **Additional Fields** (Campos adicionales) en el cuadro de configuración y configura una consulta de etiquetado de hosts como se ha descrito anteriormente, proporcionando una ruta completo con recorrido por puntos. Las rutas deben empezar con el primer nombre de atributo de la tabla raíz configurada para la consulta. Por ejemplo, si se introduce `vendor.manufacturer.name` para una consulta con CI raíz `cmdb_ci_server`, se rellenarán los hosts con la etiqueta `cmdb_ci_server_manufacturer_name`. + +**Nota**: Sólo las rutas completas con recorrido por puntos compatibles con la API de tablas de ServiceNow están disponibles para su suo en campos adicionales. Es posible que las relaciones de muchos a muchos no funcionen de forma predefinida y requieran una configuración adicional. + +#### Solucionar problemas de etiquetado en hosts Para que el etiquetado de host funcione correctamente, asegúrate de que lo siguiente es cierto en tu sistema: @@ -121,26 +256,26 @@ Para que el etiquetado de host funcione correctamente, asegúrate de que lo sigu Mejora tu catálogo de servicios de Datadog con metadatos de CMDB de ServiceNow a través de etiquetado de servicios. -Con el etiquetado de servicio, puedes rellenar tu [Catálogo de servicios][7] de Datadog con servicios de tu CMDB de ServiceNow. +Con el etiquetado de servicios, puedes rellenar tu [Catálogo de servicios][13] de Datadog con servicios de tu CMDB de ServiceNow. -#### Configuración +## Configuración Para permitir la ingesta de datos de servicio: -1. Configura una consulta del [Query Builder][5] en tu instancia de ServiceNow que devuelva todos los servicios con los que deseas mejorar el Catálogo de servicios. +1. Configura una consulta de [Query Builder][9] en tu instancia ServiceNow que devuelva todos los servicios con los que quieres enriquecer el Catálogo de servicios. 1. Programa la consulta para que se ejecute en el intervalo de actualización que desees. -1. Una vez guardada la consulta en ServiceNow, ve al cuadro de integración de ServiceNow de Datadog. Selecciona **Service Tagging** (Etiquetado de servicio) en la pestaña **CMDB Enrichment** (Mejora de la CMBD). +1. Una vez guardada la consulta en ServiceNow, ve al cuadro de la integración ServiceNow de Datadog y selecciona **Service Tagging** (Etiquetado de hosts) en la pestaña **Enriquecimiento de la CMDB** en **Configurar**. 1. En **Query Configuration** (Configuración de consulta), haz clic en el botón **Add New Query** (Añadir nueva consulta). 1. Selecciona la **ServiceNow Instance** (Instancia de ServiceNow) y la **Query** (Consulta) de los menús desplegables. 1. Selecciona un valor del menú desplegable **Service Name Column** (Nombre de columna de servicio). El valor coincide con el nombre de la columna en el CI del servicio raíz de tu consulta y rellena el nombre de servicio en el catálogo de servicios. -1. Configurar asignaciones de esquema para introducir metadatos adicionales sobre tu servicio en el catálogo de servicios. Consulta [Definiciones de servicio][8] para obtener más información. Para que Datadog acepte la ingesta, cada campo de la asignación debe ser del tipo correcto para asignarse al esquema de definición de servicio del catálogo de servicios. -1. Haz clic en **Guardar**. +1. Configurar asignaciones de esquema para introducir metadatos adicionales sobre tu servicio en el Catálogo de servicios. Consulta [Definiciones de servicio][14] para obtener más información. Para que Datadog acepte la ingesta, cada campo de la asignación debe ser del tipo correcto para asignarse al esquema de definición de servicio del Catálogo de servicios. +1. Haz clic en **Save** (Guardar). -Espera ver los datos de servicio rellenados en Datadog unos minutos después de las ejecuciones programadas de tus consultas. Para ver los errores de ingesta, ve a [Events Explorer][6] y busca eventos con `source:servicenow`. +Espera ver los datos de servicio rellenados en Datadog unos minutos después de las ejecuciones programadas de tus consultas. Para ver los errores de ingesta, ve al [Explorador de eventos][11] y busca eventos con `source:servicenow`. -{{< img src="integrations/servicenow/service-metadata.jpg" alt="Captura de pantalla del panel de Configuración del servicio que muestra los metadatos cargados de ServiceNow" >}} +![Captura de pantalla del panel de configuración de servicios, que muestra los metadatos rellenados a partir de ServiceNow][15] -#### Solucionar problemas +#### Solucionar problemas de configuración Para que la ingesta de servicio funcione correctamente, asegúrate de que en tu sistema se cumple lo siguiente: @@ -152,27 +287,27 @@ Para que la ingesta de servicio funcione correctamente, asegúrate de que en tu Añade etiquetas a tus dispositivos de red en Datadog poblados con datos de tu ServiceNow CMDB. -Con el etiquetado de dispositivo, puedes mejorar dinámicamente dispositivos de red monitorizados por Datadog [Network Device Monitoring][9] con metadatos de dispositivos de tu CMDB de ServiceNow. +Con el etiquetado de dispositivos, puedes enriquecer dinámicamente dispositivos de red monitorizados por Datadog [Network Device Monitoring][16] con metadatos de dispositivos de tu CMDB de ServiceNow. Para permitir la ingesta de etiquetas de dispositivo: -1. Configura una consulta de [Query Builder][5] en tu instancia de ServiceNow. Asegúrate de que devuelve la dirección IP del dispositivo. +1. Configura una consulta de [Query Builder][9] en tu instancia ServiceNow. Asegúrate de que devuelve la dirección IP del dispositivo. 1. Programa la consulta para que se ejecute en el intervalo de actualización que desees. 1. Si utilizas un espacio de nombres de IP personalizada en Datadog, deberás añadirlo a ServiceNow. Crea una columna en el CI del dispositivo de red llamada **u_dd_device_namespace**, poblada por el espacio de nombres correspondiente para cada dispositivo. Si esta columna no está presente, se utiliza el espacio de nombres por defecto. -1. Una vez guardada la consulta en ServiceNow, ve al cuadro de integración de ServiceNow de Datadog. Selecciona **Device Tagging** (Etiquetado de dispositivo) en la pestaña **CMDB Enrichment** (Mejora de la CMBD). +1. Una vez guardada la consulta en ServiceNow, ve al cuadro de la integración ServiceNow de Datadog y selecciona **Device Tagging** (Etiquetado de hosts) en la pestaña **Enriquecimiento de la CMDB** en **Configurar**. 1. En **Query Configuration** (Configuración de consulta), haz clic en el botón **Add New Query** (Añadir nueva consulta). 1. Selecciona la **ServiceNow Instance** (Instancia de ServiceNow) y la **Query** (Consulta) de los menús desplegables. 1. Selecciona la columna IP Address (Dirección IP) que asigna el campo IP Address (Dirección IP) de tu consulta al campo IP Address (Dirección IP) de Datadog. 1. Selecciona cualquier cambio de nombre de campo opcional. -1. Haz clic en **Guardar**. +1. Haz clic en **Save** (Guardar). Puede esperar ver las etiquetas de dispositivo de red pobladas en Datadog unos minutos después de las ejecuciones programadas de tus consultas. Cualquier error de ingesta se notifica a través de eventos visibles en tu Events Explorer. -Monitoriza el proceso de ingesta en el [Events Explorer][6] de Datadog mediante el alcance de tu consulta de búsqueda en `source:servicenow`. +Monitoriza el proceso de ingesta en el [Explorador de eventos][11] de Datadog delimitando tu consulta de búsqueda con `source:servicenow`. -{{< img src="integrations/servicenow/ingestion-progress.jpg" alt="Captura de pantalla que muestra una ingesta en ejecución" >}} +![Captura de pantalla de una ingesta en ejecución][12] -#### Solucionar problemas +#### Solucionar problemas de etiquetado en dispositivos de red - Verifica que el usuario que creó o está ejecutando la consulta del querybuilder es el mismo usuario en tu configuración de Datadog y tiene el rol `cmdb_query_builder_read`. - Comprueba que la consulta no devuelva más resultados de los que permite la configuración de `glide.cmdb.query.max_results_limit` en Servicenow. @@ -181,25 +316,25 @@ Monitoriza el proceso de ingesta en el [Events Explorer][6] de Datadog mediante #### Limitaciones - La ingesta está limitada a 100000 hosts por ejecución. -- El etiquetado de dispositivo de red se limita a [dispositivos SNMP][10]. +- El etiquetado de dispositivos de red se limita a [dispositivos SNMP][17]. - Las actualizaciones de los dispositivos se limitan a unos pocos miles por hora. Ten en cuenta este límite al elegir el intervalo de programación. ### Tablas de referencia -Utiliza [Tablas de referencia][11] para mejorar logs y eventos automáticamente con campos adicionales de tus CI de ServiceNow. Con las tablas de referencia, puedes asignar conjuntos de campos de valor a una clave principal, como un nombre de host, y añadir automáticamente estos campos a todos los logs o eventos que contengan la clave especificada. +Utiliza [tablas de referencia][18] para enriquecer logs y eventos automáticamente con campos adicionales de tus CI de ServiceNow. Con las tablas de referencia, puedes asignar conjuntos de campos de valor a una clave principal, como un nombre de host, y añadir automáticamente estos campos a todos los logs o eventos que contengan la clave especificada. Para permitir la ingesta de Tablas de referencia: -1. Configurar una consulta de [Query Builder][12] en tu instancia de ServiceNow. +1. Configura una consulta de [Query Builder][19] en tu instancia de ServiceNow. 1. Programa la consulta para que se ejecute en el intervalo de actualización que desees. 1. Guarda la consulta. 1. Selecciona **Add New Query** (Añadir nueva consulta) y elige tu consulta en el menú desplegable. 1. En el menú desplegable de clave primaria, selecciona el nombre de la columna que deseas utilizar como clave primaria. - 1. Opcionalmente, crea un [Pipeline de procesamiento][13] con esta clave primaria para mejorar y correlacionar logs y eventos. + 1. Opcionalmente, crea un [pipeline de procesamiento][20] con esta clave primaria para enriquecer y correlacionar logs y eventos. 1. Introduce un nombre para tu tabla de referencia. -1. Haz clic en **Guardar**. +1. Haz clic en **Save** (Guardar). -La [Tabla de referencia][11] se rellenará con los datos de la consulta poco después de guardarla. +La [tabla de referencia][18] se rellenará con los datos de la consulta poco después de guardarla. #### Advertencias y restricciones @@ -207,112 +342,43 @@ La [Tabla de referencia][11] se rellenará con los datos de la consulta poco des - No es posible eliminar ni actualizar el esquema de las tablas existentes. ## Configuración de ITOM e ITSM - -{{% site-region region="gov,ap1" %}} - +{{% site-region region="gov" %}}
-La integración de la Gestión de casos no es compatible en el sitio de {{< region-param key=dd_datacenter code="true" >}}. +La integración Case Management no es compatible con el sitio {{< region-param key=dd_datacenter code="true" >}}.
{{% /site-region %}} {{% site-region region="gov" %}}
-La Gestión de incidencias no es compatible en el sitio de {{< region-param key=dd_datacenter code="true" >}}. +La integración Incident Management no es compatible con el sitio {{< region-param key=dd_datacenter code="true" >}}.
{{% /site-region %}} {{% site-region region="gov" %}} -
-Las notificaciones del Monitor predefinido no son compatibles con el sitio de {{< region-param key=dd_datacenter code="true" >}}. +Las notificaciones de monitor en formato de plantilla no son compatibles con el sitio {{< region-param key=dd_datacenter code="true" >}}.
{{% /site-region %}} -Para usar la integración de Datadog para Monitores, Gestión de casos y Gestión de incidencias, sigue estos pasos - -1. [Instala la aplicación](#install-the-app) -2. [Crea una cuenta de ServiceNow Account con los permisos correctos para Datadog](#create-a-servicenow-account-with-correct-permissions-for-datadog) -3. [Configura las aplicaciones de Datadog para usar ITOM e ITSM](#configure-datadog-applications-for-use-with-itom-and-itsm-modules) - -### Instala la aplicación - -La aplicación se puede instalar de dos maneras: - -1. Instala la versión más reciente de la aplicación `ITOM/ITSM Integration for Datadog` en la tienda de ServiceNow. +Para utilizar la integración Datadog en monitores, Case Management e Incident Management, sigue las instrucciones de cada producto: +1. [Configurar las notificaciones de monitor en formato de plantilla de Datadog](#configure-templated-monitor-notifications) +2. [Configurar Datadog Case Management](#configure-case-management) +3. [Configurar Datadog Incident Management](#configure-incident-management) -{{< img src="integrations/servicenow/servicenow-appstore-itxm-integration.png" alt="Integración de ITSM/ITOM en la tienda de aplicaciones de ServiceNow" >}} - -2. Descarga el conjunto de actualización más reciente: [`Datadog-Snow_Update_Set_v2.6.1.xml`][14] y cárgalo en tu instancia de ServiceNow de forma manual. - -**Changelog** - -- v2.4.0 >= Sincronización unidireccional con la Gestión de casos -- v2.5.0 >= Sincronización bidireccional con la Gestión de casos y la tabla de ITSM para la integración con la Gestión de casos. Además, la sincronización bidireccional con la Gestión de casos solo es compatible con ServiceNow ITSM. -- v2.6.0 >= Notificaciones del Monitor predefinido con ITOM/ITSM - -Instalar el conjunto de actualización en ServiceNow: - -1. Importa de forma manual el archivo XML del conjunto de actualización que descargaste en tu instancia de ServiceNow. -2. Una vez importado el archivo, el estado del conjunto de actualización debería ser `Loaded`. Haz clic en el nombre del conjunto de actualización para obtener una vista previa de los cambios. -3. Una vez previsualizado el conjunto de actualización y confirmado que no haya errores, selecciona **Commit Update Set** (Confirmar el conjunto de actualización) para fusionar la aplicación en tu sistema. - -Una vez instalada la aplicación, busca **Datadog** en el menú de navegación de ServiceNow para acceder a todas las tablas y busca la página de Configuración para establecer la sincronización bidireccional. - -- `Configuration` -- `Datadog Incidents ITSM` -- `Cases ITOM`, antes `Datadog Cases ITOM` -- `Cases ITSM`, antes `Datadog Cases ITSM` -- `Legacy Monitors ITOM`, antes `Datadog Monitors ITOM` -- `Legacy Monitors ITSM`, antes `Datadog Monitors ITSM` -- `Templated Monitors ITOM` -- `Templated Monitors ITSM` - -### Crear una cuenta de ServiceNow Account con los permisos correctos para Datadog - -Para usar la integración, crea un usuario de ServiceNow (por ejemplo, nombre de usuario “datadog” o "datadog_integration") y asígnalo a los siguientes roles: - -- `x_datad_datadog.user` y -- `import_set_loader` y -- `import_transformer` - -#### Resolución y cierre de incidencias - -
La sincronización bidireccional con la Gestión de casos solo es compatible con ServiceNow ITSM.
- -Si deseas sincronizar el estado de la incidencia para su resolución, el usuario de ServiceNow necesita uno de los siguientes roles: - -- `ITIL` o -- `list_updater` o -- `sn_incident_write` - -Si deseas sincronizar el estado de la incidencia para su cierre, el usuario de ServiceNow necesita el siguiente rol: - -- `ITIL_admin` - -#### Enviar notificaciones de monitor directamente a las tablas Incidencia y Evento - -Si deseas enviar notificaciones directamente a la tabla **Event** (Evento) del módulo ITOM o a la tabla **Incident** (Incidencia) del módulo ITSM, el usuario de ServiceNow necesita uno de los siguientes roles: - -- `ITIL` para ITSM -- `evt_mgmt_integration` para ITOM - -**Nota**: Las actualizaciones manuales realizadas a un tique en ServiceNow por este usuario de ServiceNow ("Datadog" o "datadog_integration") no se sincronizan con Datadog. - -### Notificaciones del Monitor predefinido +### Configurar notificaciones de monitor en formato de plantilla **Nota**: Se requiere una versión de la aplicación >= v2.6.0 para esta funcionalidad. También debes añadir una instancia en la página Configuración del cuadro de ServiceNow en Datadog antes de completar los pasos siguientes. ##### Configuración de la Asignación de prioridades de instancia -{{< img src="integrations/servicenow/servicenow-priority-mapping.png" alt="Formulario de asignación de prioridades de ServiceNow en el cuadro de integración" >}} +![Formulario de asignación de prioridades de ServiceNow en el cuadro de la integración][21] -Para todos los @-handles predefinidos para una instancia en particular, Datadog ahora asigna automáticamente la prioridad del monitor en Impacto y Urgencia en ServiceNow de acuerdo a esta asignación. +Para todos los @-handles en formato de plantilla para una instancia en particular, Datadog ahora asigna automáticamente la prioridad del monitor a Impacto y Urgencia en ServiceNow de acuerdo a esta asignación. Al desactivar `Use Instance Priority Mapping` se desactiva la configuración Impacto y Urgencia en los registros de ServiceNow. -#### Configurar una plantilla de monitor - -{{< img src="integraciones/servicenow/servicenow-integración-cuadro.png" alt="El nuevo cuadro de integración de new ServiceNow" >}} +##### Configurar una plantilla de monitor +![Nuevo cuadro de la integración ServiceNow][22] Para las notificaciones de monitor que utilizan `@servicenow-` en Datadog, utiliza la nueva interfaz de usuario de creación de plantillas en la pestaña de ITOM/ITSM del cuadro de integración de ServiceNow en Datadog para crear una notificación en ServiceNow. @@ -320,65 +386,91 @@ Para las notificaciones de monitor que utilizan `@servicenow-` en ##### Crea un @handle personalizado de ServiceNow para notificaciones del monitor -{{< img src="integrations/servicenow/servicenow-monitors.png" alt="Instrucciones de notificación del monitor en el nuevo cuadro de integración de ServiceNow" >}} +![Instrucciones para notificaciones de monitor en el nuevo cuadro de la integración ServiceNow][23] 1. Haz clic en el botón `+ New` para crear una nueva plantilla. -2. Define un @-handle `Name`, `Instance` y `Target Table` al cual se envíe la notificación del monitor. A continuación, selecciona uno de `Assignment Group`, `Business Service`, `User` o `Unassigned` para asignar el registro. El mapa de transformación definido en 2.6.0 rellena automáticamente el registro `INC` de la incidencia con el valor que selecciones aquí. +2. Define un @-handle `Name`, `Instance` y `Target Table` al cual se envíe la notificación del monitor. A continuación, selecciona uno de `Assignment Group`, `Business Service`, `User` o `Unassigned` para asignar el registro. El mapa de transformación definido en 2.6.0 rellena automáticamente el registro `INC` del incidente con el valor que selecciones aquí. Para utilizar la nueva plantilla, añade `@servicenow-` en una descripción de monitor. -Puedes añadir campos personalizados a la carga útil haciendo clic en `Add Field` en la sección `Customize notification payload`. +Puedes añadir campos personalizados a la carga útil haciendo clic en `Add Field` en la sección [Uso de variables en asignaciones de campo y carga útil de tickets](#use-variables-in-ticket-payload-and-field-mappings). -#### Configuración de la Gestión de casos +### Configuración de la Gestión de casos -{{< img src="integrations/servicenow/servicenow-case-management.png" alt="Instrucciones de la Gestión de casos en el nuevo cuadro de integración de ServiceNow" >}} +![Instrucciones de Case Management en el nuevo cuadro de la integración ServiceNow][24] En la pestaña del `Case Management`: - -1. Selecciona la instancia que deseas configurar para la Gestión de casos. +1. Selecciona la instancia que deseas configurar para Case Management. 2. Elige la tabla a la que deseas enviar los casos: `Datadog Cases ITOM` o `Datadog Cases ITSM`. **Nota**: Por defecto no se selecciona ninguna tabla. -3. Ve a [Case Management][15] (Gestión de casos) en Datadog. -4. Selecciona Create ServiceNow Incident (Crear incidencia de ServiceNow). +3. Ve a [Case Management][25] en Datadog. +4. Selecciona Create ServiceNow Incident (Crear incidentes de ServiceNow). 5. Elige la instancia y el grupo de asignación opcional y, a continuación, haz clic en Create (Crear). -##### Sincronización bidireccional del estado y los comentarios con la Gestión de casos +##### Sincronización bidireccional del estado y los comentarios con Case Management + +Para permitir que las ediciones en ServiceNow actualicen sus casos asociados en Datadog, un usuario de ServiceNow con el rol `x_datad_datadog.user` y el rol `admin` debe configurar los parámetros de instalación de la aplicación **integración ITOM/ITSM para Datadog** en ServiceNow: -Para permitir que las ediciones en ServiceNow actualicen sus casos asociados en Datadog, un usuario de ServiceNow con el rol `x_datad_datadog.user` y el rol `admin` debe configurar los ajustes de instalación de la aplicación **integración de ITOM/ITSM para Datadog** en ServiceNow: +**Nota**: Es importante utilizar una clave de aplicación de la cuenta de servicio para esta configuración en lugar de la clave de aplicación de un usuario. La clave de aplicación de un usuario está vinculada a los permisos de la cuenta del usuario. Si los permisos del usuario se reducen o si el usuario es desactivado, la sincronización bidireccional entre ServiceNow y Datadog se detendrá. Una clave de aplicación de cuenta de servicio no está vinculada a un usuario individual, por lo que la sincronización bidireccional no se verá afectada por los cambios en la cuenta de usuario. -1. Accede a la página de configuración de la aplicación **integración de ITOM/ITSM para Datadog** haciendo clic en **All** (Todos) en la esquina superior izquierda, escribiendo `ITOM/ITSM Integration for Datadog` en el filtro y haciendo clic en el enlace **Configuration** (Configuración) que aparece en la lista filtrada. +1. Accede a la página de configuración de la aplicación **integración ITOM/ITSM para Datadog** haciendo clic en **All** (Todo) en la esquina superior izquierda, escribiendo `ITOM/ITSM Integration for Datadog` en el filtro y haciendo clic en el enlace **Configuration** (Configuración) que aparece en la lista filtrada. 1. Elige la ubicación de tu Centro de datos de Datadog. -1. Pega una clave de API de Datadog, que puedes encontrar en tu **Organization Settings** (Parámetros de organización), en el campo **API Key** (Clave de API). -1. Pega una clave de aplicación de cuenta del servicio de Datadog, que puedes encontrar en tu **Organization Settings** (Parámetros de organización), en el campo **Application Key** (Clave de aplicación). +1. Pega una clave de API de Datadog, que puedes encontrar en tus **parámetros de organización**, en el campo **Clave de API**. +1. Pega una clave de aplicación de cuenta del servicio de Datadog, que puedes encontrar en tus **parámetros de organización**, en el campo **Clave de API**. 1. Comprueba la casilla Enabled (Activado) y guarda los cambios de configuración. -Después de configurar los ajustes de instalación en ServiceNow, vuelve a la Gestión de casos de Datadog para [configurar la integración][16]. +**Nota**: Asegúrate de que el **contexto de la aplicación** (accesible a través del icono del globo en la parte superior derecha) está configurado en `ITOM/ITSM Integration for Datadog`, no en `Global`. El uso de un contexto incorrecto puede causar errores de permiso al configurar los campos anteriores. +![Contexto de la aplicación][26] + +![Parámetros de configuración en ServiceNow para sincronizar los cambios de ServiceNow en Datadog][27] + +Después de configurar los parámetros de instalación en ServiceNow, vuelve a Datadog Case Management para [configurar la integración][28]. + +##### Uso de alertas correlacionadas para personalizar valores en ServiceNow + +**Nota**: Se requiere una versión de la aplicación >= v2.7.0 para esta funcionalidad. + +Para utilizar información de alertas correlacionadas en el rellenado de valores en ServiceNow, se incluye un script de transformación de ejemplo (ejecuta `onBefore`) en los mapas de transformación para tablas de ITSM y ITOM de casos de Datadog. Por defecto, el script está comentado. Para habilitarlo, **descoméntalo** y **modifícalo** para adaptarlo a tu caso de uso. Las modificaciones son **necesarias** para que el script rellene los valores en el incidente de ServiceNow. + +### Configuración de Incident Management + +Después de instalar la aplicación, consulta los [parámetros de la integración][29] en Incident Management para finalizar la configuración. Para obtener más información sobre los campos que se sincronizan entre Incident Management y ServiceNow, consulta [Asignaciones de campos de Incident Management](#incident-management-field-mappings). + +##### Sincronizar el estado, el impacto y la urgencia bidireccionalmente con Incident Management + +Para permitir que las modificaciones en ServiceNow actualicen sus incidentes asociados en Datadog, un usuario de ServiceNow con el rol `x_datad_datadog.user` y el rol `admin` debe configurar los parámetros de instalación de la aplicación **integración ITOM/ITSM para Datadog** en ServiceNow: **Nota**: Es importante utilizar una clave de aplicación de la cuenta de servicio para esta configuración en lugar de la clave de aplicación de un usuario. La clave de aplicación de un usuario está vinculada a los permisos de la cuenta del usuario. Si los permisos del usuario se reducen o si el usuario es desactivado, la sincronización bidireccional entre ServiceNow y Datadog se detendrá. Una clave de aplicación de cuenta de servicio no está vinculada a un usuario individual, por lo que la sincronización bidireccional no se verá afectada por los cambios en la cuenta de usuario. -{{< img src="integrations/servicenow/datadog-sync-configuration.png" alt="Ajustes de configuración en ServiceNow para sincronizar los cambios de ServiceNow en Datadog" >}} +1. Accede a la página de configuración de la aplicación **integración ITOM/ITSM para Datadog** haciendo clic en **All** (Todos) en la esquina superior izquierda, escribiendo `ITOM/ITSM Integration for Datadog` en el filtro y haciendo clic en el enlace **Configuration** (Configuración) que aparece en la lista filtrada. +1. Elige la ubicación de tu Centro de datos de Datadog. +1. Pega una clave de API de Datadog, que puedes encontrar en tus **parámetros de organización**, en el campo **Clave de API**. +1. Pega una clave de aplicación de cuenta del servicio de Datadog, que puedes encontrar en tus **parámetros de organización**, en el campo **Clave de API**. +1. Comprueba la casilla Enabled (Activado) y guarda los cambios de configuración. -#### Configuración de la Gestión de incidencias +**Nota**: Asegúrate de que el **contexto de la aplicación** (accesible a través del icono del globo en la parte superior derecha) está configurado en `ITOM/ITSM Integration for Datadog`, no en `Global`. El uso de un contexto incorrecto puede causar errores de permiso al configurar los campos anteriores. +![Contexto de la aplicación][26] -Después de instalar la aplicación, visita los [ajustes de la integración[17] en la aplicación de incidencias para finalizar la configuración. +Después de configurar los parámetros de instalación en ServiceNow, vuelve a Datadog Incident Management para [configurar la integración][29]. -#### Notificaciones de monitor legacy +### Notificaciones de monitor legacy Para las notificaciones de monitor legacy mediante `@servicenow-` en Datadog, selecciona la tabla intermedia a la que enviar notificaciones en la parte inferior del cuadro de ITOM/ITSM titulado: "Manage Legacy Monitor Notifications" (Gestionar notificaciones de monitor legacy). 1. Selecciona la instancia para la que deseas configurar notificaciones y, a continuación, selecciona la tabla en la que escribir notificaciones de monitor legacy. 2. Para validar que la integración está configurada correctamente, añade `@servicenow-` en un monitor o notificación de evento. Los datos sin procesar rellenan las filas de la tabla provisional y se reenvían a la tabla de ServiceNow especificada por la aplicación. -3. [Utiliza mapas de transformación](#customize-data-with-transform-maps) en ServiceNow para personalizar la transformación de los datos enviados a las tablas provisionales. +3. [Utiliza mapas de transformación](#customize-data-for-monitor-notifications-with-transform-maps) en ServiceNow para personalizar la transformación de los datos enviados a las tablas provisorias. 4. Personaliza la carga útil de notificación con las variables disponibles en Datadog o cadenas personalizadas. +5. Para definir la prioridad de los incidentes de ServiceNow, sigue las instrucciones de [asignación de campos de prioridad en incidentes](#incident-priority-field-mapping) -#### Personalizar los datos para monitorizar notificaciones con mapas de transformación +### Personalizar los datos para monitorizar notificaciones con mapas de transformación -Las tablas **Templated Monitors ITSM**, **Legacy Monitors ITSM** y **Datadog Cases ITSM** utilizan un mapa de transformación para transformar los registros de Datadog en las incidencias de ServiceNow. -De la misma manera, **Datadog Monitors ITOM** y **Datadog Cases ITOM** transforman los registros de Datadog en eventos de ServiceNow. +Las tablas **ITSM de monitores en formato de plantilla**, **ITSM de monitores legacy** y **ITSM de casos Datadog** utilizan un mapa de transformación para transformar los registros de Datadog en incidentes de ServiceNow. +De la misma manera, **ITOM de monitores Datadog** y **ITOM de casos Datadog** transforman los registros de Datadog en eventos de ServiceNow. -Las tablas **Templated Monitors ITOM** y **Templated Monitors ITSM** utilizan mapas de transformación para transformar los registros de Datadog en eventos e incidencias de ServiceNow respectivamente. Puedes personalizar la información de eventos e incidencias de ServiceNow en estas tablas personalizando la carga útil de notificación en la interfaz de usuario `New Template` y ampliar los mapas de transformación en ServiceNow. +Las tablas **ITOM de monitores en formato de plantilla** y **ITSM de monitores en formato de plantilla** utilizan mapas de transformación para transformar los registros de Datadog en eventos e incidentes de ServiceNow respectivamente. Puedes personalizar la información de eventos e incidentes de ServiceNow en estas tablas personalizando la carga útil de notificación en la interfaz de usuario `New Template` y ampliar los mapas de transformación en ServiceNow. -**Nota**: Las tablas **Datadog Cases ITOM** y **Datadog Cases ITSM** utilizan de forma similar mapas de transformación; sin embargo, la personalización del mapa de transformación no es recomendada para su uso con la Gestión de casos, dado que la carga útil de los casos de Datadog no es personalizable. +**Nota**: Las tablas **ITOM de casos Datadog** y **ITSM de casos Datadog** utilizan de forma similar mapas de transformación; sin embargo, no se recomienda la personalización de mapas de transformación para su uso con Case Management dado que la carga útil de los casos Datadog no es personalizable. El único case en el que se recomienda la personalización del mapa de transformación es si se van a utilizar datos de alertas correlacionadas. Hay más instrucciones sobre cómo hacerlo [más arriba](#use-correlated-alerts-to-customize-values-in-servicenow). ## Solucionar problemas @@ -390,169 +482,169 @@ Si no estás viendo eventos en tus tablas de ServiceNow y en su lugar tienes - Comprueba que el usuario que has creado tiene los permisos necesarios. - Comprueba que el nombre de usuario y la contraseña son correctos. -- Se configura la integración, se activa una alerta y no se crea ningún tique: +- Se configura la integración, se activa una alerta y no se crea ningún ticket: - Confirma que la tabla intermedia está poblada. Si es así, el problema está en las asignaciones y transformaciones. Puedes depurar aún más tus asignaciones y scripts accediendo a **Transform Errors** (Errores de transformación) en ServiceNow. - Confirma que estás trabajando con la tabla provisional que especificaste en el cuadro. - El usuario de ServiceNow necesita los roles `rest_service` y `x_datad_datadog.user` para poder acceder a las tablas de importación. Si estás utilizando la forma legacy de enviar notificaciones directamente a la tabla Incident (Incidencias) o a la tabla Event (Event), necesitas los permisos `itil` y `evt_mgmt_integration`. + El usuario de ServiceNow necesita los roles `rest_service` y `x_datad_datadog.user` para poder acceder a las tablas de importación. Si estás utilizando la forma legacy de enviar notificaciones directamente a la tabla Incident (Incidentes) o a la tabla Event (Event), necesitas los permisos `itil` y `evt_mgmt_integration`. -Si ves actualizaciones de la Gestión de casos de Datadog en ServiceNow, pero no ves actualizaciones de ServiceNow a Datadog, este es el comportamiento esperado para ServiceNow ITOM. La sincronización bidireccional con la Gestión de Casos sólo es compatible con ServiceNow ITSM. +Si ves actualizaciones de Case Management de Datadog en ServiceNow, pero no ves actualizaciones de ServiceNow en Datadog, este es el comportamiento esperado de ITOM de ServiceNow. La sincronización bidireccional con Case Management sólo es compatible con ITSM de ServiceNow. -¿Necesitas más ayuda? Ponte en contacto con el [soporte de Datadog][18]. +¿Necesitas ayuda adicional? Ponte en contacto con el [servicio de asistencia de Datadog][30]. ## Base de conocimientos -### Campos de tabla del ITXM de monitores predefinidos y mapas de transformación +### Campos de tablas y mapas de transformación ITMX de monitores en formato de plantilla `action` -: **Tipo**: string
+: **Tipo**: cadena
La acción que se está llevando a cabo en el monitor: `create`, `update`, `acknowledge` o `resolve` `additional_information` -: **Tipo**: string
+: **Tipo**: cadena
**Transformación ITOM**: `additional_info`
-Cadena formateada que contiene todos los detalles de evento +Cadena formateada que contiene todos los detalles del evento `aggreg_key` -: **Tipo**: string
+: **Tipo**: cadena
Clave de agregación que representa un hash del ID del monitor de alerta `alert_cycle_key` -: **Tipo**: string
+: **Tipo**: cadena
Clave que representa un hash de un ciclo de alerta de monitor único (rastrea Alerta → Advertencia → Resolución). `alert_id` -: **Tipo**: string
+: **Tipo**: cadena
ID de monitor de alerta `alert_metric` -: **Tipo**: string
+: **Tipo**: cadena
**Transformación ITOM**: `metric_name`
Métrica que activó la alerta `alert_query` -: **Tipo**: string
+: **Tipo**: cadena
Consulta que activó la alerta `alert_scope` -: **Tipo**: string
+: **Tipo**: cadena
Contexto que activó la alerta `alert_status` -: **Tipo**: string
+: **Tipo**: cadena
Estado actual de la alerta `alert_title` -: **Tipo**: string
+: **Tipo**: cadena
Nombre de la alerta `alert_transition` -: **Tipo**: string
-**Transformación ITSM**: (script) -> estado
+: **Tipo**: cadena
+**Transformación ITSM**: (script) -> state
Estado de transición de la alerta: `Triggered`, `Warn` o `Recovered` `assignment_group_sys_id` -: **Tipo**: reference
+: **Tipo**: referencia
**Transformación ITSM**: `assignment_group`
**Tabla de referencia**: grupo
-ServiceNow sys_id para el grupo de asignación del identificador predefinido +ServiceNow sys_id para el grupo de asignación del identificador en formato de plantilla `business_service_sys_id` -: **Tipo**: reference
+: **Tipo**: referencia
**Transformación ITSM**: `business_service`
**Tabla de referencia**: servicio
-ServiceNow sys_id para el servicio empresarial del identificador predefinido +ServiceNow sys_id para el servicio empresarial del identificador en formato de plantilla `custom_fields` -: **Tipo**: string
+: **Tipo**: cadena
Campos clave-valor configurados por el usuario formateados como cadena convertible a JSON `datadog_tags` -: **Tipo**: string
-Etiquetas (tags) de Datadog en el monitor de alerta +: **Tipo**: cadena
+Etiquetas de Datadog en el monitor de alerta `description` -: **Tipo**: string
+: **Tipo**: cadena
**Transformación ITSM**: `description`
**Transformación ITOM**: `description`
Descripción resumida del monitor de alerta `event_details` -: **Tipo**: string
+: **Tipo**: cadena
**Transformación ITSM**: `work_notes`
-Detalles del evento con enlaces formateados y clicables a Datadog +Detalles del evento con enlaces formateados y seleccionables a Datadog `event_id` -: **Tipo**: string
+: **Tipo**: cadena
ID de Datadog del evento `event_link` -: **Tipo**: string
+: **Tipo**: cadena
Enlace al evento creado a partir de la alerta del monitor `event_msg` -: **Tipo**: string
+: **Tipo**: cadena
Mensaje del evento `event_title` -: **Tipo**: string
+: **Tipo**: cadena
**Transformación ITSM**: `short_description`
Título del evento `event_type` -: **Tipo**: string
+: **Tipo**: cadena
**Transformación ITOM**: `type`
Tipo de evento `hostname` -: **Tipo**: string
+: **Tipo**: cadena
**Transformación ITSM**: `cmdb_ci`
**Transformación ITOM**: `node`
Host del monitor afectado `impact` -: **Tipo Entero
+: **Tipo**: entero
**Transformación ITSM**: `impact`
Valor de impacto basado en la asignación definida por el usuario de la prioridad del monitor `logs_sample` -: **Tipo**: string
+: **Tipo**: cadena
Muestra de los logs relevantes `monitor_priority` -: **Tipo**: integer
+: **Tipo**: entero
**Transformación ITOM**: `severity`
Prioridad del monitor de alerta como un entero `org_name` -: **Tipo**: string
+: **Tipo**: cadena
Nombre de la organización del monitor de alerta `sys_created_by` -: **Tipo**: string
+: **Tipo**: cadena
**Transformación ITSM**: `caller_id`
Creador del registro (normalmente la cuenta de API de ServiceNow configurada). `ticket_state` -: **Tipo**: string
-**Transformación ITSM**: (script) -> state, (script) -> close_code, (script) -> resolution_notes
-**ITOM Transform**: (script) -> resolution_notas
-Estado del registro de ServiceNow: `new` o `resolved` +: **Tipo**: cadena
+**Transformación ITSM**: `state`, (script) -> close_code, (script) -> close_notes
+**Transformación ITOM**: (script) -> resolution_notes
+Estado del registro ServiceNow: `new` o `resolved` `u_correlation_id` -: **Tipo**: string
+: **Tipo**: cadena
**Transformación ITSM**: `correlation_id`
**Transformación ITOM**: `message_key`
-Combinación de alert_cycle_key y aggreg_key utilizada para agrupar los registros en la misma incidencia de destino +Combinación de alert_cycle_key y aggreg_key utilizada para agrupar los registros en el mismo incidente de destino `urgency` -: **Tipo**: integer
+: **Tipo**: entero
**Transformación ITSM**: `urgency`
Urgencia establecida a partir de la asignación definida por el usuario en el cuadro de integración basado en la prioridad definida del monitor `user_sys_id` -: **Tipo**: reference
+: **Tipo**: referencia
**Transformación ITSM**: `assigned_to`
**Tabla de referencia**: usuario
sys_id del identificador predefinido pasado por el usuario. @@ -562,35 +654,33 @@ sys_id del identificador predefinido pasado por el usuario. Para evitar que la tabla de conjuntos de importación `x_datad_datadog_import_host` acumule demasiadas filas, se ha añadido una regla de descarga automática a la herramienta Table Cleaner para conservar sólo las últimas 24 horas de datos. Esta configuración puede modificarse según sea necesario accediendo a `sys_auto_flush_list.do` en el navegador de filtros y entrando en la regla de la tabla `x_datad_datadog_import_host`. El campo `Age in seconds` puede actualizarse en consecuencia. -{{< img src="integrations/servicenow/servicenow-cmdb-autoflush-rule.png" alt="Configuración de integración" >}} +![Parámetros de configuración de la integración][31] -### Generación automática de tiques de soporte a partir de las alertas de Datadog +### Monitorizar la duplicación de incidentes -Una vez conectado ServiceNow a tu cuenta de Datadog, las alertas recibidas pueden crear automáticamente tiques de soporte y enviarlos a la cola de tiques de ServiceNow. Desde allí, tu equipo de soporte es notificado de los problemas mediante flujos de trabajo de comunicación que ya has establecido dentro de ServiceNow. Menciona `@servicenow` en el mensaje de alerta o añade `@servicenow` a la lista de notificación para ese monitor. +Para evitar que un monitor vuelva a abrir el mismo incidente, en lugar de crear uno nuevo para cada alerta, asegúrate de que no está configurado con alerta simple. Convierte el monitor en uno con [alerta múltiple][32] agrupándolo mediante una etiqueta en la métrica. De este modo, cada alerta activará un incidente independiente. -{{< img src="integrations/servicenow/servicenow-02-monitor-page.png" alt="ServiceNow" >}} +### Utilizar variables en la carga útil del ticket y en las asignaciones de campos -### Utilizar variables en la carga útil del tique y en las asignaciones de campos +Las variables se pueden utilizar en el cuerpo de las alertas o en las asignaciones de campos para asegurar que los detalles de evento se incluyan en ServiceNow. Por ejemplo, puedes incluir el título y la gravedad en el campo apropiado de ServiceNow o puedes incluir un enlace al incidente específico en Datadog directamente desde el ticket de ServiceNow. -Las variables se pueden utilizar en el cuerpo de las alertas o en las asignaciones de campos para asegurar que los detalles de evento se incluyan en ServiceNow. Por ejemplo, puedes incluir el título y la gravedad en el campo apropiado de ServiceNow o puedes incluir un enlace a la incidencia específica en Datadog directamente desde el tique de ServiceNow. +![Formulario de entrada de variables de ServiceNow][33] +![Variables de ServiceNow][34] -{{< img src="integrations/servicenow/servicenow-variables-form.png" alt="Formulario de entrada de las variables de ServiceNow" >}} +### Asignación de campos de prioridad de incidentes legacy +**Nota:** En las descripciones de monitor, `Impact` y `Urgency` sólo funcionan para [configuraciones de monitor legacy](#legacy-monitor-notifications). Para [monitores de plantilla](#configure-templated-monitor-notifications), configura la [asignación de prioridades de instancia](#configure-instance-priority-mapping). -{{< img src="integrations/servicenow/servicenow-variables.png" alt="Variables de ServiceNow" >}} +El campo `priority` en incidenest de ServiceNow es de _sólo lectura_ y sólo puede actualizarse utilizando [reglas de búsqueda de prioridad][35]. -### Asignación del campo Prioridad de la incidencia +Define `Impact` y `Urgency` en monitores para calcular la prioridad del incidente de ServiceNow. -El campo `priority` en las incidencias de ServiceNow es de _sólo lectura_ y sólo se puede actualizar utilizando [reglas de búsqueda de prioridad][19]. - -Define `Impact` y `Urgency` en monitores para calcular la prioridad de la incidencia de ServiceNow. - -{{< img src="integrations/servicenow/servicenow-priority-field-mapping.png" alt="Asignación del campo de prioridad de ServiceNow" >}} +![Asignación de campos de prioridad de ServiceNow][36] ### Automatizar el flujo de trabajo de resolución de incidencias -Una vez que el estado del monitor vuelve a la normalidad, el tique de soporte asociado se marca automáticamente como "resuelto". +Una vez que el estado del monitor vuelve a la normalidad, el ticket de soporte asociado se marca automáticamente como "resuelto". -{{< img src="integrations/servicenow/servicenow-03-servicenow-resolved.png" alt="ServiceNow resuelto" >}} +[ServiceNow resuelto][37] ### Definir asignaciones personalizadas @@ -600,71 +690,124 @@ Haz clic en una de las tablas, por ejemplo **Datadog Monitors ITSM Tables** y de Haz clic en el nombre de la asignación de transformación para ver el registro: -{{< img src="integrations/servicenow/servicenow-click-transform-map.png" alt="integración de servicenow" >}} +![Integración servicenow][38] En la parte superior hay dos campos importantes en el registro de Transformación: `Source table` y `Target table`: -{{< img src="integrations/servicenow/servicenow-source-target-fields.png" alt="integración de servicenow" >}} +![Integración servicenow][39] **Notas**: -- El origen es la tabla del conjunto de importaciones que seleccionaste (Datadog Monitors ITSM Tables) y el destino es tu tabla de incidencias real (o tabla de evento) donde se almacenan los eventos. +- El origen es la tabla del conjunto de importaciones que seleccionaste (Tablas IYSM de monitores de Datadog) y el destino es tu tabla de incidentes real (o tabla de evento) donde se almacenan los eventos. - Las asignaciones de campos se encuentran en la parte inferior del registro. Se incluyen algunas asignaciones básicas. Aquí es donde se seleccionan los campos a incluir, se define el formato y se seleccionan los campos de destino en tu instancia de ServiceNow. ### Añadir una nueva asignación de campos Haz clic en **New** (Nuevo): -{{< img src="integrations/servicenow/servicenow-click-new.png" alt="integración de servicenow" >}} +![Integración servicenow][40] Selecciona los campos de origen y destino para las asignaciones uno a uno: -{{< img src="integrations/servicenow/servicenow-select-source-target.png" alt="integración de servicenow" >}} +![Integración servicenow][41] O marca la casilla **Use source script** (Usar script fuente) y define transformaciones: -{{< img src="integrations/servicenow/servicenow-script-example.png" alt="integración de servicenow" >}} +![Integración servicenow][42] -**Nota:** Para asignar cualquier campo personalizado en el cuadro de integración, puedes utilizar el siguiente script de asignación para las asignaciones de Datadog Monitors ITOM y Datadog Monitors ITSM Transform. En este ejemplo, el campo `my_field` se definió como un campo personalizado en el cuadro de integración: +**Nota:** Para asignar cualquier campo personalizado en el cuadro de integración, puedes utilizar el siguiente script de asignación para las asignaciones de transformaciones ITOM de monitores Datadog e ITSM de monitores Datadog. En este ejemplo, el campo `my_field` se definió como un campo personalizado en el cuadro de integración: ``` answer = (function transformEntry(source) { var additional_info = JSON.parse(source.additional_info); - return additional_info.custom_my_field; + return additional_info.my_field; })(source); ``` -### Definir asignaciones múltiples - -Utiliza **Mapping Assist** (en enlaces relacionados) para asignar varios campos de origen y destino: - -{{< img src="integrations/servicenow/servicenow-mapping-assist.png" alt="integración de servicenow" >}} - ### Validación -Para validar que la integración está configurada correctamente, añade `@servicenow` en un monitor o notificación de evento. Los datos sin procesar rellenan las filas de la tabla provisional y se reenvían a la tabla de ServiceNow especificada en las asignaciones y transformaciones que has creado. +Para confirmar que la integración está correctamente configurada, añade `@servicenow-` en un monitor o una notificación de eventos. Los datos sin procesar rellenan las filas de la tabla provisoria y se reenvían a la tabla de ServiceNow especificada en las asignaciones y transformaciones creadas. + +### Asignaciones de campos de Incident Management +| **Incident Management** | **Tabla de casos de ServiceNow** | **Incidente de ServiceNow** | **Estado de sincronización** | +|-------------------------------|-------------------------------------------|----------------------------------|------------------------------------------------------------| +| Título | Título - Cadena | Descripción breve | Sincronización unidireccional Datadog -> ServiceNow | +| Lo que ocurrió | Descripción - Cadena | Descripción | Sincronización unidireccional Datadog -> ServiceNow | +| Estado | Estado - Cadena | Estado | Sincronización bidireccional | +| URL del incidente DD | URL del incidente - Cadena | Notas de trabajo | Sincronización unidireccional Datadog -> ServiceNow | +| Gravedad | Urgencia del incidente (int) | Urgencia | Sincronización bidireccional | +| Gravedad | Impacto del incidente (int) | Impacto | Sincronización bidireccional | + +| **Estado del monitor Datadog** | **Estado del incidente ServiceNow** | +|--------------------------------------------------|-------------------------------| +| Alerta | En curso | +| Advertir | En curso | +| OK | Resuelto | +| Finalizado *(opcional, configurado en parámetros)* | Resuelto | + +| **Gravedad del incidente Datadog** | **Urgencia de ServiceNow** | **Impacto de ServiceNow** | **Prioridad de ServiceNow** | +|-------------------------------|-------------------------|------------------------|--------------------------| +| SEV-1 | 1 | 1 | 1 - Crítico | +| SEV-2 | 1 | 2 | 2 - Alta | +| SEV-2 | 2 | 1 | 2 - Alta | +| SEV-3 | 1 | 3 | 3 - Moderada | +| SEV-3 | 2 | 2 | 3 - Moderada | +| SEV-3 | 3 | 1 | 3 - Moderada | +| SEV-4 | 2 | 3 | 4 - Baja | +| SEV-4 | 3 | 2 | 4 - Baja | +| SEV-5 (Menor) | 3 | 3 | 5 - Planificación | +| Unknown (Desconocido) | 3 | 3 | 5 - Planificación | + +**Nota** Si `Start at SEV-0` está habilitado en los parámetros de Incident Management, los valores de `ServiceNow Urgency`, `ServiceNow Impact` y `ServiceNow Priority` permanecerán iguales, pero la `Datadog incident (incidente) Severity` se desplazará hacia abajo en 1. Por ejemplo, la primera fila será **Gravedad del incidente Datadog: SEV-0; Urgencia de ServiceNow: 1, Impacto de ServiceNow: 1, Prioridad de ServiceNow: 1 - Crítica**. ## Referencias adicionales -{{< partial name="whats-next/whats-next.html" >}} +- [Crear tickets de ServiceNow a partir de alertas de Datadog][43] +- [Gestionar tu infraestructura con la CMDB de ServiceNow y Datadog][44] [1]: https://www.servicenow.com/community/now-platform-articles/servicenow-versions-release/ta-p/2312014 -[2]: https://app.datadoghq.com/integrations/servicenow -[3]: https://store.servicenow.com/sn_appstore_store.do#!/store/application/c877cb86687e0050f8774bfad236c950/1.2.1 -[4]: https://store.servicenow.com/ -[5]: https://docs.servicenow.com/bundle/xanadu-servicenow-platform/page/product/configuration-management/concept/cmdb-query-builder-landing-page.html -[6]: https://app.datadoghq.com/event/explorer -[7]: https://docs.datadoghq.com/es/tracing/service_catalog/ -[8]: https://docs.datadoghq.com/es/tracing/service_catalog/adding_metadata/ -[9]: https://docs.datadoghq.com/es/network_monitoring/devices/ -[10]: https://docs.datadoghq.com/es/network_monitoring/devices/snmp_metrics/ -[11]: https://app.datadoghq.com/reference-tables -[12]: https://docs.servicenow.com/bundle/rome-servicenow-platform/page/product/configuration-management/task/use-cmdb-query-builder.html -[13]: https://app.datadoghq.com/event/pipelines -[14]: https://docs.datadoghq.com/resources/xml/Datadog-Snow_Update_Set_v2.6.1.xml -[15]: https://app.datadoghq.com/cases -[16]: https://docs.datadoghq.com/es/service_management/case_management/settings#servicenow -[17]: https://app.datadoghq.com/incidents/settings#Integrations -[18]: https://docs.datadoghq.com/es/help/ -[19]: https://docs.servicenow.com/en-US/bundle/sandiego-it-service-management/page/product/incident-management/task/def-prio-lookup-rules.html \ No newline at end of file +[2]: images/servicenow-appstore-itxm-integration.png +[3]: https://docs.datadoghq.com/resources/xml/Datadog-Snow_Update_Set_v2.7.2.xml +[4]: https://app.datadoghq.com/integrations/servicenow +[5]: images/servicenow-configuration-new-instance-12-23.png +[6]: https://store.servicenow.com/sn_appstore_store.do#!/store/application/c877cb86687e0050f8774bfad236c950/1.2.1 +[7]: https://store.servicenow.com/ +[8]: images/SGC_datadog_tag.png +[9]: https://docs.servicenow.com/bundle/xanadu-servicenow-platform/page/product/configuration-management/concept/cmdb-query-builder-landing-page.html +[10]: images/host-tags.jpg +[11]: https://app.datadoghq.com/event/explorer +[12]: images/ingestion-progress.jpg +[13]: https://docs.datadoghq.com/tracing/service_catalog/ +[14]: https://docs.datadoghq.com/tracing/service_catalog/adding_metadata/ +[15]: images/service-metadata.jpg +[16]: https://docs.datadoghq.com/network_monitoring/devices/ +[17]: https://docs.datadoghq.com/network_monitoring/devices/snmp_metrics/ +[18]: https://app.datadoghq.com/reference-tables +[19]: https://docs.servicenow.com/bundle/rome-servicenow-platform/page/product/configuration-management/task/use-cmdb-query-builder.html +[20]: https://app.datadoghq.com/event/pipelines +[21]: images/servicenow-priority-mapping.png +[22]: images/servicenow-integration-tile.png +[23]: images/servicenow-monitors.png +[24]: images/servicenow-case-management.png +[25]: https://app.datadoghq.com/cases +[26]: images/servicenow-application-scope.png +[27]: images/datadog-sync-configuration.png +[28]: https://docs.datadoghq.com/service_management/case_management/settings#servicenow +[29]: https://app.datadoghq.com/incidents/settings#Integrations +[30]: https://docs.datadoghq.com/help/ +[31]: images/servicenow-cmdb-autoflush-rule.png +[32]: https://docs.datadoghq.com/monitors/configuration/?tab=thresholdalert#multi-alert +[33]: images/servicenow-variables-form.png +[34]: images/servicenow-variables.png +[35]: https://docs.servicenow.com/en-US/bundle/sandiego-it-service-management/page/product/incident-management/task/def-prio-lookup-rules.html +[36]: images/servicenow-priority-field-mapping.png +[37]: images/servicenow-03-servicenow-resolved.png +[38]: images/servicenow-click-transform-map.png +[39]: images/servicenow-source-target-fields.png +[40]: images/servicenow-click-new.png +[41]: images/servicenow-select-source-target.png +[42]: images/servicenow-script-example.png +[43]: https://www.datadoghq.com/blog/create-servicenow-tickets-from-datadog-alerts +[44]: https://www.datadoghq.com/blog/servicenow-cmdb-it-management-datadog + diff --git a/content/es/integrations/snowflake_web.md b/content/es/integrations/snowflake_web.md index 588bb1a3148..6b46558c642 100644 --- a/content/es/integrations/snowflake_web.md +++ b/content/es/integrations/snowflake_web.md @@ -35,7 +35,7 @@ categories: - métricas - recopilación de logs - seguridad -custom_kind: integration +custom_kind: integración dependencies: [] display_on_public_website: true draft: false @@ -85,7 +85,7 @@ tile: Puede resultar difícil monitorizar y optimizar eficazmente la infraestructura y la recuperación de datos de Snowflake. Surgen problemas que pueden derivar en una utilización ineficiente de los recursos, mayores costes y una experiencia del cliente degradada. -Con la integración de Snowflake de Datadog, puedes detectar consultas de larga duración para mejorar el rendimiento y reducir costes, identificar amenazas de seguridad en tiempo real y monitorizar tus cargas de trabajo de Snowpark. +Con la integración Snowflake de Datadog, puedes detectar consultas de larga duración para mejorar el rendimiento y reducir los costes, identificar amenazas de seguridad en tiempo real y monitorizar tus cargas de trabajo de Snowpark. Después de analizar los datos de Snowflake, Datadog completa el [dashboard de información general listo para usar][1] con información sobre todos los recursos recopilados. También ofrece monitores recomendados para ayudarte a comenzar a generar alertas sobre ejecuciones fallidas de Snowpark o una cantidad anormal de intentos de inicio de sesión. @@ -98,25 +98,31 @@ Después de analizar los datos de Snowflake, Datadog completa el [dashboard de i No se requiere ningún paso de instalación. ### Configuración +
Nota: Las cuentas de Snowflake conectadas a través de PrivateLink no son compatibles actualmente con la integración Snowflake. +Se recomienda la integración del Snowflake original con el Agent para configuraciones de PrivateLink.
#### Conecta tu cuenta de Snowflake 1. Busca la [URL de tu cuenta de Snowflake][2]. -{{< img src="integrations/snowflake/snowflake_account_url.png" alt="El menú de la cuenta con la opción de copiar URL de cuenta seleccionada en la interfaz de usuario de Snowflake" popup="true">}} +![Menú de la cuenta con la opción de copiar URL de la cuenta seleccionada en la interfaz de Snowflake][3] -2. En el [cuadro de la integración de Snowflake][3], ingresa la URL de la cuenta de Snowflake en el campo **Account URL**. +2. En el [cuadro de la integración de Snowflake][4], ingresa la URL de la cuenta de Snowflake en el campo **URL de la cuenta**. -3. En la pestaña **Resource Collection**, activa los recursos que te interese recopilar: +3. En la pestaña **Recopilación de recursos**, activa los recursos que quieres recopilar: ##### Métricas de uso de cuentas y organizaciones -La tabla siguiente describe los tipos de métricas recopilados y sus prefijos de métrica asociados. +En la siguiente tabla se describen los tipos de métricas recopiladas y sus prefijos de métricas asociados. -| **Tipo** | **Descripción** | **Prefijos de métricas recopilados** | -|------|-------------|-----------------------------| +| **Tipo** | **Descripción** | **Prefijos de métricas recopilados** | +| ---------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | **Uso de la cuenta** | Uso de almacenamiento, consumo de crédito y métricas de consulta a nivel de cuenta.
_Recopilados por hora_. | `snowflake.auto_recluster`
`snowflake.billing`
`snowflake.data_transfer`
`snowflake.logins`
`snowflake.pipe`
`snowflake.query`
`snowflake.replication`
`snowflake.storage`
`snowflake.storage.database`
`snowflake.storage.table` | -| **Uso de la organización** | Consumo de crédito, historial de transferencia de datos y métricas de presupuesto a nivel de organización.
_Recopilados por día_. | `snowflake.organization` | +| **Uso de la organización** | Consumo de crédito, historial de transferencia de datos y métricas de presupuesto a nivel de organización.
_Recopilados por día_. | `snowflake.organization` | + +Estas métricas pueden recopilarse en uno de dos periodos: +- **Últimas 24 horas**: Recopila las métricas agregadas por las últimas 24 horas. Ejemplo: 1-01-25 04:00:00 a 1-02-25 04:00:00. +- **Día actual**: Recopila las métricas agregadas por el día actual. Ejemplo: 1-02-25 00:00:00 a 1-02-25 04:00:00. ##### Logs @@ -145,22 +151,25 @@ La siguiente tabla describe los tipos de logs recopilados y qué tablas de Snowf +Estos logs pueden recopilarse en varios periodos en función del caso de uso. Pueden configurarse en el [cuadro de la integración Snowflake][4]. + ##### Cloud Cost Management -Habilita Cloud Cost Management para recibir métricas de costes de Snowflake agregadas desde la tabla [SNOWFLAKE.ORGANIZATION_USAGE.USAGE_IN_CURRENCY_DAILY][4]. Puedes usar estas métricas con [Cloud Cost Management][5] para obtener información adicional sobre tus costes y uso. +Activa Cloud Cost Management para recibir las métricas de costes de Snowflake agregadas desde la tabla [SNOWFLAKE.ORGANIZATION_USAGE.USAGE_IN_CURRENCY_DAILY][5]. Puedes utilizar estas métricas con [Cloud Cost Management][6] para obtener información adicional sobre tus costes y tu uso. 4. Crea un rol y un usuario específicos de Datadog para monitorizar Snowflake. Ejecuta la serie de comandos que se indican a continuación en tu entorno de Snowflake para crear un usuario al que Datadog pueda acceder.
-**Configuración recomendada para el almacén** +**Configuración de almacén recomendada** + - Crea un almacén XS con un tiempo de suspensión automática de 30 segundos. -- De manera opcional, la alternativa más rentable puede ser utilizar un almacén XS existente que esté activo durante todo el día. **Nota**: Las consultas realizadas desde esta integración pueden afectar potencialmente el rendimiento de un almacén existente. No se recomienda ejecutar la integración en un almacén donde el rendimiento de las consultas sea fundamental. +- Opcionalmente, utilizar un almacén XS existente que suela estar activo a lo largo del día puede ser la opción más rentable. **Nota**: Las consultas realizadas desde esta integración pueden afectar potencialmente al rendimiento de un almacén existente. No se recomienda ejecutar la integración en un almacén donde el rendimiento de las consultas es crítica.
{{< code-block lang="bash" filename="" disable_copy="false" collapsible="true" >}} - -- Crea un nuevo rol destinado a monitorizar el uso de Snowflake. El nombre del rol es personalizable. +-- Crea un nuevo rol destinado a monitorizar el uso de Snowflake. El nombre del rol es personalizable. create role DATADOG; -- Concede privilegios en la base de datos SNOWFLAKE al nuevo rol. @@ -188,6 +197,11 @@ conceder selección en la tabla .. to role DATADOG; +grant usage on schema . to role DATADOG; +grant select on table .. to role DATADOG; + -- Crea un usuario. create user LOGIN_NAME = @@ -200,43 +214,159 @@ grant role DATADOG to user {{< /code-block >}} 5. Configura la autenticación por par de claves. La clave pública se asigna al usuario creado anteriormente y la clave privada se carga en Datadog, lo que permite que Datadog se conecte a tu cuenta de Snowflake. - a. Crea y carga una clave privada siguiendo las [instrucciones de Snowflake][6]. Actualmente, Datadog solo admite claves privadas sin cifrar. - b. Crea una clave pública siguiendo las [instrucciones de Snowflake][7]. - c. Asigna la clave pública al usuario creado anteriormente siguiendo las [instrucciones de Snowflake][8]. + a. Crea y carga una clave privada siguiendo las [instrucciones de Snowflake][7]. Actualmente, Datadog solo admite claves privadas sin cifrar. + b. Crea una clave pública siguiendo las [instrucciones de Snowflake][8]. + c. Asigna la clave pública al usuario creado anteriormente siguiendo las [instrucciones de Snowflake][9].
-Ciertos prefijos de direcciones IP deben estar en la lista de permitidos para que Datadog recopile datos de tu cuenta de Snowflake. La lista de prefijos de IP que pertenecen a Datadog se puede encontrar en la página IP Ranges, y el rango a permitir se puede encontrar en webhooks. +Ciertos prefijos de direcciones IP deben estar en la lista de permitidos para que Datadog recopile datos de tu cuenta de Snowflake. La lista de prefijos de IP que pertenecen a Datadog se puede encontrar en la {{< region-param key="ip_ranges_url" link="true" text="página de rangos IP">}} y el rango permitido se puede encontrar en Webhooks.
#### Métricas personalizadas -La integración de Snowflake admite consultas personalizadas para recopilar métricas personalizadas. Los usuarios pueden escribir consultas SQL personalizadas para extraer datos específicos y verlos como métricas y etiquetas (tags) de métricas en Datadog. +La integración Snowflake admite consultas personalizadas para recopilar métricas personalizadas. Los usuarios pueden escribir consultas SQL personalizadas para extraer datos específicos y verlos como métricas y etiquetas (tags) de métricas en Datadog. Las consultas con varias líneas deben tener cada consulta en su propia línea. Por defecto, la integración se conecta a la base de datos compartida `SNOWFLAKE` y al esquema `ACCOUNT_USAGE`. Si estás consultando una tabla fuera del esquema `ACCOUNT_USAGE`, asegúrate de que tu rol configurado tenga los permisos apropiados para acceder a la tabla. La tabla siguiente describe los campos utilizados para definir métricas personalizadas. -| Campo | Descripción | Obligatorio | -| ------------- | ----------- | --- | -| Custom Metric Identifier | Se trata de un identificador para la métrica personalizada, que se utiliza para vincular diferentes métricas personalizadas a sus respectivas consultas personalizadas en cada cuenta. | Sí | -| Consulta | Esta es la consulta SQL que se debe ejecutar. Puede ser una sentencia simple o un script de varias líneas. Se evalúan todas las filas de los resultados. | Sí | -| Columnas de metadatos | Se trata de una lista que representa cada columna ordenada secuencialmente de izquierda a derecha. Hay dos campos obligatorios para cada columna:
- **Nombre de columna personalizado**:
este es el sufijo que se añade a `metric_prefix` para formar el nombre completo de la métrica. Por ejemplo, `my_custom_metric.count` da como resultado el nombre completo de la métrica `snowflake.my_custom_metric.count`. Si el tipo se especifica como `Tag Key`, la columna se aplica como una etiqueta a cada métrica recopilada por esta consulta.
- **Tipo de metadatos**:
este es el método de envío (por ejemplo, gauge, recuento o tasa). También se puede establecer para etiquetar cada métrica de la fila con el nombre y el valor (`:`) del elemento de esta columna. | Sí | - +| Campo | Descripción | Obligatorio | +| ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | +| Custom Metric Identifier | Se trata de un identificador para la métrica personalizada, que se utiliza para vincular diferentes métricas personalizadas a sus respectivas consultas personalizadas en cada cuenta. | Sí | +| Consulta | Esta es la consulta SQL que se debe ejecutar. Puede ser una sentencia simple o un script de varias líneas. Se evalúan todas las filas de los resultados. | Sí | +| Columnas de metadatos | Se trata de una lista que representa cada columna ordenada secuencialmente de izquierda a derecha. Hay dos campos obligatorios para cada columna:
- **Nombre de columna personalizado**:
este es el sufijo que se añade a `metric_prefix` para formar el nombre completo de la métrica. Por ejemplo, `my_custom_metric.count` da como resultado el nombre completo de la métrica `snowflake.my_custom_metric.count`. Si el tipo se especifica como `Tag Key`, la columna se aplica como una etiqueta a cada métrica recopilada por esta consulta.
- **Tipo de metadatos**:
este es el método de envío (por ejemplo, gauge, recuento o tasa). También se puede establecer para etiquetar cada métrica de la fila con el nombre y el valor (`:`) del elemento de esta columna. | Sí | **Notas**: - - Al menos un elemento en las columnas definidas debe ser un tipo de métrica (gauge, count, tasa, distribución). - - El número de elementos en las columnas debe ser igual a la cantidad de columnas devueltas en la consulta. - - El orden en que se definen los elementos en las columnas debe ser el mismo orden en que se devuelven en la consulta. + +- Al menos un elemento en las columnas definidas debe ser un tipo de métrica (gauge, count, tasa, distribución). +- El número de elementos en las columnas debe ser igual a la cantidad de columnas devueltas en la consulta. +- El orden en que se definen los elementos en las columnas debe ser el mismo orden en que se devuelven en la consulta. **Ejemplo**: -{{< img src="integrations/snowflake/custom_query.png" alt="Pestaña de métricas personalizadas en el cuadro de la integración de Snowflake" popup="true">}} +![Pestaña Métricas personalizadas en el cuadro de la integración Snowflake][10] #### Validación Para verificar el resultado, busca las métricas utilizando el resumen de métricas: -{{< img src="integrations/snowflake/snowflake_metrics.png" alt="Métricas de Snowflake en la página de resumen de métricas" popup="true">}} +![Métricas de Snowflake en la página Resumen de métricas][11] + +### Tablas de referencia + +Las [tablas de referencia][12] te permiten enriquecer y unir automáticamente tu telemetría con campos adicionales de tus tablas de Snowflake. Al asignar campos de valor a una clave primaria, puedes añadir automáticamente estos campos a logs o eventos que contengan esa clave. + +#### Activar la ingesta de tablas de referencia + +1. Ve a tu **espacio de trabajo de Snowflake**. +2. Identifica el nombre de la **tabla de Snowflake** que se utilizará en Datadog. +3. Concede a Datadog **permisos de lectura** de la tabla ejecutando el siguiente comando en tu espacio de trabajo. + + ```sql + GRANT USAGE ON DATABASE TO ROLE DATADOG; + GRANT USAGE ON SCHEMA . TO ROLE DATADOG; + GRANT SELECT ON TABLE .. TO ROLE DATADOG; + ``` + + - Si te encuentras con el error **_Insufficient Privileges_** (Privilegios insuficientes), ponte en contacto con el administrador de Snowflake de tu organización para que te conceda estos permisos. Datadog no podrá ingerir tu tabla de Snowflake en tablas de referencia sin los permisos anteriores concedidos en tu tabla de Snowflake. + +4. Copia el **nombre de la tabla** y la **clave principal** para utilizarlos en la configuración de la tabla de referencia en el paso 6. +5. En Datadog, ve al cuadro de Snowflake y haz clic en la pestaña **Tablas de referencia** de la cuenta de la que quieres ingerir tablas. Si no tienes ninguna cuenta configurada, sigue las instrucciones de la sección [Configuración](#configuration). +6. Haz clic en el botón **Add New Reference Table** (Añadir nueva tabla de referencia). Cuando se abra el formulario, rellena los siguientes campos: + +- **Nombre de la tabla de Datadog**, para identificar la tabla en el producto Tablas de referencia de Datadog. El nombre de tu tabla de Datadog debe contener caracteres y guiones bajos para separar varias palabras (por ejemplo, `my_reference_table`). Asegúrate de que el nombre de tu tabla de referencia de Datadog es único en tu organización. +- **Nombre de la tabla de Snowflake** que quieres ingerir, copiada del paso 4. +- **Clave primaria** de la tabla de Snowflake copiada del paso 4. + +7. Haz clic en **Save** (Guardar). +8. Puedes esperar ver datos de servicio rellenados en Datadog, varios minutos después de las ejecuciones programadas de tus consultas. + Cualquier error de ingesta se notificará mediante eventos visibles en tu [Explorador de eventos][13], buscando `source:snowflake`. +9. Ve a Tablas de referencia y busca la tabla que acabas de crear, utilizando el nombre de la tabla de Datadog. +10. Revisa el estado de tu tabla de Snowflake que se encuentra en la sección **Archivo**. Si aparece algún error, resuélvelo en Snowflake. + +## Prácticas recomendadas para la ingesta de tablas de Snowflake en tablas de referencia de Datadog + +Al integrar datos de Snowflake en Datadog, es importante estructurar las tablas de forma eficiente para optimizar el rendimiento y los costes. Esta sección te ofrece recomendaciones sobre cómo preparar tus tablas de Snowflake para la ingesta. + +### Cómo Datadog ingiere tus datos + +Datadog ejecuta la siguiente consulta **cada hora** en la tabla de Snowflake especificada: + +```sql +SELECT * FROM your_table; +``` + +Dado que esta operación recupera todas las columnas y filas, Datadog recomienda especialmente **crear una vista** que incluya sólo los campos necesarios requeridos para la monitorización en Datadog. Esto ayuda a reducir la transferencia innecesaria de datos y los costes de procesamiento. + +#### Utilizar una vista para limitar los datos + +En lugar de exponer una tabla completa, crea una **vista** que seleccione sólo las columnas necesarias: + +```sql +CREATE VIEW my_datadog_view AS +SELECT my_column_1, my_column_2 +FROM my_raw_table; +``` + +Para obtener más información, consulta la [documentación de las vistas de Snowflake][14]. + +### Consideraciones relativas al rendimiento y los costes + +En algunos casos, una **vista** estándar puede no ser la opción más eficaz, sobre todo si: + +- La consulta es compleja (por ejemplo, implica uniones, agregaciones o subconsultas). +- El tiempo de ejecución de `SELECT *` es de varios minutos o más. +- La frecuencia de ingesta se traduce en elevados costes de computación. Para monitorizar tus costes de Snowflake, te recomendamos utilizar [Snowflake Cloud Cost Management][15]. + +Para mejorar la eficiencia, considera alternativas como **vistas materializadas, tablas dinámicas o tablas precalculadas**. + +#### Elegir la estructura de tabla adecuada + +| **Opción** | **Cuándo utilizarlo** | **Compensaciones** | +| ------------------------------------------ | -------------------------------------------------------------------- | ---------------------------------------------------------------------------- | +| **Vista materializada** | La consulta es costosa desde el punto de vista informático y el rendimiento es crítico. | Mejora la velocidad de consulta, pero aumenta los costes de almacenamiento y requiere una lógica de actualización. | +| **Tabla dinámica** | La relevancia de los datos es importante, y se necesitan actualizaciones automáticas. | Snowflake gestiona las actualizaciones, pero los costes dependen de la frecuencia de las actualizaciones. | +| **Tabla precalculada (mediante DBT, ETL, etc.)**. | Se requiere un control total sobre las actualizaciones de datos y el rendimiento. | Proporciona la máxima eficacia, pero añade complejidad a la gestión de datos. | + +#### Utilizar una vista materializada + +Una **vista materializada** precalcula y almacena los resultados de las consultas, lo que agiliza considerablemente la recuperación de datos. + +```sql +CREATE MATERIALIZED VIEW my_fast_view AS +SELECT important_column_1, important_column_2 +FROM my_raw_table; +``` + +Las vistas materializadas **consumen almacenamiento adicional** y deben actualizarse para mantener los datos al día. Puedes encontrar más información en la [documentación de las vistas materializadas][16]. + +#### Utilizar una tabla dinámica + +Si los datos cambian con frecuencia y las actualizaciones completas son demasiado lentas, una **tabla dinámica** permite a Snowflake gestionar las actualizaciones incrementales: + +```sql +CREATE DYNAMIC TABLE my_dynamic_table +TARGET_LAG = '10 MINUTES' +WAREHOUSE = my_warehouse +AS SELECT important_column_1, important_column_2 FROM my_raw_table; +``` + +Snowflake gestiona automáticamente las actualizaciones incrementales en función de la configuración de `TARGET_LAG`. Puedes encontrar más información en la [documentación de las tablas dinámicas][17]. + +### Principales conclusiones + +- **Utilizar una vista** para restringir los datos enviados a Datadog y optimizar el rendimiento de las consultas. +- **Para consultas lentas**, considerar el uso de una **vista materializada, tabla dinámica o tabla precalculada** para mejorar la eficiencia. +- **Evaluar las compensaciones de costes y rendimiento** antes de elegir una estrategia. + +Siguiendo estas prácticas recomendadas, puedes garantizar una integración eficiente y rentable entre Snowflake y Datadog. Si necesitas ayuda para determinar la mejor opción para tu organización, ponte en contacto con el [servicio de asistencia de Snowflake][18]. + +### Solucionar problemas en tablas de referencia de Snowflake + +- Los nombres de las tablas de referencia deben ser únicos en Datadog. +- Datadog no valida los nombres de tablas de Snowflake. Si tu tabla no aparece en Tablas de referencia, asegúrate de haber ingresado correctamente el nombre de la tabla de Snowflake. +- Si tu tabla sigue sin aparecer, revisa la sección [Limitaciones][19] de la documentación de la tabla de referencia para asegurarte de que tu tabla no corresponde a ninguna de esas categorías. +- En caso de problemas con la ingesta de Datadog, ponte en contacto con el [servicio de asistencia de Datadog][20]. Si tienes problemas con tu tabla de Snowflake, ponte en contacto con el [servicio de asistencia de Snowflake][18]. ## Datos recopilados @@ -254,7 +384,7 @@ La integración de Snowflake Web no incluye ningún check de servicio. ## Solucionar problemas -¿Necesitas ayuda? Contacta con el [equipo de asistencia de Datadog][11]. +¿Necesitas ayuda? Ponte en contacto con el [servicio de asistencia de Datadog][20]. ## Check del Agent: Snowflake @@ -262,7 +392,7 @@ La integración de Snowflake Web no incluye ningún check de servicio. ## Agent: información general -Este check monitoriza [Snowflake][12] a través del Datadog Agent. Snowflake es un almacén de datos analíticos SaaS y se ejecuta completamente en la infraestructura de la nube. +Este check monitoriza [Snowflake][23] a través del Datadog Agent. Snowflake es un almacén de datos analíticos SaaS y se ejecuta completamente en la infraestructura de la nube. Esta integración monitoriza el uso de crédito, la facturación, el almacenamiento, las métricas de consulta y más.
Nota: Las métricas se recopilan mediante consultas a Snowflake. Las consultas realizadas mediante la integración de Datadog se facturan a través de Snowflake.
@@ -273,9 +403,9 @@ Sigue las instrucciones a continuación para instalar y configurar este check pa ### Agent: instalación -El check de Snowflake está incluido en el paquete del [Datadog Agent][13]. +El check de Snowflake está incluido en el paquete del [Datadog Agent][24]. -**Nota**: El check de Snowflake no está disponible en el Datadog Agent v6 con Python 2. Para usar Snowflake en el Agent v6, consulta [Usar Python 3 con el Datadog Agent v6][14] o actualiza al Agent v7. +**Nota**: El check de Snowflake no está disponible en el Datadog Agent v6 con Python 2. Para utilizar Snowflake en el Agent v6, consulta [Uso de Python 3 con el Datadog Agent v6][25] o actualiza al Agent v7. ### Agent: configuración @@ -283,94 +413,90 @@ El check de Snowflake está incluido en el paquete del [Datadog Agent][13]. 1. Crea un rol y un usuario específicos de Datadog para monitorizar Snowflake. En Snowflake, ejecuta lo siguiente para crear un rol personalizado con acceso al esquema ACCOUNT_USAGE. - Nota: Por defecto, esta integración monitoriza la base de datos `SNOWFLAKE` y el esquema `ACCOUNT_USAGE`. Consulta "Recopilación de datos de la organización" para obtener información sobre cómo monitorizar el esquema `ORGANIZATION_USAGE`. - Esta base de datos está disponible por defecto y solo la pueden ver los usuarios con el rol `ACCOUNTADMIN` o [cualquier rol otorgado por el ACCOUNTADMIN][15]. - + Nota: Por defecto, esta integración monitoriza la base de datos `SNOWFLAKE` y el esquema `ACCOUNT_USAGE`. Consulta "Recopilación de datos de la organización" para obtener información sobre cómo monitorizar el esquema `ORGANIZATION_USAGE`. + Esta base de datos está disponible por defecto y solo la pueden ver los usuarios con el rol `ACCOUNTADMIN` o [cualquier rol otorgado por el ACCOUNTADMIN][26]. - ```text - use role ACCOUNTADMIN; - grant imported privileges on database snowflake to role SYSADMIN; + ```text + use role ACCOUNTADMIN; + grant imported privileges on database snowflake to role SYSADMIN; - use role SYSADMIN; + use role SYSADMIN; - ``` + ``` + También puedes crear un rol `DATADOG` personalizado con acceso a `ACCOUNT_USAGE`. - Como alternativa, puedes crear un rol personalizado `DATADOG` con acceso a `ACCOUNT_USAGE`. + ```text + -- Create a new role intended to monitor Snowflake usage. + create role DATADOG; + -- Grant privileges on the SNOWFLAKE database to the new role. + grant imported privileges on database SNOWFLAKE to role DATADOG; - ```text - -- Crea un nuevo rol destinado a monitorizar el uso de Snowflake. - create role DATADOG; - - -- Concede privilegios en la base de datos SNOWFLAKE al nuevo rol. - grant imported privileges on database SNOWFLAKE to role DATADOG; - - -- Concede el uso de tu almacén predeterminado al rol DATADOG. + -- Grant usage to your default warehouse to the role DATADOG. grant usage on warehouse to role DATADOG; - -- Crea un usuario; omite este paso si estás utilizando un usuario existente. - create user DATADOG_USER - LOGIN_NAME = DATADOG_USER - password = '' - default_warehouse = - default_role = DATADOG - default_namespace = SNOWFLAKE.ACCOUNT_USAGE; - - -- Concede el rol de monitor al usuario. - grant role DATADOG to user ; - ``` - - -2. Edita el archivo `snowflake.d/conf.yaml`, en la carpeta `conf.d/` en la raíz del directorio de configuración de tu Agent para comenzar a recopilar los datos de rendimiento de Snowflake. Consulta el [ejemplo snowflake.d/conf.yaml][16] para conocer todas las opciones de configuración disponibles. - - ```yaml - ## @param account - string - required - ## Name of your account (provided by Snowflake), including the platform and region if applicable. - ## For more information on Snowflake account names, - ## see https://docs.snowflake.com/en/user-guide/connecting.html#your-snowflake-account-name - # - - account: - - - ## @param username - string - required - ## Login name for the user. - # - username: - - ## @param password - string - required - ## Password for the user - # - password: - - ## @param role - string - required - ## Name of the role to use. - ## - ## By default, the SNOWFLAKE database is only accessible by the ACCOUNTADMIN role. Snowflake recommends - ## configuring a role specific for monitoring: - ## https://docs.snowflake.com/en/sql-reference/account-usage.html#enabling-account-usage-for-other-roles - # - role: - - ## @param min_collection_interval - number - optional - default: 15 - ## This changes the collection interval of the check. For more information, see: - ## https://docs.datadoghq.com/developers/write_agent_check/#collection-interval - ## - ## NOTE: Most Snowflake ACCOUNT_USAGE views are populated on an hourly basis, - ## so to minimize unnecessary queries, set the `min_collection_interval` to 1 hour. - # - min_collection_interval: 3600 - - # @param disable_generic_tags - boolean - optional - default: false - # Generic tags such as `cluster` will be replaced by _cluster to avoid - # getting mixed with other integration tags. - # disable_generic_tags: true - ``` - -
In the default `conf.yaml`, the min_collection_interval is 1 hour. - Snowflake metrics are aggregated by day, you can increase the interval to reduce the number of queries.
- Note: Snowflake ACCOUNT_USAGE views have a known latency of 45 minutes to 3 hours.
- -3. [Reinicia el Agent][17]. + -- Create a user, skip this step if you are using an existing user. + create user DATADOG_USER + LOGIN_NAME = DATADOG_USER + password = '' + default_warehouse = + default_role = DATADOG + default_namespace = SNOWFLAKE.ACCOUNT_USAGE; + + -- Grant the monitor role to the user. + grant role DATADOG to user ; + ``` + +2. Edita el archivo `snowflake.d/conf.yaml`, que se encuentra en la carpeta `conf.d/` en la raíz del directorio de configuración del Agent, para empezar a recopilar tus datos de rendimiento de Snowflake. Para conocer todas las opciones de configuración disponibles, consulta el [snowflake.d/conf.yaml de ejemplo][27]. + + ```yaml + ## @param account - string - required + ## Name of your account (provided by Snowflake), including the platform and region if applicable. + ## For more information on Snowflake account names, + ## see https://docs.snowflake.com/en/user-guide/connecting.html#your-snowflake-account-name + # + - account: - + + ## @param username - string - required + ## Login name for the user. + # + username: + + ## @param password - string - required + ## Password for the user + # + password: + + ## @param role - string - required + ## Name of the role to use. + ## + ## By default, the SNOWFLAKE database is only accessible by the ACCOUNTADMIN role. Snowflake recommends + ## configuring a role specific for monitoring: + ## https://docs.snowflake.com/en/sql-reference/account-usage.html#enabling-account-usage-for-other-roles + # + role: + + ## @param min_collection_interval - number - optional - default: 15 + ## This changes the collection interval of the check. For more information, see: + ## https://docs.datadoghq.com/developers/write_agent_check/#collection-interval + ## + ## NOTE: Most Snowflake ACCOUNT_USAGE views are populated on an hourly basis, + ## so to minimize unnecessary queries, set the `min_collection_interval` to 1 hour. + # + min_collection_interval: 3600 + + # @param disable_generic_tags - boolean - optional - default: false + # Generic tags such as `cluster` will be replaced by _cluster to avoid + # getting mixed with other integration tags. + # disable_generic_tags: true + ``` + +
In the default `conf.yaml`, the min_collection_interval is 1 hour. + Snowflake metrics are aggregated by day, you can increase the interval to reduce the number of queries.
+ Note: Snowflake ACCOUNT_USAGE views have a known latency of 45 minutes to 3 hours.
+ +3. [Reinicia el Agent][28]. #### Recopilación de datos de la organización @@ -380,45 +506,45 @@ Para recopilar métricas de la organización, cambia el campo del esquema a `ORG **Nota**: Para monitorizar las métricas de la organización, tu `user` debe tener el rol `ORGADMIN`. - ```yaml - - schema: ORGANIZATION_USAGE - min_collection_interval: 43200 - ``` +```yaml +- schema: ORGANIZATION_USAGE + min_collection_interval: 43200 +``` De forma predeterminada, solo se habilitan algunas métricas de la organización. Para recopilar todas las métricas de la organización disponibles, utiliza la opción de configuración `metric_groups`: - ```yaml - metric_groups: - - snowflake.organization.warehouse - - snowflake.organization.currency - - snowflake.organization.credit - - snowflake.organization.storage - - snowflake.organization.contracts - - snowflake.organization.balance - - snowflake.organization.rate - - snowflake.organization.data_transfer - ``` +```yaml +metric_groups: + - snowflake.organization.warehouse + - snowflake.organization.currency + - snowflake.organization.credit + - snowflake.organization.storage + - snowflake.organization.contracts + - snowflake.organization.balance + - snowflake.organization.rate + - snowflake.organization.data_transfer +``` Además, puedes monitorizar las métricas de la cuenta y de la organización al mismo tiempo: - ```yaml - instances: - - account: example-inc - username: DATADOG_ORG_ADMIN - password: '' - role: SYSADMIN - schema: ORGANIZATION_USAGE - database: SNOWFLAKE - min_collection_interval: 43200 - - - account: example-inc - username: DATADOG_ACCOUNT_ADMIN - password: '' - role: DATADOG_ADMIN - schema: ACCOUNT_USAGE - database: SNOWFLAKE - min_collection_interval: 3600 - ``` +```yaml +instances: + - account: example-inc + username: DATADOG_ORG_ADMIN + password: "" + role: SYSADMIN + schema: ORGANIZATION_USAGE + database: SNOWFLAKE + min_collection_interval: 43200 + + - account: example-inc + username: DATADOG_ACCOUNT_ADMIN + password: "" + role: DATADOG_ADMIN + schema: ACCOUNT_USAGE + database: SNOWFLAKE + min_collection_interval: 3600 +``` #### Recopilación de datos para múltiples entornos @@ -428,50 +554,53 @@ Si deseas recopilar datos para varios entornos de Snowflake, añade cada entorno instances: - account: example-inc username: DATADOG_SYSADMIN - password: '' + password: "" role: SYSADMIN database: EXAMPLE-INC - account: example-inc username: DATADOG_USER - password: '' + password: "" role: DATADOG_USER database: EXAMPLE-INC ``` -#### Configuración de proxy +#### Configuración del proxy -Snowflake recomienda configurar [variables de entorno para la configuración de proxy][18]. +Snowflake recomienda configurar [variables de entorno para configuraciones de proxy][29]. -También puedes configurar `proxy_host`, `proxy_port`, `proxy_user` y `proxy_password` bajo `init_config` en [snowflake.d/conf.yaml][16]. +También puedes configurar `proxy_host`, `proxy_port`, `proxy_user` y `proxy_password` bajo `init_config` en [snowflake.d/conf.yaml][27]. -**Nota**: Snowflake formatea automáticamente las configuraciones de proxy y establece [variables de entorno de proxy estándar][19]. +**Nota**: Snowflake formatea automáticamente las configuraciones de proxy y configura [variables de entorno de proxy estándar][30]. Estas variables también afectan todas las solicitudes de integraciones, incluidos los orquestadores como Docker, ECS y Kubernetes. #### Conectividad privada a la configuración de Snowflake -Si la [conectividad privada][20] (como [AWS PrivateLink][21]) está habilitada en Snowflake, puedes configurar la integración de Snowflake actualizando la opción de configuración `account` con el siguiente formato: +Si la [conectividad privada][31] (como [AWS PrivateLink][32]) está habilitada en Snowflake, puedes configurar la integración Snowflake actualizando la opción de configuración `account` con el siguiente formato: - ```yaml - - account: ..privatelink - ``` +```yaml +- account: ..privatelink +``` ### Consultas personalizadas de Snowflake -La integración de Snowflake admite consultas personalizadas. De forma predeterminada, la integración se conecta a la base de datos compartida `SNOWFLAKE` y al esquema `ACCOUNT_USAGE`. +La integración Snowflake admite consultas personalizadas. Por defecto, la integración se conecta a la base de datos compartida `SNOWFLAKE` y al esquema `ACCOUNT_USAGE`. -Para ejecutar consultas personalizadas en un esquema o una base de datos diferentes, añade otra instancia al [ejemplo snowflake.d/conf.yaml][16] y especifica las opciones `database` y `schema`. -Asegúrate de que el usuario y el rol tengan acceso a la base de datos o al esquema especificados. +Para ejecutar consultas personalizadas en un esquema o una base de datos diferentes, añade otra instancia al [snowflake.d/conf.yaml de ejemplo][27] y especifica las opciones `database` y `schema`. +Asegúrate de que el usuario y el rol tienen acceso a la base de datos o al esquema especificados. #### Opciones de configuración + La opción `custom_queries` tiene las siguientes opciones: -| Opción | Obligatorio | Descripción | -|---------------|----------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| query | Sí | Este es el SQL que se va a ejecutar. Puede ser una sentencia simple o un script de varias líneas. Se evalúan todas las filas de los resultados. Utiliza la barra vertical si requieres un script de varias líneas. | -| columns | Sí | Se trata de una lista que representa cada columna ordenada secuencialmente de izquierda a derecha.

Hay 2 datos necesarios:
-`name`**: es el sufijo que se añade a `metric_prefix` para formar el nombre completo de la métrica. Si se especifica `type` como `tag`, la columna se aplica como una etiqueta a cada métrica recopilada por esta consulta.
- **`type`**: este es el método de envío (`gauge`, `count`, `rate`, etc.). También se puede establecer como `tag` para etiquetar cada métrica de la fila con el nombre y el valor (`:`) del elemento de esta columna. | -| tags | No | Una lista de etiquetas (tags) estáticas que pueden aplicarse a las métricas. | +| Opción | Obligatorio | Descripción | +| ------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| query | Sí | Este es el SQL que se va a ejecutar. Puede ser una sentencia simple o un script de varias líneas. Se evalúan todas las filas de los resultados. Utiliza la barra vertical si requieres un script de varias líneas. | +| columns | Sí | Se trata de una lista que representa cada columna ordenada secuencialmente de izquierda a derecha.

Hay 2 datos necesarios:
-`name`**: es el sufijo que se añade a `metric_prefix` para formar el nombre completo de la métrica. Si se especifica `type` como `tag`, la columna se aplica como una etiqueta a cada métrica recopilada por esta consulta.
- **`type`**: este es el método de envío (`gauge`, `count`, `rate`, etc.). También se puede definir como `tag` para etiquetar cada métrica de la fila con el nombre y el valor (`:`) del elemento de esta columna. | +| tags | No | Una lista de etiquetas estáticas que pueden aplicarse a las métricas. | + ##### Notas: + - Al menos uno de los elementos definidos en `columns` debería ser un tipo de métrica (`gauge`, `count`, `rate`). - El número de elementos en las columnas debe ser igual a la cantidad de columnas devueltas en la consulta. @@ -492,11 +621,13 @@ custom_queries: ``` #### Ejemplo -El siguiente ejemplo es una consulta que cuenta todas las consultas de la [vista `QUERY_HISTORY`][22] etiquetadas por nombres de base de datos, esquema y almacén. + +El siguiente ejemplo es una consulta que cuenta todas las consultas de la [vista `QUERY_HISTORY`][33], etiquetadas por nombres de base de datos, esquema y almacén. ```TEXT select count(*), DATABASE_NAME, SCHEMA_NAME, WAREHOUSE_NAME from QUERY_HISTORY group by 2, 3, 4; ``` + ##### Configuración de una consulta personalizada La configuración de una consulta personalizada en `instances` tiene el siguiente aspecto: @@ -517,16 +648,16 @@ custom_queries: - test:snowflake ``` - ### Agent: validación -[Ejecuta el subcomando de estado del Agent][23] y busca `snowflake` en la sección Checks. +[Ejecuta el subcomando de estado del Agent][34] y busca `snowflake` en la sección Checks. ## Agent: datos recopilados -
Nota: Por defecto, solo están habilitadas las métricas de los siguientes grupos de métricas: snowflake.query.*, snowflake.billing.*, snowflake.storage.* y snowflake.logins.*. +
Nota: Por defecto, sólo están activadas las métricas de los siguientes grupos de métricas: snowflake.query.*, snowflake.billing.*, snowflake.storage.* y snowflake.logins.*. + +Si quieres recopilar métricas de otros grupos de métricas, consulta el archivo de configuración de ejemplo de esta integración. -Si deseas recopilar métricas de otros grupos de métricas, consulta el archivo de configuración de ejemplo para esta integración.
### Agent: métricas @@ -540,42 +671,59 @@ Snowflake no incluye ningún evento. ### Agent: checks de servicio **snowflake.can_connect** -Devuelve `CRITICAL` si el check no puede autenticar las credenciales de Snowflake. De lo contrario, devuelve `OK`. -*Estados: ok, critical* +Devuelve `CRITICAL` si el check no puede autenticar las credenciales de Snowflake. En caso contrario, devuelve `OK`. +_Estados: ok, crítico_ ## Agent: solucionar problemas -¿Necesitas ayuda? Contacta con el [equipo de asistencia de Datadog][11]. +¿Necesitas ayuda? Ponte en contacto con el [servicio de asistencia de Datadog][20]. ## Referencias adicionales -Más enlaces, artículos y documentación útiles: +Documentación útil adicional, enlaces y artículos: -- [Monitorización de Snowflake con Datadog][24] -- [Monitorización de Snowflake Snowpark con Datadog][25] +- [Monitorizar Snowflake con Datadog][35] +- [Monitorizar Snowflake Snowpark con Datadog][36] +- [Métricas clave para monitorizar los costes y la calidad de los datos Snowflake][37] +- [Herramientas para recopilar y monitorizar métricas clave de Snowflake][38] +- [Monitorizar el rendimiento y la calidad de los datos de Snowflake con Datadog][39] -[1]: https://app.datadoghq.com/dash/integration/31321/snowflake-overview +[1]: https://app.datadoghq.com/dash/integration/31355/snowflake-overview [2]: https://docs.snowflake.com/en/user-guide/organizations-connect -[3]: https://app.datadoghq.com/integrations/snowflake-web -[4]: https://docs.snowflake.com/en/sql-reference/organization-usage/usage_in_currency_daily -[5]: https://app.datadoghq.com/cost/overview -[6]: https://docs.snowflake.com/en/user-guide/key-pair-auth#generate-the-private-key -[7]: https://docs.snowflake.com/en/user-guide/key-pair-auth#generate-a-public-key -[8]: https://docs.snowflake.com/en/user-guide/key-pair-auth#assign-the-public-key-to-a-snowflake-user -[9]: https://github.com/DataDog/integrations-internal-core/blob/main/snowflake_web/metadata.csv -[10]: https://github.com/DataDog/integrations-internal-core/blob/main/snowflake_web/assets/logs/snowflake.yaml -[11]: https://docs.datadoghq.com/es/help -[12]: https://www.snowflake.com/ -[13]: https://app.datadoghq.com/account/settings/agent/latest -[14]: https://docs.datadoghq.com/es/agent/guide/agent-v6-python-3/?tab=hostagent -[15]: https://docs.snowflake.com/en/sql-reference/account-usage.html#enabling-account-usage-for-other-roles -[16]: https://github.com/DataDog/integrations-core/blob/master/snowflake/datadog_checks/snowflake/data/conf.yaml.example -[17]: https://docs.datadoghq.com/es/agent/guide/agent-commands/#start-stop-and-restart-the-agent -[18]: https://docs.snowflake.com/en/user-guide/python-connector-example.html#using-a-proxy-server -[19]: https://github.com/snowflakedb/snowflake-connector-python/blob/d6df58f1c338b255393571a08a1f9f3a71d8f7b6/src/snowflake/connector/proxy.py#L40-L41 -[20]: https://docs.snowflake.com/en/user-guide/private-snowflake-service.html -[21]: https://docs.snowflake.com/en/user-guide/admin-security-privatelink.html -[22]: https://docs.snowflake.com/en/sql-reference/account-usage/query_history.html -[23]: https://docs.datadoghq.com/es/agent/guide/agent-commands/#agent-status-and-information -[24]: https://www.datadoghq.com/blog/snowflake-monitoring-datadog/ -[25]: https://www.datadoghq.com/blog/snowflake-snowpark-monitoring-datadog/ \ No newline at end of file +[3]: images/snowflake_account_url.png +[4]: https://app.datadoghq.com/integrations/snowflake-web +[5]: https://docs.snowflake.com/en/sql-reference/organization-usage/usage_in_currency_daily +[6]: https://app.datadoghq.com/cost/overview +[7]: https://docs.snowflake.com/en/user-guide/key-pair-auth#generate-the-private-key +[8]: https://docs.snowflake.com/en/user-guide/key-pair-auth#generate-a-public-key +[9]: https://docs.snowflake.com/en/user-guide/key-pair-auth#assign-the-public-key-to-a-snowflake-user +[10]: images/custom_query.png +[11]: images/snowflake_metrics.png +[12]: https://docs.datadoghq.com/es/reference_tables/?tab=manualupload +[13]: https://docs.datadoghq.com/es/service_management/events/explorer/ +[14]: https://docs.snowflake.com/en/user-guide/views-introduction +[15]: https://www.datadoghq.com/product/cloud-cost-management/ +[16]: https://docs.snowflake.com/en/user-guide/views-materialized +[17]: https://docs.snowflake.com/en/user-guide/dynamic-tables-about +[18]: https://www.snowflake.com/en/support/ +[19]: https://docs.datadoghq.com/es/reference_tables/?tab=manualupload#reference-table-limits +[20]: https://docs.datadoghq.com/es/help +[21]: https://github.com/DataDog/integrations-internal-core/blob/main/snowflake_web/metadata.csv +[22]: https://github.com/DataDog/integrations-internal-core/blob/main/snowflake_web/assets/logs/snowflake.yaml +[23]: https://www.snowflake.com/ +[24]: https://app.datadoghq.com/account/settings/agent/latest +[25]: https://docs.datadoghq.com/es/agent/guide/agent-v6-python-3/?tab=hostagent +[26]: https://docs.snowflake.com/en/sql-reference/account-usage.html#enabling-account-usage-for-other-roles +[27]: https://github.com/DataDog/integrations-core/blob/master/snowflake/datadog_checks/snowflake/data/conf.yaml.example +[28]: https://docs.datadoghq.com/es/agent/guide/agent-commands/#start-stop-and-restart-the-agent +[29]: https://docs.snowflake.com/en/user-guide/python-connector-example.html#using-a-proxy-server +[30]: https://github.com/snowflakedb/snowflake-connector-python/blob/d6df58f1c338b255393571a08a1f9f3a71d8f7b6/src/snowflake/connector/proxy.py#L40-L41 +[31]: https://docs.snowflake.com/en/user-guide/private-snowflake-service.html +[32]: https://docs.snowflake.com/en/user-guide/admin-security-privatelink.html +[33]: https://docs.snowflake.com/en/sql-reference/account-usage/query_history.html +[34]: https://docs.datadoghq.com/es/agent/guide/agent-commands/#agent-status-and-information +[35]: https://www.datadoghq.com/blog/snowflake-monitoring-datadog/ +[36]: https://www.datadoghq.com/blog/snowflake-snowpark-monitoring-datadog/ +[37]: https://www.datadoghq.com/blog/snowflake-metrics/ +[38]: https://www.datadoghq.com/blog/snowflake-monitoring-tools/ +[39]: https://www.datadoghq.com/blog/monitor-snowflake-with-datadog/ \ No newline at end of file diff --git a/content/es/integrations/solarwinds.md b/content/es/integrations/solarwinds.md index c3521fded2c..3e119fa4bb8 100644 --- a/content/es/integrations/solarwinds.md +++ b/content/es/integrations/solarwinds.md @@ -28,7 +28,7 @@ Obtén alertas de SolarWinds Orion para agregar y clasificar tus alertas en una Esta integración funciona al suscribir Datadog a todas tus notificaciones de alerta de SolarWinds. -## Configuración +## Configurar ### Crear acciones desencadenantes diff --git a/content/es/integrations/visualstudio.md b/content/es/integrations/visualstudio.md new file mode 100644 index 00000000000..1106a419435 --- /dev/null +++ b/content/es/integrations/visualstudio.md @@ -0,0 +1,88 @@ +--- +app_id: visual-studio +app_uuid: ee8a2962-c923-492c-9198-c851f520a0e0 +assets: {} +author: + homepage: https://www.datadoghq.com + name: Datadog + sales_email: info@datadoghq.com + support_email: help@datadoghq.com +categories: +- herramientas de desarrollo +custom_kind: integración +dependencies: [] +display_on_public_website: true +draft: false +git_integration_title: visualstudio +integration_id: visual-studio +integration_title: Visual Studio +integration_version: '' +is_public: true +manifest_version: 2.0.0 +name: visualstudio +public_title: Visual Studio +short_description: Extensión Datadog para Visual Studio +supported_os: +- Windows +tile: + changelog: CHANGELOG.md + classifier_tags: + - Sistema operativo compatible::Windows + - Categoría::Herramientas de desarrollo + - Oferta::Integración + configuration: README.md#Configuración + description: Extensión Datadog para Visual Studio + media: + - caption: Seguimiento de errores en Visual Studio + image_url: images/overview.png + media_type: imagen + overview: README.md#Información general + resources: + - resource_type: otros + url: https://marketplace.visualstudio.com/items?itemName=Datadog.VisualStudio + support: README.md#Soporte + title: Visual Studio +--- + + + + +## Información general + +La [extensión Datadog para Visual Studio][1] te ayuda a mejorar tu software proporcionándote información a nivel de código directamente en el IDE, basada en datos de observabilidad en tiempo real: + +- Logs +- Elaboración de perfiles +- Seguimiento de errores +- CI Visibility +- Protección de las aplicaciones y las API +- Análisis estático + +## Configuración + +### Instalación + +1. Descarga e instala la extensión desde el [Marketplace Visual Studio][2]. +2. En Visual Studio, ve a **Tools > Options > Datadog** (Herramientas > Opciones > Datadog). +3. Inicia sesión con tu cuenta de Datadog. + +### Configuración + +Selecciona los servicios Datadog correspondientes a tu proyecto en la configuración del complemento. + +1. Abre una solución en Visual Studio. +2. Ve a **Extensions > Datadog > Linked Services** (Extensiones > Datadog > Servicios vinculados). +3. Añade servicios y guarda tu solución. + +### Referencias adicionales + +- [Extensión Datadog en el Marketplace Microsoft][2] + +## Compatibilidad + +¿Necesitas ayuda? Ponte en contacto con el [servicio de asistencia de Datadog][3] o abre un [incidente en GitHub][4]. + +[1]: https://docs.datadoghq.com/es/developers/ide_integrations/visual_studio/ +[2]: https://marketplace.visualstudio.com/items?itemName=Datadog.VisualStudio +[3]: https://docs.datadoghq.com/es/help/ +[4]: https://github.com/DataDog/datadog-for-visual-studio \ No newline at end of file diff --git a/content/es/logs/guide/sending-events-and-logs-to-datadog-with-amazon-eventbridge-api-destinations.md b/content/es/logs/guide/sending-events-and-logs-to-datadog-with-amazon-eventbridge-api-destinations.md index 55a9bee92da..3a5ed49b1ac 100644 --- a/content/es/logs/guide/sending-events-and-logs-to-datadog-with-amazon-eventbridge-api-destinations.md +++ b/content/es/logs/guide/sending-events-and-logs-to-datadog-with-amazon-eventbridge-api-destinations.md @@ -3,21 +3,25 @@ further_reading: - link: https://aws.amazon.com/blogs/compute/using-api-destinations-with-amazon-eventbridge/#sending-aws-events-to-datadog tag: Blog text: Blog de AWS con ejemplos de uso de destinos de API +- link: /logs/guide/reduce_data_transfer_fees + tag: Guía + text: Enviar logs a Datadog mientras se reducen los costes de transferencia de datos +site_support_id: amazon_event_bridge title: Envío de eventos y logs a Datadog con destinos de API de Amazon EventBridge --- Amazon EventBridge es un bus de eventos serverless que te permite crear aplicaciones basadas en eventos. EventBridge puede integrarse con tus servicios AWS, pero la función de destinos de API te permite enviar y recibir datos fuera de AWS utilizando las API. En esta guía se indican los pasos necesarios para enviar tus eventos y logs desde EventBridge a Datadog. Para obtener más información sobre el envío de tus eventos desde Datadog a EventBridge, consulta la [documentación de la integración EventBridge][1]. -## Configuración +## Configurar Antes de empezar, necesitas una [cuenta Datadog][2] con [una clave de API][3] y también necesitas acceso a [destinos de API Amazon Eventbridge][4]. ### Configuración -1. Para añadir Datadog como destino API, sigue los pasos indicados en la [documentación de Amazon Crear un destino de API[5]. - - Utiliza la autorización de clave de API, con `DD-API-KEY` como nombre de tu clave y tu [clave de API Datadog][3] como valor. +1. Para añadir Datadog como destino de API, sigue los pasos indicados en la documentación de Amazon [Crear un destino de API[5]. + - Utiliza la autorización de la clave de API, con `DD-API-KEY` como nombre de tu clave y tu [clave de API Datadog][3] como valor. - Para tu endpoint de destino, utiliza `https://{{< region-param key="http_endpoint" code="true" >}}/api/v2/logs` para logs y `https://api.{{< region-param key="dd_site" code="true" >}}/api/v1/events` para eventos, y configura `POST` como método HTTP. Para obtener más información sobre las diferencias entre logs y eventos, consulta [Reducir los riesgos relacionados con los datos][8]. - - Si utiliza el endpoint de eventos, debes incluir `title` y `text` como parámetros `body.field` en la conexión del destino de la API. Estos son los valores necesarios para `POST` al endpoint de eventos. Para obtener más información, consulta la documentación [Publicar un evento][9]. + - Si utilizas el endpoint de eventos, debes incluir `title` y `text` como parámetros `body.field` en la conexión del destino de la API. Estos son los valores necesarios para `POST` al endpoint de eventos. Para obtener más información, consulta la documentación [Publicar un evento][9]. 2. Una vez configurado el destino, consulta la documentación de Amazon para [crear una regla EventBridge][10], donde configuras Datadog como tu destino. 3. Una vez configurada la regla con Datadog como destino, activa un evento publicando un evento para EventBridge. Para obtener más información sobre cómo enviar eventos a EventBridge desde Datadog, consulta la documentación [de la integración EventBridge][1]. Por ejemplo, para activar un evento de test [cargando los objetos a un bucket de S3][11] en tu cuenta, utiliza este comando AWS CloudShell: @@ -25,9 +29,9 @@ Antes de empezar, necesitas una [cuenta Datadog][2] con [una clave de API][3] y echo "test" > testfile.txt aws s3 cp testfile.txt s3://YOUR_BUCKET_NAME ``` -4. Una vez que se envían los eventos y los logs, al cabo de unos cinco minutos los datos están disponibles en la [consola de logs][12] o el [Explorador de eventos][13] de Datadog, dependiendo del endpoint al que los estés enviando. +4. Una vez que se envían los eventos y los logs, al cabo de unos cinco minutos los datos están disponibles en la [consola de logs][12] o en el [Explorador de eventos][13] de Datadog, dependiendo del endpoint al que los estés enviando. -## Resolución de problemas +## Solucionar problemas Para ver más detalles sobre las cargas útiles enviadas a Datadog y ver la respuesta de los endpoints de la API, configura una cola de Amazon SQS: 1. Crea una cola en [Amazon SQS][14]. @@ -38,7 +42,7 @@ Para ver más detalles sobre las cargas útiles enviadas a Datadog y ver la resp 5. Selecciona la cola SQS que acabas de crear. 6. Actualiza la regla. -## Leer más +## Referencias adicionales {{< partial name="whats-next/whats-next.html" >}} diff --git a/content/es/network_monitoring/network_path/list_view.md b/content/es/network_monitoring/network_path/list_view.md index 9c93b179d50..6b947dfd7b6 100644 --- a/content/es/network_monitoring/network_path/list_view.md +++ b/content/es/network_monitoring/network_path/list_view.md @@ -11,12 +11,6 @@ is_beta: true title: Vista de lista --- -{{< site-region region="gov" >}} -
Network Path para Datadog Cloud Network Monitoring no es compatible con tu sitio Datadog seleccionado ({{< region-param key="dd_site_name" >}}).
-{{< /site-region >}} - -
Network Path para Datadog Cloud Network Monitoring tiene disponibilidad limitada. Para inscribirte, ponte en contacto con tu representante de Datadog.
- ## Información general La Vista de lista de Network Path es la vista por defecto para explorar varias rutas. Agrupa por fuentes como `hostname` y `service`. diff --git a/content/es/notebooks/_index.md b/content/es/notebooks/_index.md index 67c2412e76e..d271bbd7159 100644 --- a/content/es/notebooks/_index.md +++ b/content/es/notebooks/_index.md @@ -1,11 +1,10 @@ --- aliases: - /es/graphing/notebooks/ -cascade: - algolia: - rank: 70 +- /es/notebooks_new/ +- /es/notebooks_legacy/ further_reading: -- link: https://www.datadoghq.com/blog/incident-management-templates-notebooks-list/ +- link: https://www.datadoghq.com/blog/incident-response-templates-notebooks-list/ tag: Blog text: Crear y consultar una biblioteca de documentación - link: https://www.datadoghq.com/blog/collaborative-notebooks-datadog/ @@ -13,83 +12,118 @@ further_reading: text: Crear artículos basados en datos con notebooks colaborativos - link: https://www.datadoghq.com/blog/incident-postmortem-process-best-practices/ tag: Blog - text: Prácticas recomendadas para redactar informes de incidentes + text: Prácticas recomendadas para redactar informes retrospectivos de incidencias - link: https://www.datadoghq.com/blog/observability-pipelines-transform-and-enrich-logs/ tag: Blog - text: Transforma y mejora tus logs con pipelines de observabilidad de Datadog + text: Transformar y enriquecer tus logs con Datadog Observability Pipelines title: Notebooks --- ## Información general -Los notebooks combinan gráficos y texto en un formato lineal con celdas. De esta forma, te permiten consultar y compartir artículos mediante la creación de informes, estudios, runbooks y otros documentos. +Los notebooks son editores de texto colaborativos que proporcionan toda la potencia de los gráficos de Datadog a tus documentos. Varios usuarios pueden trabajar juntos para elaborar una investigación o un análisis retrospectivo con datos en tiempo real del incidente. Los notebooks también son ideales para guías y documentación, ya que ofrecen información real de tus sistemas junto con tus contenidos. -## Para empezar +## Creación de un notebook -1. En la página de la [lista de notebooks][1], haz clic en **+ New Notebook** (+ Nuevo notebook). +Puedes crear un notebook en dos lugares: -2. Haz clic en el botón **Save Notebook** (Guardar notebook).
- **Nota**: De forma predeterminada, los notebooks nuevos no se guardan automáticamente. +- En la barra de navegación de la izquierda, haz clic en **Dashboards > New Notebook** (Dashboard > Nuevo notebook). +- En la esquina superior derecha de la [página de la lista de notebooks][1], haz clic en **New Notebook** (Nuevo notebook). -3. Añade nuevas celdas a tu notebook con [gráficos y contenidos compatibles](#types-of-content). +### Plantillas de notebook -4. [Configura las celdas](#cell-configuration). +En la [galería de plantillas][2], puedes obtener plantillas listas para utilizar a partir de las que puedes crear notebooks. Estas plantillas incluyen un informe retrospectivo de la respuesta ante incidentes, un informe de incidentes y una especificación de SLO. También puedes crear una nueva plantilla personalizada para generar estructuras de notebook reutilizables. -## Colaboración +## Edición de un notebook -{{< img src="notebooks/collaboration.png" alt="Indicadores de los usuarios que están consultando un notebook y realizando cambios en vivo" style="width:100%;">}} +Con los notebooks, puedes empezar a escribir utilizando atajos de markdown, como `#`, para las cabeceras, o ```, para los bloques de código. Los notebooks guardan automáticamente tu contenido de texto a medida que escribes. En el caso de los gráficos, guarda todas las ediciones en el editor de gráficos para que el widget se guarde en el notebook. -Los notebooks permiten la colaboración en tiempo real. Los indicadores de presencia te permiten ver quiénes están consultando un notebook en cualquier momento, además de las modificaciones en tiempo real de las celdas. Los cambios llevados a cabo en un notebook aparecen de forma automática, sin necesidad de actualizar. +### Tipos de celdas +Los notebooks admiten varios tipos de células, entre las que se incluyen: +- [Gráficos](#graphs-in-notebooks) +- Imágenes +- Cabeceras (H1 - H3) +- Listas (listas con viñetas, listas numeradas y listas de verificación) +- Bloques de código +- Comillas +- [Markdown](#markdown-cells) -Todos los miembros del equipo pueden abrirlos, pero sólo los usuarios de Datadog con el permiso `Notebooks Write` pueden modificarlos o eliminarlos. +Para ver la lista completa, escribe / en un notebook. -### Comentarios +### Gráficos en notebooks -Para añadir un comentario, selecciona un texto o pasa el cursor sobre un gráfico. El icono **Add comment** (Añadir comentario) aparecerá a la derecha de la celda. Desde los comentarios, también puedes notificar a un miembro del equipo mediante la función`@mention`. Haz clic en los tres puntos verticales de la esquina superior derecha de un comentario que hayas escrito para editarlo o borrarlo. También puedes consultar o reabrir comentarios resueltos en el panel lateral Comment History (Historial de comentarios), al que podrás acceder desde el menú del engranaje del notebook. +Los notebooks admiten todos los tipos de widgets. Para ver la lista completa, consulta [Widgets][3]. -Los creadores reciben notificaciones de correo electrónico cada vez que alguien publica comentarios en sus notebooks. A su vez, la persona que deja el comentario también los recibe cuando alguien le responde. Gestiona los parámetros de las notificaciones mediante `Notifications`, en el menú del engranaje. +En una celda de un gráfico del notebook, pasa el ratón por encima del widget para ver las opciones de edición y configuración del gráfico. -### Tipo de vista +Para editar la consulta o configurar la visualización del gráfico, haz clic en el icono del lápiz o mantén pulsada la tecla Cmd/Ctrl y haz clic en el gráfico para abrir el editor de gráficos completo. Puedes ajustar el periodo de tiempo local o vincular el gráfico a la hora global del notebook haciendo clic en el icono del reloj. -{{< img src="notebooks/read_mode.png" alt="Menú desplegable del tipo de vista" style="width:100%;">}} +En el menú de tres puntos se puede acceder a otras opciones de configuración de gráficos, dependiendo del tipo de gráfico: +- **Tamaño del gráfico**: Ajusta la altura del gráfico seleccionando XS, S, M (por defecto), L o XL. +- **Leyenda del gráfico**: Desmarca la casilla para ocultar la leyenda. Las leyendas se desactivan automáticamente en los gráficos XS y S. +- **Gráfico dividido**: Muestra un gráfico por cada valor de etiqueta (tag) para ver pequeños múltiplos de tu visualización. -Puedes elegir entre las distintas vistas del notebook seleccionando el menú desplegable en la parte superior derecha de tu notebook. +### Características markdown y de texto enriquecido -- **Editing** (Edición): para hacer cambios en el notebook. +El contenido markdown puede añadirse directamente al texto. Utiliza markdown en notebooks para las siguientes funciones: +- Tablas de texto +- Resaltado de sintaxis en bloques de código +- Variables de plantilla en línea +- @Menciones -- **Viewing** (Visualización): para consultar contenidos que son de sólo lectura y evitar que los usuarios hagan cambios no deseados en parámetros y datos. +Los notebooks admiten funciones de texto enriquecido de uso común como negrita, cursiva, código en línea y cabeceras. Los notebooks también admite diversos tipos de listas como viñetas, numeradas o de verificación. -- **Presenting** (Presentación): para compartir contenidos de forma que cada celda del notebook aparezca como una diapositiva. Este modo es compatible con interacciones gráficas como cuadros de información y leyendas. +| Función | Descripción | +|---------------|------------------------------------------------------------------------------------------------------------------| +| **Negrita** | Para poner un texto en negrita, selecciónalo y pulsa Cmd/Ctrl + B. | +| *Cursiva* | Para poner un texto en cursiva, selecciónalo y pulsa Cmd/Ctrl + I. | +| `Inline code` | Para el código en línea, escribe ` al principio y al final del texto. | +| Bloques de código | Inserta un bloque de código escribiendo ``` y pulsando Intro o utilizando el menú de comandos de barra. | +| Comillas | Inserta un bloque de comillas escribiendo `>` o utilizando el menú de comandos de barra. | -## Compartir un notebook +### Comandos de barra -Haz clic en el icono del engranaje en la parte superior derecha de un notebook para ver las opciones para compartir. Puedes exportarlo a PDF, Markdown y otros formatos compatibles con un editor de documentos. +Los comandos de barra son una interfaz para crear gráficos o celdas. En una nueva línea, escribe `/` para abrir el menú de comandos de barra. Continúa escribiendo el nombre del tipo de celda deseado y selecciona la opción correspondiente. -Para copiar un notebook en un editor de documentos, haz clic en **Copy formatted contents** (Copiar contenidos con formato). Luego, pégalo en un editor de documentos como Google Docs o Microsoft Word para ver los contenidos, incluidos los gráficos, en su formato original. +{{< img src="/notebooks/notebooks_new/slash_command_menu.png" alt="Menú de comandos de barra que aparece cuando escribes / en una celda de notebook" style="width:70%;" >}} -### Importar o exportar un notebook en formato JSON +Al seleccionar un tipo de gráfico, se abre el [editor de gráficos][3]. Al hacer clic en **Save** (Guardar), el gráfico aparece en tu notebook. -Utiliza **Export Notebook JSON** (Exportar notebook en formato JSON) para descargar un archivo JSON que contiene la definición de tu notebook. Con **Import Notebook JSON** (Importar notebook en formato JSON) se sobreescribe el contenido del notebook con el contenido del archivo JSON cargado. +### Atajos de teclado -### Enlace a celdas individuales +{{< img src="/notebooks/notebook_keyboard_shortcuts.png" alt="Menú de atajos de teclado para notebooks de Datadog" style="width:70%;" >}} -Para copiar la URL de una celda específica, haz clic en el menú **Share** (Compartir) de la celda y selecciona **Link directly to cell** (Vincular directamente a celda). La vinculación directa está disponible tanto para las celdas de visualización como para las celdas Markdown. +En la esquina inferior izquierda de un notebook, haz clic en el icono del teclado para ver una lista de atajos de teclado para la edición. -Cuando un usuario visita la URL de una celda específica, el notebook se abre y muestra la celda en la parte superior de la ventanilla. Los enlaces son absolutos. La URL de una celda no varía incluso si se la cambia de sitio dentro del notebook. +Además, puedes utilizar los siguientes atajos para cortar y pegar widgets (Cmd/Ctrl + X, Cmd/Ctrl + V). -## Añadir imágenes a notebooks +### Índice + +Los notebooks generan automáticamente una tabla de contenidos a partir de cualquier cabecera que insertes en tu documento. Puedes crear una cabecera utilizando el atajo markdown `#` o seleccionando texto y luego **Cabecera ** en la barra de herramientas. + +### Etiquetas de notebooks + +{{< img src="/notebooks/notebooks_new/notebook_tags.png" alt="Opciones de etiquetado para notebooks, para marcar un notebook como favorita, añadir un equipo o añadir un tipo" style="width:80%;" >}} + +| Acción de etiquetado | Descripción | +|------------------------|----------------------------------------------------------------------------------------------------------------------| +| **Marcar un notebook como favorito** | Marca un notebook como favorito para fijarlo en la parte superior de tus resultados en la página de la lista de notebooks. Para marcar un notebook como favorito, haz clic en el icono de la estrella que aparece en la cabecera del notebook. | +| **Etiquetar por equipo** | Etiquetar un notebook con un equipo te permite utilizarlo como filtro cuando buscas un notebook. Puedes etiquetar un notebook con hasta 5 equipos. Para etiquetar un notebook, haz clic en la opción **Team** (Equipo) en la cabecera del notebook y selecciona los equipos deseados. | +| **Etiquetar por tipo** | Para facilitar la búsqueda, puedes etiquetar tus notebooks con etiquetas de tipo, como: Postmortem, Runbook, Investigation, Documentation, Report. Para etiquetar un notebook, haz clic en **Type** (Tipo) y selecciona un tipo. | + +### Añadir imágenes a notebooks
Solo se admiten los tipos de archivo PNG, JPG, JPEG y GIF. El tamaño máximo de los archivos es de 4 MB.
-Puedes añadir imágenes a tu notebook mediante la [celda de imagen](#image-cell) o el [editor de Markdown](#markdown-editor). +Puedes añadir imágenes a tu notebook utilizando la [celda de imagen](#image-cell). -### Celda de imagen +#### Celda de imagen Este método coloca la imagen en una celda separada del texto y ofrece opciones para redimensionar, alinear y titular la imagen. Las imágenes cargadas por la celda de imagen se alojan en Datadog. Para añadir una imagen, haz clic en la opción de celda **Image** (Imagen) del menú **Add New Cell** (Añadir nueva celda). -{{< img src="notebooks/image_cell.png" alt="Celda de imagen en el menú de celdas Añadir nueva celda" style="width:70%;" >}} + Puedes utilizar cualquiera de las siguientes opciones para subir una imagen que se alojará en Datadog: - Coloca un archivo de imagen en el área de carga @@ -98,62 +132,89 @@ Puedes utilizar cualquiera de las siguientes opciones para subir una imagen que Haz clic en los iconos de la bandeja de acciones de la celda para ajustar el tamaño, la alineación, añadir una leyenda para la celda de la imagen o ver la imagen en modo de pantalla completa. -{{< img src="notebooks/notebooks_image_edit_action_tray.png" alt="Bandeja de acciones de la celda para ajustar la alineación de la imagen y añadir una leyenda" style="width:70%;" >}} + -### Editor de Markdown +#### Editor de Markdown Este método coloca la imagen en línea con el texto, pero no ofrece opciones para cambiar el tamaño de la imagen. -Accede al modo de edición en cualquier celda de Markdown y utiliza cualquiera de las siguientes opciones para añadir la imagen: +Accede al modo de edición en cualquier celda markdown y utiliza cualquiera de las siguientes opciones para añadir la imagen: - Coloca un archivo de imagen en el área de celdas de texto. - Copia y pega la imagen directamente en el área de la celda de texto. -- Hipervincula una imagen externa mediante el widget de la imagen en el encabezado o haciendo referencia a la [guía oficial de Markdown][2]. **Nota**: Esta opción no carga la imagen que se alojará en Datadog. +- Hipervincula una imagen externa utilizando el widget de la imagen en la cabecera o haciendo referencia a la [guía oficial de markdown][4]. + + **Nota**: Esta opción no sube la carga para ser alojada por Datadog. Puedes previsualizar la imagen en pestaña de vista previa antes de guardarla en tu notebook. -## Lista de notebooks +## Añadir comentarios a un notebook + +Puedes añadir comentarios sobre el contenido en el cuerpo del notebook. Para comentar un texto, resáltalo y haz clic en el icono de comentario de la barra de herramientas. -{{< img src="notebooks/notebook_list.png" alt="Lista de notebooks con la vista previa de los tipos de celdas de un notebook seleccionado" style="width:100%;">}} + -La [lista de notebooks][1] te permite ver y buscar notebooks creados anteriormente. Se muestra el nombre, el creador y la fecha de la última modificación de cada notebook. Los notebooks se agrupan por: +Para comentar un gráfico o una imagen, selecciona la celda y haz clic en el icono de comentario situado a la derecha de la celda. -* **Your notebooks** (Tus notebooks): notebooks que has creado. -* **All Notebooks** (Todos los notebooks): todos los notebooks de tu organización. -* **[Notebook Type (Tipo de notebook)](#notebook-types)**: agrupa los notebooks por tipo. +| Función | Descripción | +|--------------------------|----------------------------------------------------------------------------------------------------------------------| +| **Ir a los comentarios** | Los comentarios guardados aparecen en el margen derecho del notebook. Haz clic en un comentario resaltado en el texto para abrirlo en el margen o haz clic en un comentario en el margen para desplazarte hasta su localización en la celda. | +| **Responder a los comentarios** | Responde a los comentarios haciendo clic en ellos en el margen derecho, lo que abre un cuadro de comentarios. Puedes escribir texto, `@mention` un usuario de Datadog o resolver un comentario haciendo clic en **Resolve** (Resolver). | +| **Crear enlaces a comentarios** | Crea un enlace a un comentario específico haciendo clic en el icono del enlace situado en la esquina superior derecha del comentario para copiar su enlace. | +| **Editar o eliminar comentarios** | Edita o elimina tus comentarios haciendo clic en el menú de tres puntos situado en la esquina superior derecha del comentario. | +| **Comentar notificaciones** | Por defecto, las notificaciones por correo electrónico se envían al autor del notebook para obtener nuevos comentarios de los demás. Los usuarios de un hilo de comentarios reciben las notificaciones de cada respuesta. Para ajustar las notificaciones, en el menú del engranaje selecciona **Notificaciones**. | -Pasa el cursor sobre el icono de vista previa en cualquier notebook para ver los contenidos, incluidos los de tipo widget y Markdown. Para abrir el notebook en [modo de visualización](#view-mode), pasa el cursor sobre el notebook y haz clic en **Open notebook in view mode** (Abrir notebook en modo de visualización) a la derecha. +## Experiencia multi-usuario en notebooks -## Galería de plantillas -En la [galería de plantillas][3], puedes obtener plantillas listas para usar a partir de las que puedes crear notebooks. Estas plantillas incluyen un informe retrospectivo de la respuesta ante incidencias, un informe de incidencias y una especificación de SLO. También puedes crear una nueva plantilla personalizada para generar estructuras de notebook reutilizables. +Gracias a la presencia de texto enriquecido, los notebooks admiten la colaboración total, lo que permite que varios usuarios trabajen simultáneamente. Cuando un colaborador abre tu notebook, su cursor aparece en tiempo real. Pasa el ratón por encima del cursor para ver el nombre del colaborador. -## Historial de versiones -Desde un notebook, haz clic en el icono **Configure** (Configurar) y haz clic en **Version history** (Historial de versiones) para abrir el panel lateral Historial de versiones. Puedes previsualizar, restaurar o clonar el historial de versiones de tu notebook. Para más información, consulta la [Guía del historial de versiones][4]. + -## Configuración del notebook +### Widgets -### Periodos de tiempo +Cuando otro usuario está editando un widget, aparece un contorno alrededor del widget. Como los widgets se guardan como escrituras recientes, evita editar un widget en el que esté trabajando otra persona. + + + +#### Presencia + +En la parte superior del notebook, puedes ver las imágenes de los avatares de todos los usuarios que están visualizando el notebook. Pasa el ratón por encima de un avatar para ver el nombre del colaborador asociado. + + + +## Configuración de un notebook + +### Variables de plantilla + +Los notebooks aceptan variables de plantilla. Recorre las visualizaciones de forma dinámica añadiendo y seleccionando valores de variables de plantilla. Para obtener más información, consulta [Variables de plantilla][5]. + +### Controles de tiempo De forma predeterminada, todas las celdas con gráficos están vinculadas al periodo de tiempo que se define en el encabezado del notebook. -Para ver un periodo diferente, elige otra opción en el selector. También puedes arrastrar en el gráfico directamente. La URL se actualizará para reflejar el nuevo periodo de tiempo sin guardarlo en el notebook. +Para ver un periodo de tiempo diferente, selecciona una opción en el selector de tiempo global o desplázate directamente sobre un gráfico. La URL del notebook se actualiza para reflejar este nuevo periodo de tiempo sin guardarlo en el notebook. **Nota**: Hacer clic y arrastrar para hacer zoom en un gráfico no desvincula la celda del periodo global, cambia el periodo global del notebook. -{{< img src="notebooks/set_default_time.png" alt="Guardar el periodo global del notebook con el botón Set Default Time" style="width:100%;">}} + Para guardar el periodo elegido como el predeterminado del notebook, haz clic en **Set Default Time** (Definir periodo por omisión). Para restablecer el periodo al global que tuvieras guardado de forma predeterminada, haz clic en el botón de restablecimiento. Las celdas individuales pueden desvincularse del periodo global y asociarse a un periodo de tiempo concreto. -{{< img src="notebooks/cell_time.png" alt="Selector de periodos de tiempo para celdas con la celda desvinculada del periodo global" style="width:100%;">}} + Para ver un periodo de tiempo diferente en una sola celda, edítala y utiliza el conmutador para desvincularla del periodo global. Cambia el periodo utilizando el selector o arrastrando el gráfico. Los cambios que se hacen en modo de edición se guardan automáticamente cuando pulsas **Done** (Listo). Si lo que quieres es descartarlos, haz clic en **Cancel** (Cancelar). -### Tipos de notebooks +### Modos + +Puedes cambiar de un modo a otro en el propio notebook. seleccionando el menú desplegable situado en la parte superior derecha del notebook. + +- **Edición**: Realizar cambios en el notebook. +- **Visualización**: Los contenidos son de sólo lectura, lo que evita que los usuarios realicen ediciones no deseadas en las configuraciones e información existentes. -{{< img src="notebooks/add_notebook_type.png" alt="Botón Add Type (Añadir tipo) destacado en un notebook" style="width:100%;">}} +### Historial de versiones -Los notebooks pueden agruparse en tipos, lo que te permite acceder rápidamente a la información relevante. Si se crean a partir de otros productos como gestión de incidencias o monitores, se les asigna un tipo automáticamente. Pasa el cursor sobre el título para que se muestre la opción para añadirlo o editarlo. Para añadir un tipo haz clic en **+ Add Type** y, si lo que quieres es editarlo, haz clic en el icono del lápiz que aparece al lado cuando pasas el cursor por encima. +En el notebook, haz clic en el icono de engranaje y en **Version history** (Historial de versiones) para abrir el panel lateral Historial de versiones. Puedes previsualizar, restaurar o clonar el historial de versiones de tu notebook. Para obtener más información, consulta la [Guía del historial de versiones][6]. ### Snapshots gráficas @@ -167,96 +228,73 @@ Para previsualizar una snapshot en un gráfico vinculado a un periodo de tiempo Si quieres compartir una versión de tu notebook con snapshots, desde el menú del engranaje, haz clic en **View snapshots** (Ver snapshots). Copia la URL o anexa `&view=snapshots` a la URL de cualquier notebook que tenga la función de snapshot activada. -### Variables de plantilla +### Permisos -Los notebooks aceptan variables de plantilla. Recorre las visualizaciones de forma dinámica añadiendo y seleccionando valores de variables de plantilla. Para obtener más información, consulta [Variables de plantilla][5]. +Por omisión, todos los usuarios tienen acceso completo a notebooks. -### Configuración de las celdas +Utiliza los controles de acceso granular para limitar los [roles][7] que pueden editar un notebook concreto: +1. Cuando consultes un notebook, haz clic en el engranaje que aparece en la parte superior derecha. Se abrirá el menú de configuración. +1. Selecciona **Permissions** (Permisos). +1. Haz clic en **Restrict Access** (Restringir el acceso). +1. El cuadro de diálogo se actualiza para mostrar que los miembros de tu organización tienen por omisión el permiso de acceso **Viewer** (Visualización). +1. Utiliza el menú desplegable para seleccionar uno o varios roles, equipos o usuarios que pueden modificar el notebook. +1. Haz clic en **Add** (Añadir). +1. El cuadro de diálogo se actualiza para indicar que el rol que has seleccionado tiene el permiso **Editor** (Edición). +1. Haz clic en **Save** (Guardar). -Para añadir celdas, usa el botón **+** que aparece a la izquierda de la celda o selecciona una opción de la sección **Add New Cell** (Añadir celda nueva) de la parte inferior del notebook. Usa la bandeja de acciones que aparece sobre la celda cuando pasas el cursor por encima para compartir, clonar o borrar celdas. Las celdas gráficas pueden exportarse a un dashboard o descargarse como PNG o CSV de datos gráficos. Los cambios que hagas en el modo de edición se guardan automáticamente al pulsar **Done** (Listo). Si quieres descartarlos, haz clic en **Cancel** (Cancelar). +**Nota:** Para mantener tu acceso de edición al notebook, el sistema necesita que incluyas al menos un rol al que pertenezcas antes de guardar. -#### Opciones de edición +Debes tener acceso de edición para restaurar el acceso general a un notebook restringido. Realiza los siguientes pasos: +1. Cuando consultes un notebook, haz clic en el engranaje que aparece en la parte superior derecha. Se abrirá el menú de configuración. +1. Selecciona **Permissions** (Permisos). +1. Haz clic en **Restore Full Access** (Restablecer acceso completo). +1. Haz clic en **Save** (Guardar). -Haz clic en **More options** (Más opciones) en el editor integrado de un widget para editar las opciones del widget. Añade detalles como superposiciones de eventos, marcadores y controles del eje Y. +## Buscar notebooks -#### Opciones de diseño +La [página de la lista de notebooks][1] es el lugar donde encontrarás todos tus notebooks. -En una celda de un notebook, haz clic en **Edit** (Editar) para ver la configuración de la celda en el modo de edición. También puedes ver las opciones de diseño disponibles, que varían en función del tipo de contenido de la celda. Tienes algunos ejemplos a continuación: + -* **Graph size** (Tamaño del gráfico): elige entre `XS`, `S`, `M` (por omisión), `L` y `XL`. -* **Graph legend** (Leyenda del gráfico): desmarca la casilla para ocultar la leyenda. Las leyendas se desactivan automáticamente para los gráficos `XS` y `S`. -* **Grouping** (Grupos): muestra un gráfico por valor de etiqueta (tag) para ver pequeños múltiplos de tu visualización. +### Búsqueda -{{< img src="notebooks/edit_cell_action_menu.png" alt="Parámetros gráficos de una celda de un notebook en modo de edición que muestran las opciones de tamaño, leyenda y agrupación" style="width:100%;">}} +El campo de búsqueda admite la búsqueda por texto. Escribe tu consulta para ver los notebooks relevantes como resultados. -**Nota**: Cambiar alguno de estos parámetros solo afectará a la celda seleccionada. +### Filtrado -#### Tipos de contenido +Puedes filtrar notebooks con los siguientes métodos: +| Tipo de filtro | Descripción | +|------------------|------------------------------------------------------------------------------------------------------------------| +| **Autor** | Para filtrar por autor, selecciona el menú desplegable de autores e introduce los nombres por los que quieres filtrar. | +| **Equipo** | Para filtrar por equipo, selecciona el menú desplegable de equipos e introduce los nombres por los que quieres filtrar. | +| **Tipo de notebook**| Filtra por investigación, análisis retrospectivo, guía, informe o documentación. | +| **Fecha de modificación**| Filtra en función de la fecha de edición reciente de un notebook, utilizando el desplegable de fechas de modificación. | -Los notebooks aceptan celdas de visualización y de texto. Las celdas de texto tienen formato [Markdown][6], lo que permite usar encabezados, subencabezados, enlaces, imágenes, listas y bloques de código. También aceptan diagramas con formato [MermaidJS][6]. +También existen filtros rápidos para acceder a tus notebooks y a los notebooks etiquetados con tus equipos. -Los gráficos en notebooks son compatibles con todos los orígenes de datos de Datadog: métricas, eventos de logs, tráfico de redes, eventos RUM, métricas de elaboración de perfiles, señales de seguridad, etc. Los gráficos se crean con el editor de consultas de Datadog. Notebook acepta: +### Acceso rápido -* [Texto][8] -* [Imágenes](#add-images-to-cells) -* [Series temporales][9] -* [Lista principal][10] -* [Tabla][11] -* [Valor de la consulta][12] -* [Mapa de calor][13] -* [Distribución][14] -* [Lista][15] -* [Perfilado de la gráfica de llamas][16] -* [Embudo][17] -* [Torta][18] -* [Mapa de árboles][16] -* [Mapa geográfico][19] -* [SLO][20] +Si no hay filtros activados, aparece la sección Acceso rápido, que muestra los notebooks más recientes que visualizaste o editaste. -### Limitar el acceso de edición + -Por omisión, todos los usuarios tienen acceso completo a notebooks. +### Clasificación de notebooks -Utiliza controles de acceso detallados para limitar los [roles][21] que pueden editar un determinado notebook: -1. Cuando consultes un notebook, haz clic en el engranaje que aparece en la parte superior derecha. Se abrirá el menú de configuración. -1. Selecciona **Permissions** (Permisos). -1. Haz clic en **Restrict Access** (Restringir el acceso). -1. El cuadro de diálogo se actualiza para mostrar que los miembros de tu organización tienen por omisión el permiso de acceso **Viewer** (Visualización). -1. Utiliza el menú desplegable para seleccionar uno o varios roles, equipos o usuarios que pueden modificar el notebook. -1. Haz clic en **Add** (Añadir). -1. El cuadro de diálogo se actualiza para indicar que el rol que has seleccionado tiene el permiso **Editor** (Edición). -1. Haz clic en **Save** (Guardar). +Puedes clasificar notebooks seleccionando la ⭐, los detalles o las cabeceras modificadas para clasificar por estos valores. -**Nota:** Para mantener tu acceso de edición al notebook, el sistema necesita que incluyas al menos un rol al que pertenezcas antes de guardar. +## Acceso API -Para restablecer el acceso general a un notebook con acceso restringido, sigue estos pasos: -1. Cuando consultes un notebook, haz clic en el engranaje que aparece en la parte superior derecha. Se abrirá el menú de configuración. -1. Selecciona **Permissions** (Permisos). -1. Haz clic en **Restore Full Access** (Restablecer acceso completo). -1. Haz clic en **Guardar**. +Los notebooks de API actualmente se están actualizando para que sean compatibles con el nuevo producto notebook. La creación de notebooks a través de la API los coloca en "modo de compatibilidad", y admiten sólo celdas markdown y widget. ## Referencias adicionales {{< partial name="whats-next/whats-next.html" >}} + [1]: https://app.datadoghq.com/notebook/list -[2]: https://www.markdownguide.org/basic-syntax/#images-1 -[3]: https://app.datadoghq.com/notebook/template-gallery -[4]: /es/notebooks/guide/version_history +[2]: https://app.datadoghq.com/notebook/template-gallery +[3]: /es/dashboards/querying/#graphing-editor +[4]: https://www.markdownguide.org/basic-syntax/#images-1 [5]: /es/dashboards/template_variables/ -[6]: https://daringfireball.net/projects/markdown/ -[7]: https://mermaid.js.org/ -[8]: /es/dashboards/widgets/free_text/ -[9]: /es/dashboards/widgets/timeseries/ -[10]: /es/dashboards/widgets/top_list/ -[11]: /es/dashboards/widgets/table/ -[12]: /es/dashboards/widgets/query_value/ -[13]: /es/dashboards/widgets/heatmap/ -[14]: /es/dashboards/widgets/distribution/ -[15]: /es/dashboards/widgets/list/ -[16]: /es/dashboards/widgets/treemap/ -[17]: /es/dashboards/widgets/funnel/ -[18]: /es/dashboards/widgets/pie_chart/ -[19]: /es/dashboards/widgets/geomap/ -[20]: /es/dashboards/widgets/slo/ -[21]: /es/account_management/rbac/ \ No newline at end of file +[6]: /es/notebooks/guide/version_history +[7]: /es/account_management/rbac/ \ No newline at end of file diff --git a/content/es/product_analytics/session_replay/browser/developer_tools.md b/content/es/product_analytics/session_replay/browser/developer_tools.md new file mode 100644 index 00000000000..298f31159db --- /dev/null +++ b/content/es/product_analytics/session_replay/browser/developer_tools.md @@ -0,0 +1,11 @@ +--- +description: Describe las herramientas para desarrolladores disponibles en Session + Replay +further_reading: +- link: /product_analytics/session_replay/browser + tag: Documentación + text: Session Replay de navegador +title: Herramientas para desarrolladores del navegador de Session Replay +--- + +{{< include-markdown "real_user_monitoring/session_replay/browser/developer_tools" >}} \ No newline at end of file diff --git a/content/es/profiler/profiler_troubleshooting/ruby.md b/content/es/profiler/profiler_troubleshooting/ruby.md index 4c976d04998..f10c0bed488 100644 --- a/content/es/profiler/profiler_troubleshooting/ruby.md +++ b/content/es/profiler/profiler_troubleshooting/ruby.md @@ -13,30 +13,30 @@ type: lenguaje de código múltiple Si has configurado el generador de perfiles y no ves perfiles en la página de búsqueda de perfiles, activa el [modo de depuración][1] y [abre un ticket de asistencia][2]. En el ticket de asistencia, incluye los archivos de depuración junto con la siguiente información: -- Tipo y versión del sistema operativo (por ejemplo, Linux Ubuntu 22.04) -- Tipo de tiempo de ejecución, versión y proveedor (por ejemplo, Ruby 2.7.3) +- Tipo y versión del sistema operativo (por ejemplo, Ubuntu Linux 24.04) +- Tipo, versión y proveedor de tiempo de ejecución (por ejemplo, Ruby 3.3.1) ## Perfiles faltantes en tareas de Resque -Al generar perfiles de tareas de [Resque][4], debes configurar la variable de entorno`RUN_AT_EXIT_HOOKS` +Al generar perfiles de tareas de [Resque][4], debes configurar la variable de entorno `RUN_AT_EXIT_HOOKS` como `1`, como se describe en la [documentación de Resque][5]. Sin esta marca, los perfiles de tareas de Resque de corta duración no estarán disponibles. -## La generación de perfiles no se activa debido al fallo de la compilación de la cabecera just-in-time de la máquina virtual de Ruby +## La generación de perfiles no se activa debido al fallo de la compilación de la cabecera just-in-time de la máquina virtual Ruby -Existe una incompatibilidad conocida entre Ruby 2.7 y versiones anteriores de GCC (4.8 y anteriores) que afecta al generador de perfiles ([informe de Ruby subsiguiente][6], [informe de fallos `dd-trace-rb`][7]). Esto puede dar lugar al siguiente mensaje de error "Tu instalación de ddtrace no es compatible con el Continuous Profiler debido al fallo de la compilación de la cabecera just-in-time de la máquina virtual Java de Ruby. Tu compilador de C o el compilador just-in-time de la máquina virtual Java de Ruby parecen estar averiados". +Existe una incompatibilidad conocida entre Ruby 2.7 y las versiones anteriores de GCC (4.8 y anteriores) que afecta al generador de perfiles ([informe de Ruby subsiguiente][6], [informe de fallos `dd-trace-rb`][7]). Esto puede dar lugar al siguiente mensaje de error "Tu instalación de ddtrace no es compatible con el Continuous Profiler debido al fallo de la compilación de la cabecera just-in-time de la máquina virtual Java Ruby. Tu compilador de C o el compilador just-in-time de la máquina virtual Java Ruby parecen estar averiados". Para solucionarlo, actualiza tu sistema operativo o imagen Docker para que la versión de GCC sea más reciente que la versión 4.8. -Para obtener más ayuda con este problema, [ponte en contacto con el servicio de asistencia][2] e incluye el resultado de la ejecución de `DD_PROFILING_FAIL_INSTALL_IF_MISSING_EXTENSION=true gem install ddtrace` y el archivo `mkmf.log` resultante. +Para obtener más ayuda y resolver este problema, [ponte en contacto con el servicio de asistencia][2] e incluye el resultado de la ejecución de `DD_PROFILING_FAIL_INSTALL_IF_MISSING_EXTENSION=true gem install datadog` y el archivo `mkmf.log` resultante. -## Se omiten los marcos cuando los backtraces son demasiado profundos +## Cuando los backtraces son demasiado profundos se omiten los marcos El generador de perfiles Ruby trunca los backtraces profundos cuando recopila datos de generación de perfiles. A los backtraces truncados les faltan algunas de sus funciones de llamada, lo que hace imposible vincularlos al marco de llamada raíz. Como resultado, los backtraces truncados se agrupan en un marco `N frames omitted`. -Puedes aumentar la profundidad máxima con la variable de entorno`DD_PROFILING_MAX_FRAMES` o en código: +Puedes aumentar la profundidad máxima con la variable de entorno`DD_PROFILING_MAX_FRAMES` o utilizando código: ```ruby Datadog.configure do |c| @@ -52,15 +52,15 @@ El envío de `SIGPROF` es una estrategia de generación de perfiles frecuente y En raras ocasiones, las extensiones o bibliotecas nativas llamadas pueden tener una gestión de errores faltante o incorrecta para el código de error `EINTR`. Se conocen las siguientes incompatibilidades: -* Uso del gem `mysql2` junto con versiones de `libmysqlclient` [anteriores a la v8.0.0][9]. Se sabe que la versión `libmysqlclient` afectada está presente en Ubuntu v18.04, pero no en la v20.04 o versiones posteriores. -* [Uso del gem `rugged`.][10] +* Uso del gem `mysql2` junto con versiones de `libmysqlclient` [anteriores a la v8.0.0][9]. Se sabe que la versión `libmysqlclient` afectada está presente en Ubuntu v18.04, pero no en la v20.04 o en versiones posteriores. +* [Uso del gem `rugged`][10] * Uso del gem `passenger`/servidor web Phusion Passenger [anterior a v6.0.19][11] -* [Algunas API de la clase `Dir` ][13] +* [Algunas API de la clase `Dir`][13] En estos casos, la última versión del generador de perfiles detecta automáticamente la incompatibilidad y aplica una solución alternativa. Si encuentras fallos o errores en los gems de Ruby que utilizan extensiones nativas distintas de las mencionadas anteriormente, puedes habilitar manualmente la solución alternativa "sin señales", que evita el uso de señales `SIGPROF`. -Para habilitar esta solución alternativa, configura la variable de entorno`DD_PROFILING_NO_SIGNALS_WORKAROUND_ENABLED` como `true` o en código: +Para habilitar esta solución alternativa, configura la variable de entorno`DD_PROFILING_NO_SIGNALS_WORKAROUND_ENABLED` como `true` o utiliza código: ```ruby Datadog.configure do |c| @@ -68,18 +68,18 @@ Datadog.configure do |c| end ``` -Informa a nuestro equipo si encuentras o sospechas de alguna incompatibilidad [abriendo un ticket de asistencia][2]. +Informa a nuestro equipo si encuentras o sospechas de alguna incompatibilidad. Para ello, [abre un ticket de asistencia][2]. De este modo, Datadog podrá añadirlas a la lista de detección automática y trabajar con los autores del gem o de la biblioteca para solucionar el problema. ## Fallos de segmentación en `gc_finalize_deferred` en las versiones de Ruby 2.6 a 3.2 -Una solución alternativa para este problema se aplica automáticamente desde la [versión 1.21.0 `dd-trace-rb`][3]. Para solucionar este problema, Datadog recomienda actualizar a esta versión o una posterior. +Una solución alternativa para este problema se aplica automáticamente a partir de la [versión 1.21.0 `dd-trace-rb`][3]. Para solucionar este problema, Datadog recomienda actualizar a esta versión o a una versión posterior. -Antes de la versión 1.21.0, en raras situaciones el generador de perfiles podía activar [Ruby VM Bug #19991][12] que se manifiesta como un "Fallo de segmentación" con una traza (trace) de stack tecnológico de fallos que incluye la función `gc_finalize_deferred`. +Antes de la versión 1.21.0, en raras situaciones el generador de perfiles era capaz de activar [Ruby VM Bug #19991][12], que se manifiesta como un "Fallo de segmentación" con una traza (trace) de stack tecnológico de fallos que incluye la función `gc_finalize_deferred`. Este error se ha corregido para Ruby v3.3 y posteriores. Para versiones anteriores de Ruby (y anteriores a dd-trace-rb v1.21.0), puedes utilizar la solución alternativa "sin señales" para resolver este problema. -Para habilitar esta solución alternativa, establezca la variable de entorno`DD_PROFILING_NO_SIGNALS_WORKAROUND_ENABLED` como `true` o en código: +Para habilitar esta solución alternativa, configura la variable de entorno`DD_PROFILING_NO_SIGNALS_WORKAROUND_ENABLED` como `true` o utiliza código: ```ruby Datadog.configure do |c| @@ -92,7 +92,7 @@ end {{< partial name="whats-next/whats-next.html" >}} -[1]: /es/tracing/troubleshooting/#tracer-debug-logs +[1]: /es/tracing/troubleshooting/#debugging-and-logging [2]: /es/help/ [3]: https://github.com/datadog/dd-trace-rb/releases/tag/v1.21.0 [4]: https://github.com/resque/resque diff --git a/content/es/quality_gates/_index.md b/content/es/quality_gates/_index.md index dfadb59f0ae..7303b883658 100644 --- a/content/es/quality_gates/_index.md +++ b/content/es/quality_gates/_index.md @@ -58,7 +58,7 @@ Puedes configurar reglas de Puertas de calidad para las siguientes categorías: Al integrar las Puertas de calidad [en tus pipelines CI/CD][7] o permitir que la [integración GitHub Datadog][13] cree automáticamente checks de estado en tus solicitudes de extracción (actualmente disponible sólo para reglas SCA), puedes crear un marco sólido para mantener y mejorar la calidad del software que se alinea con las metas operativas y los objetivos empresariales de tu organización. -## Configuración +## Configurar Las Puertas de calidad ofrecen los siguientes tipos de reglas: @@ -80,13 +80,14 @@ Puedes crear reglas para bloquear la fusión de código cuando tu repositorio ti {{< img src="quality_gates/setup/static_analysis_2.png" alt="Regla de una puerta de calidad que falla cuando el repositorio contiene una o más nuevas violaciones de la calidad del código con una gravedad de nivel de error" style="width:80%" >}} {{% /tab %}} -{{% tab "Análisis de composición de software" %}} +{{% tab "Software Composition Analysis" %}} Puede crear reglas para bloquear la fusión de código cuando su repositorio tiene un determinado número de vulnerabilidades de biblioteca o licencias prohibidas. {{< img src="quality_gates/setup/sca_2.png" alt="Regla de una puerta de calidad que falla cuando el repositorio contiene una o más vulnerabilidades de biblioteca de gravedad alta o crítica" style="width:80%" >}} -{{% /tab %}}{{< /tabs >}} +{{% /tab %}} +{{< /tabs >}} Para crear una regla de puerta de calidad, consulta la [documentación de configuración][2]. @@ -108,11 +109,12 @@ Puedes buscar y filtrar por puertas de calidad o ejecuciones de reglas, crear vi {{< img src="quality_gates/explorer/gates_3.png" alt="Resultados de puertas de calidad en el Explorador de puertas de calidad" style="width:100%" >}} {{% /tab %}} -{{% tab "Ejecución de reglas" %}} +{{% tab "Ejecuciones de reglas" %}} {{< img src="quality_gates/explorer/executions_1.png" alt="Resultados de la ejecución de reglas de puertas de calidad en el Explorador de puertas de calidad" style="width:100%" >}} -{{% /tab %}}{{< /tabs >}} +{{% /tab %}} +{{< /tabs >}} Para obtener más información, consulta la [documentación del Explorador de puertas de calidad][8]. @@ -124,7 +126,7 @@ Puedes ver información sobre quién creó, modificó y eliminó reglas de puert Para obtener más información, consulta la [documentación de Audit Trail][4]. -## Para leer más +## Referencias adicionales {{< partial name="whats-next/whats-next.html" >}} diff --git a/content/es/quality_gates/explorer/facets.md b/content/es/quality_gates/explorer/facets.md index 3cf377630fb..6f3ea4dc468 100644 --- a/content/es/quality_gates/explorer/facets.md +++ b/content/es/quality_gates/explorer/facets.md @@ -14,10 +14,6 @@ title: Puertas de calidad o facetas de ejecución de reglas Puertas de calidad está en vista previa. {{< /callout >}} -{{< site-region region="gov" >}} -
Puertas de calidad no está disponible en el sitio seleccionado ({{< region-param key="dd_site_name" >}}) en este momento.
-{{< /site-region >}} - ## Información general Las facetas son atributos y etiquetas (tags) definidos por el usuario a partir de tus reglas o ejecuciones. Son útiles para el análisis de datos tanto [cualitativos](#qualitative-facets) como [cuantitativos](#quantitative-measures). Las facetas te permiten manipular tus reglas o ejecuciones en las consultas de búsqueda que aparecen en [dashboards][2] y en [notebooks][3]. @@ -30,11 +26,11 @@ El [Explorador de puertas de calidad][4] incluye facetas predefinidas como `Stat Utiliza facetas cualitativas para: -- **Obtener una visión relativa** de los valores. +- **Obtener información relativa** de los valores. - **Contar valores únicos**. - **Filtra** con frecuencia tus puertas de calidad en función de determinados valores. Por ejemplo, crea una faceta en una etiqueta (tag) de entorno para delimitar la resolución de problemas al desarrollo, el staging o los entornos de producción.
-**Nota:** Aunque las facetas no son obligatorias para filtrar las etiquetas, definir facetas para las etiquetas que utilizas con frecuencia durante las investigaciones te ayudará a agilizar de resolución. +**Nota:** Aunque las facetas no son necesarias para filtrar las etiquetas (tags), definir facetas para las etiquetas (tags) que utilizas a menudo durante las investigaciones te ayudará a reducir el tiempo de resolución. ### Medidas cuantitativas diff --git a/content/es/real_user_monitoring/mobile_and_tv_monitoring/mobile_vitals/_index.md b/content/es/real_user_monitoring/mobile_and_tv_monitoring/mobile_vitals/_index.md index 864087c7157..b4331e4a230 100644 --- a/content/es/real_user_monitoring/mobile_and_tv_monitoring/mobile_vitals/_index.md +++ b/content/es/real_user_monitoring/mobile_and_tv_monitoring/mobile_vitals/_index.md @@ -50,13 +50,13 @@ La siguiente telemetría proporciona información sobre el rendimiento de tu apl | Medición | Descripción | | --- | --- | -| Frecuencia de actualización | Para asegurar una experiencia de usuario fluida y [sin fallos][1], tu aplicación debe renderizar los fotogramas a menos de 60Hz.

RUM rastrea la [tasa de actualización de la vista del subproceso principal][2] de la aplicación usando los atributos de vista `@view.refresh_rate_average` y `@view.refresh_rate_min`.

**Nota:** Las tasas de actualización están normalizadas en un rango de cero a 60fps. Por ejemplo, si tu aplicación se ejecuta a 100fps en un dispositivo capaz de renderizar 120fps, Datadog informa de 50fps en **Mobile Vitals**.| -| Renderizados lentos | Para asegurar una experiencia de usuario fluida y [sin fallos][1], tu aplicación debe renderizar los fotogramas a menos de 60Hz.

RUM rastrea la [tasa de actualización de la vista del subproceso principal][2] de la aplicación usando los atributos de vista `@view.refresh_rate_average` y `@view.refresh_rate_min`.

Con el renderizado lento, puedes monitorizar qué vistas tardan más de 16ms o 60Hz en renderizar.
**Nota:** Las tasas de actualización están normalizadas en un rango de cero a 60fps. Por ejemplo, si tu aplicación se ejecuta a 100fps en un dispositivo capaz de renderizar 120fps, Datadog informa de 50fps en **Mobile Vitals**. | +| Frecuencia de actualización | Para asegurar una experiencia de usuario fluida y [sin fallos][1], tu aplicación debe renderizar los fotogramas a menos de 60Hz.

RUM rastrea la [tasa de actualización de la vista del subproceso principal][2] de la aplicación usando los atributos de vista `@view.refresh_rate_average` y `@view.refresh_rate_min`.

**Nota:** Las tasas de actualización están normalizadas en un rango de cero a 60fps. Por ejemplo, si tu aplicación se ejecuta a 100fps en un dispositivo capaz de renderizar 120fps, Datadog informa de 50fps en **Mobile Vitals**.| +| Renderizados lentos | Para asegurar una experiencia de usuario fluida y [sin fallos][1], tu aplicación debe renderizar los fotogramas a menos de 60Hz.

RUM rastrea la [tasa de actualización de la vista del subproceso principal][2] de la aplicación usando los atributos de vista `@view.refresh_rate_average` y `@view.refresh_rate_min`.

Con el renderizado lento, puedes monitorizar qué vistas tardan más de 16ms o 60Hz en renderizar.
**Nota:** Las tasas de actualización están normalizadas en un rango de cero a 60fps. Por ejemplo, si tu aplicación se ejecuta a 100fps en un dispositivo capaz de renderizar 120fps, Datadog informa de 50fps en **Mobile Vitals**. | | Fotogramas congelados | Los fotogramas que tardan más de 700ms en renderizarse aparecen como atascados y sin respuesta en tu aplicación. Se clasifican como [fotogramas congelados][3].

RUM rastrea eventos `long task` con la duración de cualquier tarea que tarde más de 100ms en completarse.

Con los fotogramas congelados, puedes monitorizar qué vistas aparecen congeladas (tardan más de 700ms en renderizarse) para tus usuarios finales y eliminar los fallos en tu aplicación. | | La aplicación no responde | Cuando el subproceso de interfaz de usuario de una aplicación se bloquea durante más de 5 segundos, se produce un error `Application Not Responding` ([ANR][4]). Si la aplicación está en primer plano, el sistema muestra un modal de diálogo al usuario, permitiéndole forzar la salida de la aplicación.

RUM rastrea las ocurrencias de ANR y captura todo el stack trace que bloquea el subproceso principal cuando encuentra un ANR. | | Sesiones sin fallos por versión | Un [fallo de aplicación][5] se produce debido a una salida inesperada de la aplicación, normalmente causada por una excepción o señal no controlada. Las sesiones de usuario sin caídas en la aplicación se corresponden directamente con la experiencia y la satisfacción general del usuario final.

RUM realiza un rastreo completo de los informes de fallos y presenta tendencias a lo largo del tiempo con el [Rastreo de errores][6].

Con las sesiones sin fallos, puedes mantenerte al día en los puntos de referencia de la industria y asegurarte de que tu aplicación ocupa un lugar destacado en Google Play Store. | | Tics por segundo de la CPU | Un uso elevado de la CPU afecta a la [duración de la batería][7] de los dispositivos de tus usuarios.

RUM realiza rastreo de tics de CPU por segundo para cada vista y la utilización de la CPU en el transcurso de una sesión. El rango recomendado es <40 para bueno y <60 para moderado.

Puedes ver las principales vistas con el mayor número de tics de CPU de media durante un periodo seleccionado en **Mobile Vitals** en la página Información general de tu aplicación. | -| Utilización de la memoria | Un uso elevado de memoria puede provocar [OutOfMemoryError][8], lo que hace que la aplicación se bloquee y crea una mala experiencia para el usuario.

RUM rastrea la cantidad de memoria física utilizada por tu aplicación en bytes para cada vista, en el transcurso de una sesión. El rango recomendado es <200MB para bueno y <400MB para moderado.

Puedes ver las principales vistas con mayor consumo de memoria de media durante un periodo seleccionado en **Mobile Vitals** en la página Información general de tu aplicación. | +| Utilización de la memoria | Un uso elevado de memoria puede provocar [OutOfMemoryError][8], lo que hace que la aplicación se bloquee y crea una mala experiencia para el usuario.

RUM rastrea la cantidad de memoria física utilizada por tu aplicación en bytes para cada vista, en el transcurso de una sesión. El rango recomendado es <200MB para bueno y <400MB para moderado.

Puedes ver las principales vistas con mayor consumo de memoria de media durante un periodo seleccionado en **Mobile Vitals** en la página Información general de tu aplicación. | [1]: https://developer.android.com/topic/performance/vitals/render#common-jank [2]: https://developer.android.com/guide/topics/media/frame-rate @@ -72,10 +72,10 @@ La siguiente telemetría proporciona información sobre el rendimiento de tu apl | Medición | Descripción | | --- | --- | -| Frecuencia de actualización | Para asegurar una experiencia de usuario fluida y sin fallos, tu aplicación debe renderizar los fotogramas a menos de 60Hz.

RUM rastrea la tasa de actualización de la vista del subproceso principal de la aplicación usando los atributos de vista `@view.refresh_rate_average` y `@view.refresh_rate_min`.

**Nota:** Las tasas de actualización están normalizadas en un rango de cero a 60fps. Por ejemplo, si tu aplicación se ejecuta a 100fps en un dispositivo capaz de renderizar 120fps, Datadog informa de 50fps en **Mobile Vitals**. | +| Frecuencia de actualización | Para asegurar una experiencia de usuario fluida y sin fallos, tu aplicación debe renderizar los fotogramas a menos de 60Hz.

RUM rastrea la tasa de actualización de la vista del subproceso principal de la aplicación usando los atributos de vista `@view.refresh_rate_average` y `@view.refresh_rate_min`.

**Nota:** Las tasas de actualización están normalizadas en un rango de cero a 60fps. Por ejemplo, si tu aplicación se ejecuta a 100fps en un dispositivo capaz de renderizar 120fps, Datadog informa de 50fps en **Mobile Vitals**. | | Renderizados lentos | Para asegurar una experiencia de usuario fluida y sin fallos, tu aplicación debe renderizar los fotogramas a menos de 60Hz.

RUM rastrea la tasa de actualización de la vista del subproceso principal de la aplicación usando los atributos de vista `@view.refresh_rate_average` y `@view.refresh_rate_min`.

Con el renderizado lento, puedes monitorizar qué vistas tardan más de 16ms o 60Hz en renderizar.
**Nota:** Las tasas de actualización están normalizadas en un rango de cero a 60fps. Por ejemplo, si tu aplicación se ejecuta a 100fps en un dispositivo capaz de renderizar 120fps, Datadog informa de 50fps en **Mobile Vitals**. | | Fotogramas congelados | Los fotogramas que tardan más de 700ms en renderizarse aparecen como atascados y sin respuesta en tu aplicación. Se clasifican como fotogramas congelados.

RUM rastrea eventos `long task` con la duración de cualquier tarea que tarde más de 100ms en completarse.

Con los fotogramas congelados, puedes monitorizar qué vistas aparecen congeladas (tardan más de 700ms en renderizarse) para tus usuarios finales y eliminar los fallos en tu aplicación. | -| Sesiones sin fallos por versión | Un [fallo de aplicación][1] se produce debido a una salida inesperada de la aplicación, normalmente causada por una excepción o señal no controlada. Las sesiones de usuario sin caídas en la aplicación se corresponden directamente con la experiencia y la satisfacción general del usuario final.

RUM realiza un rastreo completo de los informes de fallos y presenta tendencias a lo largo del tiempo con el [Rastreo de errores][2].

Con las sesiones sin fallos, puedes mantenerte al día en los puntos de referencia de la industria y asegurarte de que tu aplicación ocupa un lugar destacado en Google Play Store. | +| Sesiones sin fallos por versión | Un [fallo de aplicación][1] se produce debido a una salida inesperada de la aplicación, normalmente causada por una excepción o señal no controlada. Las sesiones de usuario sin caídas en la aplicación se corresponden directamente con la experiencia y la satisfacción general del usuario final.

RUM realiza un rastreo completo de los informes de fallos y presenta tendencias a lo largo del tiempo con [Error Tracking][2].

Con las sesiones sin fallos, puedes mantenerte al día en los puntos de referencia de la industria y asegurarte de que tu aplicación ocupa un lugar destacado en Apple App Store. | | Tasa de cuelgues | Según la definición de Apple, la tasa de cuelgues de una aplicación corresponde al "número de segundos por hora que la aplicación no responde, contando únicamente los periodos de no respuesta superiores a 250 ms". Para calcular la tasa de cuelgues de tu aplicación en Datadog, activa el [informe de cuelgues de la aplicación][4] y sigue la [sección dedicada][5]. | Tics por segundo de la CPU | Un uso elevado de la CPU afecta a la [duración de la batería][3] de los dispositivos de tus usuarios.

RUM realiza rastreo de tics de CPU por segundo para cada vista y la utilización de la CPU en el transcurso de una sesión. El rango recomendado es <40 para bueno y <60 para moderado.

Puedes ver las principales vistas con el mayor número de tics de CPU de media durante un periodo seleccionado en **Mobile Vitals** en la página Información general de tu aplicación. | | Utilización de la memoria | Un uso elevado de memoria puede provocar [terminaciones de WatchDog][6], lo que crea una mala experiencia para el usuario.

RUM rastrea la cantidad de memoria física utilizada por tu aplicación en bytes para cada vista, en el transcurso de una sesión. El rango recomendado es <200MB para bueno y <400MB para moderado.

Puedes ver las principales vistas con mayor consumo de memoria de media durante un periodo seleccionado en **Mobile Vitals** en la página Información general de tu aplicación. | @@ -98,7 +98,7 @@ La siguiente telemetría proporciona información sobre el rendimiento de tu apl | La aplicación no responde | En Android, cuando el subproceso de interfaz de usuario de una aplicación se bloquea durante más de 5 segundos, se produce un error `Application Not Responding` ([ANR][4]). Si la aplicación está en primer plano, el sistema muestra un modal de diálogo al usuario, permitiéndole forzar la salida de la aplicación.

RUM rastrea las ocurrencias de ANR y captura todo el stack trace que bloquea el subproceso principal cuando encuentra un ANR. | | Sesiones sin fallos por versión | Un [fallo de aplicación][5] se produce debido a una salida inesperada de la aplicación, normalmente causada por una excepción o señal no controlada. Las sesiones de usuario sin caídas en la aplicación se corresponden directamente con la experiencia y la satisfacción general del usuario final.

RUM realiza un rastreo completo de los informes de fallos y presenta tendencias a lo largo del tiempo con el [Rastreo de errores][8].

Con las sesiones sin fallos, puedes mantenerte al día en los puntos de referencia de la industria y asegurarte de que tu aplicación ocupa un lugar destacado en Google Play Store. | | Tics por segundo de la CPU | Un uso elevado de la CPU afecta a la [duración de la batería][6] de los dispositivos de tus usuarios.

RUM realiza rastreo de tics de CPU por segundo para cada vista y la utilización de la CPU en el transcurso de una sesión. El rango recomendado es <40 para bueno y <60 para moderado.

Puedes ver las principales vistas con el mayor número de tics de CPU de media durante un periodo seleccionado en **Mobile Vitals** en la página Información general de tu aplicación. | -| Utilización de la memoria | Un uso elevado de memoria puede provocar [fallos de falta de memoria][6], lo que crea una mala experiencia para el usuario.

RUM rastrea la cantidad de memoria física utilizada por tu aplicación en bytes para cada vista, en el transcurso de una sesión. El rango recomendado es <200MB para bueno y <400MB para moderado.

Puedes ver las principales vistas con mayor consumo de memoria de media durante un periodo seleccionado en **Mobile Vitals** en la página Información general de tu aplicación. | +| Utilización de la memoria | Un uso elevado de memoria puede provocar [fallos de falta de memoria][7], lo que crea una mala experiencia para el usuario.

RUM rastrea la cantidad de memoria física utilizada por tu aplicación en bytes para cada vista, en el transcurso de una sesión. El rango recomendado es <200MB para bueno y <400MB para moderado.

Puedes ver las principales vistas con mayor consumo de memoria de media durante un periodo seleccionado en **Mobile Vitals** en la página Información general de tu aplicación. | | Tiempo de compilación del widget | Es el tiempo que tarda en compilarse el fotograma en el subproceso de la interfaz de usuario. Para asegurar animaciones sin errores, esto no debería exceder 16ms para 60 FPS, y 8ms para 120 FPS.

Valores altos significan que necesitas optimizar tus métodos de compilación para esta vista. Consulta [Control del costo de compilación][8] en la documentación de Flutter. | | Tiempo de ráster | Es el tiempo que se tarda en hacer ráster del fotograma en el subproceso de ráster. Para asegurar animaciones sin errores, esto no debería exceder 16ms para 60 FPS, y 8ms para 120 FPS.

Valores altos aquí pueden significar que tu vista es compleja de renderizar. Consulta [Identificación de problemas en el gráfico de la GPU][12] en la documentación de Flutter. | @@ -125,7 +125,7 @@ La siguiente telemetría proporciona información sobre el rendimiento de tu apl | La aplicación no responde | Cuando el subproceso de interfaz de usuario de una aplicación se bloquea durante más de 5 segundos, se produce un error `Application Not Responding` (ANR). Si la aplicación está en primer plano, el sistema muestra un modal de diálogo al usuario, permitiéndole forzar la salida de la aplicación.

RUM rastrea las ocurrencias de ANR y captura todo el stack trace que bloquea el subproceso principal cuando encuentra un ANR. | | Sesiones sin fallos por versión | Un [fallo de aplicación][4] se produce debido a una salida inesperada de la aplicación, normalmente causada por una excepción o señal no controlada. Las sesiones de usuario sin caídas en la aplicación se corresponden directamente con la experiencia y la satisfacción general del usuario final.

RUM realiza un rastreo completo de los informes de fallos y presenta tendencias a lo largo del tiempo con el [Rastreo de errores][5].

Con las sesiones sin fallos, puedes mantenerte al día en los puntos de referencia de la industria y asegurarte de que tu aplicación ocupa un lugar destacado en Google Play Store. | | Tics por segundo de la CPU | Un uso elevado de la CPU afecta a la [duración de la batería][6] de los dispositivos de tus usuarios.

RUM realiza rastreo de tics de CPU por segundo para cada vista y la utilización de la CPU en el transcurso de una sesión. El rango recomendado es <40 para bueno y <60 para moderado.

Puedes ver las principales vistas con el mayor número de tics de CPU de media durante un periodo seleccionado en **Mobile Vitals** en la página Información general de tu aplicación. | -| Utilización de la memoria | Un uso elevado de memoria puede provocar [fallos de falta de memoria][6], lo que crea una mala experiencia para el usuario.

RUM rastrea la cantidad de memoria física utilizada por tu aplicación en bytes para cada vista, en el transcurso de una sesión. El rango recomendado es <200MB para bueno y <400MB para moderado.

Puedes ver las principales vistas con mayor consumo de memoria de media durante un periodo seleccionado en **Mobile Vitals** en la página Información general de tu aplicación. | +| Utilización de la memoria | Un uso elevado de memoria puede provocar [fallos de falta de memoria][7], lo que crea una mala experiencia para el usuario.

RUM rastrea la cantidad de memoria física utilizada por tu aplicación en bytes para cada vista, en el transcurso de una sesión. El rango recomendado es <200MB para bueno y <400MB para moderado.

Puedes ver las principales vistas con mayor consumo de memoria de media durante un periodo seleccionado en **Mobile Vitals** en la página Información general de tu aplicación. | [1]: http://jankfree.org/ [2]: https://reactnative.dev/docs/performance#what-you-need-to-know-about-frames @@ -136,11 +136,31 @@ La siguiente telemetría proporciona información sobre el rendimiento de tu apl [7]: https://docs.sentry.io/platforms/apple/guides/ios/configuration/out-of-memory/ {{% /tab %}} +{{% tab "Unity" %}} + +| Medición | Descripción | +| --- | --- | +| Frecuencia de actualización | Para asegurar una experiencia de usuario fluida y sin fallos, tu aplicación debe renderizar los fotogramas a menos de 60Hz.

RUM rastrea la tasa de actualización de la vista del subproceso principal de la aplicación usando los atributos de vista `@view.refresh_rate_average` y `@view.refresh_rate_min`.

**Nota:** Las tasas de actualización están normalizadas en un rango de cero a 60fps. Por ejemplo, si tu aplicación se ejecuta a 100fps en un dispositivo capaz de renderizar 120fps, Datadog informa de 50fps en **Mobile Vitals**. | +| Renderizados lentos | Para asegurar una experiencia de usuario fluida y sin fallos, tu aplicación debe renderizar los fotogramas a menos de 60Hz.

RUM rastrea la tasa de actualización de la vista del subproceso principal de la aplicación usando los atributos de vista `@view.refresh_rate_average` y `@view.refresh_rate_min`.

Con el renderizado lento, puedes monitorizar qué vistas tardan más de 16ms o 60Hz en renderizar.
**Nota:** Las tasas de actualización están normalizadas en un rango de cero a 60fps. Por ejemplo, si tu aplicación se ejecuta a 100fps en un dispositivo capaz de renderizar 120fps, Datadog informa de 50fps en **Mobile Vitals**. | +| Sesiones sin fallos por versión | Un [fallo de aplicación][1] se produce debido a una salida inesperada de la aplicación, normalmente causada por una excepción o señal no controlada. Las sesiones de usuario sin caídas en la aplicación se corresponden directamente con la experiencia y la satisfacción general del usuario final.

RUM realiza un rastreo completo de los informes de fallos y presenta tendencias a lo largo del tiempo con el [Rastreo de errores][2].

Con las sesiones sin fallos, puedes mantenerte al día en los puntos de referencia de la industria y asegurarte de que tu aplicación ocupa un lugar destacado en Google Play Store. | +| Tasa de cuelgues | Según la definición de Apple, la tasa de caída de una aplicación corresponde al "número de segundos por hora que la aplicación no responde, contando únicamente los periodos de no respuesta superiores a 250 ms". Para calcular la tasa de caída de tu aplicación en Datadog, activa "Track Non-Fatal App Hangs" y sigue la [configuración de Datadog][4]. +| Tics por segundo de la CPU | Un uso elevado de la CPU afecta a la [duración de la batería][3] de los dispositivos de tus usuarios.

RUM realiza rastreo de tics de CPU por segundo para cada vista y la utilización de la CPU en el transcurso de una sesión. El rango recomendado es <40 para bueno y <60 para moderado.

Puedes ver las principales vistas con el mayor número de tics de CPU de media durante un periodo seleccionado en **Mobile Vitals** en la página Información general de tu aplicación. | +| Utilización de la memoria | Un uso elevado de memoria puede provocar [terminaciones de WatchDog][6], lo que crea una mala experiencia para el usuario.

RUM rastrea la cantidad de memoria física utilizada por tu aplicación en bytes para cada vista, en el transcurso de una sesión. El rango recomendado es <200MB para bueno y <400MB para moderado.

Puedes ver las principales vistas con mayor consumo de memoria de media durante un periodo seleccionado en **Mobile Vitals** en la página Información general de tu aplicación. | + +[1]: https://developer.apple.com/documentation/xcode/diagnosing-issues-using-crash-reports-and-device-logs +[2]: /es/real_user_monitoring/error_tracking/mobile/unity/ +[3]: https://developer.apple.com/documentation/xcode/analyzing-your-app-s-battery-use/ +[4]: /es/real_user_monitoring/mobile_and_tv_monitoring/setup/unity +[6]: /es/real_user_monitoring/error_tracking/mobile/ios/?tab=cocoapods#add-watchdog-terminations-reporting + +{{% /tab %}} + {{< /tabs >}} ## Referencias adicionales {{< partial name="whats-next/whats-next.html" >}} + [1]: https://developer.android.com/topic/performance/vitals [2]: https://developer.apple.com/documentation/metrickit \ No newline at end of file diff --git a/content/es/real_user_monitoring/session_replay/heatmaps.md b/content/es/real_user_monitoring/session_replay/heatmaps.md index 1198fa94141..7d2aa99c48f 100644 --- a/content/es/real_user_monitoring/session_replay/heatmaps.md +++ b/content/es/real_user_monitoring/session_replay/heatmaps.md @@ -17,7 +17,7 @@ further_reading: title: Mapas de calor (Heatmaps) --- -{{< img src="real_user_monitoring/heatmaps/heatmap_v2.png" alt="Información general de una funcionalidad de mapa de calor." style="width:100%;">}} +{{< img src="real_user_monitoring/session_replay/heatmaps/heatmaps-landing.png" alt="Información general de la funcionalidad del mapa de calor." style="width:100%;">}} Un mapa de calor es una visualización de las interacciones de tus usuarios superpuesta a los datos de Session Replay. Real User Monitoring (RUM) tiene tres tipos diferentes de mapas de calor: @@ -32,8 +32,8 @@ Utiliza mapas de calor para revisar datos complejos de un vistazo y obtener info Para empezar con los mapas de calor: 1. Verifica la versión de tu SDK: - - Para los mapas de clics, debes tener la última versión del SDK (v4.40.0 o posterior). - - Para los mapas de desplazamiento, debes tener (v4.50.0 o posterior). + - Para los mapas de clics, debes tener la última versión del SDK (v4.40.0 o posterior). + - Para los mapas de desplazamiento, debes tener (v4.50.0 o posterior). 2. Activar [Session Replay][1]. 3. Configura `trackUserInteractions: true` en la inicialización del SDK para habilitar el seguimiento de acciones (necesario para los mapas de clics). @@ -41,56 +41,65 @@ Para empezar con los mapas de calor: Ve a [**Digital Experience > Real User Monitoring > Session Replay > Heatmaps** (Experiencia digital > Session Replay > Mapas de calor)][2]. Selecciona tu aplicación y visualízalos. -En la página de inicio de [Real User Monitoring][3], selecciona tu aplicación en el [selector de aplicaciones][4] y visualízalas. En Tipo de mapa, puedes seleccionar el tipo de mapa de calor que quieres ver: Elementos principales, Mapa de clics o Mapa de desplazamiento. Si haces clic en una de estas opciones, accederás a la [página del mapa de calor][2] correspondiente a una vista concreta. +En la [página de inicio de Real User Monitoring][3], selecciona tu aplicación en el [selector de aplicaciones][4] y visualízala. A la izquierda del selector de marco temporal, puedes seleccionar el tipo de mapa de calor que deseas ver: Elementos principales, Mapa de clics o Mapa de desplazamiento. Esto te llevará a la [página del mapa de calor][2] para una vista en particular. -{{< img src="real_user_monitoring/heatmaps/rum-heatmaps-getting-started.png" alt="Selecciona una aplicación para ver los mapas de calor en ella" style="width:100%;" >}} +{{< img src="real_user_monitoring/session_replay/heatmaps/heatmaps-different-views.png" alt="La página de mapas de calor tiene múltiples formas de mostrar diferentes vistas: por aplicación, tipo de mapa, tipo de dispositivo, nombre de acción y filtros detallados." style="width:100%;">}} - Puedes cambiar la vista que se muestra utilizando los selectores **Nombre de la vista** y **Aplicación** de la parte superior. Para añadir filtros más granulares, como por ejemplo una geografía específica, puedes añadir un filtro desde el panel de la izquierda. +Dispones de las siguientes opciones de visualización adicionales: -{{< img src="real_user_monitoring/heatmaps/heatmaps-filters-v2.png" alt="Muestra el selector para elegir una aplicación y una vista de las opciones en las que hayas activado Session Replay." style="width:100%;">}} +- Para cambiar la vista que se muestra, utiliza los selectores **View Name** (Nombre de la vista) y **Application** (Aplicación) de la parte superior. +- Para cambiar la vista del dispositivo, utilice el selector **Device type** (Tipo de dispositivo). +- Para filtrar por nombre de acción, utiliza el menú desplegable **Filter actions by** (Filtrar acciones por). +- Para añadir filtros más detallados, como una geografía específica, por ejemplo, haz clic en el botón **Add Filter** (Añadir filtro). -## Mapas de clics (Click maps) - -Un mapa de clics muestra las acciones con las que más se interactuó en una vista determinada, agregando las acciones de clic de las sesiones y visualizándolas como blobs en el mapa. +## Elementos principales -{{< img src="real_user_monitoring/heatmaps/heatmap_v3.png" alt="Datos de mapas de clics superpuestos en un sitio web." style="width:100%;">}} +Los mapas de calor de Elementos principales agregan las acciones de clic en una vista determinada mostrando los elementos con los que más se interactúa, además de su rango de interacción. La clasificación en el propio mapa corresponde al nombre de la acción en el lateral. -Cada mapa de clics también ofrece análisis como: +{{< img src="real_user_monitoring/session_replay/heatmaps/heatmaps-top-elements.png" alt="Una clasificación de los elementos principales cliqueada en una página." style="width:100%;">}} -- Posición que ocupa esa página entre todas las demás páginas visitadas -- Recuentos de usuarios únicos en esa página -- Cualquier señal de frustración en esa página +Pasa el ratón por encima de cualquier nombre de acción del panel para resaltar la acción correspondiente en el mapa. -Debajo del panel están todas las acciones que ocurrieron en la página, enumeradas por frecuencia. Al hacer clic en una acción, puedes obtener más información sobre esa interacción, por ejemplo: +## Mapas de clics -- El número de veces que el usuario realizó la acción y su posición en el análisis general de las principales acciones de una página determinada. -- Si en esa acción se produjo una señal de frustración (por ejemplo, si un usuario hizo un clic de ira en ese botón), también puedes ver las señales de frustración asociadas. +Un mapa de clics muestra las acciones con las que más se ha interactuado en una vista determinada agregando las acciones de clic de las sesiones y visualizándolas como manchas en el mapa. -{{< img src="real_user_monitoring/heatmaps/actions.jpeg" alt="Muestra un ejemplo de acción y la información que puedes obtener sobre esa acción." style="width:60%;">}} +{{< img src="real_user_monitoring/session_replay/heatmaps/heatmaps-clickmaps.png" alt="Datos del mapa de clic superpuestos en una página web." style="width:100%;">}} -## Elementos principales +A la izquierda hay una lista de todas las acciones que ocurrieron en la página, enumeradas por frecuencia. Al hacer clic en una acción, puedes obtener más información sobre esa interacción, por ejemplo: -Los elementos principales agregan acciones de clic en una vista determinada, mostrando los elementos con los que más se interactuó y su clasificación. La clasificación en el propio mapa corresponde al nombre de la acción en la parte lateral. +- El número de veces que el usuario realizó la acción y su posición en el análisis general de las principales acciones de una página determinada. +- Si en esa acción se produjo una señal de frustración (por ejemplo, si un usuario hizo un clic de ira en ese botón), también puedes ver las señales de frustración asociadas. -{{< img src="real_user_monitoring/heatmaps/top-elements-v3.png" alt="Clasificación de los elementos principales en los que se hicieron más clics en una página" style="width:100%;">}} +Desde esta vista, también puedes hacer clic en el botón Start a Funnel (Iniciar un embudo) para identificar el abandono de los usuarios. -Haz clic en cualquier nombre de acción del panel para resaltar la acción correspondiente en el mapa. +{{< img src="real_user_monitoring/session_replay/heatmaps/heatmaps-clickmap-actions.png" alt="Muestra una acción de ejemplo y la información que puedes obtener sobre esa acción." style="width:50%;">}} ## Mapas de desplazamiento (Scroll maps) Los mapas de desplazamiento muestran la actividad de desplazamiento agregada en una página determinada. Utiliza los mapas de desplazamiento para ver dónde se encuentra el pliegue medio de la página y cuántos usuarios se desplazan hasta una profundidad determinada. Puedes arrastrar la barra azul flotante de un mapa de desplazamiento hasta la profundidad que quieras evaluar. -{{< img src="real_user_monitoring/heatmaps/scrollmaps-v3.png" alt="Mapa de desplazamiento de una página de artículos para camas en una aplicación de comercio electrónico de ejemplo" style="width:100%;">}} +{{< img src="real_user_monitoring/session_replay/heatmaps/heatmaps-scrollmap.png" alt="Mapa de desplazamiento de la página de camas en una aplicación de comercio electrónico de ejemplo" style="width:100%;">}} El panel situado a la izquierda del mapa de desplazamiento proporciona información muy clara con enlaces directos a los resultados de la consulta, como un enlace a una lista de las visualizaciones en las que el usuario se desplazó más allá de un percentil determinado. Debajo del panel de información hay un minimapa de la página y un gráfico de distribución que muestra datos de desplazamiento granulares, útiles para identificar dónde se produce los mayores abandonos de la página. -{{< img src="real_user_monitoring/heatmaps/scrollmaps-insights-panel.png" alt="Captura de pantalla de las consultas de información de datos de desplazamiento" style="width:50%;">}} +{{< img src="real_user_monitoring/session_replay/heatmaps/heatmaps-minimap.png" alt="Una captura de pantalla de las consultas de la información de datos de desplazamiento" style="width:50%;">}} + +## Snapshots + +Un snapshot es el estado de una Session Replay en un momento determinado. Cambiar el snapshot muestra resultados diferentes, dependiendo del snapshot seleccionado. Puedes utilizar el botón **Change Snapshot** (Cambiar snapshot) para seleccionar un snapshot concreto en una repetición para tu mapa de calor. -## Fondos +Para seleccionar un snapshot de fondo: -Un fondo es un snapshot de una repetición de sesión. Cada mapa de calor recupera los 20 fondos que desencadenaron más acciones durante una sesión determinada. Al cambiar el fondo se obtienen resultados diferentes en función del fondo seleccionado. Puedes utilizar el botón **Choose Background** (Elegir fondo) para seleccionar un fondo concreto para tu mapa de calor. +1. En la vista de mapa de calor, haz clic en el botón **Change Snapshot** (Cambiar snapshot). -La lista de fondos de un mapa de calor no puede modificarse. + {{< img src="real_user_monitoring/session_replay/heatmaps/heatmaps-change-snapshot-button.png" alt="Haz clic en el botón Cambiar snapshot para cambiar el snapshot de fondo en el que está basado el mapa de calor." style="width:100%;">}} +1. Haz clic en un evento de acción a la derecha para seleccionar un snapshot diferente para tu mapa de calor. + + {{< img src="real_user_monitoring/session_replay/heatmaps/heatmaps-list-all-events.png" alt="Lista de eventos de acción para la Session Replay." style="width:100%;">}} + +1. Si la sesión [no contiene la acción](#the-view-that-i-selected-is-not-showing-the-initial-content) que lleva al snapshot deseado, puedes volver a la lista de repeticiones haciendo clic en **Choose Another Replay** (Elegir otra repetición). +1. Haz clic en el botón **Select Snapshot** (Seleccionar snapshot) para aplicar el snapshot en el punto pausado al mapa de calor. ## Siguientes pasos @@ -98,21 +107,21 @@ Tras analizar los mapas de calor, el siguiente paso es comprender la acción del ## Solucionar problemas -### Estoy observando un mapa de calor de una vista determinada, pero me muestra una página inesperada. +### Estoy viendo un mapa de calor para una vista determinada, pero me muestra una página inesperada. Los mapas de calor se basan en nombres de vistas RUM. Dependiendo de cómo esté configurada tu aplicación RUM, muchas páginas pueden empezar a agruparse bajo el mismo nombre de vista o podrías empezar a tener nombres de vista específicos. ### La vista que seleccioné no muestra el contenido inicial. -Los mapas de calor se generan a partir de los datos de Session Replay. El algoritmo inteligente de Datadog selecciona la repetición más reciente y que mejor coincide con el estado inicial de la página. En algunos casos, es posible que no puedas encontrar la repetición correcta. Para cambiar el [fondo](#backgrounds) de tu mapa de calor, puedes utilizar el botón **Choose Background** (Elegir fondo) para navegar por los diferentes estados de la página y encontrar aquel que buscas. +Los mapas de calor se generan con los datos de Session Replay. El algoritmo inteligente de Datadog selecciona la repetición más reciente y la que mejor se ajusta al estado inicial de la página. En algunos casos, puede que no encuentres la repetición correcta. Para cambiar el snapshot de tu mapa de calor, puedes utilizar el botón **Change Snapshot** (Cambiar snapshot) para navegar por los diferentes estados de una repetición y encontrar la que estás buscando. Si la repetición que estás viendo no tiene el snapshot que buscas, puedes utilizar el botón **Choose Another Replay** (Elegir otra repetición) para seleccionar otra repetición de la misma vista. -{{< img src="real_user_monitoring/heatmaps/heatmaps-background-selector.mp4" alt="Seleccionar un fondo diferente utilizando el botón de selección de fondos" video=true >}} +{{< img src="real_user_monitoring/session_replay/heatmaps/heatmaps-change-the-snapshot.mp4" alt="Selecciona un fondo diferente al hacer clic en el botón Cambiar snapshot" video=true >}} -### En la lista de acciones de la parte lateral de mi mapa de calor veo un icono que muestra un elemento que no es visible en el mapa de calor. +### En la lista de acciones en el lado de mi mapa de calor, veo un icono que muestra un elemento que no es visible en el mapa de calor. -{{< img src="real_user_monitoring/heatmaps/heatmaps-hidden-elements.png" alt="Elementos ocultos en la lista de acciones de un mapa de calor." style="width:60%;">}} +El globo del icono dice que el elemento no es visible. Esto significa que el elemento es una acción común en tu página, pero no se muestra en el snapshot en el mapa de calor. Para ver ese elemento, puedes hacer clic en **Change Snapshot** (Cambiar snapshot) en la esquina superior derecha para cambiar el snapshot de tu mapa de calor a uno en el que esté presente ese elemento. -El tooltip del icono dice **elemento no visible**. Esto significa que el elemento es una acción común en tu página, pero no se muestra en el fondo del mapa de calor. Para ver ese elemento, puedes hacer clic en **Choose Background** (Elegir fondo) en la esquina inferior derecha para cambiar el fondo de tu mapa de calor a uno en el que ese elemento esté presente. +{{< img src="real_user_monitoring/session_replay/heatmaps/heatmaps-hidden-elements.png" alt="Elementos ocultos en la lista de acciones del mapa de calor." style="width:100%;">}} ### Después de intentar crear un mapa de calor, veo que aparece el estado "No Replay Data" (No hay datos de repeticiones). @@ -120,7 +129,7 @@ Esto significa que Datadog no logró encontrar ninguna repetición de sesión pa ### Después de intentar crear un mapa de calor, veo que aparece el estado "Not enough data to generate a heatmap" (No hay suficientes datos para generar un mapa de calor). -Esto significa que Datadog no logró hacer coincidir ninguna acción del usuario con la repetición seleccionada en ese momento. Esto ocurre por varias razones, como por ejemplo: +Esto significa que Datadog no ha podido emparejar ninguna acción del usuario con la repetición seleccionada en ese momento. Esto ocurre por varias razones, como por ejemplo: - Tu aplicación no está utilizando la última versión del SDK (v4.20.0 o posterior). - Tu página cambió drásticamente en los últimos tiempos. @@ -132,7 +141,6 @@ La información del usuario no se recopila por defecto. Los mapas de calor utili ## Referencias adicionales {{< partial name="whats-next/whats-next.html" >}} - [1]: /es/real_user_monitoring/session_replay/ [2]: https://app.datadoghq.com/rum/heatmap/ [3]: https://app.datadoghq.com/rum/performance-monitoring diff --git a/content/es/real_user_monitoring/session_replay/mobile/privacy_options.md b/content/es/real_user_monitoring/session_replay/mobile/privacy_options.md deleted file mode 100644 index 3cc1d5df1fe..00000000000 --- a/content/es/real_user_monitoring/session_replay/mobile/privacy_options.md +++ /dev/null @@ -1,257 +0,0 @@ ---- -aliases: null -description: Configura opciones de privacidad de Session Replay en móviles. -further_reading: -- link: /real_user_monitoring/session_replay/mobile - tag: Documentación - text: Session Replay en móviles -- link: /real_user_monitoring/session_replay/mobile/app_performance - tag: Documentación - text: Cómo afecta Session Replay en móviles al rendimiento de las aplicaciones -- link: /real_user_monitoring/session_replay/mobile/setup_and_configuration - tag: Documentación - text: Configuración de Session Replay en móviles -- link: /real_user_monitoring/session_replay/mobile/troubleshooting - tag: Documentación - text: Solucionar problemas de Session Replay en móviles -- link: /real_user_monitoring/session_replay - tag: Documentación - text: Session Replay -title: Opciones de privacidad de Session Replay en móviles ---- - -## Información general - -Session Replay proporciona controles de privacidad para garantizar que las organizaciones de cualquier escala no expongan datos confidenciales o personales. Los datos se almacenan en instancias en la nube gestionadas por Datadog y se cifran en reposo. - -Las opciones de privacidad predeterminadas de Session Replay protegen la privacidad del usuario final y evitan que se recopile información confidencial de la organización. - -Al habilitar Session Replay para móviles puedes enmascarar automáticamente los elementos confidenciales para que no se registren a través del SDK RUM para móviles. Cuando se enmascaran los datos, los SDK de Datadog no los recopilan en su formato original y, por lo tanto, no se envían al backend. - -## Configuración de los modos de enmascaramiento - -Con los modos de enmascaramiento que se indican a continuación, puedes anular la configuración predeterminada para cada aplicación. - -### Enmascarar todos los elementos de texto - -Por defecto, el parámetro `mask` está habilitado para todos los datos. Con esta configuración habilitada se enmascara todo el contenido de texto en pantalla, como se muestra a continuación. - -{{< img src="real_user_monitoring/session_replay/mobile/masking-mode-mask-all-2.png" alt="Apariencia que puede tener la pantalla de tu aplicación cuando se habilita `mask`." style="width:50%;">}} - -{{< tabs >}} -{{% tab "Android" %}} - - {{< code-block lang="javascript" filename="build.gradle" disable_copy="false" collapsible="true" >}} - - // enmascarar todos los elementos de texto - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setPrivacy(SessionReplayPrivacy.MASK) - .build() - SessionReplay.enable(sessionReplayConfig) - {{< /code-block >}} - -{{% /tab %}} -{{% tab "iOS" %}} - -{{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - - // enmascarar todos los elementos de texto - SessionReplay.enable( - with: SessionReplay.Configuration( - replaySampleRate: sampleRate, - defaultPrivacyLevel: .mask - ) - ) - -{{< /code-block >}} - -{{% /tab %}} -{{< /tabs >}} - -### Enmascarar sólo los elementos de entrada - -Con la opción `mask user input` habilitada, cualquier campo de entrada se sustituye por texto anónimo. - -{{< img src="real_user_monitoring/session_replay/mobile/masking-mode-user-input-2.png" alt="Apariencia que puede tener la pantalla de tu aplicación cuando se enmascaran los campos de entrada del usuario." style="width:50%;">}} - -{{< tabs >}} -{{% tab "Android" %}} - -{{< code-block lang="javascript" filename="build.gradle" disable_copy="false" collapsible="true" >}} - - // enmascarar sólo los elementos de entrada - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setPrivacy(SessionReplayPrivacy.MASK_USER_INPUT) - .build() - SessionReplay.enable(sessionReplayConfig) - {{< /code-block >}} - -{{% /tab %}} -{{% tab "iOS" %}} - -{{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - - // enmascarar sólo los elementos de entrada - SessionReplay.enable( - with: SessionReplay.Configuration( - replaySampleRate: sampleRate, - defaultPrivacyLevel: .maskUserInput - ) - ) - -{{< /code-block >}} - -{{% /tab %}} -{{< /tabs >}} - -### Permitir (sin enmascarar) - -Con la opción `allow` habilitada, se muestra todo el texto. - -{{< img src="real_user_monitoring/session_replay/mobile/masking-mode-allow-all-2.png" alt="Apariencia que puede tener la pantalla de tu aplicación cuando se habilita `allow`." style="width:50%;">}} - -**Nota**: Incluso cuando esta opción está habilitada, cualquier campo de texto confidencial, como contraseñas, correos electrónicos, números de teléfono y direcciones siguen enmascarados. Para obtener más información, consulta [Definiciones de enmascaramiento de texto](#text-masking-definitions). - -{{< tabs >}} -{{% tab "Android" %}} - -{{< code-block lang="javascript" filename="build.gradle" disable_copy="false" collapsible="true" >}} - - // sin enmascaramiento; se muestra todo el texto - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setPrivacy(SessionReplayPrivacy.ALLOW) - .build() - SessionReplay.enable(sessionReplayConfig) - {{< /code-block >}} - -{{% /tab %}} -{{% tab "iOS" %}} - - {{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - // sin enmascaramiento; se muestra todo el texto - SessionReplay.enable( - with: SessionReplay.Configuration( - replaySampleRate: sampleRate, - defaultPrivacyLevel: .allow - ) - ) - -{{< /code-block >}} - -{{% /tab %}} -{{< /tabs >}} - -## Qué datos se enmascaran y de qué forma - -Esta sección describe cómo el grabador de Datadog gestiona el enmascaramiento según el tipo de datos y cómo se definen dichos datos. -### Estrategias de enmascaramiento de texto - -Dependiendo de cómo hayas configurado tus parámetros de privacidad, el tipo de texto y la confidencialidad de los datos, las reglas de enmascaramiento de Datadog aplican diferentes estrategias a los distintos tipos de campos de texto. - -| Estrategia de enmascaramiento de texto | Descripción | Ejemplo | -|-----------------------|-------------|---------| -| Sin enmascarar | El texto se muestra en la repetición de la sesión | `"Hello world"` → `"Hello world"` | -| Enmascaramiento con conservación del espacio | Cada carácter visible se sustituye por una "x" minúscula | `"Hello world"` → `"xxxxx xxxxx"` | -| Enmascaramiento de longitud fija | Todo el campo de texto se sustituye por una constante de tres asteriscos (***) | `"Hello world"` → `"***"` - -Teniendo en cuenta las estrategias de texto anteriores, tienes algunas opciones diferentes si quieres anular la regla de privacidad predeterminada de `mask` en tu configuración. - -El siguiente gráfico muestra cómo Datadog aplica diferentes estrategias de enmascaramiento de texto, utilizando las reglas que defines en tu configuración, a los siguientes tipos de texto. - -| Tipo | Permitir todo | Enmascarar todo | Enmascarar la entrada del usuario | -|------|-------------|------------|-------------------| -| [Texto confidencial](#sensitive-text) | Enmascaramiento de longitud fija | Enmascaramiento de longitud fija | Enmascaramiento de longitud fija | -| [Texto de entrada y de opción](#input-and-option-text) | Sin enmascarar | Enmascaramiento de longitud fija | Enmascaramiento de longitud fija | -| [Texto estático](#static-text) | Sin enmascarar | Enmascaramiento con conservación del espacio | Sin enmascarar | -| [Texto de sugerencia](#hint-text) | Sin enmascarar | Enmascaramiento de longitud fija | Sin enmascarar | - -### Definiciones de enmascaramiento de texto - -A continuación encontrarás una descripción de cómo el grabador de Datadog trata cada tipo de texto. - -#### Texto confidencial -El texto confidencial incluye contraseñas, correos electrónicos y números de teléfono marcados de forma específica para cada plataforma, -y otras formas de confidencialidad en el texto disponibles para cada plataforma. - -Esto incluye contraseñas, correos electrónicos y números de teléfono: - -- Campo de texto (iOS) -- Vista de texto (iOS) -- Editar texto (Android) -- Información sobre direcciones (iOS + Android) -- Números de tarjeta de crédito (iOS) -- Códigos de un solo uso (iOS) - -#### Texto de entrada y de opción - -El texto de entrada y de opción es el texto introducido por el usuario con un teclado u otro dispositivo de entrada de texto, o un valor personalizado (no genérico) en elementos de selecciones. - -Esto incluye lo siguiente. - -- Texto introducido por el usuario en: - - Campo de texto (iOS) - - Vista de texto (iOS) - - Editar texto (Android) -- Opciones seleccionadas por el usuario en: - - Selector de valores (iOS + Android) - - Segmento (iOS) - - Lista desplegable (Android) -- Exclusiones notables: - - Textos de parámetros (sugerencias) en Campo de texto, Vista de texto y Editar texto (no introducidos por el usuario) - - Textos no editables en Vista de texto (iOS). - - Etiquetas (labels) de mes, día y año en el selector de fecha (valores genéricos) - -#### Texto estático -Texto estático es cualquier texto que no es introducido directamente por el usuario. Esto incluye lo siguiente. - -Todos los textos en: - -- Títulos de casillas de verificación y botones de opción (Android) -- Textos en Vista de texto no editable (iOS) -- Etiquetas de mes, día y año en el selector de fecha y hora -- Valores actualizados en respuesta a la interacción gestual con los elementos de entrada, como el valor actual del deslizador -- Otros controles, no considerados como "elementos de entrada del usuario", como etiquetas, barras de pestañas y de navegación (iOS) o pestañas (Android). - -#### Texto de sugerencia -El texto de sugerencia es texto estático en elementos de texto editables o selectores de opción que se muestra cuando no se proporciona ningún valor. Esto incluye: - -- Marcadores de posición en Campo de texto (iOS), Vista de texto (iOS) -- Sugerencias en Editar texto (Android) -- Avisos en listas desplegables (Android) - -### Enmascaramiento del aspecto - -El siguiente gráfico muestra cómo aplicamos diferentes estrategias de enmascaramiento de apariencia, utilizando las reglas que defines en tu configuración, a los siguientes tipos de texto. - -| Tipo | Permitir todo | Enmascarar todo | Enmascarar la entrada del usuario | -|------|-------------|------------|-------------------| -| [Mostrar atributos](#revealing-attributes) | | {{< X >}} | {{< X >}} | -| [Otros atributos](#other-attributes) | | | | - -#### Atributos reveladores -Los atributos reveladores son atributos que pueden mostrar o sugerir el valor de los elementos de entrada y pueden utilizarse para inferir la entrada o selección de un usuario. - -Esto incluye: - -**Formas** -- Segundo plano de la opción seleccionada en un segmento (iOS) -- Círculo alrededor de la fecha seleccionada en un selector de fecha (iOS) -- Marca de selección en una casilla de verificación (Android) -- Pulgar de un deslizador (iOS y Android) - -**Atributos de texto** -- El color de una etiqueta que muestra la fecha seleccionada en el selector de fecha (iOS) -- La posición de la primera y última opción en el selector de valores (iOS y Android) - -### Interacciones táctiles - -El siguiente gráfico muestra cómo aplicamos diferentes estrategias de interacción táctil, utilizando las reglas que defines en tu configuración, a los siguientes tipos de texto. Si bien todas las interacciones que ocurren en un teclado en pantalla están enmascaradas, las interacciones con otros elementos no lo están. - -| Tipo | Permitir todo | Enmascarar todo | Enmascarar la entrada del usuario | -|------|-------------|------------|-------------------| -| [Otros atributos](#other-attributes) | | | | -| [Teclado en pantalla](#on-screen-keyboard) | {{< X >}} | {{< X >}} | {{< X >}} | - -## Referencias adicionales - -{{< partial name="whats-next/whats-next.html" >}} \ No newline at end of file diff --git a/content/es/security/application_security/threats/setup/compatibility/java.md b/content/es/security/application_security/threats/setup/compatibility/java.md new file mode 100644 index 00000000000..8e2b81751f2 --- /dev/null +++ b/content/es/security/application_security/threats/setup/compatibility/java.md @@ -0,0 +1,163 @@ +--- +code_lang: java +code_lang_weight: 0 +title: Requisitos de compatibilidad Java +type: lenguaje de código múltiple +--- + +## Funciones de protección de las aplicaciones y las API + +Las siguientes funciones de protección de las aplicaciones y las API son compatibles con la biblioteca Java para la versión de rastreador especificada: + +| Función de protección de las aplicaciones y las API | Versión mínima de rastreador Java | +| -------------------------------- | ----------------------------| +| Threat Detection | 1.8.0 | +| Seguridad de la API | 1.31.0 | +| Threat Protection| 1.9.0 | +| Personalizar la respuesta a las solicitudes bloqueadas | 1.11.0 | +| Análisis de la composición del software (SCA) | 1.1.4 | +| Code Security | 1.15.0| +| Seguimiento automático de los eventos de actividades de usuarios | 1.20.0 | + +La versión mínima de rastreador para contar con todas las funciones de seguridad de las aplicaciones compatibles para Java es v1.31.0. + +**Nota**: Threat Protection requiere habilitar la [configuración remota][2], que se incluye en la versión mínima de rastreador indicada. + +### Tipos de despliegue compatibles +| Tipo | Compatibilidad con Threat Detection | Análisis de composición de software | +|-------------------|--------------------------|-------------------------------| +| Docker | {{< X >}} | {{< X >}} | +| Kubernetes | {{< X >}} | {{< X >}} | +| Amazon ECS | {{< X >}} | {{< X >}} | +| AWS Fargate | {{< X >}} | {{< X >}} | +| AWS Lambda | {{< X >}} | | +| Azure App Service | {{< X >}} | {{< X >}} | + +**Nota**: Azure App Service es compatible **sólo con aplicaciones web**. La protección de las aplicaciones y las API no es compatible con las funciones de Azure. + +## Compatibilidad con lenguajes y marcos de trabajo + +### Versiones compatibles de Java +El rastreador Java es compatible con la instrumentación automática para los tiempos de ejecución Oracle JDK y OpenJDK de máquinas virtuales Java. + +| Versiones de máquinas virtuales Java | Sistemas operativos | Nivel de compatibilidad | Versión del rastreador | +| -------------| ------------------------------------------------------------------------------- | ----------------------------------- | -------------- | +| v8 a v17 | Windows (x86-64)
Linux (glibc, musl) (arm64, x86-64)
MacOS (arm64, x86-64) | Compatibles | Último | + + +Datadog no admite oficialmente ninguna versión de acceso anticipado de Java. + + + + + + +### Compatibilidad con marcos web + +- Detalles de una solicitud HTTP originada por un atacante +- Etiquetas (tags) para la solicitud HTTP (código de estado, método, etc.) +- Rastreo distribuido para visualizar flujos (flows) de ataques en tus aplicaciones + +##### Notas sobre la función de protección de las aplicaciones y las API +- **El Análisis de la composición del software** es compatible con todos los marcos de trabajo. +- Si **Code Security** no es compatible con tu marco de trabajo, aún así detectará las siguientes vulnerabilidades: Cifrado débil, Hashing débil, Cookie insegura, Cookie sin marca HttpOnly y Cookie sin marca SameSite. + + + +| Marco de trabajo | Versiones | ¿Es compatible Threat Detection? | ¿Es compatible Threat Protection? |¿Code Security? | +| ----------------------- | ---------- | --------------- | ---------------------------------------------- | ---------------------------------------------- | +| Grizzly | 2.0 o posterior | {{< X >}} | {{< X >}} | {{< X >}} | +| Glassfish | | {{< X >}} | {{< X >}} | {{< X >}} | +| gRPC | v1.5 o posterior | {{< X >}} | {{< tooltip text="N/A" tooltip="Blocking not yet available for gRPC" >}} | {{< X >}} | +| Java Servlet | v2.3 o posterior, v3.0 o posterior | {{< X >}} | {{< X >}} | {{< X >}} | +| Jetty | 7.0-9.x, 10.x | {{< X >}} | {{< X >}} | {{< X >}} | +| Spring Boot | 1.5 | {{< X >}} | {{< X >}} | {{< X >}} | +| Spring Web (MVC) | v4.0 o posterior | {{< X >}} | {{< X >}} | {{< X >}} | +| Spring WebFlux | v5.0 o posterior | | | {{< X >}} | +| Tomcat | v 5.5 o posterior | {{< X >}} | {{< X >}} | {{< X >}} | +| Vert.x | 3.4-3.9.x | {{< X >}} | {{< X >}} | {{< X >}} | + +**Nota**: Muchos servidores de aplicaciones son compatibles con Servlet y están cubiertos automáticamente por esa instrumentación, como por ejemplo Websphere, Weblogic y JBoss. Además, los marcos de trabajo como Spring Boot (versión 3) funcionan de forma inherente, ya que suelen utilizar un servidor de aplicaciones integrado compatible, como Tomcat, Jetty o Netty. + +
Si no encuentras el marco de trabajo que buscas en la lista, háznoslo saber. Rellena este breve formulario para enviarnos tu información.
+ +### Compatibilidad con marcos de red + +`dd-java-agent` incluye compatibilidad para el rastreo automático de los siguientes marcos de red. + +**El rastreo de redes proporciona:** + +- Rastreo distribuido en tus aplicaciones +- Bloqueo basado en solicitudes + +##### Notas sobre la función de protección de las aplicaciones y las API +- **Software Composition Analysis** es compatible con todos los marcos de trabajo. +- Si **Code Security** no es compatible con tu marco de trabajo, aún así detectará las siguientes vulnerabilidades: Cifrado débil, Hashing débil, Cookie insegura, Cookie sin marcador HttpOnly y Cookie sin marcador SameSite. + + +| Marco de trabajo | Versiones | ¿Es compatible Threat Detection? | ¿Es compatible Threat Protection? | ¿Code Security? | +| ------------------------ | ----------- | --------------- | ---------------------------------------------- | ---------------------------------------------- | +| Cliente HTTP Apache | v4.0 o posterior | {{< X >}} | | | +| gRPC | v1.5 o posterior | {{< X >}} | | | +| HttpURLConnection | todos | {{< X >}} | | | +| Clientes Jax RS | v2.0 o posterior | {{< X >}} | {{< X >}} | {{< X >}} | +| Jersey Server | 1.9-2.29 | {{< X >}} | {{< X >}} | {{< X >}} | +| Netty HTTP Server | v3.8 o posterior | {{< X >}} | | | +| RESTEasy | 3.0.x | {{< X >}} | | | +| Spring SessionAwareMessageListener | v3.1 o posterior | {{< X >}} | | | + +
Si no encuentras el marco de trabajo que buscas en la lista, háznoslo saber. Rellena este breve formulario para enviarnos tu información.
+ +### Compatibilidad con almacenes de datos + +`dd-java-agent` incluye compatibilidad para el rastreo automático de los siguientes marcos de trabajo/controladores de bases de datos. + +El **rastreo del almacén de datos proporciona:** + +- Temporización de la solicitud a la respuesta +- Información de consulta (por ejemplo, una cadena de consulta desinfectada) +- Captura de errores y trazas de stack tecnológico + +##### Notas sobre la función de protección de las aplicaciones y las API +- **Software Composition Analysis** es compatible con todos los marcos de trabajo de trabajo. +- **Threat Protection** también funciona en la capa de la solicitud HTTP (entrada), por lo que funciona para todas las bases de datos por defecto, incluso para las que no aparecen en la siguiente tabla. +- Si tu marco de trabajo no aparece como compatible más abajo, **Code Security** no detectará vulnerabilidades de inyección SQL, pero sí detectará el resto de los tipos de vulnerabilidades presentadas [aquí][3]. + +| Base de datos | Versiones | ¿Es compatible Threat Detection? | ¿Code Security? | +| ----------------------- | -------- | ------------------------| ---------------------------------------------------------------- | +| Aerospike | v4.0 o posterior | {{< X >}} | | +| Couchbase | v2.0 o posterior | {{< X >}} | | +| JDBC | N/A | {{< X >}} | {{< X >}} | +| MongoDB | v3.0-4.0 o posterior | {{< X >}} | | + +`dd-java-agent` también es compatible con controladores JDBC frecuentes para Threat Detection, tales como: + +- Apache Derby +- Firebird SQL +- Motor de base de datos H2 +- HSQLDB +- IBM DB2 +- MariaDB +- MSSQL (Microsoft SQL Server) +- MySQL +- Oracle +- Postgres SQL +- ScalikeJDBC + +
Si no encuentras el marco de trabajo que buscas en la lista, háznoslo saber. Rellena este breve formulario para enviarnos tu información.
+ +### Compatibilidad con marcos de autenticación de usuarios + +**Las integraciones con marcos de autenticación de usuarios proporcionan:** + +- Eventos de inicio de sesión de usuarios, incluidos los ID de usuarios +- Monitorización de la detección de la apropiación de cuentas para eventos de inicio de sesión de usuarios + +| Marco de trabajo | Versión mínima de marco de trabajo | +|-------------------|---------------------------| +| Spring Security | v5.5 o posterior | + + +[1]: /es/tracing/trace_collection/compatibility/java/ +[2]: /es/agent/remote_config/?tab=configurationyamlfile#enabling-remote-configuration +[3]: /es/security/code_security/software_composition_analysis/ \ No newline at end of file diff --git a/content/es/service_management/on-call/escalation_policies.md b/content/es/service_management/on-call/escalation_policies.md index 0d741247f8e..cf071600b1a 100644 --- a/content/es/service_management/on-call/escalation_policies.md +++ b/content/es/service_management/on-call/escalation_policies.md @@ -3,66 +3,94 @@ further_reading: - link: /service_management/on-call/ tag: Documentación text: Datadog On-Call -title: Políticas de elevación +title: Políticas de escalado --- -En Datadog On-Call, las políticas de elevación garantizan que las páginas se traten con prontitud. Las páginas se elevan a través de pasos predefinidos, a menos que se acuse recibo de ellas en los plazos establecidos. +En Datadog On-Call, las políticas de escalado garantizan que los llamados se traten con prontitud. Los llamados se escalan a través de pasos predefinidos, a menos que se acuse recibo de ellos en los plazos establecidos. -Datadog crea una política de elevación predeterminada cuando [incorporas un equipo a On-Call][1]. +Datadog crea una política de escalado predeterminada cuando [incorporas un equipo a On-Call][1]. -## Crea una nueva política de elevación -{{< img src="service_management/oncall/escalation_policy_2.png" alt="Política de elevación de una muestra" style="width:100%;" >}} +## Crea una nueva política de escalado +{{< img src="service_management/oncall/escalation_policy_2.png" alt="Política de escalado de ejemplo" style="width:100%;" >}} -1. Ve a [**On-Call** > **Políticas de elevación**][2]. -1. Selecciona [**+ Nueva política de elevación**][3]. -1. Introduce un **Nombre** para tu política de elevación. Por ejemplo, _Payment's Escalation Policy_. -1. Selecciona los **Equipos** que poseen esta política de elevación. -1. Ahora empieza a crear la política. Decide quién o qué debe recibir una página cuando se invoque esta política de elevación. Para cada paso de elevación posterior, selecciona a quién notificar. Cada paso puede notificar a usuarios individuales, equipos enteros y/o a quien esté de guardia en un horario. - Por ejemplo: Cuando se activa esta página, se envía a quien esté de guardia en ese momento para el cronograma principal, en este caso John Doe. - {{< img src="service_management/oncall/escalation_policy_2_steps.png" alt="Una política de elevación, que muestra dos pasos después de que 'se activa la página'. Cada paso tiene una casilla de entrada 'Notificar' y 'si no se acusa recibo de la página después de N minutos, elevar'. El primer paso está configurado para notificar un cronograma llamado principal y se eleva si se acusa recibo de la página después de 5 minutos. El segundo paso está configurado para notificar a un usuario llamado Jane Doe." style="width:100%;" >}} -1. Configura cuántos minutos se debe esperar para que uno de los destinatarios acuse recibo de la página. Si nadie acusa recibo de la página en ese período de tiempo, la página se eleva a un nivel superior. En el ejemplo, si la persona de guardia principal, John Doe, no acusa recibo de la página en cinco minutos, la página se envía a Jane Doe. -1. Configura cuántas veces deben repetirse estos pasos si nadie acusa recibo de la página. -1. Selecciona si Datadog debe actualizar automáticamente el estado de la página a **Resuelto** después de ejecutar todas las reglas y repeticiones. +1. Ve a [**On-Call** > **Políticas de escalado**][2]. +1. Selecciona [**+ Nueva política de escalado**][3]. +1. Introduce un **Nombre** para tu política de escalado. Por ejemplo, _Política de escalado para pagos_. +1. Selecciona los **Equipos** que poseen esta política de escalado. +1. Para cada paso de escalado: + 1. Decide a quién se debe notificar. Puedes especificar usuarios individuales, equipos o quien(es) esté(n) de guardia en un horario. + 1. Selecciona uno de los siguientes métodos de notificación: `Notify All`, `Round Robin`. Para obtener más detalles, consulta los [tipos de notificación de las políticas de escalado](#escalation-policy-step-notification-types). + 1. Especifica cuántos minutos tiene el destinatario para acusar recibo del llamado antes de que se escale al siguiente nivel. + Por ejemplo, lo siguiente notificará al usuario de guardia actual cuando se active un llamado. Se escalará a Jane Doe si John no se acusa recibo del llamado en un plazo de 5 minutos. + {{< img src="service_management/oncall/escalation_policy_2_steps_v2.png" alt="Política de escalado configurada para notificar al usuario de guardia previsto y escalar el llamado a Jane Doe si no se acusa recibo del llamado luego de 5 minutos." style="width:100%;" >}} +1. Define cuántas veces se repetirán los pasos si nadie acusa recibo del llamado. +1. Selecciona si Datadog debe actualizar automáticamente el estado del llamado a **Resuelto** después de ejecutar todas las reglas y repeticiones. -## Objetivos de las políticas de elevación -En cada paso de una política de elevación, puedes notificar a usuarios individuales, a equipos enteros o a quien esté de guardia en un horario. +## Tipos de notificación de pasos de la política de escalado +En cada paso de una política de escalado, puedes mantener el comportamiento estándar `Notify All` u optar por `Round Robin`. +{{< img src="service_management/oncall/escalation_policy_notification_type.png" alt="Selector del tipo de notificación en la creación de la política de escalado" style="width:100%;" >}} + +### Notificar a todos (por defecto) +Notifica a todos los objetivos del paso al mismo tiempo. + +Por ejemplo, si un paso incluye un usuario individual, un equipo con tres miembros y un cronograma, se notificará a cinco personas: el usuario individual, cada uno de los tres miembros del equipo y el usuario de guardia del cronograma. + +### Round robin +Distribuye automáticamente llamados entre varios objetivos (usuarios, cronogramas, equipos) en un orden rotatorio para garantizar un balanceo de las cargas justo. + +Por ejemplo, si tienes un equipo de asistencia de 50 personas, puedes dividir el equipo en cinco cronogramas de 10 personas y configurar la siguiente política para distribuir las cargas de forma uniforme: +- Llamado A → Cronograma de soporte Grupo 1 +- Llamado B → Cronograma de soporte Grupo 2 +- Llamado C → Cronograma de soporte Grupo 3 +- Llamado D → Cronograma de soporte Grupo 4 +- Llamado E → Cronograma de soporte Grupo 5 +- Llamado F → Cronograma de soporte Grupo 1 +- Llamado G → Cronograma de soporte Grupo 2 + +#### Comportamiento de escalado +En el modo round robin, si no se acusa recibo de un llamado a tiempo, este no pasa a la siguiente persona de la rotación round robin, sino que se escala al siguiente paso de la política. + +Si quieres que el llamado pase al siguiente objetivo del round robin, utiliza un solo paso round robin en tu política de escalado y configúralo para que se repita tantas veces como objetivos haya. + +## Objetivos del paso de la política de escalado +En cada paso de una política de escalado, puedes notificar a usuarios individuales, a equipos enteros o a quien esté de guardia en un horario. ### Cronogramas -{{< img src="service_management/oncall/escalation_policy_notify_schedule.png" alt="Un paso de la política de elevación de muestras que notifica un cronograma" style="width:100%;" >}} +{{< img src="service_management/oncall/escalation_policy_notify_schedule.png" alt="Paso de política de escalado de ejemplo que notifica un cronograma" style="width:100%;" >}} -Las políticas de elevación pueden notificar a quien esté de guardia según un cronograma predefinido. El sistema checks el cronograma y notifica a la persona o al grupo que está de guardia activamente durante la incidencia. El uso de cronogramas es beneficioso para lo siguiente: +Las políticas de escalado pueden notificar a quien esté de guardia según un cronograma predefinido. El sistema checks el cronograma y notifica a la persona o al grupo que está de guardia activamente durante la incidencia. El uso de cronogramas es beneficioso para lo siguiente: - Envío de alertas al personal de guardia de distintas zonas horarias para una cobertura ininterrumpida. - Gestión de la asistencia por niveles, en la que diferentes turnos gestionan distintos niveles de urgencia. - Notificaciones dinámicas para equipos con responsabilidades de guardia rotativas, lo que garantiza que siempre se llame a la persona adecuada. -Si no hay nadie de guardia para un horario determinado, el paso de elevación se omite lentamente y el proceso avanza sin retrasos ni interrupciones. La interfaz de usuario indica que se ha omitido el paso. +Si no hay nadie de guardia para un horario determinado, el paso de escalado se omite lentamente y el proceso avanza sin retrasos ni interrupciones. La interfaz de usuario indica que se ha omitido el escalado. -{{< img src="service_management/oncall/escalation_policy_schedule_skipped.png" alt="Una política de elevación de muestras que indica una elevación omitida debido a que no había ninguna persona de guardia" style="width:100%;" >}} +{{< img src="service_management/oncall/escalation_policy_schedule_skipped.png" alt="Política de escalado de ejemplo que indica un escalado omitido debido a que no había ninguna persona de guardia" style="width:100%;" >}} ### Usuarios -{{< img src="service_management/oncall/escalation_policy_notify_user.png" alt="Una política de elevación de muestras que especifica un usuario en la política de elevación" style="width:100%;" >}} +{{< img src="service_management/oncall/escalation_policy_notify_user.png" alt="Política de escalado de ejemplo que especifica un usuario en la política de escalado" style="width:100%;" >}} -Puedes incluir usuarios específicos en una política de elevación para asegurarte de que siempre se notifique a las personas clave en el evento de una página. Los casos de uso más comunes para avisar directamente a un usuario son los siguientes: +Puedes incluir usuarios específicos en una política de escalado para asegurarte de que siempre se notifique a las personas clave en el caso de un llamado. Los casos de uso más comunes para avisar directamente a un usuario son los siguientes: - Notificar a un ingeniero senior las incidencias de alta gravedad que requieran conocimientos especializados. - Alertar a un gerente o director de producto en caso de incidencias de cara al cliente. - Dirigir alertas a personal de reserva si el contacto principal no está disponible. ### Equipos -{{< img src="service_management/oncall/escalation_policy_notify_team.png" alt="Una política de elevación de muestras que notifica a un equipo entero" style="width:100%;" >}} +{{< img src="service_management/oncall/escalation_policy_notify_team.png" alt="Política de escalado de ejemplo que notifica a un equipo entero" style="width:100%;" >}} Los casos de uso más comunes para avisar a un equipo entero son los siguientes: - Incidencias que afectan a varios sistemas en los que distintos miembros del equipo pueden contribuir a la solución. -- Elevación a un equipo de DevOps para incidencias relacionadas con la infraestructura. +- Escalado a un equipo de DevOps para incidentes relacionados con la infraestructura. - Garantizar que se alerte a todos los miembros pertinentes de un equipo de ingeniería o seguridad en caso de interrupciones críticas. ## Limitaciones -- Máximo de pasos de elevación: 10 -- Número máximo de objetivos de notificación (individuos, equipos o cronogramas) por paso de elevación: 10 -- Tiempo mínimo antes de pasar al siguiente paso: un minuto +- Máximo de pasos de escalado: 10 +- Número máximo de objetivos de notificación (individuos, equipos o cronogramas) por paso de escalado: 10 +- Tiempo mínimo antes de escalar al siguiente paso: un minuto [1]: /es/service_management/on-call/teams [2]: https://app.datadoghq.com/on-call/escalation-policies diff --git a/content/es/service_management/on-call/guides/_index.md b/content/es/service_management/on-call/guides/_index.md new file mode 100644 index 00000000000..ea22992c3c3 --- /dev/null +++ b/content/es/service_management/on-call/guides/_index.md @@ -0,0 +1,11 @@ +--- +disable_toc: true +private: false +title: Guías de guardia +--- + +{{< whatsnext desc="Guías generales:">}} + {{< nextlink href="/service_management/on-call/guides/configure-mobile-device-for-on-call" >}}Configurar tu dispositivo móvil para Datadog On-Call{{< /nextlink >}} + {{< nextlink href="/service_management/on-call/guides/migrating-from-your-current-providers" >}}Migrar desde tu actual proveedor de servicios de guardia{{< /nextlink >}} + {{< nextlink href="/service_management/on-call/guides/migrate-your-pagerduty-resources-to-on-call" >}}Migrar recursos de PagerDuty a Datadog On-Call{{< /nextlink >}} +{{< /whatsnext >}} \ No newline at end of file diff --git a/content/es/service_management/on-call/guides/configure-mobile-device-for-on-call.md b/content/es/service_management/on-call/guides/configure-mobile-device-for-on-call.md index 70a141979ba..21efd8f57bc 100644 --- a/content/es/service_management/on-call/guides/configure-mobile-device-for-on-call.md +++ b/content/es/service_management/on-call/guides/configure-mobile-device-for-on-call.md @@ -6,29 +6,33 @@ further_reading: title: Configurar tu dispositivo móvil para Datadog On-Call --- -Estar de guardia requiere notificaciones fiables y puntuales para asegurar que puedas responder a las incidencias con eficacia. Esta guía te indica los pasos para configurar tu dispositivo móvil para un rendimiento óptimo con Datadog On-Call. +{{< site-region region="gov" >}} +
On-Call no es compatible con tu sitio de Datadog seleccionado ({{< region-param key="dd_site_name" >}}).
+{{< /site-region >}} + +Estar de guardia requiere de notificaciones fiables y oportunas para asegurarte de que puedes responder a los incidentes de forma eficaz. Esta guía recorre los pasos para configurar tu dispositivo móvil para obtener un rendimiento óptimo con Datadog On-Call. 1. Instala la [aplicación móvil de Datadog][1]. -2. [Configurar notificaciones push](#set-up-push-notifications): habilita tu dispositivo para recibir notificaciones desde la aplicación móvil de Datadog. -3. [Evitar el modo silencio y No molestar](#circumvent-mute-and-do-not-disturb-mode): recibe notificaciones push, llamadas de voz y SMS mientras tu dispositivo está en modo No molestar. +2. [Configura notificaciones push](#set-up-push-notifications): activa tu dispositivo para recibir notificaciones desde la aplicación móvil de Datadog. +3. [Modo silencio y No molestar](#circumvent-mute-and-do-not-disturb-mode): recibe notificaciones push, llamadas de voz y SMS, cuando tu dispositivo está en modo No molestar. -## Establecer notificaciones push +## Configurar notificaciones push
-Cuando accedes por primera vez a la aplicación móvil de Datadog, un flujo de integración se encarga de la configuración y los permisos de notificación. +Cuando inicias sesión en la aplicación móvil de Datadog por primera vez, un flujo de incorporación se encarga de la configuración de notificaciones y permisos.
-Por defecto, la aplicación móvil no puede enviarte notificaciones. Para recibir notificaciones push en eventos de On-Call: +Sin embargo, por defecto, la aplicación móvil no puede enviarte notificaciones. Para recibir notificaciones push: {{< tabs >}} {{% tab "iOS" %}} -1. En la aplicación móvil de Datadog, ve a **Account** > **Settings** > **Notifications** (Cuenta > Configuración > Notificaciones). +1. En la aplicación móvil de Datadog, ve a **Settings** > **Notifications** (Configuración > Notificaciones). - {{< img src="service_management/oncall/app_settings_iOS.png" alt="Encuentra la configuración de notificación en la versión de iOS de la aplicación móvil de Datadog." style="width:35%;" >}} + {{< img src="service_management/mobile/ios_settings_may_2025.png" alt="Encuentra la configuración de notificaciones en la versión de iOS de la aplicación móvil de Datadog." style="width:35%;" >}} -2. Activa la casilla **Enable Notifications** (Habilitar notificaciones). Si es la primera vez que activas las notificaciones, se abrirá una solicitud de permisos. Concede el permiso y, a continuación, vuelve a tocar **Enable Notifications** (Activar notificaciones) para ir a la configuración del sistema iOS. +2. Activa la casilla **Allow Notifications** (Permitir notificaciones). Si es la primera vez que activas las notificaciones, se abrirá una solicitud de permisos. Concede el permiso y, a continuación, vuelve a tocar **Enable Notifications** (Activar notificaciones) para ir a la configuración del sistema iOS. - {{< img src="service_management/oncall/system_notifications_settings_iOS.png" alt="Configura los ajustes de notificación del sistema de tu dispositivo iOS." style="width:100%;" >}} + {{< img src="service_management/mobile/ios_notification_may_2025.png" alt="Configura los ajustes de las notificaciones de sistema de tu dispositivo iOS." style="width:100%;" >}} 3. En la configuración del sistema iOS, asegúrate de activar la opción **Allow Notifications** (Permitir notificaciones). Datadog recomienda encarecidamente que también actives las opciones **Sound** (Sonido) y **Badges** (Distintivos). @@ -36,52 +40,66 @@ Asegúrate de conceder a la aplicación móvil los permisos necesarios. {{% /tab %}} {{% tab "Android" %}} -1. En la aplicación móvil de Datadog, ve a **Account** > **Settings** > **Notifications** (Cuenta > Configuración > Notificaciones). - - {{< img src="service_management/oncall/app_settings_android.png" alt="Encuentra los ajustes de notificación en la versión Android de la aplicación móvil de Datadog." style="width:35%;" >}} +1. En la aplicación móvil de Datadog, ve a **Settings** > **Notifications** (Configuración > Notificaciones). -2. Pulsa **Notifications** (Notificaciones) para ir a la configuración del sistema y configurar tus notificaciones de aplicación preferidas. + {{< img src="service_management/mobile/android_settings_may_2025.png" alt="Encuentra los ajustes de notificaciones en la versión de Android de la aplicación móvil de Datadog." style="width:35%;" >}} - {{< img src="service_management/oncall/system_notifications_settings_android.png" alt="Configura los ajustes de notificación del sistema de tu dispositivo Android." style="width:100%;" >}} +2. Activa el interruptor **Allow notifications** (Permitir notificaciones). Datadog te recomienda encarecidamente que actives también **Sound and vibration** (Sonido y vibración) y **Show content on Lock screen** (Mostrar contenido en pantalla de bloqueo). -3. En la configuración del sistema Android, asegúrate de activar la opción **Allow Notifications** (Permitir notificaciones). Datadog recomienda encarecidamente que también actives la opción **Allow sound and vibration** (Permitir sonido y vibración). + {{< img src="service_management/mobile/android_notification_may_2025.png" alt="Configura los ajustes de las notificaciones de sistema de tu dispositivo Android." style="width:100%;" >}} -{{% /tab %}}{{< /tabs >}} +{{% /tab %}} +{{< /tabs >}} ### Sonidos personalizados -Tanto en iOS como en Android, tienes la opción de anular los sonidos predeterminados de notificación del sistema. Para casos de notificaciones de alta urgencia, Datadog recomienda encarecidamente personalizar los sonidos del sistema y los ajustes de volumen. Esto asegura que las alertas no sólo sean más claras y reconocibles, sino también más eficaces a la hora de captar la atención. La aplicación de Datadog viene precargada con una selección de sonidos personalizados. +Tanto en iOS como en Android, tienes la opción de anular los sonidos de notificación predeterminados del sistema. La aplicación de Datadog viene precargada con una selección de sonidos personalizados. -## Eludir el modo silencio y No molestar +## El modo Silencio y No molestar para On-Call Puedes anular el volumen de sistema de tu dispositivo y el modo No molestar tanto para las notificaciones push (desde la aplicación móvil de Datadog) como para las notificaciones de telefonía (como llamadas de voz y SMS). -### Notificaciones push +### Notificaciones push críticas {{< tabs >}} {{% tab "iOS" %}} -{{< img src="service_management/oncall/override_dnd_push_iOS.png" alt="Anular el volumen de sistema de tu dispositivo iOS y el modo No molestar." style="width:100%;" >}} +{{< img src="service_management/mobile/ios_critical_may_2025.png" alt="Anula tu volumen de sistema del dispositivo de iOS y el modo No molestar." style="width:100%;" >}} -1. En la aplicación móvil de Datadog, ve a **Account** > **Settings** > **Notifications** (Cuenta > Configuración > Notificaciones). +1. En la aplicación móvil de Datadog, ve a **Settings** > **On-Call** (Configuración > On-Call). -2. Activa el conmutador **Enable Critical Alerts** (Activar alertas críticas). +2. Activa el conmutador **Critical Alerts** (Alertas críticas). Las alertas críticas ignoran el interruptor de Silencio y No molestar. Si activas las alertas críticas, el sistema reproduce el sonido de una alerta crítica independientemente de la configuración de silencio o de No molestar del dispositivo. -Las alertas críticas ignoran el interruptor de silencio y No molestar. Si activas las alertas críticas, el sistema reproduce el sonido de una alerta crítica independientemente de la configuración de silencio o No molestar del dispositivo. +3. En los ajustes del sistema iOS, asegúrate de activar la opción **Alertas críticas**. Asegúrate de conceder a la aplicación móvil los permisos necesarios. -Asegúrate de conceder a la aplicación móvil los permisos necesarios. +4. Prueba la configuración de tu notificación push crítica tocando **Test push notifications** (Probar notificaciones push). {{% /tab %}} {{% tab "Android" %}} -{{< img src="service_management/oncall/override_dnd_push_android.png" alt="Anula el volumen de sistema y el modo No molestar del dispositivo Android." style="width:100%;" >}} +{{< img src="service_management/mobile/android_critical_may_2025.png" alt="Anula tu volumen del sistema del dispositivo de Android y el modo No molestar." style="width:100%;" >}} -1. En la aplicación móvil de Datadog, ve a **Account** > **Settings** > **Notifications** (Cuenta > Configuración > Notificaciones). +1. En la aplicación móvil de Datadog, ve a **Settings** > **On-Call** (Configuración > On-Call). -2. Activa el conmutador **Override system volume** (Anular volumen del sistema). Esto te llevará a la configuración del sistema. Busca la fila de la aplicación móvil de Datadog y asegúrate de que la opción está activada. +{{< img src="service_management/mobile/android_allow_notification_may_2025.png" alt="Anula tu volumen del sistema del dispositivo de Android y el modo No molestar." style="width:100%;" >}} + +2. Si faltan permisos de notificación, pulsa **Bypass Do Not Disturb** (Ignorar No Molestar) y activa **Allow notifications** (Permitir notificaciones) en System Settings (Ajustes del sistema). + +{{< img src="service_management/mobile/android_override_system_may_2025.png" alt="Anula tu volumen del sistema del dispositivo de Android y el modo No molestar." style="width:100%;" >}} + +3. A continuación, pulsa **Bypass Do Not Disturb** (Ignorar No Molestar) y activa **Override Do Not Disturb** (Anular No Molestar) en System Settings (Ajustes del sistema) para High Urgency On-Call. + +{{< img src="service_management/mobile/android_override_system_volume_may_2025.png" alt="Anula tu volumen del sistema del dispositivo de Android y el modo No molestar." style="width:100%;" >}} + +5. Para anular el volumen del sistema, toca **Override system volume** (Anular volumen del sistema) y permite **Mode access** (Modo de acceso) en System Settings (Configuración del sistema) para activar **Override system volume** (Anular volumen del sistema). + +6. Prueba la configuración de tu notificación push crítica tocando **Test push notifications** (Probar notificaciones push).
En Android, la aplicación móvil de Datadog no puede omitir los ajustes de volumen de sistema o de No molestar cuando se utiliza dentro de un perfil de trabajo. Como solución, instala la aplicación móvil de Datadog en tu perfil personal.
-{{% /tab %}}{{< /tabs >}} +{{% /tab %}} +{{< /tabs >}} +### Sonidos personalizados para notificaciones push críticas +Para las notificaciones de alta urgencia, Datadog recomienda encarecidamente personalizar los sonidos del sistema y la configuración del volumen. Esto garantiza que las alertas no sólo sean más claras y reconocibles, sino también más eficaces a la hora de captar la atención. ### Canales de telefonía (llamadas de voz y SMS) @@ -90,7 +108,7 @@ Para mayor fiabilidad, Datadog utiliza un conjunto rotatorio de números de tel {{< tabs >}} {{% tab "iOS" %}} -{{< img src="service_management/oncall/override_dnd_telephony_iOS.png" alt="Anula el modo No molestar del dispositivo iOS para SMS y llamadas de voz" style="width:100%;" >}} +{{< img src="service_management/mobile/ios_sync_card_may_2025.png" alt="Anula el modo No molestar del dispositivo iOS para SMS y llamadas de voz" style="width:100%;" >}} 1. En la aplicación móvil de Datadog, ve a **Account** > **Settings** > **Notifications** (Cuenta > Configuración > Notificaciones). @@ -103,7 +121,7 @@ Para mayor fiabilidad, Datadog utiliza un conjunto rotatorio de números de tel {{% tab "Android" %}} -{{< img src="service_management/oncall/override_dnd_telephony_android.png" alt="Anula el modo No molestar del dispositivo Android para SMS y llamadas de voz" style="width:100%;" >}} +{{< img src="service_management/mobile/android_sync_card_may_2025.png" alt="Anula tu modo No molestar del dispositivo de Android para SMS y llamadas de voz" style="width:100%;" >}} 1. En la aplicación móvil de Datadog, ve a **Account** > **Settings** > **Notifications** (Cuenta > Configuración > Notificaciones). @@ -113,7 +131,8 @@ Para mayor fiabilidad, Datadog utiliza un conjunto rotatorio de números de tel 4. Abre los ajustes del sistema Android y ve a **Sound & vibration** > **Do Not Disturb** (Sonido y vibración > No molestar). Crea una excepción para el contacto de Datadog On-Call. -{{% /tab %}}{{< /tabs >}} +{{% /tab %}} +{{< /tabs >}}
Descarga la versión actual de la tarjeta de contacto de Datadog On-Call. Nota: La tarjeta de contacto está sujeta a cambios en cualquier momento. diff --git a/content/es/synthetics/mobile_app_testing/settings/_index.md b/content/es/synthetics/mobile_app_testing/settings/_index.md index 296e5a7123a..5c0dadf33e3 100644 --- a/content/es/synthetics/mobile_app_testing/settings/_index.md +++ b/content/es/synthetics/mobile_app_testing/settings/_index.md @@ -3,7 +3,7 @@ aliases: - /es/mobile_testing/settings - /es/mobile_app_testing/settings further_reading: -- link: /synthetics/mobile_app_testing/mobile_app_tests +- link: /synthetics/mobile_app_testing/ tag: Documentación text: Aprender a crear un test móvil - link: /continuous_testing/cicd_integrations @@ -29,7 +29,7 @@ Para añadir una aplicación móvil, ve a la [pestaña **Lista de aplicaciones m 1. Selecciona **Android** como sistema operativo para tu aplicación móvil. 2. Ponle un nombre a tu aplicación móvil. -3. Añade etiquetas (tags) `env` y etiquetas adicionales a tu aplicación móvil. Puedes utilizar estas etiquetas para filtrar rápidamente los tests de tu aplicación móvil en la [página Monitorización Synthetic y tests continuos][101]. +3. Añade etiquetas `env` y etiquetas adicionales a tu aplicación móvil. Puedes utilizar estas etiquetas para filtrar rápidamente los tests de tu aplicación móvil en la [página Monitorización Synthetic y tests continuos][101]. 4. También puedes introducir una descripción de tu aplicación móvil. 5. Carga un [archivo `.apk`][102]. 6. Introduce un nombre para la versión de tu aplicación móvil. También puedes seleccionar **Mark this version as latest** (Marcar esta versión como la más reciente). diff --git a/content/es/synthetics/troubleshooting/_index.md b/content/es/synthetics/troubleshooting/_index.md index 8e77ace3fc0..4a7eea9fe34 100644 --- a/content/es/synthetics/troubleshooting/_index.md +++ b/content/es/synthetics/troubleshooting/_index.md @@ -141,6 +141,18 @@ Además, es posible que también debas asegurarte de que tus firewalls permitan De forma predeterminada, los tests de Synthetic no [vuelven a notificar][12]. Por tanto, si añades tu identificador de notificación, como tu dirección de correo electrónico o tu identificador de Slack, después de que se genere una transición (por ejemplo, un test que muestra una alerta o se recupera de una alerta anterior), no se enviará ninguna notificación sobre dicha transición, sino que únicamente se enviará para la próxima transición. +## Tests móviles + +### No se puede iniciar la grabación de un dispositivo + +Si se realizan comprobaciones de seguridad durante el inicio de la aplicación, como verificar si la depuración USB está activada, Datadog recomienda cargar una versión de la aplicación que no contenga estas comprobaciones. + +### Garantizar el correcto funcionamiento de la aplicación durante la grabación y la ejecución de los tests + +Si algunas características de tu aplicación iOS no funcionan como se espera durante la grabación o la ejecución de tests, podría ser el resultado del proceso de nueva firma de la aplicación. Este proceso de nueva firma es necesario para que los dispositivos móviles puedan confiar en la aplicación proporcionada. Los problemas con el proceso de nueva firma pueden provocar que se eliminen derechos esenciales de iOS (como el acceso a Contactos, Cámara, Keychain, Fotos, Health Kit, Home Kit, etc.). + +Para minimizar el riesgo de problemas relacionados con los derechos y para mejorar la compatibilidad, Datadog recomienda distribuir tu aplicación iOS utilizando perfiles de suministro Ad Hoc o de Desarrollo. + ## Localizaciones privadas {{< tabs >}} @@ -158,6 +170,28 @@ Esto podría indicar un problema de agotamiento de recursos en los workers de tu Comprueba que no haya [problemas de memoria insuficiente][102] con tus implementaciones de localizaciones privadas. Si ya has intentado escalar tus instancias de workers siguiendo las [directrices de dimensionamiento][103], contacta con el [equipo de asistencia de Datadog][104]. +### Requisitos para los tests de navegador que se ejecutan en localizaciones privadas + +Los tests de navegador requieren privilegios elevados para generar (cuando se inicia la ejecución del test) y finalizar (cuando finaliza la ejecución del test) el proceso del navegador. Si tu localización privada está configurada con un contexto de seguridad que restringe los privilegios elevados, entonces la localización privada emite logs de error cuando se ejecuta el test de navegador. Los logs informados varían en función del navegador seleccionado para la ejecución del test. Los tests ejecutados en Chrome/Edge informan del siguiente error: +``` +Critical error in startBrowser: Failed to launch the browser process! +sudo: The "no new privileges" flag is set, which prevents sudo from running as root. +sudo: If sudo is running in a container, you may need to adjust the container configuration to disable the flag. +``` + +Firefox informa del siguiente error: +``` +Impossible to spawn Firefox: binary is not a Firefox executable +sudo: The "no new privileges" flag is set, which prevents sudo from running as root. +sudo: If sudo is running in a container, you may need to adjust the container configuration to disable the flag. +``` + +### Requisitos para los tests ICMP que se ejecutan en localizaciones privadas + +Los tests ICMP utilizan el comando `ping` para evaluar las rutas de red y la conectividad a un host. `ping` abre un socket sin procesar para enviar paquetes ICMP a través de él, por lo que requiere la capacidad `NET_RAW` para permitir la creación de sockets sin procesar. Si tu contenedor está configurado con un contexto de seguridad que elimina esta capacidad, los tests ICMP no podrán funcionar correctamente en la localización privada. + +Adicionalmente, `ping` requiere privilegios elevados para crear el socket sin procesar. La localización privada no puede ejecutar tests ICMP si la localización privada está configurada con un contexto de seguridad que restringe los privilegios elevados. + ### Aparecen errores de tipo `TIMEOUT`(tiempo de espera) en tests de API ejecutados desde mi localización privada Esto podría significar que tu localización privada no puede alcanzar el endpoint en el que se ha configurado que se ejecute tu test de API. Comprueba que la localización privada esté instalada en la misma red que el endpoint que quieres someter a test. También puedes intentar ejecutar el test en diferentes endpoints para ver si se produce o no el mismo error `TIMEOUT`. @@ -172,6 +206,22 @@ Esto podría significar que tu localización privada no puede alcanzar el endpoi {{% /tab %}} {{% tab "Docker" %}} +### Resolución de problemas de reenvío IPv4 para contenedores con localización privada + +Las localizaciones privadas requieren acceso a [endpoints de ingesta de la monitorización Synthetic de Datadog][103] para extraer configuraciones de test y enviar resultados de tests. Si el reenvío IPv4 está deshabilitado en un servidor Linux, la localización privada puede perder el acceso a la Internet pública y, en consecuencia, no podrá conectarse a la ingesta. Docker normalmente intenta habilitar el reenvío IP cuando se inicia un contenedor, pero si permanece deshabilitado, el contenedor no puede acceder a servicios externos como la ingesta. + +En ese caso, la localización privada informará de logs como: + +``` +WARNING: IPv4 forwarding is disabled. Networking will not work. +``` +y +``` +Queue error - onFetchMessagesLongPolling - getaddrinfo EAI_AGAIN intake.synthetics.datadoghq.com +``` + +Para resolver este problema, asegúrate de que `net.ipv4.ip_forward` está habilitado en el host. + ### A veces, mis contendores de localizaciones privadas se eliminan debido a un problema `OOM` Los contenedores de localizaciones privadas que se eliminan por un problema `Out Of Memory` (memoria insuficiente) generalmente indican un problema de agotamiento de recursos en los workers de tus localizaciones privadas. Asegúrate de que los contenedores de localizaciones privadas cuenten con [recursos de memoria suficientes][101]. @@ -182,6 +232,7 @@ Esto sucede si se intenta montar un solo archivo en un contenedor basado en Wind [101]: /es/synthetics/private_locations#private-location-total-hardware-requirements [102]: https://docs.docker.com/engine/reference/commandline/run/#mount-volume--v---read-only +[103]: https://docs.datadoghq.com/es/synthetics/platform/private_locations/?tab=docker#datadog-private-locations-endpoints {{% /tab %}} {{% tab "Windows" %}} @@ -197,7 +248,7 @@ En primer lugar, asegúrate de haber instalado la localización privada con una 1. Haz clic en **Services (Local)** (Servicios [Local]) y busca el servicio llamado `Datadog Synthetics Private Location`. 1. Haz clic con el botón derecho en el servicio del paso 2 y elige **Restart** (Reiniciar). -El worker de localizaciones privadas de Synthetics se ejecuta ahora bajo la cuenta **Local Service** (Servicio local). Para confirmarlo, inicia el Administrador de tareas y busca el proceso `synthetics-pl-worker` en la pestaña **Details** (Detalles). +El worker de localizaciones privadas de Synthetics se ejecuta ahora bajo la cuenta **Servicio local**. Para confirmarlo, inicia el administrador de tareas y busca el proceso `synthetics-pl-worker` en la pestaña **Detalles**. #### PowerShell @@ -219,7 +270,7 @@ Si proporcionaste un archivo de configuración al instalar la aplicación, se in El usuario de la localización privada (`dog`) requiere `sudo` por varias razones. Normalmente, a este usuario se le conceden ciertos permisos para dar acceso a `sudo` en el proceso de lanzar la localización privada en tu contenedor. Confirma si dispones de una política que restrinja la capacidad del usuario `dog` para `sudo`, o que impida que el contenedor se inicie como el usuario `dog` (UID 501). -Además, en las versiones `>v1.27` de la localización privada, Datadog depende del uso de la llamada al sistema `clone3`. En algunas versiones anteriores de entornos de tiempo de ejecución de contenedores (como las versiones de Docker <20.10.10), no se admite `clone3` por la política predeterminada `seccomp`. Confirma que la política `seccomp` de tu entorno de tiempo de ejecución de contenedores incluye `clone3`. Puedes hacerlo actualizando la versión de tu tiempo de ejecución en uso, añadiendo manualmente `clone3` a tu política `seccomp` o utilizando una política seccomp `unconfined`. Para obtener más información, consulta la [documentación sobre `seccomp` de Docker][13]. +Además, en las versiones de localización privada `>v1.27` , Datadog depende del uso de la llamada al sistema `clone3`. En algunas antiguas versiones de entornos de ejecución de contenedores (como las versiones de Docker <20.10.10), `clone3` no es compatible con la política por defecto `seccomp`. Confirma que la política `seccomp` del entorno de ejecución de tu contenedor incluye `clone3`. Puedes hacerlo actualizando la versión de tu tiempo de ejecución en uso, añadiendo manualmente `clone3` a tu política `seccomp` o utilizando una política seccomp `unconfined`. Para obtener más información, consulta la [documentación de `seccomp` de Docker][13]. ## Referencias adicionales diff --git a/content/es/tests/containers.md b/content/es/tests/containers.md new file mode 100644 index 00000000000..12b4882e13b --- /dev/null +++ b/content/es/tests/containers.md @@ -0,0 +1,355 @@ +--- +aliases: +- /es/continuous_integration/setup_tests/containers +- /es/continuous_integration/tests/containers +further_reading: +- link: /tests + tag: Documentación + text: Más información sobre Test Optimization (optimización de tests) +title: Tests en contenedores +--- + +## Información general + +Si ejecutas tus tests dentro de un contenedor que tu mismo lanzas dentro de la compilación (por ejemplo, utilizando [`docker run`][1] o [`docker-compose`][2]), reenvía las siguientes variables de entorno al contenedor dependiendo de tu proveedor de CI. Esto permite al rastreador de Datadog autodetectar la información de compilación. + +Además, debes pasar las variables de entorno necesarias para configurar el rastreador como se describe en las [instrucciones de instrumentación de test por lenguaje][3] (como `DD_SERVICE`, `DD_ENV` y un `DD_TRACE_AGENT_URL` válido que sea accesible desde dentro del contenedor). + +## Gestión de variables de entorno + +Esta tabla proporciona una lista no exhaustiva de variables de entorno disponibles para configurar el rastreador: + +{{< tabs >}} +{{% tab "AppVeyor" %}} + +| Variable de entorno | Descripción | +|-----------------------------------------------|-------------------------------------------------------------------------------------------------------------| +| `APPVEYOR` | Indica si la compilación se está ejecutando en el entorno de AppVeyor. Establecido en `True` (o `true` en la imagen de Ubuntu). | +| `APPVEYOR_BUILD_ID` | Un identificador único para la compilación de AppVeyor. | +| `APPVEYOR_BUILD_NUMBER` | El número de compilación asignado por AppVeyor, que se incrementa con cada nueva compilación. | +| `APPVEYOR_BUILD_FOLDER` | La ruta al directorio donde se clona el repositorio. | +| `APPVEYOR_REPO_PROVIDER` | Especifica el proveedor de control de origen para el repositorio, como `github`, `bitbucket` o `kiln`. | +| `APPVEYOR_REPO_NAME` | El nombre del repositorio en el formato `owner-name/repo-name`. | +| `APPVEYOR_REPO_BRANCH` | La rama del repositorio que se está compilando. Para las solicitudes pull, es la rama base en la que se fusiona la solicitud pull. | +| `APPVEYOR_REPO_COMMIT` | El ID de confirmación (SHA) de la compilación actual. | +| `APPVEYOR_REPO_TAG_NAME` | El nombre de la etiqueta para compilaciones iniciadas por una etiqueta. Esta variable es indefinida si la compilación no es iniciada por una etiqueta. | +| `APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH` | La rama del repositorio de la que procede la solicitud pull. | +| `APPVEYOR_REPO_COMMIT_MESSAGE` | El mensaje de confirmación asociado a la compilación actual. | +| `APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED` | El mensaje de confirmación extendido, incluyendo cualquier texto después del primer salto de línea. | +| `APPVEYOR_REPO_COMMIT_AUTHOR` | El nombre del autor de la confirmación. | +| `APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL` | La dirección de correo electrónico del autor de la confirmación. | + +Para una lista completa de las variables de entorno establecidas por AppVeyor para cada compilación, consulta la [documentación oficial de AppVeyor][101]. + + +[101]: https://www.appveyor.com/docs/environment-variables/ + +{{% /tab %}} +{{% tab "Pipelines de Azure" %}} + +| Variable de entorno | Descripción | +|-------------------------------------------|-------------------------------------------------------------------------------------------------------------| +| `TF_BUILD` | Indica que la compilación se está ejecutando en pipelines de Azure. | +| `BUILD_DEFINITIONNAME` | El nombre del pipeline de compilación. | +| `BUILD_BUILDID` | El ID del registro para la compilación completada. | +| `BUILD_SOURCESDIRECTORY` | La ruta local en el Agent donde se descargan los archivos del código fuente. | +| `BUILD_REPOSITORY_URI` | La URL del repositorio desencadenante. | +| `BUILD_SOURCEBRANCH` | La rama del repositorio desencadenante para el que se puso en cola la compilación. | +| `BUILD_SOURCEVERSION` | El último cambio en el control de versiones del repositorio desencadenante que se incluye en esta compilación. | +| `BUILD_SOURCEVERSIONMESSAGE` | El comentario de la confirmación o conjunto de cambios del repositorio desencadenante. | +| `BUILD_REQUESTEDFORID` | El ID del usuario que activó la compilación. | +| `BUILD_REQUESTEDFOREMAIL` | El correo electrónico del usuario que activó la compilación. | +| `SYSTEM_TEAMFOUNDATIONSERVERURI` | El URI de la cuenta de Team Foundation Server o Azure DevOps Services. | +| `SYSTEM_TEAMPROJECTID` | ID del proyecto de equipo para la compilación. | +| `SYSTEM_JOBID` | El ID del trabajo que se está ejecutando. | +| `SYSTEM_TASKINSTANCEID` | El ID de la instancia de la tarea dentro del trabajo. | +| `SYSTEM_PULLREQUEST_SOURCEREPOSITORYURI` | La URL del repositorio fuente de la solicitud pull. | +| `SYSTEM_PULLREQUEST_SOURCEBRANCH` | La rama fuente de la solicitud pull. | +| `SYSTEM_PULLREQUEST_SOURCECOMMITID` | El ID de confirmación de la rama fuente en la solicitud pull. | +| `SYSTEM_STAGEDISPLAYNAME` | El nombre para mostrar de la fase en el pipeline. | +| `SYSTEM_JOBDISPLAYNAME` | El nombre para mostrar del trabajo en el pipeline. | + +Para obtener una lista completo de las variables de entorno establecidas por Azure DevOps Pipelines para cada compilación, consulta la [documentación oficial de Azure][101]. + + +[101]: https://docs.microsoft.com/en-us/azure/devops/pipelines/build/variables?view=azure-devops +{{% /tab %}} +{{% tab "Bitbucket Pipelines" %}} + +| Variable de entorno | Descripción | +|------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| `BITBUCKET_BRANCH` | La rama fuente. Este valor sólo está disponible en las ramas. No está disponible para compilaciones contra etiquetas, o pipelines personalizados. | +| `BITBUCKET_BUILD_NUMBER` | Identificador único de una compilación. Se incrementa con cada compilación y puede utilizarse para crear nombres de artefactos únicos. | +| `BITBUCKET_CLONE_DIR` | La ruta absoluta del directorio en el que se clona el repositorio dentro del contenedor de Docker. | +| `BITBUCKET_COMMIT` | El hash de la confirmación que inició la compilación. | +| `BITBUCKET_GIT_SSH_ORIGIN` | Tu origen de SSH, por ejemplo: `git@bitbucket.org://.git`. | +| `BITBUCKET_PIPELINE_UUID` | UUID del pipeline. | +| `BITBUCKET_REPO_FULL_NAME` | El nombre completo del repositorio (todo lo que viene después de http://bitbucket.org/). | +| `BITBUCKET_TAG` | La etiqueta de la confirmación que inició la compilación. Este valor sólo está disponible en etiquetas. No está disponible para compilaciones contra ramas. | + + +Para una lista completa de las variables de entorno establecidas por Bitbucket para cada compilación, consulta la [documentación oficial de Bitbucket][101]. + +[101]: https://support.atlassian.com/bitbucket-cloud/docs/variables-and-secrets/ + +{{% /tab %}} +{{% tab "Bitrise" %}} + +| Variable de entorno | Descripción | +|-------------------------------------|------------------------------------------------------------------------------------------------------------------| +| `BITRISE_BUILD_SLUG` | El slug que identifica de forma única una compilación en bitrise.io. Forma parte de la URL de la compilación. | +| `BITRISE_TRIGGERED_WORKFLOW_ID` | El ID del flujo de trabajo que se activó, expuesto independientemente de si el flujo de trabajo se activó manual o automáticamente. | +| `BITRISE_BUILD_NUMBER` | Número de compilación en bitrise.io. | +| `BITRISE_BUILD_URL` | La URL de la compilación en bitrise.io. | +| `BITRISE_SOURCE_DIR` | Ruta al directorio base en funcionamiento. Por defecto, es el directorio donde se ejecuta Bitrise, a menos que proporciones un valor diferente. | +| `GIT_REPOSITORY_URL` | La URL del repositorio Git que aloja tu aplicación. | +| `BITRISE_GIT_COMMIT` | El hash de la confirmación de Git que activó la compilación, si procede. | +| `GIT_CLONE_COMMIT_HASH` | El hash de la confirmación que utiliza la compilación (la confirmación clonada). | +| `BITRISEIO_GIT_BRANCH_DEST` | La rama de destino de la solicitud pull que desencadenó la compilación, utilizada sólo con compilaciones desencadenadas por solicitudes pull. | +| `BITRISE_GIT_BRANCH` | La rama Git compilada por Bitrise, por ejemplo, `main`. | +| `BITRISE_GIT_TAG` | Si una compilación es lanzada por una etiqueta Git, esta variable de entorno almacena la etiqueta utilizada. | +| `BITRISE_GIT_MESSAGE` | El mensaje de confirmación, el título de la solicitud pull o el mensaje que especificaste si se activó la compilación manualmente. | +| `BITRISE_APP_TITLE` | El título de tu aplicación en bitrise.io. | +| `GIT_CLONE_COMMIT_MESSAGE_SUBJECT` | El asunto del mensaje de confirmación de la confirmación clonada. | +| `GIT_CLONE_COMMIT_MESSAGE_BODY` | El cuerpo (contenido) del mensaje de confirmación de la confirmación clonada. | +| `GIT_CLONE_COMMIT_AUTHOR_NAME` | El nombre del autor de la confirmación clonada. | +| `GIT_CLONE_COMMIT_AUTHOR_EMAIL` | El correo electrónico del autor de la confirmación clonada. | +| `GIT_CLONE_COMMIT_COMMITER_NAME` | El nombre del encargado de la confirmación de la confirmación clonada. | +| `GIT_CLONE_COMMIT_COMMITER_EMAIL` | El correo electrónico del encargado de la confirmación de la confirmación clonada. | + + +Para una lista completa de las variables de entorno establecidas por Bitrise para cada compilación, consulta la [documentación oficial de Bitrise][101]. + + +[101]: https://devcenter.bitrise.io/en/references/available-environment-variables.html + +{{% /tab %}} +{{% tab "Buildkite" %}} + +| Variable de entorno | Descripción | +|-------------------------------|-------------------------------------------------------------------------------------------------| +| `BUILDKITE` | Siempre es true. | +| `BUILDKITE_PIPELINE_SLUG` | El slug del pipeline en Buildkite como se usa en las URLs. | +| `BUILDKITE_JOB_ID` | El UUID interno que Buildkite utiliza para este trabajo. | +| `BUILDKITE_BUILD_ID` | UUID de la compilación. | +| `BUILDKITE_BUILD_NUMBER` | El número de compilación. Este número aumenta con cada compilación y es único dentro de cada canal. | +| `BUILDKITE_BUILD_URL` | La URL de esta compilación en Buildkite. | +| `BUILDKITE_BUILD_CHECKOUT_PATH` | La ruta en la que el Agent ha comprobado tu código para esta compilación. | +| `BUILDKITE_REPO` | El repositorio de tu pipeline. | +| `BUILDKITE_COMMIT` | El objeto de la confirmación Git de la compilación. | +| `BUILDKITE_BRANCH` | La rama en compilación. | +| `BUILDKITE_TAG` | El nombre de la etiqueta que se está compilando, si esta compilación se desencadenó desde una etiqueta. | +| `BUILDKITE_MESSAGE` | El mensaje asociado a la compilación, normalmente el mensaje de confirmación. | +| `BUILDKITE_BUILD_AUTHOR` | El nombre del usuario autor de la confirmación que se está compilando. | +| `BUILDKITE_BUILD_AUTHOR_EMAIL`| El correo electrónico de notificación del usuario autor de la confirmación que se está compilando. | +| `BUILDKITE_BUILD_CREATOR` | El nombre del usuario que creó la compilación. | +| `BUILDKITE_BUILD_CREATOR_EMAIL` | El correo electrónico de notificación del usuario que creó la compilación. | +| `BUILDKITE_AGENT_ID` | UUID del Agent. | +| `BUILDKITE_AGENT_META_DATA_*` | El valor de cada etiqueta del Agent. El nombre de la etiqueta se añade al final del nombre de la variable. | + + +Para una lista completa de las variables de entorno establecidas por Buildkite para cada compilación, consulta la [documentación oficial de Buildkite][101]. + +[101]: https://buildkite.com/docs/pipelines/environment-variables + +{{% /tab %}} +{{% tab "CircleCI" %}} + +| Variable de entorno | Descripción | +|------------------------------|-------------------------------------------------------------------------------------------------------| +| `CIRCLECI` | Indica si la compilación se está ejecutando en CircleCI. Siempre se establece en `true`. | +| `CIRCLE_PROJECT_REPONAME` | El nombre del repositorio que se está compilando. | +| `CIRCLE_BUILD_NUM` | El número del trabajo actual. Los números de trabajo son únicos para cada trabajo. | +| `CIRCLE_BUILD_URL` | La URL del trabajo actual en CircleCI. | +| `CIRCLE_WORKFLOW_ID` | Un identificador único para la instancia de proceso del trabajo actual. | +| `CIRCLE_WORKING_DIRECTORY` | La ruta al directorio de trabajo donde se comprueba el código. | +| `CIRCLE_REPOSITORY_URL` | La URL del repositorio que se está compilando. | +| `CIRCLE_SHA1` | El hash SHA1 de la última confirmación de la compilación actual. | +| `CIRCLE_BRANCH` | La rama del repositorio que se está compilando. | +| `CIRCLE_TAG` | El nombre de la etiqueta si la compilación en curso está provocada por una etiqueta; en caso contrario, está vacío. | +| `CIRCLE_JOB` | El nombre del trabajo actual. | + + +Para una lista completa con todas las variables de entorno que CircleCI establece en cada compilación, consulta la [documentación oficial de CircleCI][101]. + + +[101]: https://circleci.com/docs/variables/ + +{{% /tab %}} +{{% tab "Codefresh" %}} + +| Variable de entorno | Descripción | +|------------------------------|-------------------------------------------------------------------------------------------------------| +| `CF_BUILD_ID` | El ID único de la compilación. | +| `CF_PIPELINE_NAME` | La ruta completa del pipeline, incluido el proyecto al que está asignado, si existe. | +| `CF_BUILD_URL` | La URL de la compilación en Codefresh. | +| `CF_STEP_NAME` | El nombre del paso, por ejemplo, "MyUnitTests". | +| `CF_BRANCH` | El nombre de la rama o etiqueta del repositorio Git asociado al pipeline principal en el momento de la ejecución. | +| `CF_REVISION` | La revisión del repositorio Git del pipeline principal, en el momento de la ejecución. | + + +Para una lista completa de las variables de entorno establecidas por Codefresh para cada compilación, consulta la [documentación oficial de Codefresh][101]. + + +[101]: https://codefresh.io/docs/docs/pipelines/variables/ + +{{% /tab %}} +{{% tab "GitHub Actions" %}} + +| Variable de entorno | Descripción | +|----------------------------|-------------------------------------------------------------------------------------------------------| +| `GITHUB_ACTION` | El nombre de la acción que se está ejecutando actualmente, o el ID de un paso. Por ejemplo: `repo-owner_name-of-action-repo`. | +| `GITHUB_SERVER_URL` | La URL del servidor GitHub. Por ejemplo: `https://github.com`. | +| `GITHUB_RUN_ID` | Un número único para cada proceso ejecutado dentro de un repositorio. Por ejemplo: `1658821493`. | +| `GITHUB_RUN_NUMBER` | Un número único para cada ejecución de un proceso concreto en un repositorio. Por ejemplo: `3`. | +| `GITHUB_RUN_ATTEMPT` | Un número único para cada intento de ejecución de un proceso concreto. Por ejemplo: `3`. | +| `GITHUB_WORKFLOW` | El nombre del proceso. Por ejemplo: `My test workflow`. | +| `GITHUB_WORKSPACE` | El directorio en funcionamiento por defecto en el ejecutor para los pasos. Por ejemplo: `/home/runner/work/my-repo-name/my-repo-name`. | +| `GITHUB_REPOSITORY` | El propietario y el nombre del repositorio. Por ejemplo: `octocat/Hello-World`. | +| `GITHUB_SHA` | El SHA de confirmación que desencadenó el proceso. Por ejemplo: `ffac537e6cbbf934b08745a378932722df287a53`. | +| `GITHUB_HEAD_REF` | La referencia principal o rama fuente de la solicitud pull (sólo se establece para eventos `pull_request` o `pull_request_target`). Por ejemplo: `feature-branch-1`. | +| `GITHUB_REF` | La referencia completa de la rama o etiqueta que desencadenó el proceso. Por ejemplo: `refs/heads/feature-branch-1`. | +| `GITHUB_JOB` | El ID del trabajo actual. Por ejemplo: `greeting_job`. | + + +Para una lista completa de las variables de entorno establecidas por las acciones de GitHub para cada compilación, consulta la [documentación oficial de GitHub][101]. + + +[101]: https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/variables#default-environment-variables + +{{% /tab %}} +{{% tab "GitLab CI" %}} + +| Variable de entorno | Descripción | +|-----------------------|----------------------------------------------------------------------------------------------------------| +| `GITLAB_CI` | Disponible para todos los trabajos ejecutados en CI/CD. `true` cuando esté disponible. | +| `CI_PIPELINE_ID` | El ID a nivel de instancia del pipeline actual. Este ID es único para todos los proyectos de la instancia de GitLab. | +| `CI_PIPELINE_URL` | La URL para los detalles del pipeline. | +| `CI_PIPELINE_IID` | El IID (ID interno) a nivel de proyecto del pipeline actual. Único sólo dentro del proyecto actual. | +| `CI_PROJECT_PATH` | El espacio de nombres del proyecto con el nombre del proyecto incluido. | +| `CI_PROJECT_DIR` | La ruta completa a la que se clona el repositorio, y desde donde se ejecuta el trabajo. | +| `CI_JOB_STAGE` | El nombre de la fase del trabajo. | +| `CI_JOB_NAME` | El nombre del trabajo. | +| `CI_JOB_URL` | La URL de los detalles del trabajo. | +| `CI_JOB_ID` | El ID interno del trabajo, único para todos los trabajos en la instancia de GitLab. | +| `CI_RUNNER_ID` | El ID único del ejecutor que se está utilizando. | +| `CI_RUNNER_TAGS` | Una lista separada por comas de las etiquetas del ejecutor. | +| `CI_REPOSITORY_URL` | La ruta completa para clonar con Git (HTTP) el repositorio con un token de trabajo CI/CD. | +| `CI_COMMIT_SHA` | La revisión de la confirmación para la que se ha creado el proyecto. | +| `CI_COMMIT_REF_NAME` | La rama o nombre de etiqueta para el que se compile el proyecto. | +| `CI_COMMIT_BRANCH` | El nombre de la rama de la confirmación. Disponible en los pipelines de rama. | +| `CI_COMMIT_TAG` | El nombre de la etiqueta de confirmación. Disponible sólo en pipelines para etiquetas. | +| `CI_COMMIT_AUTHOR` | El autor de la confirmación en formato Nombre . | +| `CI_COMMIT_MESSAGE` | El mensaje de confirmación completo. | +| `CI_COMMIT_TIMESTAMP` | La fecha y hora de la confirmación en formato ISO 8601. Por ejemplo, 2022-01-31T16:47:55Z. UTC por defecto. | + + +Para una lista completa de variables de entorno establecidas por GitLab CI para cada compilación, consulta la [documentación oficial de GitLab][101]. + + +[101]: https://docs.gitlab.com/ee/ci/variables/predefined_variables.html +{{% /tab %}} +{{% tab "Jenkins" %}} + +| Variable de entorno | Descripción | +|-----------------------|----------------------------------------------------------------------------------------------------------| +| `JENKINS_URL` | La URL del master de Jenkins que está ejecutando la compilación. | +| `BUILD_TAG` | Una cadena de la forma `jenkins-${JOB_NAME}-${BUILD_NUMBER}` para facilitar la identificación. | +| `BUILD_NUMBER` | El número de compilación actual, como "153". | +| `BUILD_URL` | La URL donde se pueden encontrar los resultados de esta compilación (como http://buildserver/jenkins/job/MyJobName/666/).| +| `WORKSPACE` | La ruta absoluta del espacio de trabajo. | +| `JOB_NAME` | El nombre del proyecto para esta compilación. | +| `JOB_URL` | La URL para los detalles del trabajo. | +| `GIT_URL` | La URL de Git utilizada para el repositorio (como git@github.com:user/repo.git o https://github.com/user/repo.git).| +| `GIT_URL_1` | La URL del primer repositorio de Git si se configuran múltiples repositorios. | +| `GIT_COMMIT` | El hash de Git de la confirmación verificada para la compilación. | +| `GIT_BRANCH` | La rama de Git que se comprobó para la compilación. | +| `NODE_NAME` | El nombre del nodo en el que se ejecuta la compilación. Es igual a 'master' para el nodo maestro. | +| `NODE_LABELS` | Una lista separada por comas de las etiquetas asignadas al nodo. | +| `DD_CUSTOM_TRACE_ID` | Variable personalizada establecida por el complemento de Jenkins Datadog para los ID de traza. | +| `DD_CUSTOM_PARENT_ID` | Variable personalizada establecida por el complemento de Jenkins Datadog para los IDs principales. | + + +Para una lista completa de las variables de entorno establecidas por Jenkins para cada compilación, consulta la [documentación oficial de Jenkins][101]. + + +[101]: https://www.jenkins.io/doc/book/pipeline/jenkinsfile/#using-environment-variables +[102]: https://github.com/jenkinsci/datadog-plugin + +{{% /tab %}} +{{% tab "TeamCity" %}} + +| Variable de entorno | Descripción | +|------------------------------|--------------------------------------------------------------------------------------------------------------| +| `TEAMCITY_VERSION` | La versión del servidor TeamCity. | +| `TEAMCITY_BUILDCONF_NAME` | El nombre de la configuración de la confirmación a la que pertenece la compilación actual. | +| `BUILD_URL` | El enlace a la compilación actual. | +| `DATADOG_BUILD_ID` | Variable personalizada establecida por la [integración de Datadog TeamCity][102]. | + +Para una lista completa de las variables de entorno establecidas por TeamCity para cada compilación, consulta la [documentación oficial de TeamCity][101]. + + +[101]: https://www.jetbrains.com/help/teamcity/predefined-build-parameters.html +[102]: https://plugins.jetbrains.com/plugin/20852-datadog-ci-integration + +{{% /tab %}} +{{% tab "Travis CI" %}} + +| Variable de entorno | Descripción | +|------------------------------|-------------------------------------------------------------------------------------------------------| +| `TRAVIS` | Siempre se establece en `true` para indicar que la compilación se está ejecutando en Travis CI. | +| `TRAVIS_BUILD_ID` | El ID de la compilación actual utilizado internamente por Travis CI. | +| `TRAVIS_BUILD_NUMBER` | El número de la compilación actual. Por ejemplo: `4`. | +| `TRAVIS_BUILD_WEB_URL` | URL del log de la compilación. | +| `TRAVIS_BUILD_DIR` | La ruta absoluta al directorio donde se ha copiado el repositorio que se está compilando en el worker. | +| `TRAVIS_JOB_WEB_URL` | URL del log del trabajo. | +| `TRAVIS_REPO_SLUG` | El slug (en formato: `owner_name/repo_name`) del repositorio que se está compilando actualmente. | +| `TRAVIS_COMMIT` | La confirmación que la compilación actual está probando. | +| `TRAVIS_BRANCH` | Para las compilaciones push, el nombre de la rama. Para las compilaciones de solicitudes pull, el nombre de la rama a la que se dirige la solicitud pull. | +| `TRAVIS_TAG` | Si la compilación actual es para una etiqueta de Git, esta variable se establece con el nombre de la etiqueta, de lo contrario está vacía. | +| `TRAVIS_PULL_REQUEST_SLUG` | Si el trabajo actual es una solicitud pull, el slug del repositorio desde el que se originó la solicitud pull. | +| `TRAVIS_PULL_REQUEST_BRANCH` | Si el trabajo actual es una solicitud pull, el slug de la rama desde la que se originó la solicitud pull. | +| `TRAVIS_COMMIT_MESSAGE` | El sujeto y el cuerpo de la confirmación, extraídos. | + + + +Para una lista completa de variables de entorno establecidas por Travis CI para cada compilación, consulta la [documentación oficial de Travis CI][101]. + + +[101]: https://docs.travis-ci.com/user/environment-variables/#default-environment-variables + +{{% /tab %}} +{{% tab "Buddy CI" %}} + +| Variable de entorno | Descripción | +|-----------------------------------------|-------------------------------------------------------------------------------------------------------| +| `BUDDY` | Representa si el entorno actual es un entorno de Buddy. Por ejemplo: `true`. | +| `BUDDY_SCM_URL` | La URL del repositorio sincronizado con el proyecto. Por ejemplo: `https://github.com/githubaccount/repository`. | +| `BUDDY_EXECUTION_REVISION` | El hash SHA1 de la confirmación de la ejecución actual del pipeline. Por ejemplo: `46c360492d6372e5335300776806af412755871`. | +| `BUDDY_EXECUTION_BRANCH` | El nombre de la rama de Git de la ejecución actual del pipeline. Por ejemplo: `main`. | +| `BUDDY_EXECUTION_TAG` | El nombre de la etiqueta de Git de la ejecución actual del pipeline (si está etiquetado). Por ejemplo: `v1.0.1`. | +| `BUDDY_PIPELINE_ID` | El ID del pipeline de ejecución. Por ejemplo: `1`. | +| `BUDDY_EXECUTION_ID` | El ID de la ejecución actual del pipeline. Por ejemplo: `1`. | +| `BUDDY_PIPELINE_NAME` | El nombre del pipeline de ejecución. Por ejemplo: `Deploy to Production`. | +| `BUDDY_EXECUTION_URL` | La URL de la ejecución actual del pipeline. Por ejemplo: `https://app.buddy.works/my-workspace/my-project/pipelines/pipeline/1`. | +| `BUDDY_EXECUTION_REVISION_MESSAGE` | El mensaje de confirmación de la revisión actual. Por ejemplo: `we need to write unit tests!`. | +| `BUDDY_EXECUTION_REVISION_COMMITTER_NAME` | El nombre del encargado de la confirmación de la revisión actual. Por ejemplo: `Mike Benson`. | +| `BUDDY_EXECUTION_REVISION_COMMITTER_EMAIL` | La dirección de correo electrónico del encargado de la confirmación de la revisión actual. Por ejemplo: `mike.benson@buddy.works`. | + + +
+ +Para una lista completa de las variables de entorno establecidas por Buddy CI para cada compilación, consulta la [documentación oficial de Buddy CI][101]. + + +[101]: https://buddy.works/docs/pipelines/environment-variables#default-environment-variables +{{% /tab %}} +{{< /tabs >}} + +## Referencias adicionales + +{{< partial name="whats-next/whats-next.html" >}} + +[1]: https://docs.docker.com/engine/reference/run/ +[2]: https://docs.docker.com/compose/reference/ +[3]: /es/tests/#setup \ No newline at end of file diff --git a/content/es/tests/swift_tests.md b/content/es/tests/swift_tests.md index c19b070520c..a3ff92f4180 100644 --- a/content/es/tests/swift_tests.md +++ b/content/es/tests/swift_tests.md @@ -16,10 +16,6 @@ further_reading: title: Instrumentación de tests Swift con RUM --- -{{< site-region region="gov" >}} -
En este momento, CI Visibility no está disponible en el sitio ({{< region-param key="dd_site_name" >}}) seleccionado.
-{{< /site-region >}} - ## Información general Asegúrate de que [Test Optimization][3] ya está configurado para Swift. diff --git a/content/fr/integrations/azure_container_apps.md b/content/fr/integrations/azure_container_apps.md index 0413643bc2e..ecf2cffb9cc 100644 --- a/content/fr/integrations/azure_container_apps.md +++ b/content/fr/integrations/azure_container_apps.md @@ -1,53 +1,85 @@ --- -aliases: [] +app_id: azure-container-apps +app_uuid: 4cfaeef2-96d5-4497-be6a-8d06169e8ddb +assets: + dashboards: + azure_container_apps: assets/dashboards/azure_container_apps.json + integration: + auto_install: true + events: + creates_events: false + metrics: + check: azure.app_containerapps.requests + metadata_path: metadata.csv + prefix: azure.app_containerapps + service_checks: + metadata_path: assets/service_checks.json + source_type_id: 800 + source_type_name: Azure Container Apps +author: + homepage: https://www.datadoghq.com + name: Datadog + sales_email: info@datadoghq.com + support_email: help@datadoghq.com categories: - azure - cloud -- containers +- incident-teams +custom_kind: integration dependencies: [] -description: Recueillez des métriques d'Azure Container Apps. -doc_link: https://docs.datadoghq.com/integrations/azure_container_apps/ +display_on_public_website: true draft: false git_integration_title: azure_container_apps -has_logo: true integration_id: azure-container-apps -integration_title: Microsoft Azure Container Apps +integration_title: Azure Container Apps integration_version: '' is_public: true -custom_kind: integration -manifest_version: '1.0' +manifest_version: 2.0.0 name: azure_container_apps -public_title: Intégration Datadog/Microsoft Azure Container Apps -short_description: Recueillez des métriques d'Azure Container Apps. -version: '1.0' +public_title: Azure Container Apps +short_description: Suivez les indicateurs clés d'Azure Container Apps. +supported_os: [] +tile: + changelog: CHANGELOG.md + classifier_tags: + - Category::Azure + - Category::Cloud + - Category::Containers + - Offering::Integration + configuration: README.md#Setup + description: Suivez les indicateurs clés d'Azure Container Apps. + media: [] + overview: README.md#Overview + support: README.md#Support + title: Azure Container Apps --- - -## Présentation + +## Section Overview Azure Container Apps vous permet de créer et déployer des applications modernes et des microservices à l'aide de conteneurs sans serveur. Pour en savoir plus, consultez la [documentation de Microsoft][1] dédiée à Azure Container Apps. -## Formule et utilisation +## Configuration -### Liste des infrastructures +### Installation Si vous ne l'avez pas déjà fait, configurez l'[intégration Microsoft Azure][2]. -## Real User Monitoring +## Données collectées -### Analyse d'entonnoirs +### Métriques {{< get-metrics-from-git "azure_container_apps" >}} -### Aide +### Événements L'intégration Azure Container Apps n'inclut aucun événement. -### Aide +### Checks de service L'intégration Azure Container Apps n'inclut aucun check de service. -## Aide +## Dépannage Besoin d'aide ? Contactez [l'assistance Datadog][4]. diff --git a/content/fr/real_user_monitoring/session_replay/mobile/privacy_options.md b/content/fr/real_user_monitoring/session_replay/mobile/privacy_options.md deleted file mode 100644 index 3077d13a8e8..00000000000 --- a/content/fr/real_user_monitoring/session_replay/mobile/privacy_options.md +++ /dev/null @@ -1,257 +0,0 @@ ---- -aliases: null -description: Configurer des options de confidentialité pour Mobile Session Replay. -further_reading: -- link: /real_user_monitoring/session_replay/mobile - tag: Documentation - text: Session Replay sur mobile -- link: /real_user_monitoring/session_replay/mobile/app_performance - tag: Documentation - text: Impact de Mobile Session Replay sur les performances des applications -- link: /real_user_monitoring/session_replay/mobile/setup_and_configuration - tag: Documentation - text: Installer et configurer Mobile Session Replay -- link: /real_user_monitoring/session_replay/mobile/troubleshooting - tag: Documentation - text: Dépanner Mobile Session Replay -- link: /real_user_monitoring/session_replay - tag: Documentation - text: Session Replay -title: Options de confidentialité de Mobile Session Replay ---- - -## Présentation - -Les paramètres de confidentialité de la fonctionnalité Session Replay permettent aux organisations de toute taille de masquer les données personnelles ou sensibles. Les données sont stockées sur des instances cloud gérées par Datadog et sont chiffrées au repos. - -Les options de confidentialité par défaut de Session Replay protègent la vie privée des utilisateurs finaux et empêchent la collecte de données sensibles sur les organisations. - -En activant Mobile Session Replay, vous pouvez automatiquement masquer les éléments sensibles pour qu'ils ne soient pas enregistrés par le SDK RUM Mobile. Lorsque les données sont masquées, elles ne sont pas collectées dans leur forme originale par les SDK de Datadog et ne sont donc pas envoyées au backend. - -## Configuration des modes de masquage - -En utilisant les modes de masquage ci-dessous, vous pouvez remplacer la configuration par défaut pour chaque application. - -### Masquer tous les éléments de texte - -Par défaut, le réglage `mask` est activé pour toutes les données. Lorsque ce réglage est activé, tout le contenu textuel à l'écran est masqué, comme illustré ci-dessous. - -{{< img src="real_user_monitoring/session_replay/mobile/masking-mode-mask-all-2.png" alt="Lʼécran de votre ordinateur lorsque `mask` est activé." style="width:50%;">}} - -{{< tabs >}} -{{% tab "Android" %}} - - {{< code-block lang="javascript" filename="build.gradle" disable_copy="false" collapsible="true" >}} - - // masquer tous les éléments textuels - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setPrivacy(SessionReplayPrivacy.MASK) - .build() - SessionReplay.enable(sessionReplayConfig) - {{< /code-block >}} - -{{% /tab %}} -{{% tab "iOS" %}} - - {{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - - // masquer tous les éléments textuels - SessionReplay.enable( - with: SessionReplay.Configuration( - replaySampleRate: sampleRate, - defaultPrivacyLevel: .mask - ) - ) - - {{< /code-block >}} - -{{% /tab %}} -{{< /tabs >}} - -### Masquer uniquement les éléments de saisie - -Lorsque le réglage `mask user input` est activé, tout champ de saisie est remplacé par un texte anonyme. - -{{< img src="real_user_monitoring/session_replay/mobile/masking-mode-user-input-2.png" alt="Lʼécran de votre ordinateur lorsque les champs de saisie sont masqués." style="width:50%;">}} - -{{< tabs >}} -{{% tab "Android" %}} - - {{< code-block lang="javascript" filename="build.gradle" disable_copy="false" collapsible="true" >}} - - // masquer uniquement les éléments de saisie - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setPrivacy(SessionReplayPrivacy.MASK_USER_INPUT) - .build() - SessionReplay.enable(sessionReplayConfig) - {{< /code-block >}} - -{{% /tab %}} -{{% tab "iOS" %}} - - {{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - - // masquer uniquement les éléments de saisie - SessionReplay.enable( - with: SessionReplay.Configuration( - replaySampleRate: sampleRate, - defaultPrivacyLevel: .maskUserInput - ) - ) - - {{< /code-block >}} - -{{% /tab %}} -{{< /tabs >}} - -### Autoriser (pas de masque) - -Lorsque le réglage `allow` est activé, lʼensemble du texte est affiché. - -{{< img src="real_user_monitoring/session_replay/mobile/masking-mode-allow-all-2.png" alt="Lʼécran de votre application lorsque `allow` est activé." style="width:50%;">}} - -**Remarque** : même si cette option est activée, les champs de texte sensibles, tels que les mots de passe, les courriels, les numéros de téléphone et les adresses sont toujours masqués. Pour en savoir plus, référez-vous aux [définitions du masquage de texte](#definitions-du-masquage-de-texte). - -{{< tabs >}} -{{% tab "Android" %}} - - {{< code-block lang="javascript" filename="build.gradle" disable_copy="false" collapsible="true" >}} - - // aucun masque ; lʼensemble du texte est affiché - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setPrivacy(SessionReplayPrivacy.ALLOW) - .build() - SessionReplay.enable(sessionReplayConfig) - {{< /code-block >}} - -{{% /tab %}} -{{% tab "iOS" %}} - - {{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - // no masking; all text is revealed - SessionReplay.enable( - with: SessionReplay.Configuration( - replaySampleRate: sampleRate, - defaultPrivacyLevel: .allow - ) - ) - - {{< /code-block >}} - -{{% /tab %}} -{{< /tabs >}} - -## Quelles données sont masquées et comment - -Cette section décrit comment l'enregistreur Datadog gère le masquage en fonction du type de données et comment ces données sont définies. -### Stratégies de masquage de texte - -Selon la manière dont vous avez configuré vos paramètres de confidentialité, le type de texte et la sensibilité des données, les règles de masquage de Datadog appliquent des stratégies différentes aux différents types de champs de texte. - -| Stratégie de masquage de texte | Rôle | Exemple | -|-----------------------|-------------|---------| -| Pas de masque | Le texte sʼaffiche dans le replay de la session | `"Hello world"` → `"Hello world"` | -| Masque préservant l'espace | Chaque caractère visible est remplacé par un « x » minuscule | `"Hello world"` → `"xxxxx xxxxx"` | -| Masque de longueur fixe | L'ensemble du champ de texte est remplacé par une constante de trois astérisques (***). | `"Hello world"` → `"***"` - -En gardant à l'esprit les stratégies textuelles ci-dessus, plusieurs options sʼoffrent à vous si vous souhaitez remplacer la règle de confidentialité par défaut de `mask` dans votre configuration. - -Le graphique suivant montre comment Datadog applique différentes stratégies de masquage de texte aux types de texte ci-dessous, en utilisant les règles que vous avez définies dans votre configuration. - -| Type | Tout autoriser | Tout masquer | Masquer la saisie de l'utilisateur | -|------|-------------|------------|-------------------| -| [Texte sensible](#texte-sensible) | Masque de longueur fixe | Masque de longueur fixe | Masque de longueur fixe | -| [Texte de saisie et des options](#texte-de-saisie-et-des-options) | Pas de masque | Masque de longueur fixe | Masque de longueur fixe | -| [Texte statique](#texte-statique) | Pas de masque | Masque préservant l'espace | Pas de masque | -| [Texte dʼindication](#texte-de-l-indice) | Pas de masque | Masque de longueur fixe | Pas de masque | - -### Définitions du masquage de texte - -Vous trouverez ci-dessous une description de la manière dont l'enregistreur de Datadog traite chaque type de texte. - -#### Texte sensible -On considère comme texte sensible les mots de passe, les courriels et les numéros de téléphone marqués d'une manière spécifique à chaque plate-forme -et d'autres formes de sensibilité du texte disponibles pour chaque plateforme. - -Il s'agit notamment des mots de passe, des courriels et des numéros de téléphone : - -- Champ de texte (iOS) -- Affichage du texte (iOS) -- Modification de texte (Android) -- Informations sur l'adresse (iOS + Android) -- Numéros de carte de crédit (iOS) -- Codes à usage unique (iOS) - -#### Texte de saisie et des options - -Lorsque lʼon parle de texte de saisie et des options, il sʼagit du texte saisi par l'utilisateur à l'aide d'un clavier ou d'un autre dispositif de saisie de texte, ou dʼune valeur personnalisée (non générique) dans les éléments de sélection. - -Cela inclut les éléments ci-dessous. - -- Texte saisi par l'utilisateur dans : - - Champ de texte (iOS) - - Affichage du texte (iOS) - - Modification de texte (Android) -- Options sélectionnées par l'utilisateur dans : - - Sélecteur de valeurs (iOS + Android) - - Segment (iOS) - - Liste déroulante (Android) -- Exclusions notables : - - Texte des placeholders (indications) dans le champ de texte, l'affichage du texte et la modification de texte (non saisis par l'utilisateur) - - Textes non modifiables en affichage du texte (iOS). - - Etiquettes du mois, du jour et de l'année dans le sélecteur de date (valeurs génériques) - -#### Texte statique -Le texte statique est tout texte qui n'est pas directement saisi par l'utilisateur. Il s'agit notamment des éléments suivants. - -Tous les textes dans : - -- Les titres des cases à cocher et des boutons radio (Android) -- Les textes dans l'affichage de texte non modifiable (iOS) -- Les étiquettes du mois, du jour et de l'année dans le sélecteur de date et d'heure -- Les valeurs mises à jour en réponse aux interactions gestuelles avec les éléments de saisie, comme la valeur actuelle du curseur. -- D'autres commandes, qui ne sont pas considérées comme des « éléments de saisie de l'utilisateur », comme les étiquettes, la barre onglet et la barre de navigation (iOS) ou les onglets (Android) - -#### Texte dʼindication -Le texte d'indication est un texte statique dans les éléments de texte modifiables ou les sélecteurs d'options qui s'affiche lorsqu'aucune valeur n'est donnée. Il s'agit notamment des éléments suivants : - -- Placeholders dans les champs de texte (iOS), lʼaffichage de texte (iOS) -- Indications dans la modification de texte (Android) -- Invites dans les listes déroulantes (Android) - -### Masquage de l'aspect - -Le graphique suivant montre comment nous appliquons différentes stratégies pour le masquage de lʼaspect aux types de texte ci-dessous, en utilisant les règles que vous avez définies dans votre configuration. - -| Type | Tout autoriser | Tout masquer | Masquer la saisie de l'utilisateur | -|------|-------------|------------|-------------------| -| [Attributs révélateurs](#attributs-revelateurs) | | {{< X >}} | {{< X >}} | -| [Autres attributs](#autres-attributs) | | | | - -#### Attributs révélateurs -Les attributs révélateurs sont des attributs qui peuvent révéler ou suggérer la valeur des éléments de saisie et qui peuvent être utilisés pour déduire une saisie ou une sélection d'un utilisateur. - -Ceci inclut : - -**Formes** -- LʼArrière-plan de l'option sélectionnée dans Segment (iOS) -- Le cercle entourant la date sélectionnée dans un sélecteur de date (iOS) -- La marque de sélection dans une case à cocher (Android) -- Le thumb d'un curseur (iOS et Android) - -**Attributs de texte** -- La couleur d'une étiquette affichant la date sélectionnée dans le sélecteur de date (iOS) -- La position de la première et de la dernière option dans le sélecteur de valeur (iOS et Android). - -### Interactions tactiles - -Le graphique suivant montre comment nous appliquons différentes stratégies pour les interactions tactiles aux types de texte ci-dessous, en utilisant les règles que vous avez définies dans votre configuration. Toute interaction avec le clavier à l'écran est masquée, mais les interactions avec d'autres éléments ne le sont pas. - -| Type | Tout autoriser | Tout masquer | Masquer la saisie de l'utilisateur | -|------|-------------|------------|-------------------| -| [Autres attributs](#autres-attributs) | | | | -| [Clavier à l'écran](#clavier-a-l'ecran) | {{< X >}} | {{< X >}} | {{< X >}} | - -## Pour aller plus loin - -{{< partial name="whats-next/whats-next.html" >}} \ No newline at end of file diff --git a/content/ja/containers/guide/kubernetes_daemonset.md b/content/ja/containers/guide/kubernetes_daemonset.md index ff459dfc3ff..0f3e1ff07f7 100644 --- a/content/ja/containers/guide/kubernetes_daemonset.md +++ b/content/ja/containers/guide/kubernetes_daemonset.md @@ -6,6 +6,10 @@ further_reading: title: Kubernetes 上の Datadog Agent を DaemonSet で手動でインストール、構成する --- +
+ Datadog では、手動で行う DaemonSet による Datadog Agent のデプロイはエラーを招きやすいため推奨していません。Kubernetes に Agent をインストールする場合は、Datadog Operator または Helm の利用を推奨します。 +
+ ## インストール DaemonSet を利用して、すべてのノード (または [nodeSelectors を使用して][1]特定のノード) に Datadog Agent をデプロイすることができます。 @@ -35,7 +39,7 @@ Datadog Agent を Kubernetes クラスターにインストールするには: | | | | | | | [マニフェストテンプレート][10] | テンプレートなし | | | | | | | | [マニフェストテンプレート][11] | [マニフェストテンプレート][12] | - トレース収集を完全に有効にするには、[アプリケーションのポッドコンフィギュレーションで追加の手順が必要となります][13]。それぞれの機能を個別に有効にする方法については、[ログ][14]、[APM][15]、[プロセス][16]、[ネットワークパフォーマンスモニタリング][17]、[セキュリティ][18]に関するドキュメントページを参照してください。 + トレース収集を完全に有効にするには、[アプリケーションのポッドコンフィギュレーションで追加の手順が必要となります][13]。それぞれの機能を個別に有効にする方法については、[ログ][14]、[APM][15]、[プロセス][16]、[Cloud Network Monitoring][17]、[セキュリティ][18]に関するドキュメントページを参照してください。 **注**: これらのマニフェストは、`default` ネームスペースに設定されています。カスタムネームスペースを使用している場合、適用する前に `metadata.namespace` パラメーターを更新します。 @@ -363,7 +367,7 @@ Datadog は Kubernetes から一般的なタグを自動的に収集します。 [14]: /ja/agent/kubernetes/log/ [15]: /ja/agent/kubernetes/apm/ [16]: /ja/infrastructure/process/?tab=kubernetes#installation -[17]: /ja/network_monitoring/performance/setup/ +[17]: /ja/network_monitoring/cloud_network_monitoring/setup/ [18]: /ja/data_security/agent/ [19]: https://app.datadoghq.com/organization-settings/api-keys [20]: /ja/getting_started/site/ diff --git a/content/ja/continuous_integration/guides/ingestion_control.md b/content/ja/continuous_integration/guides/ingestion_control.md index 0923804a9b6..b43d0916f49 100644 --- a/content/ja/continuous_integration/guides/ingestion_control.md +++ b/content/ja/continuous_integration/guides/ingestion_control.md @@ -3,7 +3,7 @@ description: CI Visibility で処理しないために特定のイベントを further_reading: - link: https://www.datadoghq.com/blog/streamline-ci-testing-with-datadog-intelligent-test-runner/ tag: ブログ - text: Datadog Intelligent Test Runner による CI テストの効率化 + text: Datadog Test Impact Analysis で CI テストを効率化 - link: /continuous_integration/pipelines tag: ドキュメント text: Pipeline Visibility について diff --git a/content/ja/glossary/terms/control.md b/content/ja/glossary/terms/control.md index 09f10ccdcf5..16764685188 100644 --- a/content/ja/glossary/terms/control.md +++ b/content/ja/glossary/terms/control.md @@ -1,7 +1,7 @@ --- core_product: - security -- csm +- cloud security title: コントロール --- diff --git a/content/ja/integrations/azure_deployment_manager.md b/content/ja/integrations/azure_deployment_manager.md index 895569e11a5..159adc994e2 100644 --- a/content/ja/integrations/azure_deployment_manager.md +++ b/content/ja/integrations/azure_deployment_manager.md @@ -187,7 +187,7 @@ Azure Deployment Manager は、テンプレートで指定されている正規 `overall_status: OK` が見つかった場合は、チェックは正常と見なされます。ステータスが `Warn`、`No Data`、または `Alert` の場合、チェックは異常と見なされ、Azure Deployment Manager はデプロイを中止します。 -## 収集データ +## 収集されるデータ ### メトリクス @@ -197,7 +197,7 @@ Azure Deployment Manager は、メトリクスを報告しません。 Azure Deployment Manager には、イベントは含まれません。 -### サービスチェック +### サービス チェック Azure Deployment Manager には、サービスのチェック機能は含まれません。 diff --git a/content/ja/integrations/checkpoint_quantum_firewall.md b/content/ja/integrations/checkpoint_quantum_firewall.md new file mode 100644 index 00000000000..5b0a5852379 --- /dev/null +++ b/content/ja/integrations/checkpoint_quantum_firewall.md @@ -0,0 +1,239 @@ +--- +app_id: checkpoint-quantum-firewall +app_uuid: 4b6b8ef9-e079-4ee4-877e-8f4aafbf8a1d +assets: + dashboards: + 'Checkpoint Quantum Firewall: Anti Bot': assets/dashboards/checkpoint_quantum_firewall_anti_bot.json + 'Checkpoint Quantum Firewall: Anti Exploit': assets/dashboards/checkpoint_quantum_firewall_anti_exploit.json + 'Checkpoint Quantum Firewall: Anti Malware': assets/dashboards/checkpoint_quantum_firewall_anti_malware.json + 'Checkpoint Quantum Firewall: Anti Ransomware': assets/dashboards/checkpoint_quantum_firewall_anti_ransomware.json + 'Checkpoint Quantum Firewall: Anti Spam & Email Security': assets/dashboards/checkpoint_quantum_firewall_anti_spam_and_email_security.json + 'Checkpoint Quantum Firewall: Anti Virus': assets/dashboards/checkpoint_quantum_firewall_anti_virus.json + 'Checkpoint Quantum Firewall: Application Control': assets/dashboards/checkpoint_quantum_firewall_application_control.json + 'Checkpoint Quantum Firewall: Audit': assets/dashboards/checkpoint_quantum_firewall_audit.json + 'Checkpoint Quantum Firewall: DLP': assets/dashboards/checkpoint_quantum_firewall_dlp.json + 'Checkpoint Quantum Firewall: Firewall': assets/dashboards/checkpoint_quantum_firewall_firewall.json + 'Checkpoint Quantum Firewall: HTTPS Inspection': assets/dashboards/checkpoint_quantum_firewall_https_inspection.json + 'Checkpoint Quantum Firewall: IPS': assets/dashboards/checkpoint_quantum_firewall_ips.json + 'Checkpoint Quantum Firewall: Identity Awareness': assets/dashboards/checkpoint_quantum_firewall_identity_awareness.json + 'Checkpoint Quantum Firewall: Threat Emulation': assets/dashboards/checkpoint_quantum_firewall_threat_emulation.json + 'Checkpoint Quantum Firewall: URL Filtering': assets/dashboards/checkpoint_quantum_firewall_url_filtering.json + integration: + auto_install: true + configuration: + spec: assets/configuration/spec.yaml + events: + creates_events: false + service_checks: + metadata_path: assets/service_checks.json + source_type_id: 6852689 + source_type_name: checkpoint-quantum-firewall +author: + homepage: https://www.datadoghq.com + name: Datadog + sales_email: info@datadoghq.com + support_email: help@datadoghq.com +categories: +- security +- network +custom_kind: integration +dependencies: +- https://github.com/DataDog/integrations-core/blob/master/checkpoint_quantum_firewall/README.md +display_on_public_website: true +draft: false +git_integration_title: checkpoint_quantum_firewall +integration_id: checkpoint-quantum-firewall +integration_title: Checkpoint Quantum Firewall +integration_version: 1.0.0 +is_public: true +manifest_version: 2.0.0 +name: checkpoint_quantum_firewall +public_title: Checkpoint Quantum Firewall +short_description: Checkpoint Quantum Firewall のログを Datadog で可視化 +supported_os: +- windows +- linux +- macos +tile: + changelog: CHANGELOG.md + classifier_tags: + - Supported OS::Windows + - Supported OS::Linux + - Supported OS::macOS + - Category::Security + - Category::Network + - Offering::Integration + - Submitted Data Type::Logs + configuration: README.md#Setup + description: Checkpoint Quantum Firewall のログを Datadog で可視化 + media: + - caption: Checkpoint Quantum Firewall - Audit + image_url: images/checkpoint_quantum_firewall_audit.png + media_type: image + - caption: Checkpoint Quantum Firewall - Application Control + image_url: images/checkpoint_quantum_firewall_application_control.png + media_type: image + - caption: Checkpoint Quantum Firewall - URL Filtering + image_url: images/checkpoint_quantum_firewall_url_filtering.png + media_type: image + - caption: Checkpoint Quantum Firewall - Identity Awareness + image_url: images/checkpoint_quantum_firewall_identity_awareness.png + media_type: image + - caption: Checkpoint Quantum Firewall - IPS + image_url: images/checkpoint_quantum_firewall_ips.png + media_type: image + - caption: Checkpoint Quantum Firewall - Firewall + image_url: images/checkpoint_quantum_firewall_firewall.png + media_type: image + - caption: Checkpoint Quantum Firewall - Threat Emulation + image_url: images/checkpoint_quantum_firewall_threat_emulation.png + media_type: image + - caption: Checkpoint Quantum Firewall - Anti Bot + image_url: images/checkpoint_quantum_firewall_anti_bot.png + media_type: image + overview: README.md#Overview + support: README.md#Support + title: Checkpoint Quantum Firewall +--- + + +## 概要 + +[Check Point Next Generation Firewall][1] は、アプリケーション コントロール と IPS 保護を備えたセキュリティ ゲートウェイであり、セキュリティ イベントを統合管理できます。追加機能として、Identity Awareness、URL Filtering、Anti‑Bot、Anti‑Virus、Anti‑Spam が含まれています。 + +このインテグレーションは、URL Filtering ログ、Anti‑Bot ログ、Application Control、Firewall、Identity Awareness、IPS、Threat Emulation などのイベント タイプをログ パイプラインで取り込み、ログを拡充し Datadog 標準属性へ正規化します。これにより、許可/ブロックされた URL、ボットの詳細、アクセスされたアプリケーション データ、ファイアウォールが生成したイベント、コンピュータ アイデンティティとマシン IP アドレスの対応付けなどの詳細インサイトを提供するダッシュボードを利用できます。 + +## セットアップ + +### インストール + +Checkpoint Quantum Firewall インテグレーションをインストールするには、以下の手順に従ってください。 + +**注**: Agent バージョン >= 7.52.0 ではこの手順は不要です。 + +1. 1.0 リリース (`checkpoint_quantum_firewall==1.0.0`) を[インストール][2]します。 + +### 構成 + +#### ログ収集 + +**Checkpoint Quantum Firewall:** + +1. Datadog Agent ではログ収集はデフォルトで無効になっています。`datadog.yaml` ファイルで有効化してください。 + + ```yaml + logs_enabled: true + ``` + +2. Checkpoint Quantum Firewall ログを収集するには、以下の設定ブロックを `checkpoint_quantum_firewall.d/conf.yaml` に追加します。 + + 利用可能な設定オプションは[サンプル checkpoint_quantum_firewall.d/conf.yaml][3] を参照してください。 + + ```yaml + logs: + - type: tcp/udp + port: + service: checkpoint-quantum-firewall + source: checkpoint-quantum-firewall + ``` + +3. [Agent を再起動][4]します。 + +4. Checkpoint Quantum Firewall からの Syslog メッセージ転送を設定する手順: + 1. Management Server / Log Server のコマンドラインに接続します。 + 2. Expert モードでログインし、管理者資格情報を入力します (入力後、Expert モードが有効)。 + 3. エクスポートするログの送信先を新規設定するには、次のコマンドを入力します。 + ```yaml + cp_log_export add name target-server target-port protocol {tcp | udp} format json + ``` + - 上記コマンドでは次の Syslog サーバー詳細を指定してください: + + - name: syslog サーバー名。例: `datadog_syslog` + - target-server: Checkpoint Quantum Firewall のログを送信する宛先 + - target-port: syslog サーバーが待ち受けるポート (通常 514) + - protocol: ログ送信に使用するプロトコル名 (TCP/UDP) + - format: フォーマットは 'json' を指定 + 4. Syslog サーバー設定を保存して追加するには、次のコマンドを実行します。 + ```yaml + cp_log_export restart name + ``` + 5. Syslog の詳細設定は[公式 Checkpoint ドキュメント][5]を参照してください。 + +### 検証 + +[Agent の status サブコマンドを実行][6]し、Checks セクションに `checkpoint_quantum_firewall` が表示されることを確認してください。 + +## 収集データ + +### ログ + +Checkpoint Quantum Firewall インテグレーションは Firewall、URL Filtering、IPS、Identity Awareness、Application Control、Threat Emulation、Audit、Anti‑Ransomware、Anti‑Spam & Email Security、Anti‑Exploit、Anti‑Bot、Anti‑Virus、HTTPS Inspection、DLP、Anti‑Malware の各ログを収集します。 + +### メトリクス + +Checkpoint Quantum Firewall インテグレーションにはメトリクスは含まれていません。 + +### イベント + +Checkpoint Quantum Firewall インテグレーションにはイベントは含まれていません。 + +### サービス チェック + +Checkpoint Quantum Firewall インテグレーションにはサービス チェックは含まれていません。 + +## トラブルシューティング + +**Checkpoint Quantum Firewall:** + +#### ポート バインド時の Permission denied + +Agent ログに **Permission denied** エラーが表示された場合は、次の手順を参照してください。 + +1. 1024 未満のポート番号にバインドするには昇格権限が必要です。以下の手順で設定します。 + + - `setcap` コマンドでポートへのアクセスを付与: + + ``` + sudo setcap CAP_NET_BIND_SERVICE=+ep /opt/datadog-agent/bin/agent/agent + ``` + + - `getcap` コマンドで設定を確認: + + ``` + sudo getcap /opt/datadog-agent/bin/agent/agent + ``` + + 期待される出力: + + ``` + /opt/datadog-agent/bin/agent/agent = cap_net_bind_service+ep + ``` + + **注**: Agent をアップグレードするたびにこの `setcap` コマンドを再実行してください。 + +2. [Agent を再起動][4]します。 + +#### データが収集されない + +ファイアウォールが有効な場合、設定したポートのトラフィックがバイパスされているか確認してください。 + +#### Port already in use + +**Port Already in Use** エラーが表示された場合の対処例 (PORT‑NO = 514): + +Syslog を使用するシステムで、Agent がポート 514 で Checkpoint Quantum Firewall ログをリッスンしようとすると、Agent ログに `Can't start UDP forwarder on port 514: listen udp :514: bind: address already in use` というエラーが出ることがあります。 + +これは Syslog がデフォルトでポート 514 を使用しているためです。解決策として以下のいずれかを実施してください: + +- Syslog を無効化する +- Agent を別の空いているポートでリッスンさせる + +追加サポートが必要な場合は [Datadog サポート][7]までお問い合わせください。 + +[1]: https://www.checkpoint.com/quantum/next-generation-firewall/ +[2]: https://docs.datadoghq.com/ja/agent/guide/integration-management/?tab=linux#install +[3]: https://github.com/DataDog/integrations-core/blob/master/checkpoint_quantum_firewall/datadog_checks/checkpoint_quantum_firewall/data/conf.yaml.example +[4]: https://docs.datadoghq.com/ja/agent/guide/agent-commands/#start-stop-and-restart-the-agent +[5]: https://sc1.checkpoint.com/documents/R81.20/WebAdminGuides/EN/CP_R81.20_LoggingAndMonitoring_AdminGuide/Content/Topics-LMG/Log-Exporter-Configuration-in-CLI-Basic.htm?tocpath=Log%20Exporter%7CConfiguring%20Log%20Exporter%20in%20CLI%7C_____1 +[6]: https://docs.datadoghq.com/ja/agent/guide/agent-commands/#agent-status-and-information +[7]: https://docs.datadoghq.com/ja/help/ \ No newline at end of file diff --git a/content/ja/integrations/firefly_license.md b/content/ja/integrations/firefly_license.md index 322ff96e027..36edb2a75da 100644 --- a/content/ja/integrations/firefly_license.md +++ b/content/ja/integrations/firefly_license.md @@ -15,7 +15,7 @@ categories: - クラウド - 構成 & デプロイ - マーケットプレイス -custom_kind: integration +custom_kind: インテグレーション dependencies: [] display_on_public_website: true draft: false @@ -101,4 +101,4 @@ Firefly の統合ポリシーエンジンにより、危険な構成ミスやコ [2]: https://app.datadoghq.com/integrations/firefly --- -このアプリケーションは Marketplace から入手でき、Datadog テクノロジーパートナーによってサポートされています。このアプリケーションを購入するには、こちらをクリックしてください。 +このアプリケーションは Marketplace から入手でき、Datadog テクノロジーパートナーによってサポートされています。利用するには、Marketplace でこのアプリケーションを購入してください。 \ No newline at end of file diff --git a/content/ja/integrations/guide/hadoop-distributed-file-system-hdfs-integration-error.md b/content/ja/integrations/guide/hadoop-distributed-file-system-hdfs-integration-error.md new file mode 100644 index 00000000000..9c6e198374e --- /dev/null +++ b/content/ja/integrations/guide/hadoop-distributed-file-system-hdfs-integration-error.md @@ -0,0 +1,16 @@ +--- +aliases: +- /ja/integrations/faq/hadoop-distributed-file-system-hdfs-integration-error/ +title: Hadoop Distributed File System (HDFS) インテグレーションエラー +--- + +HDFS とインテグレーションする際にエラーが発生している場合は、まず次の手順で pip と Snakebite をアップグレードしてください。 + +1. 実行: /opt/datadog-agent/embedded/bin/pip install --upgrade pip +2. 実行: /opt/datadog-agent/embedded/bin/pip install --upgrade snakebite +3. [Agent を再起動します][1]。 + +これらの手順でエラーが解決しない場合は、[Datadog サポート][2]までお問い合わせください。 + +[1]: /ja/agent/guide/agent-commands/#start-stop-restart-the-agent +[2]: /ja/help/ \ No newline at end of file diff --git a/content/ja/integrations/palo_alto_panorama.md b/content/ja/integrations/palo_alto_panorama.md new file mode 100644 index 00000000000..b8f15e34b9e --- /dev/null +++ b/content/ja/integrations/palo_alto_panorama.md @@ -0,0 +1,268 @@ +--- +app_id: palo-alto-panorama +app_uuid: 08e3eb08-944f-4f58-94db-b8235b7ebb5e +assets: + dashboards: + 'Palo Alto Panorama: Authentication': assets/dashboards/palo_alto_panorama_authentication.json + 'Palo Alto Panorama: Config': assets/dashboards/palo_alto_panorama_config.json + 'Palo Alto Panorama: Correlated Events': assets/dashboards/palo_alto_panorama_correlated_events.json + 'Palo Alto Panorama: Decryption': assets/dashboards/palo_alto_panorama_decryption.json + 'Palo Alto Panorama: Global Protect': assets/dashboards/palo_alto_panorama_globalprotect.json + 'Palo Alto Panorama: HIP Match': assets/dashboards/palo_alto_panorama_hip_match.json + 'Palo Alto Panorama: System': assets/dashboards/palo_alto_panorama_system.json + 'Palo Alto Panorama: Threat': assets/dashboards/palo_alto_panorama_threat.json + 'Palo Alto Panorama: Traffic': assets/dashboards/palo_alto_panorama_traffic.json + 'Palo Alto Panorama: Tunnel Inspection': assets/dashboards/palo_alto_panorama_tunnel_inspection.json + 'Palo Alto Panorama: User ID': assets/dashboards/palo_alto_panorama_user_id.json + integration: + auto_install: true + configuration: + spec: assets/configuration/spec.yaml + events: + creates_events: false + service_checks: + metadata_path: assets/service_checks.json + source_type_id: 6661801 + source_type_name: palo-alto-panorama +author: + homepage: https://www.datadoghq.com + name: Datadog + sales_email: info@datadoghq.com + support_email: help@datadoghq.com +categories: +- security +- network +custom_kind: integration +dependencies: +- https://github.com/DataDog/integrations-core/blob/master/palo_alto_panorama/README.md +display_on_public_website: true +draft: false +git_integration_title: palo_alto_panorama +integration_id: palo-alto-panorama +integration_title: Palo Alto Panorama +integration_version: 1.0.0 +is_public: true +manifest_version: 2.0.0 +name: palo_alto_panorama +public_title: Palo Alto Panorama +short_description: Panorama ファイアウォール ログのインサイトを取得します。Cloud SIEM に接続 します。 +supported_os: +- linux +- windows +- macos +tile: + changelog: CHANGELOG.md + classifier_tags: + - Supported OS::Linux + - Supported OS::Windows + - Supported OS::macOS + - Category::Security + - Category::Network + - Offering::Integration + - Submitted Data Type::Logs + configuration: README.md#Setup + description: Panorama ファイアウォール ログのインサイトを取得します。Cloud SIEM に接続 します。 + media: + - caption: 'Palo Alto Panorama: Traffic' + image_url: images/palo_alto_panorama_traffic.png + media_type: image + - caption: 'Palo Alto Panorama: Threat' + image_url: images/palo_alto_panorama_threat.png + media_type: image + - caption: 'Palo Alto Panorama: Config' + image_url: images/palo_alto_panorama_config.png + media_type: image + - caption: 'Palo Alto Panorama: System' + image_url: images/palo_alto_panorama_system.png + media_type: image + - caption: 'Palo Alto Panorama: Decryption' + image_url: images/palo_alto_panorama_decryption.png + media_type: image + - caption: 'Palo Alto Panorama: Global Protect' + image_url: images/palo_alto_panorama_global_protect.png + media_type: image + - caption: 'Palo Alto Panorama: Tunnel Inspection' + image_url: images/palo_alto_panorama_tunnel_inspection.png + media_type: image + - caption: 'Palo Alto Panorama: Authentication' + image_url: images/palo_alto_panorama_authentication.png + media_type: image + overview: README.md#Overview + support: README.md#Support + title: Palo Alto Panorama +--- + + +## 概要 + +[Palo Alto Panorama][1] は Palo Alto Networks が開発したセキュリティ管理ソフトウェア アプリケーションです。Palo Alto Network ファイアウォールを一元的に管理・ログ収集・レポートするために設計されています。 + +このインテグレーションは、Traffic、Threat、Authentication、HIP Match、User ID、Tunnel Inspection、Config、System、Correlated Events、URL Filtering、Data Filtering、GlobalProtect、Decryption の各種ログタイプを取り込み、ログ パイプラインで付加情報を付与し、データを Datadog 標準属性に正規化します。 + +このインテグレーションは、受信・送信トラフィックフロー、脅威詳細、ユーザー認証情報、GlobalProtect が生成するイベント、ユーザーと IP アドレスのマッピングなどについて詳細なインサイトを提供するダッシュボード ビジュアライゼーションを提供します。 + +## セットアップ + +### インストール + +Palo Alto Panorama インテグレーションをインストールするには、次の Agent インストール コマンドと以下の手順を実行します。詳細は [Integration Management ドキュメント][2]を参照してください。 + +**注**: Agent バージョン >= 7.52.0 ではこの手順は不要です。 + +Linux コマンド: + ```shell + sudo -u dd-agent -- datadog-agent integration install datadog-palo_alto_panorama==1.0.0 + ``` + +### 構成 + +#### ログ収集 + +**Palo Alto Panorama:** + +1. Datadog Agent ではデフォルトでログ収集は無効になっています。`datadog.yaml` ファイルで有効化してください。 + + ```yaml + logs_enabled: true + ``` + +2. Palo Alto Panorama のログ収集を開始するには、この設定ブロックを `palo_alto_panorama.d/conf.yaml` ファイルに追加します。 + + 利用可能な設定オプションは[サンプル palo_alto_panorama.d/conf.yaml][3] を参照してください。 + + ```yaml + logs: + - type: tcp # Choose either 'tcp' or 'udp' based on your requirements + port: + service: palo-alto-panorama + source: palo-alto-panorama + ``` + +3. [Agent を再起動][4]します。 + +4. Panorama を設定して Datadog にデータを送信します: + 1. Panorama システムにログイン + 2. [Syslog ログ転送][5]の設定手順に従います。 + 1. 手順 1.4 では `Transport` タイプとして `TCP/UDP`、`syslog messages` のフォーマットとして `BSD` を使用します。 + 2. 手順 1.5 では以下のカスタムログフォーマットを使用します: + - **Traffic** + ```sh + serial=$serial|type=$type|subtype=$subtype|time_generated=$cef-formatted-time_generated|src=$src|dst=$dst|natsrc=$natsrc|natdst=$natdst|rule=$rule|suser=$srcuser|duser=$dstuser|app=$app|vsys=$vsys|from=$from|to=$to|inboundif=$inbound_if|outboundif=$outbound_if|logset=$logset|sessionid=$sessionid|repeatcnt=$repeatcnt|sport=$sport|dport=$dport|natsport=$natsport|natdport=$natdport|flags=$flags|proto=$proto|act=$action|bytes=$bytes|bytes_sent=$bytes_sent|bytes_received=$bytes_received|pkt=$packets|start=$start|elapsed=$elapsed|cat=$category|seq=$seqno|actflag=$actionflags|sloc=$srcloc|dloc=$dstloc|pktsent=$pkts_sent|pktrcvd=$pkts_received|sessionendreason=$session_end_reason|vsysname=$vsys_name|dvc=$device_name|actsrc=$action_source|suuid=$src_uuid|duuid=$dst_uuid|tunnelid=$tunnelid|monitortag=$monitortag|parentid=$parent_session_id|parentst=$parent_start_time|tunnel=$tunnel|associd=$assoc_id|chunk=$chunks|chunksent=$chunks_sent|chunkrcvd=$chunks_received|ruleuuid=$rule_uuid|http2conn=$http2_connection|appflap=$link_change_count|policyid=$policy_id|dynusrgrp=$dynusergroup_name|xffip=$xff_ip|scat=$src_category|sprofile=$src_profile|smodel=$src_model|sven=$src_vendor|sosfam=$src_osfamily|sosver=$src_osversion|shost=$src_host|smac=$src_mac|dcat=$dst_category|dprofile=$dst_profile|dmodel=$dst_model|dven=$dst_vendor|dosfam=$dst_osfamily|dosver=$dst_osversion|dhost=$dst_host|dmac=$dst_mac|contid=$container_id|podnamespace=$pod_namespace|podname=$pod_name|sedl=$src_edl|dedl=$dst_edl|hostid=$hostid|srnum=$serialnumber|sessionown=$session_owner|subcatapp=$subcategory_of_app|appcat=$category_of_app|apptech=$technology_of_app|apprisk=$risk_of_app|appchar=$characteristic_of_app|appcont=$container_of_app|tunneledapp=$tunneled_app|appsaas=$is_saas_of_app|appstate=$sanctioned_state_of_app|offloaded=$offloaded|flowtype=$flow_type|cluster=$cluster_name|link=$link_switches|sdag=$src_dag|ddag=$dst_dag + ``` + - **Threat** + ```sh + serial=$serial|type=$type|subtype=$subtype|time_generated=$cef-formatted-time_generated|src=$src|dst=$dst|natsrc=$natsrc|natdst=$natdst|rule=$rule|suser=$srcuser|duser=$dstuser|app=$app|vsys=$vsys|from=$from|to=$to|inboundif=$inbound_if|outboundif=$outbound_if|logset=$logset|sessionid=$sessionid|repeatcnt=$repeatcnt|sport=$sport|dport=$dport|natsport=$natsport|natdport=$natdport|flags=$flags|proto=$proto|act=$action|misc=$misc|threatid=$threatid|cat=$category|severity=$severity|dir=$direction|seqno=$seqno|actflags=$actionflags|sloc=$srcloc|dloc=$dstloc|contenttype=$contenttype|pcapip=$pcap_id|filedigest=$filedigest|cloud=$cloud|urlidx=$url_idx|useragent=$user_agent|filetype=$filetype|xff=$xff|ref=$referer|sender=$sender|sub=$subject|recipient=$recipient|reportid=$reportid|vsysname=$vsys_name|dvc=$device_name|suuid=$src_uuid|duuid=$dst_uuid|http_method=$http_method|tunnelid=$tunnel_id|monitortag=$monitortag|tunnel=$tunnel|thrcategory=$thr_category|contentver=$contentver|ppid=$ppid|httpheaders=$http_headers|urlcategory=$url_category_list|ruleuuid=$rule_uuid|http2conn=$http2_connection|dynusrgrp=$dynusergroup_name|xffip=$xff_ip|scat=$src_category|sprofile=$src_profile|smodel=$src_model|sven=$src_vendor|sosfam=$src_osfamily|sosver=$src_osversion|shost=$src_host|smac=$src_mac|dcat=$dst_category|dprofile=$dst_profile|dmodel=$dst_model|dven=$dst_vendor|dosfam=$dst_osfamily|dosver=$dst_osversion|dhost=$dst_host|dmac=$dst_mac|contid=$container_id|podnamespace=$pod_namespace|podname=$pod_name|hostid=$hostid|srnum=$serialnumber|reason=$reason|justification=$justification|subcatApp=$subcategory_of_app|appcat=$category_of_app|apptech=$technology_of_app|apprisk=$risk_of_app|appchar=$characteristic_of_app|appcont=$container_of_app|tunneledapp=$tunneled_app|appsaas=$is_saas_of_app|appstate=$sanctioned_state_of_app|cloudreportid=$cloud_reportid|cluster=$cluster_name|flowtype=$flow_type + ``` + - **Authentication** + ```sh + receive_time=$receive_time|serial=$serial|type=$type|subtype=$subtype|time_generated=$cef-formatted-time_generated|vsys=$vsys|ip=$ip|user=$user|normalize_user=$normalize_user|object=$object|authpolicy=$authpolicy|repeatcnt=$repeatcnt|authid=$authid|vendor=$vendor|logset=$logset|serverprofile=$serverprofile|desc=$desc|clienttype=$clienttype|event=$event|factorno=$factorno|seqno=$seqno|actionflags=$actionflags|dg_hier_level_1=$dg_hier_level_1|dg_hier_level_2=$dg_hier_level_2|dg_hier_level_3=$dg_hier_level_3|dg_hier_level_4=$dg_hier_level_4|vsys_name=$vsys_name|device_name=$device_name|vsys_id=$vsys_id|authproto=$authproto|rule_uuid=$rule_uuid|high_res_timestamp=$high_res_timestamp|src_category=$src_category|src_profile=$src_profile|src_model=$src_model|src_vendor=$src_vendor|src_osfamily=$src_osfamily|src_osversion=$src_osversion|src_host=$src_host|src_mac=$src_mac|region=$region|user_agent=$user_agent|sessionid=$sessionid|cluster_name=$cluster_name + ``` + - **HIP Match** + ```sh + receive_time=$receive_time|serial=$serial|type=$type|subtype=$subtype|time_generated=$cef-formatted-time_generated|srcuser=$srcuser|vsys=$vsys|machinename=$machinename|os=$os|src=$src|matchname=$matchname|repeatcnt=$repeatcnt|matchtype=$matchtype|seqno=$seqno|actionflags=$actionflags|dg_hier_level_1=$dg_hier_level_1|dg_hier_level_2=$dg_hier_level_2|dg_hier_level_3=$dg_hier_level_3|dg_hier_level_4=$dg_hier_level_4|vsys_name=$vsys_name|device_name=$device_name|vsys_id=$vsys_id|srcipv6=$srcipv6|hostid=$hostid|serialnumber=$serialnumber|mac=$mac|high_res_timestamp=$high_res_timestamp|cluster_name=$cluster_name + ``` + - **User ID** + ```sh + receive_time=$receive_time|serial=$serial|type=$type|subtype=$subtype|time_generated=$cef-formatted-time_generated|vsys=$vsys|ip=$ip|user=$user|datasourcename=$datasourcename|eventid=$eventid|repeatcnt=$repeatcnt|timeout=$timeout|beginport=$beginport|endport=$endport|datasource=$datasource|datasourcetype=$datasourcetype|seqno=$seqno|actionflags=$actionflags|dg_hier_level_1=$dg_hier_level_1|dg_hier_level_2=$dg_hier_level_2|dg_hier_level_3=$dg_hier_level_3|dg_hier_level_4=$dg_hier_level_4|vsys_name=$vsys_name|device_name=$device_name|vsys_id=$vsys_id|factortype=$factortype|factorcompletiontime=$factorcompletiontime|factorno=$factorno|ugflags=$ugflags|userbysource=$userbysource|tag_name=$tag_name|high_res_timestamp=$high_res_timestamp|origindatasource=$origindatasource|cluster_name=$cluster_name + ``` + - **Tunnel Inspection** + ```sh + receive_time=$receive_time|serial=$serial|type=$type|subtype=$subtype|time_generated=$cef-formatted-time_generated|src=$src|dst=$dst|natsrc=$natsrc|natdst=$natdst|rule=$rule|srcuser=$srcuser|dstuser=$dstuser|app=$app|vsys=$vsys|from=$from|to=$to|inbound_if=$inbound_if|outbound_if=$outbound_if|logset=$logset|sessionid=$sessionid|repeatcnt=$repeatcnt|sport=$sport|dport=$dport|natsport=$natsport|natdport=$natdport|flags=$flags|proto=$proto|act=$action|severity=$severity|seqno=$seqno|actionflags=$actionflags|srcloc=$srcloc|dstloc=$dstloc|dg_hier_level_1=$dg_hier_level_1|dg_hier_level_2=$dg_hier_level_2|dg_hier_level_3=$dg_hier_level_3|dg_hier_level_4=$dg_hier_level_4|vsys_name=$vsys_name|device_name=$device_name|tunnelid=$tunnelid|monitortag=$monitortag|parent_session_id=$parent_session_id|parent_start_time=$parent_start_time|tunnel=$tunnel|bytes=$bytes|bytes_sent=$bytes_sent|bytes_received=$bytes_received|pkt=$packets|pkts_sent=$pkts_sent|pkts_received=$pkts_received|max_encap=$max_encap|unknown_proto=$unknown_proto|strict_check=$strict_check|tunnel_fragment=$tunnel_fragment|sessions_created=$sessions_created|sessions_closed=$sessions_closed|session_end_reason=$session_end_reason|action_source=$action_source|start=$start|elapsed=$elapsed|tunnel_insp_rule=$tunnel_insp_rule|remote_user_ip=$remote_user_ip|remote_user_id=$remote_user_id|rule_uuid=$rule_uuid|pcap_id=$pcap_id|dynusergroup_name=$dynusergroup_name|src_edl=$src_edl|dst_edl=$dst_edl|high_res_timestamp=$high_res_timestamp|nssai_sd=$nssai_sd|nssai_sst=$nssai_sst|pdu_session_id=$pdu_session_id|subcategory_of_app=$subcategory_of_app|category_of_app=$category_of_app|technology_of_app=$technology_of_app|risk_of_app=$risk_of_app|characteristic_of_app=$characteristic_of_app|container_of_app=$container_of_app|is_saas_of_app=$is_saas_of_app|sanctioned_state_of_app=$sanctioned_state_of_app|cluster_name=$cluster_name + ``` + - **Config** + ```sh + receive_time=$receive_time|serial=$serial|type=$type|subtype=$subtype|time_generated=$cef-formatted-time_generated|host=$host|vsys=$vsys|cmd=$cmd|admin=$admin|client=$client|result=$result|path=$path|seqno=$seqno|actionflags=$actionflags|dg_hier_level_1=$dg_hier_level_1|dg_hier_level_2=$dg_hier_level_2|dg_hier_level_3=$dg_hier_level_3|dg_hier_level_4=$dg_hier_level_4|vsys_name=$vsys_name|device_name=$device_name|dg_id=$dg_id|comment=$comment|high_res_timestamp=$high_res_timestamp|before-change-detail=$before-change-detail|after-change-detail=$after-change-detail + ``` + - **System** + ```sh + receive_time=$receive_time|serial=$serial|type=$type|subtype=$subtype|time_generated=$cef-formatted-time_generated|vsys=$vsys|eventid=$eventid|object=$object|module=$module|severity=$severity|opaque=$opaque|seqno=$seqno|actionflags=$actionflags|dg_hier_level_1=$dg_hier_level_1|dg_hier_level_2=$dg_hier_level_2|dg_hier_level_3=$dg_hier_level_3|dg_hier_level_4=$dg_hier_level_4|vsys_name=$vsys_name|device_name=$device_name|high_res_timestamp=$high_res_timestamp + ``` + - **Correleated Events** + ```sh + receive_time=$receive_time|serial=$serial|type=$type|subtype=$subtype|time_generated=$cef-formatted-time_generated|src=$src|srcuser=$srcuser|vsys=$vsys|category=$category|severity=$severity|dg_hier_level_1=$dg_hier_level_1|dg_hier_level_2=$dg_hier_level_2|dg_hier_level_3=$dg_hier_level_3|dg_hier_level_4=$dg_hier_level_4|vsys_name=$vsys_name|device_name=$device_name|vsys_id=$vsys_id|objectname=$objectname|object_id=$object_id|evidence=$evidence + ``` + - **GlobalProtect** + ```sh + receive_time=$receive_time|serial=$serial|type=$type|subtype=$subtype|time_generated=$cef-formatted-time_generated|vsys=$vsys|eventid=$eventid|stage=$stage|auth_method=$auth_method|tunnel_type=$tunnel_type|srcuser=$srcuser|srcregion=$srcregion|machinename=$machinename|public_ip=$public_ip|public_ipv6=$public_ipv6|private_ip=$private_ip|private_ipv6=$private_ipv6|hostid=$hostid|serialnumber=$serialnumber|client_ver=$client_ver|client_os=$client_os|client_os_ver=$client_os_ver|repeatcnt=$repeatcnt|reason=$reason|error=$error|opaque=$opaque|status=$status|location=$location|login_duration=$login_duration|connect_method=$connect_method|error_code=$error_code|portal=$portal|seqno=$seqno|actionflags=$actionflags|selection_type=$selection_type|response_time=$response_time|priority=$priority|attempted_gateways=$attempted_gateways|gateway=$gateway|dg_hier_level_1=$dg_hier_level_1|dg_hier_level_2=$dg_hier_level_2|dg_hier_level_3=$dg_hier_level_3|dg_hier_level_4=$dg_hier_level_4|vsys_name=$vsys_name|device_name=$device_name|vsys_id=$vsys_id|cluster_name=$cluster_name + ``` + - **Decryption** + ```sh + serial=$serial|type=$type|subtype=$subtype|configver=$config_ver|time_generated=$cef-formatted-time_generated|src=$src|dst=$dst|natsrc=$natsrc|natdst=$natdst|rule=$rule|suser=$srcuser|duser=$dstuser|app=$app|vsys=$vsys|from=$from|to=$to|inboundif=$inbound_if|outboundif=$outbound_if|logset=$logset|time_received=$time_received|sessionid=$sessionid|repeatcnt=$repeatcnt|sport=$sport|dport=$dport|natsport=$natsport|natdport=$natdport|flags=$flags|proto=$proto|act=$action|tunnel=$tunnel|suuid=$src_uuid|duuid=$dst_uuid|ruleuuid=$rule_uuid|hsstagec2f=$hs_stage_c2f|hsstagef2s=$hs_stage_f2s|tlsver=$tls_version|tlskeyxchg=$tls_keyxchg|tlsenc=$tls_enc|tlsauth=$tls_auth|policyname=$policy_name|eccurve=$ec_curve|errindex=$err_index|rootstatus=$root_status|chainstatus=$chain_status|proxytype=$proxy_type|certserial=$cert_serial|fingerprint=$fingerprint|notbefore=$notbefore|notafter=$notafter|certver=$cert_ver|certsize=$cert_size|cnlen=$cn_len|issuerlen=$issuer_len|rootcnlen=$rootcn_len|snilen=$sni_len|certflags=$cert_flags|cn=$cn|issuercn=$issuer_cn|rootcn=$root_cn|sni=$sni|err=$error|contid=$container_id|podnamespace=$pod_namespace|podname=$pod_name|sedl=$src_edl|dedl=$dst_edl|scat=$src_category|sprofile=$src_profile|smodel=$src_model|sven=$src_vendor|src_osfamily=$src_osfamily|sosver=$src_osversion|shost=$src_host|smac=$src_mac|dcat=$dst_category|dprofile=$dst_profile|dmodel=$dst_model|dven=$dst_vendor|dosfam=$dst_osfamily|dosver=$dst_osversion|dhost=$dst_host|dmac=$dst_mac|seqno=$seqno|actflag=$actionflags|vsysname=$vsys_name|dvc=$device_name|vsysid=$vsys_id|appsubcat=$subcategory_of_app|appcat=$category_of_app|apptech=$technology_of_app|apprisk=$risk_of_app|appchar=$characteristic_of_app|appcont=$container_of_app|appsaas=$is_saas_of_app|appstate=$sanctioned_state_of_app|cluster=$cluster_name|sdag=$src_dag|ddag=$dst_dag + ``` + + +### 検証 + +[Agent の status サブ コマンド][6]を実行し、Checks セクションに `palo_alto_panorama` が表示されていることを確認します。 + +## 収集データ + +### ログ + +Palo Alto Panorama インテグレーションは Traffic、Threat、Authentication、HIP Match、User ID、Tunnel Inspection、Config、System、Correlated Events、URL Filtering、Data Filtering、GlobalProtect、Decryption の各ログを収集します。 + +### メトリクス + +Palo Alto Panorama インテグレーションにはメトリクスは含まれません。 + +### イベント + +Palo Alto Panorama インテグレーションにはイベントは含まれません。 + +### サービス チェック + +Palo Alto Panorama インテグレーションにはサービス チェックは含まれません。 + +## トラブルシューティング + +**ポート バインド時の Permission denied:** + +Agent ログに **Permission denied** エラーが表示された場合は、次の手順を参照してください。 + + 1. 1024 未満のポート番号にバインドするには昇格権限が必要です。`setcap` コマンドでそのポートへのアクセスを許可してください: + + - `setcap` コマンドでポートへのアクセスを付与: + + ```shell + sudo setcap CAP_NET_BIND_SERVICE=+ep /opt/datadog-agent/bin/agent/agent + ``` + + - `getcap` コマンドで設定を確認: + + ```shell + sudo getcap /opt/datadog-agent/bin/agent/agent + ``` + + 期待される出力: + + ```shell + /opt/datadog-agent/bin/agent/agent = cap_net_bind_service+ep + ``` + + **注**: Agent をアップグレードするたびに、この `setcap` コマンドを再実行してください。 + + 2. [Agent を再起動します][4]。 + +**データが収集されない:** + +ファイアウォールが有効な場合、設定したポートのトラフィックがバイパスされているか確認してください。 + +**Port already in use:** + +**Port Already in Use** エラーが表示された場合の対処例 (PORT‑NO = 514): + +Syslog を使用しているシステムで、Agent が Zeek ログをポート 514 で受信しようとすると、Agent ログに次のエラーが表示されることがあります: `Can't start UDP forwarder on port 514: listen udp :514: bind: address already in use` + +これは Syslog がデフォルトでポート 514 を使用しているためです。解決策として以下のいずれかを実施してください: +- Syslog を無効化する +- Agent を別の空いているポートでリッスンさせる + +追加サポートが必要な場合は [Datadog サポート][7]までお問い合わせください。 + +[1]: https://www.paloaltonetworks.com/network-security/panorama +[2]: https://docs.datadoghq.com/ja/agent/guide/integration-management/?tab=linux#install +[3]: https://github.com/DataDog/integrations-core/blob/master/palo_alto_panorama/datadog_checks/palo_alto_panorama/data/conf.yaml.example +[4]: https://docs.datadoghq.com/ja/agent/guide/agent-commands/#start-stop-and-restart-the-agent +[5]: https://docs.paloaltonetworks.com/pan-os/11-1/pan-os-admin/monitoring/use-syslog-for-monitoring/configure-syslog-monitoring +[6]: https://docs.datadoghq.com/ja/agent/guide/agent-commands/#agent-status-and-information +[7]: https://docs.datadoghq.com/ja/help/ \ No newline at end of file diff --git a/content/ja/integrations/rapdev_redhat_satellite.md b/content/ja/integrations/rapdev_redhat_satellite.md index 9fcb0e10daf..0453fecd20b 100644 --- a/content/ja/integrations/rapdev_redhat_satellite.md +++ b/content/ja/integrations/rapdev_redhat_satellite.md @@ -139,4 +139,4 @@ RedHat Satellite アプリケーションの監視を始めやすいように、 [8]: https://www.rapdev.io/#Get-in-touch [9]: mailto:sales@rapdev.io --- -このアプリケーションは Marketplace から入手でき、Datadog テクノロジーパートナーによってサポートされています。このアプリケーションを購入するには、こちらをクリックしてください。 \ No newline at end of file +このアプリケーションは Marketplace から入手でき、Datadog テクノロジーパートナーによってサポートされています。利用するには、Marketplace でこのアプリケーションを購入してください。 \ No newline at end of file diff --git a/content/ja/logs/guide/aws-eks-fargate-logs-with-kinesis-data-firehose.md b/content/ja/logs/guide/aws-eks-fargate-logs-with-kinesis-data-firehose.md index 709e4a69fc6..42b933a2e86 100644 --- a/content/ja/logs/guide/aws-eks-fargate-logs-with-kinesis-data-firehose.md +++ b/content/ja/logs/guide/aws-eks-fargate-logs-with-kinesis-data-firehose.md @@ -9,22 +9,25 @@ further_reading: - link: https://docs.aws.amazon.com/eks/latest/userguide/fargate-profile.html tag: Documentation text: AWS Fargate プロファイル -title: Send Amazon EKS Fargate Logs with Amazon Data Firehose +- link: /logs/guide/reduce_data_transfer_fees + tag: ガイド + text: データ転送料金を削減しながら Datadog にログを送信する方法 +title: Amazon EKS Fargate のログを Amazon Data Firehose で送信する --- ## 概要 -AWS Fargate on EKS provides a fully managed experience for running Kubernetes workloads. Amazon Data Firehose can be used with EKS's Fluent Bit log router to collect logs in Datadog. This guide provides a comparison of log forwarding through Amazon Data Firehose and CloudWatch logs, as well as a sample EKS Fargate application to send logs to Datadog through Amazon Data Firehose. +EKS 上の AWS Fargate は、Kubernetes ワークロードを実行するためのフル マネージド エクスペリエンスを提供します。Amazon Data Firehose は、EKS の Fluent Bit ログ ルーターと組み合わせて使用し、Datadog でログを収集できます。このガイドでは、Amazon Data Firehose と CloudWatch Logs を経由したログ フォワーディングの比較と、Amazon Data Firehose を通じて Datadog にログを送信するサンプル EKS Fargate アプリケーションを提供します。 -{{< img src="logs/guide/aws-eks-fargate-logs-with-kinesis-data-firehose/log_streaming_diagram.png" alt="Diagram of the log flow depicting a Fargate EKS cluster sending container logs through Fluent Bit log router to Amazon data firehose and an S3 backup bucket within AWS and then on to Datadog" responsive="true">}} +{{< img src="logs/guide/aws-eks-fargate-logs-with-kinesis-data-firehose/log_streaming_diagram.png" alt="Fargate の EKS クラスターが Fluent Bit ログ ルーターを介してコンテナ ログを Amazon Data Firehose と AWS 内の S3 バックアップ バケットに送信し、その後 Datadog へ転送するログ フローの図" responsive="true">}} -### Amazon Data Firehose and CloudWatch log forwarding +### Amazon Data Firehose と CloudWatch Log フォワーディング -The following are key differences between using Amazon Data Firehose and CloudWatch log forwarding. +以下は、Amazon Data Firehose と CloudWatch Log フォワーディングを使用した場合の主な違いです。 -- **Metadata and tagging**: Metadata, such as Kubernetes namespace and container ID, are accessible as structured attributes when sending logs with Amazon Data Firehose. +- **メタ データとタグ付け**: Kubernetes 名前空間 や コンテナ ID などのメタ データは、Amazon Data Firehose でログを送信するときに構造化属性として利用できます。 -- **AWS Costs**: AWS Costs may vary for individual use cases but Amazon Data Firehose ingestion is generally less expensive than comparable Cloudwatch Log ingestion. +- **AWS コスト**: AWS コスト はユース ケースによって異なりますが、Amazon Data Firehose での取り込みは、同等の CloudWatch Log 取り込みよりも一般的に安価です。 ## 要件 1. [`kubectl`][6] と [`aws`][7] のコマンドラインツールを使用します。 @@ -32,17 +35,17 @@ The following are key differences between using Amazon Data Firehose and CloudWa ## セットアップ -The following steps outline the process for sending logs from a sample application deployed on an EKS cluster through Fluent Bit and an Amazon Data Firehose delivery stream to Datadog. To maximize consistency with standard Kubernetes tags in Datadog, instructions are included to remap selected attributes to tag keys. +以下の手順では、EKS クラスターにデプロイしたサンプル アプリケーションから Fluent Bit と Amazon Data Firehose デリバリー ストリームを経由して Datadog にログを送信するプロセスを説明します。Datadog における標準 Kubernetes タグとの一貫性を最大化するため、選択した属性をタグ キーへリマップする手順も含まれています。 -1. [Create an Amazon Data Firehose delivery stream](#create-an-amazon-data-firehose-delivery-stream) that delivers logs to Datadog, along with an S3 Backup for any failed log deliveries. +1. [Amazon Data Firehose デリバリー ストリームの作成](#create-an-amazon-data-firehose-delivery-stream) — ログを Datadog に配信し、失敗したログ配信用に S3 バックアップも設定します。 2. [EKS Fargate で Fluent Bit for Firehose を構成しました。](#configure-fluent-bit-for-firehose-on-an-eks-fargate-cluster)。 3. [サンプルアプリケーションをデプロイします](#deploy-a-sample-application)。 4. Kubernetes タグと `container_id` タグを使った相関のために、[リマッパープロセッサーの適用](#remap-attributes-for-log-correlation)を行います。 -### Create an Amazon Data Firehose delivery stream +### Amazon Data Firehose デリバリー ストリームを作成する -See the [Send AWS Services Logs with the Datadog Amazon Data Firehose Destination][4] guide to set up an Amazon Data Firehose Delivery stream. -**Note**: Set the **Source** as `Direct PUT`. +[Datadog Amazon Data Firehose 宛先を使用して AWS サービスのログを送信する][4]ガイドを参照して、Amazon Data Firehose デリバリー ストリームをセットアップしてください。 +**注**: **Source** を `Direct PUT` に設定してください。 ### EKS Fargate クラスターで Fluent Bit for Firehose を構成する @@ -54,7 +57,7 @@ kubectl create namespace aws-observability 2. Fluent Bit 用の Kubernetes ConfigMap を以下のように `aws-logging-configmap.yaml` として作成します。配信ストリームの名前を代入してください。 -
For the new higher performance Kinesis Firehose plugin use the plugin name kinesis_firehose instead of amazon_data_firehose.
+
新しい高性能の Kinesis Firehose プラグインを使用する場合は、プラグイン名に kinesis_firehose を指定し、amazon_data_firehose の代わりに使用してください。
{{< code-block lang="yaml" filename="" disable_copy="false" collapsible="false" >}} apiVersion: v1 @@ -87,7 +90,7 @@ data: kubectl apply -f aws-logging-configmap.yaml {{< /code-block >}} -4. Create an IAM policy and attach it to the pod execution role to allow the log router running on AWS Fargate to write to the Amazon Data Firehose. You can use the example below, replacing the ARN in the **Resource** field with the ARN of your delivery stream, as well as specifying your region and account ID. +4. AWS Fargate 上で動作するログ ルーターが Amazon Data Firehose に書き込めるように、IAM ポリシーを作成して Pod 実行ロールにアタッチします。以下の例を使用し、**Resource** フィールドの ARN をご自分のデリバリー ストリームの ARN に置き換え、リージョンとアカウント ID も指定してください。 {{< code-block lang="json" filename="allow_firehose_put_permission.json" disable_copy="false" collapsible="false" >}} { @@ -129,7 +132,7 @@ aws iam create-policy \ ### サンプルアプリケーションをデプロイする -To generate logs and test the Amazon Data Firehose delivery stream, deploy a sample workload to your EKS Fargate cluster. +ログを生成して Amazon Data Firehose デリバリー ストリームをテストするため、EKS Fargate クラスターにサンプル ワークロードをデプロイします。 1. デプロイメントマニフェスト `sample-deployment.yaml` を作成します。 @@ -218,7 +221,7 @@ To generate logs and test the Amazon Data Firehose delivery stream, deploy a sam ... {{< /code-block >}} -4. Verify the logs are in Datadog. In the [Datadog Log Explorer][10], search for `@aws.firehose.arn:""`, replacing `` with your Amazon Data Firehose ARN, to filter for logs from the Amazon Data Firehose. +4. ログが Datadog に届いていることを確認します。[Datadog Log Explorer][10] で `@aws.firehose.arn:""` を検索し、`` をご自分の Amazon Data Firehose ARN に置き換えることで、Amazon Data Firehose からのログのみにフィルターできます。 {{< img src="logs/guide/aws-eks-fargate-logs-with-kinesis-data-firehose/log_verification.jpg" alt="Datadog ログエクスプローラーでの nginx ログ行の検証" responsive="true">}} diff --git a/content/ja/logs/guide/sending-events-and-logs-to-datadog-with-amazon-eventbridge-api-destinations.md b/content/ja/logs/guide/sending-events-and-logs-to-datadog-with-amazon-eventbridge-api-destinations.md index 469a7f9492e..89e84aafe68 100644 --- a/content/ja/logs/guide/sending-events-and-logs-to-datadog-with-amazon-eventbridge-api-destinations.md +++ b/content/ja/logs/guide/sending-events-and-logs-to-datadog-with-amazon-eventbridge-api-destinations.md @@ -6,6 +6,7 @@ further_reading: - link: /logs/guide/reduce_data_transfer_fees tag: ガイド text: データ転送料金を削減しながら Datadog にログを送信する方法 +site_support_id: amazon_event_bridge title: Amazon EventBridge API 宛先でイベントおよびログを Datadog へ送信 site_support_id: amazon_event_bridge --- @@ -16,7 +17,7 @@ Amazon EventBridge は、イベント駆動型アプリケーションの構築 始めるには、[Datadog アカウント][2]と [API キー][3]、[Amazon Eventbridge API 宛先][4]へのアクセスが必要です。 -### 構成 +### 設定 1. [Amazon の API 宛先を作成][5]文書のステップに従い、Datadog を API 宛先として追加します。 - キー名として `DD-API-KEY`、[Datadog API キー][3]を値として、API キー認証を使用します。 diff --git a/content/ja/network_monitoring/network_path/list_view.md b/content/ja/network_monitoring/network_path/list_view.md index 3dce90c02c4..dd25805209b 100644 --- a/content/ja/network_monitoring/network_path/list_view.md +++ b/content/ja/network_monitoring/network_path/list_view.md @@ -11,8 +11,6 @@ is_beta: true title: リストビュー --- -
Datadog Network Performance Monitoring 用 Network Path は、プレビュー版です。Datadog の担当者にご連絡の上、サインアップしてください。
- ## 概要 Network Path のリストビューは、さまざまなパスを探索するためのデフォルトビューです。 `hostname` や `service` などのソースでグループ化します。 diff --git a/content/ja/product_analytics/session_replay/browser/privacy_options.md b/content/ja/product_analytics/session_replay/browser/privacy_options.md new file mode 100644 index 00000000000..a73c7ea7655 --- /dev/null +++ b/content/ja/product_analytics/session_replay/browser/privacy_options.md @@ -0,0 +1,13 @@ +--- +description: セッションリプレイで利用可能なプライバシーコントロールとプライバシーオプションの設定方法について説明します。 +further_reading: +- link: /product_analytics/session_replay + tag: ドキュメント + text: セッション リプレイ +- link: https://www.datadoghq.com/blog/default-privacy-session-replay/ + tag: ブログ + text: セッションリプレイのデフォルトプライバシー設定によるユーザーデータの難読化 +title: セッションリプレイブラウザのプライバシーオプション +--- + +{{< include-markdown "real_user_monitoring/session_replay/browser/privacy_options" >}} \ No newline at end of file diff --git a/content/ja/quality_gates/explorer/_index.md b/content/ja/quality_gates/explorer/_index.md index 3d1637cc0d6..eb54679b58e 100644 --- a/content/ja/quality_gates/explorer/_index.md +++ b/content/ja/quality_gates/explorer/_index.md @@ -25,7 +25,7 @@ Quality Gates Explorer を使用すると、任意のタグを用いて複数の 左側にある **Quality Gates** パネルには、ゲートを検索するために使用できるデフォルトのファセットが一覧表示されます。 -| ファセット | 説明 | +| ファセット | 説明 | |-----------------|---------------------------------------------------------------| | ステータス | Quality Gate のステータス: `Passed` または `Failed` | | Gate ID | Quality Gate の ID | @@ -51,7 +51,7 @@ Quality Gate のデータはダッシュボードやノートブックでも利 左側にある **Quality Gates** パネルには、ルールの実行結果を検索するために使用できるデフォルトのファセットが一覧表示されます。 -| ファセット | 説明 | +| ファセット | 説明 | |-----------------|---------------------------------------------------------------| | ステータス | Quality Gate のステータス: `Passed` または `Failed` | | Rule Name | 特定のルールを識別するためのユーザー指定の名前 | @@ -89,7 +89,7 @@ Quality Gate ルールのデータは、[ダッシュボード][102]や[ノー - **Quality Gate の実行結果におけるトレンドやパターンの把握**: どのリポジトリやパイプラインが最も頻繁にブロックされているかを確認 - **Quality Gate ルール実行結果におけるトレンドやパターンの把握**: 組織全体でどの種類のルールが最も頻繁に失敗しているかを確認 -## 視覚化 +## 可視化 フィルターや集計結果の可視化を選択して、品質ゲートまたはルール実行結果をより深く理解しましょう。たとえば、ゲートの結果をリスト形式で表示し、列にデータを整理したり、時系列グラフで表示して時間経過に伴うゲートの実行データを測定したりできます。 diff --git a/content/ja/quality_gates/guide/_index.md b/content/ja/quality_gates/guide/_index.md new file mode 100644 index 00000000000..ee580d652ab --- /dev/null +++ b/content/ja/quality_gates/guide/_index.md @@ -0,0 +1,14 @@ +--- +cascade: + algolia: + category: ガイド + rank: 20 + subcategory: Quality Gates ガイド +disable_toc: true +private: true +title: Quality Gates ガイド +--- + +{{< whatsnext desc="Quality Gates ガイド:" >}} + {{< nextlink href="/quality_gates/guide/understanding_rule_scopes" >}}ルールスコープの仕組みを理解する{{< /nextlink >}} +{{< /whatsnext >}} \ No newline at end of file diff --git a/content/ja/real_user_monitoring/session_replay/mobile/privacy_options.md b/content/ja/real_user_monitoring/session_replay/mobile/privacy_options.md deleted file mode 100644 index d5def8f7f13..00000000000 --- a/content/ja/real_user_monitoring/session_replay/mobile/privacy_options.md +++ /dev/null @@ -1,698 +0,0 @@ ---- -aliases: null -description: モバイルセッションリプレイのプライバシーオプションの構成 -further_reading: -- link: /real_user_monitoring/session_replay/mobile - tag: ドキュメント - text: モバイルセッションリプレイ -- link: /real_user_monitoring/session_replay/mobile/app_performance - tag: ドキュメント - text: モバイルセッションリプレイがアプリのパフォーマンスに与える影響 -- link: /real_user_monitoring/session_replay/mobile/setup_and_configuration - tag: ドキュメント - text: モバイルセッションリプレイの設定と構成 -- link: /real_user_monitoring/session_replay/mobile/troubleshooting - tag: ドキュメント - text: モバイルセッションリプレイのトラブルシューティング -- link: /real_user_monitoring/session_replay - tag: ドキュメント - text: セッションリプレイ -title: モバイルセッションリプレイのプライバシーオプション ---- - -## 概要 - -セッションリプレイは、あらゆる規模の組織が機密データや個人データを公開しないよう、プライバシーコントロールを提供します。データは Datadog が管理するクラウドインスタンスに保存され、静止時には暗号化されます。 - -セッションリプレイのデフォルトのプライバシー オプションは、エンドユーザーのプライバシーを保護し、重要な組織情報が収集されるのを防ぎます。 - -モバイルセッションリプレイを有効にすることで、RUM モバイル SDK を通じて記録される機密要素を自動的にマスクすることができます。データがマスクされると、そのデータは Datadog の SDK によって元の形で収集されないため、バックエンドに送信されることはありません。 - -## きめ細かいマスキング -以下のマスキングモードを使用すると、アプリケーションごとにデフォルト設定を上書きできます。マスキングはきめ細かく制御できるため、テキストや入力内容、画像、タッチ操作などそれぞれ個別にオーバーライドして、ニーズに合わせたカスタム設定を行うことができます。 - -### テキストと入力のマスキング - -デフォルトでは、すべてのデータに対して `mask_all` 設定が有効になっています。この設定が有効な場合、画面上のすべてのテキストや入力内容が以下のようにマスクされます。 - -{{< img src="real_user_monitoring/session_replay/mobile/masking-mode-mask-all-2.png" alt="`mask` が有効な場合のアプリケーション画面の表示例。" style="width:50%;">}} - -#### センシティブ入力をマスクする -`mask_sensitive_inputs` 設定を有効にすると、パスワードフィールドなどセンシティブと見なされるものを除き、すべてのテキストと入力内容が表示されます。 - -{{< tabs >}} -{{% tab "Android" %}} -{{< code-block lang="kotlin" filename="application.kt" disable_copy="false" collapsible="true" >}} - - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setTextAndInputPrivacy(TextAndInputPrivacy.MASK_SENSITIVE_INPUTS) - .build() - SessionReplay.enable(sessionReplayConfig) - -{{< /code-block >}} -{{% /tab %}} -{{% tab "iOS" %}} -{{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - - let sessionReplayConfig = SessionReplay.Configuration( - replaySampleRate: sampleRate, - textAndInputPrivacyLevel: .maskSensitiveInputs, - imagePrivacyLevel: imagePrivacyLevel, - touchPrivacyLevel: touchPrivacyLevel - ) - SessionReplay.enable(with: sessionReplayConfig) - -{{< /code-block >}} -{{% /tab %}} -{{% tab "React Native" %}} -{{< code-block lang="typescript" filename="App.tsx" disable_copy="false" collapsible="true" >}} - import { - SessionReplay, - SessionReplayConfiguration, - TextAndInputPrivacyLevel, - } from "@datadog/mobile-react-native-session-replay"; - - const config: SessionReplayConfiguration = { - replaySampleRate: sampleRate, - textAndInputPrivacyLevel: TextAndInputPrivacyLevel.MASK_SENSITIVE_INPUTS, - } - - SessionReplay.enable(config) - -{{< /code-block >}} -{{% /tab %}} -{{< /tabs >}} - -#### すべての入力欄をマスクする -`mask_all_inputs` 設定を有効にすると、リプレイ中であらゆる入力欄がマスクされます。 - -{{< tabs >}} -{{% tab "Android" %}} -{{< code-block lang="kotlin" filename="application.kt" disable_copy="false" collapsible="true" >}} - - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setTextAndInputPrivacy(TextAndInputPrivacy.MASK_ALL_INPUTS) - .build() - SessionReplay.enable(sessionReplayConfig) - -{{< /code-block >}} -{{% /tab %}} -{{% tab "iOS" %}} -{{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - - let sessionReplayConfig = SessionReplay.Configuration( - replaySampleRate: sampleRate, - textAndInputPrivacyLevel: .maskAllInputs, - imagePrivacyLevel: imagePrivacyLevel, - touchPrivacyLevel: touchPrivacyLevel - ) - SessionReplay.enable(with: sessionReplayConfig) - -{{< /code-block >}} -{{% /tab %}} -{{% tab "React Native" %}} -{{< code-block lang="typescript" filename="App.tsx" disable_copy="false" collapsible="true" >}} - import { - SessionReplay, - SessionReplayConfiguration, - TextAndInputPrivacyLevel, - } from "@datadog/mobile-react-native-session-replay"; - - const config: SessionReplayConfiguration = { - replaySampleRate: sampleRate, - textAndInputPrivacyLevel: TextAndInputPrivacyLevel.MASK_ALL_INPUTS, - } - - SessionReplay.enable(config) - -{{< /code-block >}} -{{% /tab %}} -{{< /tabs >}} - -#### すべてマスク -`mask_all` 設定を有効にすると、リプレイ上ですべてのテキストや入力欄がマスクされます。 - -{{< tabs >}} -{{% tab "Android" %}} -{{< code-block lang="kotlin" filename="application.kt" disable_copy="false" collapsible="true" >}} - - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setTextAndInputPrivacy(TextAndInputPrivacy.MASK_ALL) - .build() - SessionReplay.enable(sessionReplayConfig) - -{{< /code-block >}} -{{% /tab %}} -{{% tab "iOS" %}} -{{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - - let sessionReplayConfig = SessionReplay.Configuration( - replaySampleRate: sampleRate, - textAndInputPrivacyLevel: .maskAll, - imagePrivacyLevel: imagePrivacyLevel, - touchPrivacyLevel: touchPrivacyLevel - ) - SessionReplay.enable(with: sessionReplayConfig) - -{{< /code-block >}} -{{% /tab %}} -{{% tab "React Native" %}} -{{< code-block lang="typescript" filename="App.tsx" disable_copy="false" collapsible="true" >}} - import { - SessionReplay, - SessionReplayConfiguration, - TextAndInputPrivacyLevel, - } from "@datadog/mobile-react-native-session-replay"; - - const config: SessionReplayConfiguration = { - replaySampleRate: sampleRate, - textAndInputPrivacyLevel: TextAndInputPrivacyLevel.MASK_ALL, - } - - SessionReplay.enable(config) - -{{< /code-block >}} -{{% /tab %}} -{{< /tabs >}} - -### 画像のマスキング - -デフォルトでは、すべての画像に対して `mask_all` 設定が有効になっています。この設定が有効な場合、画面上のすべての画像がマスクされます。 - -#### すべての画像をマスクする -`mask_all` 設定が有効な場合、リプレイ上ではすべての画像が「Image」と表示されるプレースホルダーに置き換えられます。 - -{{< img src="real_user_monitoring/session_replay/mobile/masking-image-mask-all.png" alt="`mask-all` が有効な場合のアプリ画面例" style="width:50%;">}} - -{{< tabs >}} -{{% tab "Android" %}} -{{< code-block lang="kotlin" filename="application.kt" disable_copy="false" collapsible="true" >}} - - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setImagePrivacy(ImagePrivacy.MASK_ALL) - .build() - SessionReplay.enable(sessionReplayConfig) - -{{< /code-block >}} -{{% /tab %}} -{{% tab "iOS" %}} -{{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - - let sessionReplayConfig = SessionReplay.Configuration( - replaySampleRate: sampleRate, - textAndInputPrivacyLevel: textAndInputPrivacyLevel, - imagePrivacyLevel: .maskAll, - touchPrivacyLevel: touchPrivacyLevel - ) - SessionReplay.enable(with: sessionReplayConfig) - -{{< /code-block >}} -{{% /tab %}} -{{% tab "React Native" %}} -{{< code-block lang="typescript" filename="App.tsx" disable_copy="false" collapsible="true" >}} - import { - SessionReplay, - SessionReplayConfiguration, - ImagePrivacyLevel, - } from "@datadog/mobile-react-native-session-replay"; - - const config: SessionReplayConfiguration = { - replaySampleRate: sampleRate, - imagePrivacyLevel: ImagePrivacyLevel.MASK_ALL, - } - - SessionReplay.enable(config) - -{{< /code-block >}} -{{% /tab %}} -{{< /tabs >}} - -#### コンテンツ画像をマスクする -システム画像を表示したままコンテンツをマスクしたい場合、以下の設定を選択できます。 - -iOS: `mask_non_bundled_only` 設定を使用すると、システムの一部ではないすべての画像が「Content Image」というプレースホルダーに置き換えられます。 - -Android: `mask_large_only` 設定を使用すると、100x100dp を超えるサイズの画像のみが「Content Image」というプレースホルダーに置き換えられます。 - -**注**: ここでの寸法はビューのサイズではなく、drawable リソースのサイズを指します。 - -{{< tabs >}} - -{{% tab "Android" %}} -{{< img src="real_user_monitoring/session_replay/mobile/masking-image-mask-large-only.png" alt="Android で `mask_large_only` が有効な場合のアプリ画面例" style="width:50%;">}} - - -{{< code-block lang="kotlin" filename="application.kt" disable_copy="false" collapsible="true" >}} - - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setImagePrivacy(ImagePrivacy.MASK_LARGE_ONLY) - .build() - SessionReplay.enable(sessionReplayConfig) - -{{< /code-block >}} - -{{< /tab >}} - - -{{% tab "iOS" %}} - -{{< img src="real_user_monitoring/session_replay/mobile/masking-image-mask-non-bundled-only.png" alt="iOS で `mask_non_bundled_only` が有効な場合のアプリ画面例" style="width:50%;">}} - -{{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - - let sessionReplayConfig = SessionReplay.Configuration( - replaySampleRate: sampleRate, - textAndInputPrivacyLevel: textAndInputPrivacyLevel, - imagePrivacyLevel: .maskNonBundledOnly, - touchPrivacyLevel: touchPrivacyLevel - ) - SessionReplay.enable(with: sessionReplayConfig) - -{{< /code-block >}} -{{% /tab %}} -{{% tab "React Native" %}} -{{< code-block lang="typescript" filename="App.tsx" disable_copy="false" collapsible="true" >}} - import { - SessionReplay, - SessionReplayConfiguration, - ImagePrivacyLevel, - } from "@datadog/mobile-react-native-session-replay"; - - const config: SessionReplayConfiguration = { - replaySampleRate: sampleRate, - imagePrivacyLevel: ImagePrivacyLevel.MASK_NON_BUNDLED_ONLY, - } - - SessionReplay.enable(config) - -{{< /code-block >}} -{{% /tab %}} -{{< /tabs >}} - -#### すべての画像を表示する -`mask_none` 設定が有効になると、リプレイで表示されるすべての画像がマスクされずにそのまま表示されます。 - -{{< tabs >}} -{{% tab "Android" %}} -{{< code-block lang="kotlin" filename="application.kt" disable_copy="false" collapsible="true" >}} - - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setImagePrivacy(ImagePrivacy.MASK_NONE) - .build() - SessionReplay.enable(sessionReplayConfig) - -{{< /code-block >}} -{{% /tab %}} -{{% tab "iOS" %}} -{{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - - let sessionReplayConfig = SessionReplay.Configuration( - replaySampleRate: sampleRate, - textAndInputPrivacyLevel: textAndInputPrivacyLevel, - imagePrivacyLevel: .maskNone, - touchPrivacyLevel: touchPrivacyLevel - ) - SessionReplay.enable(with: sessionReplayConfig) - -{{< /code-block >}} -{{% /tab %}} -{{% tab "React Native" %}} -{{< code-block lang="typescript" filename="App.tsx" disable_copy="false" collapsible="true" >}} - import { - SessionReplay, - SessionReplayConfiguration, - ImagePrivacyLevel, - } from "@datadog/mobile-react-native-session-replay"; - - const config: SessionReplayConfiguration = { - replaySampleRate: sampleRate, - imagePrivacyLevel: ImagePrivacyLevel.MASK_NONE, - } - - SessionReplay.enable(config) - -{{< /code-block >}} -{{% /tab %}} -{{< /tabs >}} - -### タッチのマスキング -デフォルトでは、すべてのタッチに対して `hide` 設定が有効になっています。この設定が有効な場合、画面上で行われるすべてのタッチが非表示になります。 - -#### すべてのタッチを非表示にする -`hide` 設定が有効な場合、リプレイ中に発生するすべてのタッチが非表示になります。これがデフォルトの設定です。 - -{{< tabs >}} -{{% tab "Android" %}} -{{< code-block lang="kotlin" filename="application.kt" disable_copy="false" collapsible="true" >}} - - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setTouchPrivacy(TouchPrivacy.HIDE) - .build() - SessionReplay.enable(sessionReplayConfig) - -{{< /code-block >}} -{{% /tab %}} -{{% tab "iOS" %}} -{{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - - let sessionReplayConfig = SessionReplay.Configuration( - replaySampleRate: sampleRate, - textAndInputPrivacyLevel: textAndInputPrivacyLevel, - imagePrivacyLevel: imagePrivacyLevel, - touchPrivacyLevel: .hide - ) - SessionReplay.enable(with: sessionReplayConfig) - -{{< /code-block >}} -{{% /tab %}} -{{% tab "React Native" %}} -{{< code-block lang="typescript" filename="App.tsx" disable_copy="false" collapsible="true" >}} - import { - SessionReplay, - SessionReplayConfiguration, - TouchPrivacyLevel, - } from "@datadog/mobile-react-native-session-replay"; - - const config: SessionReplayConfiguration = { - replaySampleRate: sampleRate, - touchPrivacyLevel: TouchPrivacyLevel.HIDE, - } - - SessionReplay.enable(config) - -{{< /code-block >}} -{{% /tab %}} -{{< /tabs >}} - -#### すべてのタッチを表示する -`show` 設定が有効な場合、リプレイ中に発生するすべてのタッチが表示されます。 - -{{< tabs >}} -{{% tab "Android" %}} -{{< code-block lang="kotlin" filename="application.kt" disable_copy="false" collapsible="true" >}} - - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setTouchPrivacy(TouchPrivacy.SHOW) - .build() - SessionReplay.enable(sessionReplayConfig) - -{{< /code-block >}} -{{% /tab %}} -{{% tab "iOS" %}} -{{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - - let sessionReplayConfig = SessionReplay.Configuration( - replaySampleRate: sampleRate, - textAndInputPrivacyLevel: textAndInputPrivacyLevel, - imagePrivacyLevel: imagePrivacyLevel, - touchPrivacyLevel: .show - ) - SessionReplay.enable(with: sessionReplayConfig) - -{{< /code-block >}} -{{% /tab %}} -{{% tab "React Native" %}} -{{< code-block lang="typescript" filename="App.tsx" disable_copy="false" collapsible="true" >}} - import { - SessionReplay, - SessionReplayConfiguration, - TouchPrivacyLevel, - } from "@datadog/mobile-react-native-session-replay"; - - const config: SessionReplayConfiguration = { - replaySampleRate: sampleRate, - touchPrivacyLevel: TouchPrivacyLevel.SHOW, - } - - SessionReplay.enable(config) - -{{< /code-block >}} -{{% /tab %}} -{{< /tabs >}} - -## プライバシーオーバーライド - -前述のセクションでは、アプリケーション全体に適用されるグローバルなマスキングレベルについて説明しました。しかし、これらの設定はビュー単位でもオーバーライドが可能です。テキストと入力、画像、タッチ操作に対しては先ほどと同じプライバシーレベルが使用でき、さらに特定のビューを完全に非表示にする設定も追加されています。 - -オーバーライドを正しく認識させるためには、ビューのライフサイクルで可能な限り早い段階で適用する必要があります。そうすることで、Session Replay がオーバーライドの適用前にビューを処理してしまう事態を防げます。 - -プライバシーオーバーライドは、指定したビューおよびその子孫ビューに影響します。つまり、仮に画像オーバーライドをテキスト入力ビューに適用しても、実際にはすべての子ビューに対して有効となります。 - -オーバーライドは「最も近い親」の設定に従って動作します。もしビュー自体にオーバーライドがあればその設定が使われ、なければ階層内で最も近い親のオーバーライドを継承します。もし親にも設定がなければ、アプリケーション全体のマスキングレベルが適用されます。 - -
SwiftUI ではプライバシーオーバーライドをサポートしていません。
- - -### テキストと入力のオーバーライド - -{{< tabs >}} -{{% tab "Android" %}} - -テキストと入力のプライバシーをオーバーライドするには、対象のビューインスタンスで `setSessionReplayTextAndInputPrivacy` を呼び出し、`TextAndInputPrivacy` 列挙体の値を渡します。`null` を渡すとオーバーライドが解除されます。 - -{{< code-block lang="kotlin" filename="application.kt" disable_copy="false" collapsible="true" >}} - // ビューにテキストと入力のオーバーライドを設定 - myView.setSessionReplayTextAndInputPrivacy(TextAndInputPrivacy.MASK_SENSITIVE_INPUTS) - // ビューから画像オーバーライドを削除 - myView.setSessionReplayTextAndInputPrivacy(null) -{{< /code-block >}} -{{% /tab %}} - -{{% tab "iOS" %}} - -テキストと入力のプライバシーをオーバーライドするには、対象のビューインスタンスで `dd.sessionReplayOverrides.textAndInputPrivacy` を設定し、`TextAndInputPrivacyLevel` 列挙体の値を指定します。`nil` を設定するとオーバーライドが解除されます。 - -{{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - // ビューにテキストと入力のオーバーライドを設定 - myView.dd.sessionReplayOverrides.textAndInputPrivacy = .maskSensitiveInputs - // ビューから画像オーバーライドを削除 - myView.dd.sessionReplayOverrides.textAndInputPrivacy = nil -{{< /code-block >}} -{{% /tab %}} -{{< /tabs >}} - -### 画像のオーバーライド - -{{< tabs >}} -{{% tab "Android" %}} - -画像のプライバシーをオーバーライドするには、対象のビューインスタンスで `setSessionReplayImagePrivacy` を呼び出し、`ImagePrivacy` 列挙体の値を渡します。`null` を渡すとオーバーライドが解除されます。 - -{{< code-block lang="kotlin" filename="application.kt" disable_copy="false" collapsible="true" >}} - // ビューに画像オーバーライドを設定 - myView.setSessionReplayImagePrivacy(ImagePrivacy.MASK_ALL) - // ビューから画像オーバーライドを削除 - myView.setSessionReplayImagePrivacy(null) -{{< /code-block >}} -{{% /tab %}} - -{{% tab "iOS" %}} - -画像のプライバシーをオーバーライドするには、対象のビューインスタンスで `dd.sessionReplayOverrides.imagePrivacy` を設定し、`ImagePrivacyLevel` 列挙体の値を指定します。`nil` を設定するとオーバーライドが解除されます。 - -{{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - // ビューに画像オーバーライドを設定 - myView.dd.sessionReplayOverrides.imagePrivacy = .maskAll - // ビューから画像オーバーライドを削除 - myView.dd.sessionReplayOverrides.imagePrivacy = nil -{{< /code-block >}} -{{% /tab %}} -{{< /tabs >}} - -### タッチのオーバーライド - -{{< tabs >}} -{{% tab "Android" %}} - -タッチのプライバシーをオーバーライドするには、対象のビューインスタンスで `setSessionReplayTouchPrivacy` を呼び出し、`TouchPrivacy` 列挙体の値を渡します。`null` を渡すとオーバーライドが解除されます。 - -{{< code-block lang="kotlin" filename="application.kt" disable_copy="false" collapsible="true" >}} - // ビューにタッチオーバーライドを設定 - view.setSessionReplayTouchPrivacy(TouchPrivacy.HIDE) - // ビューからタッチオーバーライドを削除 - view.setSessionReplayTouchPrivacy(null) -{{< /code-block >}} -{{% /tab %}} - -{{% tab "iOS" %}} - -タッチのプライバシーをオーバーライドするには、対象のビューインスタンスで `dd.sessionReplayOverrides.touchPrivacy` を設定し、`TouchPrivacyLevel` 列挙体の値を指定します。`nil` を設定するとオーバーライドが解除されます。 - -{{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - // ビューにタッチオーバーライドを設定 - myView.dd.sessionReplayOverrides.touchPrivacy = .hide - // ビューからタッチオーバーライドを削除 - myView.dd.sessionReplayOverrides.touchPrivacy = nil -{{< /code-block >}} - -{{% /tab %}} -{{< /tabs >}} - -### 隠し要素のオーバーライド - -完全に非表示にする必要がある機密要素には、`hidden` 設定を使用します。 - -要素が `hidden` に設定されると、リプレイ上では「Hidden」というラベルのプレースホルダーに置き換えられ、その子ビューは記録されません。 - -**注**: ビューを `hidden` としてマークしても、その要素に対するタッチ操作の記録は防げません。タッチ操作も隠したい場合は、要素を `hidden` にするのに加えて[タッチのオーバーライド](#touch-override)も併用してください。 - -{{< tabs >}} -{{% tab "Android" %}} - -要素を非表示にするには、`setSessionReplayHidden(hide = true)` を使用します。`hide` を `false` に設定するとオーバーライドが解除されます。 - -{{< code-block lang="kotlin" filename="application.kt" disable_copy="false" collapsible="true" >}} - // ビューを非表示に設定 - myView.setSessionReplayHidden(hide = true) - // ビューからオーバーライドを削除 - myView.setSessionReplayHidden(hide = false) -{{< /code-block >}} - -{{% /tab %}} - -{{% tab "iOS" %}} -{{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - // ビューを非表示に設定 - myView.dd.sessionReplayOverrides.hide = true - // ビューからオーバーライドを削除 - myView.dd.sessionReplayOverrides.hide = false -{{< /code-block >}} - -**注**: `hidden` オーバーライドを `nil` に設定した場合は、`false` と同じ扱いになり、オーバーライドが無効化されます。 - -{{% /tab %}} -{{< /tabs >}} - -### WebView に関する注意点 - -- `hidden` と `touch` を除くプライバシーオーバーライドは、WebView ではサポートされていません。主に[ブラウザ SDK のプライバシー設定][1]を使用して管理してください。 - -- WebView を `hidden` としてマークした場合、リプレイ上ではプレースホルダーに置き換えられますが、WebView 自体はデータの収集と送信を継続します。これを避けるには、より細かい制御が可能な[ブラウザ SDK のプライバシー設定][1]を使用することを推奨します。 - - -## マスキングの対象データとその方法 - -このセクションでは、Datadog のレコーダーがデータの種類に基づきマスキングをどのように処理し、そのデータがどのように定義されるかを説明します。 - -### テストマスキング戦略 - -Datadog のマスキングルールでは、プライバシー設定の構成方法、テキストのタイプ、データの機密性に応じて、テキストフィールドのタイプごとに異なる戦略が適用されます。 - -| テキストのマスキング戦略 | 説明 | 例 | -|-----------------------|-------------|---------| -| マスクなし | セッションリプレイでテキストを表示 | `"Hello world"` → `"Hello world"` | -| スペース保持型マスク | 表示される各文字を小文字の "x" に置換 | `"Hello world"` → `"xxxxx xxxxx"` | -| 固定長マスク | テキストフィールド全体を 3 つのアスタリスク (***) から成る定数に置換 | `"Hello world"` → `"***"` - -上記のテキスト戦略を念頭に、コンフィギュレーションで `mask` のデフォルトのプライバシールールを上書きしたい場合は、いくつかのオプションがあります。 - -以下のチャートは、Datadog で、ユーザーが構成で設定したルールを使用して、各テキストタイプにどのようにテキストマスキング戦略が適用されるかを示しています。 - -| タイプ | すべて許可 | すべてマスク | ユーザー入力をマスク | -|------|-------------|------------|-------------------| -| [機密テキスト](#sensitive-text) | 固定長マスク | 固定長マスク | 固定長マスク | -| [入力・オプションテキスト](#input-and-option-text) | マスクなし | 固定長マスク | 固定長マスク | -| [静的テキスト](#static-text) | マスクなし | スペース保持型マスク | マスクなし | -| [ヒントテキスト](#hint-text) | マスクなし | 固定長マスク | マスクなし | - -### テキストのマスキングの定義 - -Datadog のレコーダーが各テキストタイプをどのように取り扱うかについては、以下の説明をご覧ください。 - -#### 機密テキスト -機密テキストには、プラットフォーム固有の方法で識別が施されたパスワード、メールアドレス、電話番号や、各プラットフォームで用意されている機密性を示すその他のテキスト形式が含まれます。 - -これには、以下のテキスト内のパスワード、メールアドレス、電話番号が含まれます。 - -- テキストフィールド (iOS) -- テキストビュー (iOS) -- 編集テキスト (Android) -- 住所情報 (iOS + Android) -- クレジットカード情報 (iOS) -- ワンタイムコード (iOS) - -#### 入力・オプションテキスト - -入力・オプションテキストとは、ユーザーがキーボードその他のテキスト入力デバイスを使って入力したテキスト、または選択要素内のカスタム (共通ではない) 値のことです。 - -以下のものが含まれます。 - -- ユーザーが以下で入力したテキスト - - テキストフィールド (iOS) - - テキストビュー (iOS) - - 編集テキスト (Android) -- ユーザーが以下で選択したオプション - - 値の選択ツール (iOS + Android) - - セグメント (iOS) - - ドロップダウンリスト (Android) -- 主な例外 - - テキストフィールド、テキストビュー、編集テキストのプレースホルダー (ヒント) テキスト (ユーザー入力したものではないテキスト) - - テキストビューの編集不可能なテキスト (iOS). - - 日付選択ツールの月、日、年のラベル (共通の値) - -#### 静的テキスト -静的テキストとは、ユーザーが直接入力したものではないテキストのことです。以下のものが含まれます。 - -以下のすべてのテキスト - -- チェックボックスおよびラジオボタンのタイトル (Android) -- 編集不可能なテキストビューのテキスト (iOS) -- 日時選択ツールの月、日、年のラベル -- スライダーの現在の値など、入力要素に対するジェスチャー操作に応じて更新された値 -- ラベル、タブバー、ナビゲーションバー (iOS)、タブ (Android) などの、「ユーザー入力要素」とは見なされていないその他のコントロール - -#### ヒントテキスト -ヒントテキストとは、値が一切与えられていないときに、編集可能なテキスト要素またはオプション選択ツールに表示される静的なテキストのことです。以下のものが含まれます。 - -- テキストフィールド (iOS)、テキストビュー (iOS) のプレースホルダー -- 編集テキストのヒント (Android) -- ドロップダウンリストの指示 (Android) - -### 概観のマスキング - -以下のチャートは、ユーザーが構成で設定したルールを使用して、各テキストタイプにどのように概観マスキング戦略が適用されるかを示しています。 - -| タイプ | すべて許可 | すべてマスク | ユーザー入力をマスク | -|------|-------------|------------|-------------------| -| [開示型の属性](#revealing-attributes) | | {{< X >}} | {{< X >}} | -| [その他の属性](#other-attributes) | | | | - -#### 開示型の属性 -開示型の属性とは、入力要素の値を明らかにし、または示唆し、ユーザーの入力内容や選択内容を推測するのに使用できる属性のことです。 - -以下のものが含まれます。 - -**形状** -- セグメントで選択されたオプションの背景 (iOS) -- 日付選択ツールで選択された日付を囲む円 (iOS) -- チェックボックスの選択マーク (Android) -- スライダーのつまみ (iOS および Android) - -**テキスト属性** -- iOS の Date Picker で選択された日付を表示するラベルの色 -- 値選択ツールの最初と最後のオプションの位置 (iOS および Android) - -### タッチインタラクション - -以下のチャートは、ユーザーが構成で設定したルールを使用して、各テキストタイプにどのようにタッチインタラクション戦略が適用されるかを示しています。スクリーンキーボード上で発生するインタラクションはすべてマスクされる一方、その他の要素とのインタラクションはマスクされません。 - -| タイプ | すべて許可 | すべてマスク | ユーザー入力をマスク | -|------|-------------|------------|-------------------| -| [その他の属性](#other-attributes) | | | | -| [スクリーンキーボード](#on-screen-keyboard) | {{< X >}} | {{< X >}} | {{< X >}} | - -### 画像のマスキング - -以下の表では、異なる画像マスキング戦略がどのように適用されるかを示しています。 - -| タイプ | Mask None | Mark Large Only (Android)
/ Mask Non Bundled Only (iOS) | Mask All -|----------------|-----------|---------------------------------------------------------------|---------| -| Content Image | Shown | Masked | Masked | -| System Image | Shown | Shown | Masked | - - -## 参考資料 - -{{< partial name="whats-next/whats-next.html" >}} - -[1]: /ja/real_user_monitoring/session_replay/privacy_options \ No newline at end of file diff --git a/content/ja/service_management/case_management/view_and_manage/_index.md b/content/ja/service_management/case_management/view_and_manage/_index.md index d6d5a9fcc53..33d94bf3c02 100644 --- a/content/ja/service_management/case_management/view_and_manage/_index.md +++ b/content/ja/service_management/case_management/view_and_manage/_index.md @@ -6,12 +6,6 @@ further_reading: title: ケースの表示と管理 --- -{{% site-region region="gov,ap1" %}} -
-Case Management は現在、{{< region-param key=dd_datacenter code="true" >}} サイトでは利用できません。 -
-{{% /site-region %}} - ## 概要 {{< img src="/service_management/case_management/view_and_manage/view_and_manage_overview_cropped.png" alt="すべてのケースを表示し、ステータスを選択でき、アサインされたメンバーが表示されているケース管理ページ" style="width:100%;" >}} diff --git a/content/ja/service_management/incident_management/notification.md b/content/ja/service_management/incident_management/notification.md new file mode 100644 index 00000000000..c9d8d0c678a --- /dev/null +++ b/content/ja/service_management/incident_management/notification.md @@ -0,0 +1,58 @@ +--- +further_reading: +- link: /service_management/incident_management/incident_settings + tag: ドキュメント + text: Incident Settings で通知をカスタマイズする +- link: /monitors/notify/variables/?tab=is_alert + tag: ドキュメント + text: モニター通知変数 +title: インシデント通知 +--- + +## 概要 + +インシデントに関するすべてのステークホルダーへの通知は、インシデントの **Notifications タブ** に集約されます。このページから通知を手動で作成し、下書きとして保存し、直接送信できます。該当インシデントに対して[通知ルール][1]から送信された自動通知もこのセクションに表示されます。 + +## 通知を追加 + +手動通知を作成するには: +1. インシデントの **Notifications タブ** に移動します。 +1. セクション右上の **+ New Notification** ボタンをクリックします。 +1. 通知先を入力します。これには、メール、Slack チャネル、PagerDuty ハンドル、Webhook など、Datadog がサポートするあらゆる通知ハンドルを指定できます。 +1. [メッセージ テンプレート](#message-template)を選択します。 +1. Markdown と `{{` を入力して使用可能なインシデント テンプレート変数を利用し、通知のタイトルとメッセージを編集します。 + - [テンプレート変数][2]はインシデントのプロパティに基づきます。メッセージが送信される前に、すべてのテンプレート変数は、送信時にメッセージで利用可能な参照先プロパティの値に置き換えられます。 +1. `{{incident.created}}` 変数を使用してメッセージのタイムゾーンをカスタマイズできます。このテンプレート変数では、タイムゾーンを設定するオプションが表示されます。 +1. 通知を送信するか、下書きとして保存します。 + +## すべての通知を表示 + +{{< img src="/service_management/incidents/notification/incident_notifications_sent.png" alt="Notifications タブに表示される送信済メッセージの例一覧" style="width:90%;" >}} + +インシデントの **Notifications タブ** では、通知が **Drafts** と **Sent** に分類されます。両リストには次の情報が表示されます: +- 通知の (予定された) 受信者 +- 通知メッセージおよび送信済みの再通知メッセージの内容 +- 通知が最後に更新された日時 +- 通知の作成者 + +**Sent** リストには、通知が手動で送信されたか、[通知ルール](#customizable-rules)によって自動送信されたかも表示されます。自動通知の場合は、トリガーとなったルールが表示されます。 + +## 通知ルールをカスタマイズする + +通知ルールを使用すると、インシデントの条件に基づいてステークホルダーに自動通知できます。一致条件には、インシデントの重大度、影響を受けるサービス、ステータス、根本原因カテゴリ、特定リソース名などがあります。例えば、SEV‑1 インシデントが発生するたびにリーダーシップ チームにメールで自動通知するルールを設定できます。このルールにより、インシデントを宣言する担当者は、シナリオごとに関与すべき相手を把握しておく必要がありません。 + +新しい通知ルールの設定方法については、[インシデント設定][1]のドキュメントを参照してください。 + +## メッセージ テンプレート + +メッセージ テンプレートは、[手動インシデント通知](#add-a-notification)や自動[通知ルール](#customize-notification-rules)で利用できる、動的かつ再利用可能なメッセージです。`{{incident.severity}}` などのテンプレート変数を使用して、通知対象インシデントの対応する値を動的に挿入します。メッセージ テンプレートは Markdown をサポートしているため、インシデント通知にテキストの書式設定、テーブル、インデント付きリスト、ハイパーリンクを含めることができます。テンプレート変数はメッセージのタイトルと本文の両方で使用できます。 + +メッセージ テンプレートの作成方法については、[インシデント設定][3]のドキュメントを参照してください。 + +## 参考資料 + +{{< partial name="whats-next/whats-next.html" >}} + +[1]: /ja/service_management/incident_management/incident_settings/notification_rules +[2]: /ja/monitors/notify/variables/?tab=is_alert +[3]: /ja/service_management/incident_management/incident_settings/templates \ No newline at end of file diff --git a/content/ja/tracing/trace_collection/custom_instrumentation/ios/otel.md b/content/ja/tracing/trace_collection/custom_instrumentation/ios/otel.md new file mode 100644 index 00000000000..602efcae9f6 --- /dev/null +++ b/content/ja/tracing/trace_collection/custom_instrumentation/ios/otel.md @@ -0,0 +1,330 @@ +--- +aliases: +- /ja/tracing/trace_collection/otel_instrumentation/ios/ +- /ja/tracing/trace_collection/custom_instrumentation/otel_instrumentation/ios +description: OpenTelemetry API で iOS / tvOS アプリをインスツルメントして、トレースを Datadog に送信します。 +further_reading: +- link: tracing/glossary/ + tag: ドキュメント + text: サービス、リソース、トレースの詳細 +- link: /opentelemetry/guide/otel_api_tracing_interoperability + tag: ドキュメント + text: OpenTelemetry API と Datadog でインスツルメントされたトレースの相互運用性 +title: OpenTelemetry API を使用した iOS と tvOS のカスタム インスツルメンテーション +--- + +{{% otel-custom-instrumentation-lang %}} + +## 要件と制限 + +- iOS / tvOS 向け DatadogTrace バージョン 2.12.0 以上が必要です。 + + +## OpenTelemetry による iOS アプリのトレーシング + +1. ご利用のパッケージ マネージャーに応じてライブラリを依存関係として宣言してください。推奨は Swift Package Manager (SPM) です。 + +{{< tabs >}} +{{% tab "Swift Package Manager (SPM)" %}} + +Apple の Swift Package Manager を使用して統合するには、`Package.swift` に以下を依存関係として追加します。 +```swift +.package(url: "https://github.com/Datadog/dd-sdk-ios.git", .upToNextMajor(from: "2.0.0")) +``` + +プロジェクトで、以下のライブラリをリンクします。 +``` +DatadogCore +DatadogTrace +``` + +{{% /tab %}} +{{% tab "CocoaPods" %}} + +[CocoaPods][1] を使用して、`dd-sdk-ios` をインストールできます。 + +``` +pod 'DatadogCore' +pod 'DatadogTrace' +``` + +[1]: https://cocoapods.org/ + +{{% /tab %}} +{{% tab "Carthage" %}} + +[Carthage][1] を使用して、`dd-sdk-ios` をインストールできます。 + +``` +github "DataDog/dd-sdk-ios" +``` + +Xcode で、以下のフレームワークをリンクします。 +``` +OpenTelemetryApi.xcframework +DatadogInternal.xcframework +DatadogCore.xcframework +DatadogTrace.xcframework +``` + +[1]: https://github.com/Carthage/Carthage + +{{% /tab %}} +{{< /tabs >}} + +2. アプリケーション コンテキストと [Datadog クライアント トークン][9]を使用してライブラリを初期化します。セキュリティ上の理由から、必ずクライアント トークンを使用してください。`dd-sdk-ios` ライブラリを [Datadog API キー][10]で設定すると、iOS アプリ IPA のバイト コードにクライアント サイドで露出してしまいます。 + +クライアント トークンの設定方法については、[クライアント トークンのドキュメント][11]を参照してください。 + +{{< site-region region="us" >}} +{{< tabs >}} +{{% tab "Swift" %}} + +```swift +import DatadogCore + +Datadog.initialize( + with: Datadog.Configuration( + clientToken: "", + env: "", + service: "" + ), + trackingConsent: trackingConsent +) +``` +{{% /tab %}} +{{< /tabs >}} +{{< /site-region >}} + +{{< site-region region="eu" >}} +{{< tabs >}} +{{% tab "Swift" %}} + +```swift +import DatadogCore + +Datadog.initialize( + with: Datadog.Configuration( + clientToken: "", + env: "", + site: .eu1, + service: "" + ), + trackingConsent: trackingConsent +) +``` +{{% /tab %}} +{{< /tabs >}} +{{< /site-region >}} + +{{< site-region region="us3" >}} +{{< tabs >}} +{{% tab "Swift" %}} + +```swift +import DatadogCore + +Datadog.initialize( + with: Datadog.Configuration( + clientToken: "", + env: "", + site: .us3, + service: "" + ), + trackingConsent: trackingConsent +) +``` +{{% /tab %}} +{{< /tabs >}} +{{< /site-region >}} + +{{< site-region region="us5" >}} +{{< tabs >}} +{{% tab "Swift" %}} + +```swift +import DatadogCore + +Datadog.initialize( + with: Datadog.Configuration( + clientToken: "", + env: "", + site: .us5, + service: "" + ), + trackingConsent: trackingConsent +) +``` +{{% /tab %}} +{{< /tabs >}} +{{< /site-region >}} + +{{< site-region region="gov" >}} +{{< tabs >}} +{{% tab "Swift" %}} + +```swift +import DatadogCore + +Datadog.initialize( + with: Datadog.Configuration( + clientToken: "", + env: "", + site: .us1_fed, + service: "" + ), + trackingConsent: trackingConsent +) +``` +{{% /tab %}} +{{< /tabs >}} +{{< /site-region >}} + +{{< site-region region="ap1" >}} +{{< tabs >}} +{{% tab "Swift" %}} + +```swift +import DatadogCore + +Datadog.initialize( + with: Datadog.Configuration( + clientToken: "", + env: "", + site: .ap1, + service: "" + ), + trackingConsent: trackingConsent +) +``` +{{% /tab %}} +{{< /tabs >}} +{{< /site-region >}} + +GDPR に準拠するため、SDK は初期化時に `trackingConsent` 値が必要です。 +`trackingConsent` には、次のいずれかの値を設定できます: + +- `.pending`: - SDK はデータの収集とバッチ処理を開始しますが、Datadog へは送信しません。SDK はバッチ処理が完了したデータをどうするかについての新たな同意値が得られるまで待機します。 +- `.granted`: SDK はデータの収集を開始し、Datadog へ送信します。 +- `.notGranted`: SDK はデータを収集しません。ログ、トレース、RUM イベントは Datadog に送信されません。 + +SDK の初期化後に追跡同意値を変更するには、`Datadog.set(trackingConsent:)` API 呼び出しを使用します。 + +SDK は新しい値に応じて動作を変更します。例えば、現在の追跡に関する同意が `.pending` であった場合: + +- 値を `.granted` に変更すると、SDK は現在および将来のデータをすべて Datadog に送信します。 +- 値を `.notGranted` に変更すると、SDK は現在のデータをすべて消去し、今後のデータ収集を停止します。 + +Datadog にアップロードされる前に、データはクリア テキストのまま[アプリケーション サンドボックス][12]のキャッシュ ディレクトリ (`Library/Caches`) に保存されます。このキャッシュ ディレクトリは、デバイスにインストールされている他のアプリから読み取ることはできません。 + +アプリケーションを作成する際、開発ログを有効にし、提供されたレベルと同等以上の優先度を持つ SDK のすべての内部メッセージをコンソールにログ出力するようにしてください。 + +{{< tabs >}} +{{% tab "Swift" %}} +```swift +Datadog.verbosityLevel = .debug +``` +{{% /tab %}} +{{< /tabs >}} + +3. Datadog トレーサーは [Open Telemetry 標準][13]を実装しています。Datadog トレーサーを有効化し、トレーサー プロバイダを登録して、トレーサー インスタンスを取得します: + +{{< tabs >}} +{{% tab "Swift" %}} +```swift +import DatadogTrace +import OpenTelemetryApi + +Trace.enable( + with: Trace.Configuration( + networkInfoEnabled: true + ) +) + +OpenTelemetry.registerTracerProvider( + tracerProvider: OTelTracerProvider() +) + +let tracer = OpenTelemetry + .instance + .tracerProvider + .get(instrumentationName: "", instrumentationVersion: nil) +``` +{{% /tab %}} +{{< /tabs >}} + +4. OpenTelemetry API でコードをインスツルメントします: + +{{< tabs >}} +{{% tab "Swift" %}} +```swift +let span = tracer.spanBuilder(spanName: "").startSpan() +// 測定したいことをします ... +// ... そして、操作が終了したら: +span.end() +``` +{{% /tab %}} +{{< /tabs >}} + +5. (任意) スパン間の子親関係を設定します: + +{{< tabs >}} +{{% tab "Swift" %}} +```swift +let responseDecodingSpan = tracer.spanBuilder(spanName: "response decoding") + .setParent(networkRequestSpan) // `networkRequestSpan` の子にします + .startSpan() + +// ... HTTP レスポンスデータのデコード ... +responseDecodingSpan.end() +``` +{{% /tab %}} +{{< /tabs >}} + +6. (任意) スパンに追加属性を付与します: + +{{< tabs >}} +{{% tab "Swift" %}} +```swift +span.setAttribute(key: "http.url", value: url) +``` +{{% /tab %}} +{{< /tabs >}} + +7. (任意) スパンにエラーを添付します: + +{{< tabs >}} +{{% tab "Swift" %}} +```swift +span.status = .error(description: "Failed to decode response") +``` +{{% /tab %}} +{{< /tabs >}} + +8. (任意) スパンに Span リンクを追加します: + +{{< tabs >}} +{{% tab "Swift" %}} +```swift +let linkedSpan = tracer.spanBuilder(spanName: "linked span").startSpan() +linkedSpan.end() + +let spanWithLinks = tracer.spanBuilder(spanName: "span with links") + .addLink(spanContext: linkedSpan.context) + .startSpan() +spanWithLinks.end() +``` +{{% /tab %}} +{{< /tabs >}} + +[1]: https://opentelemetry.io/docs/concepts/signals/traces/#span-links +[2]: https://opentelemetry.io/docs/concepts/signals/traces/#attributes +[3]: https://opentelemetry.io/docs/concepts/signals/traces/#span-events +[4]: https://opentelemetry.io/docs/reference/specification/trace/sdk/#span-processor +[5]: https://opentelemetry.io/docs/reference/specification/trace/sdk/#span-exporter +[6]: /ja/real_user_monitoring/correlate_with_other_telemetry/apm/?tab=browserrum#opentelemetry-support +[9]: /ja/account_management/api-app-keys/#client-tokens +[10]: /ja/account_management/api-app-keys/#api-keys +[11]: /ja/account_management/api-app-keys/#client-tokens +[12]: https://support.apple.com/en-gb/guide/security/sec15bfe098e/web +[13]: https://opentelemetry.io/docs/concepts/signals/traces/ \ No newline at end of file diff --git a/content/ko/account_management/guide/_index.md b/content/ko/account_management/guide/_index.md index 5a2ff5d297a..dd486138278 100644 --- a/content/ko/account_management/guide/_index.md +++ b/content/ko/account_management/guide/_index.md @@ -9,12 +9,13 @@ title: 계정 관리 가이드 --- {{< whatsnext desc="사용량 측정 API 마이그레이션 가이드:" >}} - {{< nextlink href="account_management/guide/hourly-usage-migration" >}}시간별 사용량 API v1에서 v2로 마이그레이션하기{{< /nextlink >}} - {{< nextlink href="account_management/guide/usage-attribution-migration" >}}사용량 속성 API v1에서 v2로 마이그레이션하기{{< /nextlink >}} - {{< nextlink href="account_management/guide/csv-headers-billing-migration" >}}2023년 9월 18일부터 적용되는 플랜 및 사용량 CSV 헤더 업데이트 사항{{< /nextlink >}} + {{< nextlink href="account_management/guide/relevant-usage-migration" >}}시간당 사용량 및 요약 사용량 API에서 인덱싱된 로그 및 RUM 마이그레이션{{< /nextlink >}} + {{< nextlink href="account_management/guide/hourly-usage-migration" >}}v1 시간당 사용량 API에서 v2로 마이그레이션{{< /nextlink >}} + {{< nextlink href="account_management/guide/usage-attribution-migration" >}}사용량 속성 API v1에서 v2로 마이그레이션{{< /nextlink >}} + {{< nextlink href="account_management/guide/csv-headers-billing-migration" >}}2023년 9월 18일부터 플랜 및 사용량 CSV 헤더 업데이트{{< /nextlink >}} {{< /whatsnext >}} {{< whatsnext desc="일반 계정 관리:" >}} {{< nextlink href="account_management/guide/manage-datadog-with-terraform" >}}Terraform으로 Datadog 관리{{< /nextlink >}} - {{< nextlink href="account_management/guide/access-your-support-ticket" >}}Support 티켓 액세스하기{{< /nextlink >}} + {{< nextlink href="account_management/guide/access-your-support-ticket" >}}지원 티켓에 액세스하기{{< /nextlink >}} {{< /whatsnext >}} \ No newline at end of file diff --git a/content/ko/account_management/org_settings/service_accounts.md b/content/ko/account_management/org_settings/service_accounts.md index 663c5a06c65..49f2f4d85d8 100644 --- a/content/ko/account_management/org_settings/service_accounts.md +++ b/content/ko/account_management/org_settings/service_accounts.md @@ -35,7 +35,7 @@ UI에서 서비스 계정에 액세스하려면 다음과 같이 하세요. - 생성 및 최종 수정 날짜 - 역할 - 애플리케이션 키 -- 권한 허용 +- 권한 ### 서비스 계정 생성 @@ -43,7 +43,7 @@ UI에서 서비스 계정에 액세스하려면 다음과 같이 하세요. 1. **New Service Account**을 클릭합니다. 대화 상자가 나타납니다. 2. 서비스 계정의 이름과 이메일 주소를 입력합니다. -3. **Assign Roles** 드롭다운 메뉴를 사용하여 서비스 계정에 대한 하나 이상의 역할을 선택합니다. +3. **Assign Roles** 드롭다운 메뉴를 사용하여 서비스 계정에 대한 하나 이상의 역할을 선택하세요. 4. 저장하려면 **Create Service Account**를 클릭합니다. Datadog 사용자의 이메일 주소와 달리 서비스 계정 이메일 주소는 조직 전체에서 독점적일 필요가 없습니다. @@ -54,9 +54,11 @@ Datadog 사용자의 이메일 주소와 달리 서비스 계정 이메일 주 1. 사이드 패널에서 서비스 계정 이름 옆에 있는 **Edit**를 클릭합니다. 대화 상자가 나타납니다. 2. 변경하려는 모든 필드를 업데이트하세요. 이름, 이메일 주소, 상태 및 역할을 편집할 수 있습니다. -3. **Save**를 클릭합니다. +3. **Save**을 클릭합니다. -서비스 계정을 비활성화하려면 위의 절차에 따라 서비스 계정을 편집하고 상태를 **Disabled**로 설정하세요. +서비스 계정을 비활성화하려면 사용자에게 Service Account Write 권한 외에도 User Manage Access 권한이 있어야 합니다. + +서비스 계정을 비활성화하려면 이전 절차에 따라 서비스 계정을 수정하고 상태를 **Disabled**로 설정합니다. ### 애플리케이션 키 생성 또는 취소 @@ -80,7 +82,7 @@ Datadog API를 통해 서비스 계정을 사용하려면 [서비스 계정 API 서비스 계정 애플리케이션 키는 생성 직후 단 한 번만 볼 수 있습니다. 애플리케이션 키에 대한 액세스를 제한하면 다른 사용자가 키에 액세스할 때 발생할 수 있는 문제를 방지할 수 있습니다. 서비스 계정 키를 분실하거나 잊어버린 경우 키를 취소하고 새 키를 만드세요. -## 권한 허용 +## 권한 서비스 계정을 생성하면 사용자를 대신하여 Datadog과 상호 작용하는 행위자를 생성할 수 있습니다. 서비스 계정 페이지의 기능은 Datadog 역할 및 권한에 따라 다릅니다. diff --git a/content/ko/cloudcraft/components-aws/ebs.md b/content/ko/cloudcraft/components-aws/ebs.md new file mode 100644 index 00000000000..5e315221bc8 --- /dev/null +++ b/content/ko/cloudcraft/components-aws/ebs.md @@ -0,0 +1,73 @@ +--- +title: EBS 컴포넌트 +--- +## 개요 + +EBS 컴포넌트로 AWS 아키텍처에서 EBS 볼륨을 표시합니다. + +{{< img src="cloudcraft/components-aws/ebs/component-ebs-diagram.png" alt="'EBS' AWS 컴포넌트를 나타내는 아이소메트릭 Cloudcraft 다이어그램 스크린샷." responsive="true" style="width:60%;">}} + +## 도구 모음 + +도구 모음을 사용해 구성 요소를 구성하고 사용자 지정할 수 있습니다. 다음 옵션을 사용할 수 있습니다. + +- **Color**: 구성 요소와 강조 항목에 적용할 사전 정의된 색상을 선택하거나 16진수 값을 입력할 수 있습니다. 구성 요소에서는 2D와 3D 모두에 같은 색상을 사용하거나 각각에 다른 색상을 적용할 수 있습니다. +- **Volume type**: 사용된 볼륨 유형입니다. +- ***Storage**: 볼륨의 저장 용량(기비바이트 단위)입니다. +- **IOPS**: 볼륨의 IOPS 제한입니다. SSD 볼륨에만 사용할 수 있습니다. +- **Throughput**: 볼륨의 처리량 제한입니다. `gp3` 볼륨에만 사용할 수 있습니다. +- **I/O requests per second**: 볼륨의 I/O 요청 제한입니다. 이전 세대의 마그네틱 HDD 볼륨에만 사용할 수 있습니다. +- **Snapshot**: 스냅샷의 저장 용량(기비바이트 단위)입니다. + + +## API + +[Cloudcraft API][1]를 사용해 프로그래밍을 통해 액세스하여 JSON 개체의 아키텍처 다이어그램을 렌더링할 수 있습니다. + +### 스키마 + +다음은 EBS 볼륨 컴포넌트의 JSON 예시입니다. + +```json +{ + "type": "ebs", + "id": "100b1d12-49e7-4dfb-8948-0e0abf0e5d33", + "region": "us-east-1", + "mapPos": [-1,9], + "volume": "gp3", + "storage": "200", + "iops": "4000", + "throughput": "500", + "snapshots": "0", + "color": { + "isometric": "#000000", + "2d": "#000000" + }, + "accentColor": { + "isometric": "#ffeb3b", + "2d": "#ffeb3b" + }, + "link": "blueprint://ae6349e1-fa15-41c8-8e89-d201f9fa3cc9", + "locked": true +} +``` + +- **type: ebs**: 컴포넌트의 유형. +- **id: string**: `uuid` 형식의 구성 요소 고유 식별자 +- **region: string**: EBS 볼륨을 배포한 AWS 리전. `cn-` 리전을 제외한 모든 글로벌 리전이 지원됩니다. +- **mapPos: [number, number]**: 청사진에 있는 컴포넌트의 위치. X와 Y 좌표 쌍을 이용해 표현됩니다. +- **volume: string**: 볼륨의 유형. 허용되는 값은 `gp3`, `gp2`, `io2`, `io1`, `st1`, `sc1` 또는 `magnetic`입니다. +- **storage: number**: 볼륨의 저장 용량(기비바이트 단위). +- **iops: number**: 볼륨의 IOPS 제한. `st1` 및 `sc1` 볼륨 유형에는 적용되지 않습니다. +- **throughput: number**: 볼륨의 처리량 제한. `gp3` 볼륨 유형에만 적용됩니다. +- **snapshots: number**: 스냅샷의 저장 용량(기비바이트 단위). +- **color: object**: 구성 요소에 적용할 색 + - **isometric: string**: 3D 보기에서 구성 요소에 적용할 색. 16진수 색이어야 합니다. + - **2d: string**: 2D 보기에서 컴포넌트에 적용할 색. 16진수 색이어야 합니다. +- **accentColor: object**: 블록의 컴포넌트 로고를 나타내는 강조색. + - **isometric: string**: 3D 보기의 컴포넌트 강조색. 16진수 색이어야 합니다. + - **2d: string**: 2D 보기의 컴포넌트 강조색. 16진수 색이어야 합니다. +- **link: uri**: `blueprint://ID` 형식으로 컴포넌트를 다른 다이어그램에 연결하거나 `https://LINK` 형식으로 외부 웹사이트에 연결합니다. +- **locked: boolean**: `true`로 설정하면 어플리케이션을 통한 컴포넌트 변경은 잠금 해제 시까지 비활성화됩니다. + +[1]: https://developers.cloudcraft.co/ \ No newline at end of file diff --git a/content/ko/containers/troubleshooting/hpa.md b/content/ko/containers/troubleshooting/hpa.md index cd08191de31..99cfd49a772 100644 --- a/content/ko/containers/troubleshooting/hpa.md +++ b/content/ko/containers/troubleshooting/hpa.md @@ -9,12 +9,12 @@ further_reading: title: 커스텀 메트릭 서버 및 HPA 트러블슈팅 --- -## Cluster Agent 상태 및 플레어 +## Cluster Agent 상태 및 Flare -Custom Metrics Server에 문제가 있는 경우: +커스텀 메트릭 서버에 문제가 있는 경우: -* 집계 레이어와 인증서가 설정되어 있는지 확인하세요. -* 오토스케일링 하려는 메트릭을 사용할 수 있는지 확인하세요. HPA를 생성하면 Datadog Cluster Agent는 매니페스트를 구문 분석하고 Datadog에 쿼리하여 메트릭을 가져오려고 합니다. 메트릭 이름에 오타가 있거나 메트릭이 Datadog 계정 내에 존재하지 않는 경우, 다음 오류가 발생합니다: +* 집계 레이어와 인증서가 설정되어 있는지 확인합니다. +* 오토스케일링하려는 메트릭을 사용할 수 있는지 확인하세요. HPA를 생성하면 Datadog Cluster Agent가 매니페스트를 파싱하고 Datadog에 쿼리하여 메트릭 가져오기를 시도합니다. 메트릭 이름에 오타가 있거나 메트릭이 Datadog 계정에 존재하지 않는 경우 다음 오류가 발생합니다. ```text 2018-07-03 13:47:56 UTC | ERROR | (datadogexternal.go:45 in queryDatadogExternal) | Returned series slice empty @@ -31,9 +31,9 @@ Custom Metrics Server에 문제가 있는 경우: Number of external metrics detected: 2 ``` -이 명령을 사용하면 외부 메트릭 공급자 프로세스의 오류가 표시됩니다. 더 자세한 출력을 원할 경우 다음 플레어 명령을 실행하세요: `agent flare`. +외부 메트릭 공급자 프로세스 오류가 이 명령과 함께 표시됩니다. 보다 자세한 출력을 원하면 flare 명령을 실행하세요. `Agent flare`. -플레어 명령은 다음 출력에서 나타나는 것과 같이 `custom-metrics-provider.log`를 포함한 zip 파일을 생성합니다: +flare 명령은 다음과 같은 출력을 볼 수 있는 `custom-metrics-provider.log`를 포함하는 zip 파일을 생성합니다. ```text Custom Metrics Provider @@ -64,9 +64,9 @@ Custom Metrics Server에 문제가 있는 경우: value: 268435456 ``` -메트릭의 플래그 `Valid`가 `false`로 설정된 경우, 해당 메트릭은 HPA 파이프라인에서 고려되지 않습니다. +메트릭 플래그 `Valid`가 `false`로 설정된 경우 메트릭이 HPA 파이프라인에서 고려되지 않습니다. -## HPA 매니페스트 설명 +## HPA 매니페스트 설명하기 HPA 매니페스트를 설명할 때 다음 메시지가 표시되는 경우: @@ -79,7 +79,7 @@ Conditions: ``` -메트릭 공급자에 대해 적절한 RBAC 또는 서비스 연결이 설정되지 않았을 가능성이 높습니다. `kubectl get apiservices`가 표시되는지 확인하세요: +메트릭 공급자에 적절한 RBAC 또는 서비스 연결이 설정되어 있지 않을 가능성이 높습니다. `kubectl get apiservices`가 표시되는지 확인하세요. ```text % kubectl get apiservices @@ -88,7 +88,7 @@ NAME SERVICE v1beta1.external.metrics.k8s.io default/datadog-cluster-agent-metrics-api True 57s ``` -해당 파드에서 API 서비스, 서비스 및 포트 매핑이 모두 일치하는 경우, 외부 메트릭 API 서비스는 사용 가능한 `true`로 표시됩니다. 올바른 RBAC 권한을 가진 Cluster Agent도 마찬가지입니다. [외부 메트릭 제공자 등록[1] 단계에서 리소스를 생성했는지 확인하세요. +API 서비스, 서비스, 포드의 포트 매핑이 모두 일치하는 경우 외부 메트릭 API 서비스가 `true` 옵션과 함께 표시되어야 합니다. 또한 Cluster Agent에 올바른 RBAC 권한이 있어야 합니다. [외부 메트릭 등록 공급자 등록][1] 단계에서 리소스를 생성했는지 확인하세요. HPA 매니페스트를 설명할 때 다음 오류가 표시되는 경우: @@ -96,13 +96,13 @@ HPA 매니페스트를 설명할 때 다음 오류가 표시되는 경우: Warning FailedComputeMetricsReplicas 3s (x2 over 33s) horizontal-pod-autoscaler failed to get nginx.net.request_per_s external metric: unable to get external metric default/nginx.net.request_per_s/&LabelSelector{MatchLabels:map[string]string{kube_container_name: nginx,},MatchExpressions:[],}: unable to fetch metrics from external metrics API: the server is currently unable to handle the request (get nginx.net.request_per_s.external.metrics.k8s.io) ``` -Datadog Cluster Agent가 실행 중이고, APIService에 이름이 등록된 포트 `8443`를 노출하는 서비스가 작동 중인지 확인합니다. +Datadog Cluster Agent가 실행 중이고 APIService에 이름이 등록된 포트 `8443`를 노출하는 서비스가 활성화되어 있는지 확인합니다. -## Datadog과 Kubernetes의 값 차이 +## Datadog 및 Kubernetes 간 값 차이 - Kubernetes가 리소스를 오토스케일링하면 HPA는 Cluster Agent에서 제공하는 메트릭 값을 기반으로 오토스케일링을 결정합니다. Cluster Agent는 Datadog API에서 반환된 정확한 메트릭 값을 쿼리하고 저장합니다. HPA가 `type: Value`와 함께 타겟을 사용하는 경우, 이 정확한 메트릭 값이 HPA에 제공됩니다. HPA가`type: AverageValue`를 사용하는 경우 이 메트릭 값은 현재 복제본 수로 나뉩니다. +Kubernetes에서 리소스를 오토스케일링하기 때문에 HPA는 Cluster Agent에서 제공한 메트릭 값에 따라 확장 결정을 내립니다. Cluster Agent는 쿼리에서 반환된 정확한 메트릭 값을 Datadog API에 저장합니다. HPA의 목표 값이 `type: Value`인 경우, 해당 메트릭 값이 그대로 HPA에 제공됩니다. HPA가 `type: AverageValue`인 경우, 현재 복제 개수로 나뉩니다. -따라서 다음과 같은 값이 반환될 수 있습니다: +따라서 다음과 같은 값이 반환될 수 있습니다. ```text % kubectl get datadogmetric @@ -114,9 +114,9 @@ NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS example-hpa Deployment/nginx 3500m/5 (avg) 1 3 2 24 ``` -`7`의 값을 복제본 `2`로 나누어 평균 `3.5`를 얻습니다. 두 유형 모두 HPA에 대해 지원되므로 쿼리와 대상 값을 설정할 때 고려하세요. [설정 예시에 대한 Cluster Agent 가이드][2]를 참조하세요. +`7` 값을 복제값 `2`로 나누어 평균이 `3.5`입니다. HPA에는 두 가지 유형이 모두 지원되므로 쿼리 및 목표 값을 설정할 때 유형을 고려하면 됩니다. 설정 예시는 [Cluster Agent 가이드][2]를 참조하세요. -*고지 사항*: Datadog Cluster Agent는 다른 HPA 매니페스트에 설정된 메트릭을 처리하고 기본적으로 30초마다 값을 가져오기 위해 Datadog을 쿼리합니다. Kubernetes는 기본적으로 30초마다 Datadog Cluster Agent를 쿼리합니다. 이 프로세스는 비동기적으로 수행되기 때문에 메트릭이 달라지는 경우 위의 규칙이 항상 적용되지는 않습니다. 그러나 문제 완화를 위해 두 가지 빈도를 모두 구성할 수 있습니다. +*유의 사항*: Datadog Cluster Agent는 기본적으로 서로 다른 HPA 매니페스트에 설정된 메트릭을 처리하고 Datadog에 쿼리하여 30초마다 값을 얻습니다. Kubernetes는 기본적으로 Datadog Cluster Agent에 30초마다 쿼리합니다. 이 프로세스가 비동기적으로 완료되므로, 메트릭 값이 여럿일 경우에는 위 규칙이 항상 적용되지 않을 수 있습니다. 이때 두 쿼리의 주기를 설정해 문제를 해결할 수 있습니다. ## 참고 자료 diff --git a/content/ko/integrations/aws_verified_access.md b/content/ko/integrations/aws_verified_access.md new file mode 100644 index 00000000000..d68379c740a --- /dev/null +++ b/content/ko/integrations/aws_verified_access.md @@ -0,0 +1,104 @@ +--- +aliases: +- /ko/integrations/amazon_verified_access +categories: +- 클라우드 +- aws +- 로그 수집 +custom_kind: 통합 +dependencies: [] +description: AWS Verified Access 로그를 수집하세요. +doc_link: https://docs.datadoghq.com/integrations/aws_verified_access/ +draft: false +further_reading: +- link: https://www.datadoghq.com/blog/verified-access-datadog/ + tag: 블로그 + text: AWS Verified Access 및 Datadog으로 기업 애플리케이션 보안 강화 +git_integration_title: aws_verified_access +has_logo: true +integration_id: amazon-verified-access +integration_title: AWS Verified Access +integration_version: '' +is_public: true +manifest_version: '1.0' +name: aws_verified_access +public_title: Datadog-AWS Verified Access 통합 +short_description: AWS Verified Access 로그를 수집하세요. +version: '1.0' +--- + + +## 개요 + +AWS Verified Access를 사용하면 VPN(가상 사설망)을 사용하지 않고도 기업 애플리케이션에 대한 보안 액세스를 제공할 수 있습니다. Verified Access는 각 애플리케이션 요청을 평가하고 사용자가 지정된 보안 요구 사항을 충족하는 경우에만 각 애플리케이션에 액세스할 수 있도록 도와줍니다. + + +## 설정 + +### 설치 + +아직 설정하지 않은 경우 먼저 [Amazon Web Services 통합][1]을 설정하세요. + +### 로그 수집 + +#### Verified Access 로그 활성화 + +1. Amazon VPC 콘솔을 엽니다. +2. 탐색 창에서 **Verified Access instances**를 선택합니다. +3. Verified Acccess instance를 선택합니다. +4. Verified Access instance 로깅 구성 탭에서 **Modify Verified Access instance logging configuration**을 선택합니다. +5. **Deliver to Amazon Cloudwatch Logs**를 활성화한 후 대상 로그 그룹을 선택합니다. + +**참고**: 자동 로그 파싱을 활성화하려면 로그 그룹 이름에 `verified-access` 문자열을 포함하세요. + +자세한 내용은 [Enable Verified Access 로그][2]를 참조하세요. + +#### Datadog로 로그 전송 + +**참고**: Datadog의 [Amazon Security Lake 통합][3]을 사용하는 경우 아래 단계를 따르는 대신 해당 통합을 통해 Verified Access 로그를 보낼 수 있습니다. + +1. 아직 설정하지 않았다면 AWS 계정에서 [Datadog Forwarder Lambda 함수][4]를 설정합니다. +2. 설정한 후에는 Datadog Forwarder Lambda 함수로 이동합니다. Function Overview 섹션에서 **Add Trigger**를 클릭합니다. +3. Trigger Configuration에서 **CloudWatch Logs** 트리거를 선택하세요. +4. Verified Access 로그가 포함된 로그 그룹을 선택합니다. +5. 필터 이름을 추가합니다. +6. **Add**를 클릭해 Lambda에 트리거를 추가합니다. + + [Log Explorer][5]로 이동해 로그를 탐색합니다. + +AWS 서비스 로그 수집에 대한 자세한 내용은 [Datadog Lambda 함수를 사용하여 AWS 서비스 로그 전송][6]을 참조하세요. + +## 수집한 데이터 + +### 메트릭 + + AWS Verified Access 통합은 메트릭 수집을 포함하지 않습니다. + +### 이벤트 + + AWS Verified Access 통합은 이벤트를 포함하지 않습니다. + +### 로그 + +AWS Verified Access 통합은 [Verified Access 로그][7]를 포함합니다. + +### 서비스 점검 + + AWS Verified Access 통합은 서비스 점검을 포함하지 않습니다. + +## 트러블슈팅 + +도움이 필요하신가요? [Datadog 지원팀][8]에 문의하세요. + +## 참고 자료 + +{{< partial name="whats-next/whats-next.html" >}} + +[1]: https://docs.datadoghq.com/ko/integrations/amazon_web_services/ +[2]: https://docs.aws.amazon.com/verified-access/latest/ug/access-logs-enable.html +[3]: https://docs.datadoghq.com/ko/integrations/amazon_security_lake/ +[4]: https://docs.datadoghq.com/ko/logs/guide/forwarder/ +[5]: https://app.datadoghq.com/logs +[6]: https://docs.datadoghq.com/ko/logs/guide/send-aws-services-logs-with-the-datadog-lambda-function/ +[7]: https://docs.aws.amazon.com/verified-access/latest/ug/access-logs.html +[8]: https://docs.datadoghq.com/ko/help/ \ No newline at end of file diff --git a/content/ko/integrations/couch.md b/content/ko/integrations/couch.md index 249415a640e..4f491e690ab 100644 --- a/content/ko/integrations/couch.md +++ b/content/ko/integrations/couch.md @@ -34,6 +34,7 @@ categories: - caching - data stores - log collection +custom_kind: 통합 dependencies: - https://github.com/DataDog/integrations-core/blob/master/couch/README.md display_on_public_website: true @@ -41,9 +42,8 @@ draft: false git_integration_title: couch integration_id: couchdb integration_title: CouchDB -integration_version: 6.2.1 +integration_version: 8.3.0 is_public: true -custom_kind: 통합 manifest_version: 2.0.0 name: couch public_title: CouchDB @@ -61,10 +61,14 @@ tile: - Supported OS::Linux - Supported OS::Windows - Supported OS::macOS + - Offering::Integration configuration: README.md#Setup description: CouchDB 활동과 성능 메트릭을 추적하고 그래프화하세요. media: [] overview: README.md#Overview + resources: + - resource_type: 블로그 + url: https://www.datadoghq.com/blog/monitoring-couchdb-with-datadog support: README.md#Support title: CouchDB --- @@ -89,14 +93,14 @@ Datadog의 CouchDB 데이터를 캡처하여 다음 이점을 누릴 수 있습 CouchDB 점검은 [Datadog 에이전트][2] 패키지에 포함되어 있습니다. 그러므로 CouchDB 서버에 아무 것도 설치할 필요가 없습니다. -### 설정 +### 구성 {{< tabs >}} {{% tab "Host" %}} #### 호스트 -호스트에서 실행 중인 Agent에 대해 이 검사를 설정하려면: +호스트에서 실행 중인 에이전트에 대해 이 점검을 구성하려면: ##### 메트릭 수집 @@ -114,7 +118,7 @@ CouchDB 점검은 [Datadog 에이전트][2] 패키지에 포함되어 있습니 **참고**: `db_include` 및 `db_exclude`를 제공하여 에이전트가 메트릭을 수집해야 하는 소스와 그렇지 않은 소스를 통제하세요. -2. [에이전트를 재시작합니다][3]. +2. [에이전트를 재시작][3]하세요. ##### 로그 수집 @@ -138,7 +142,7 @@ _Agent 버전 6.0 이상에서 사용 가능_ `path` 및 `service` 파라미터 값을 변경하고 환경에 맞게 설정하세요. 사용 가능한 모든 설정 옵션은 [sample couch.d/conf.yaml][2]을 참조하세요. -3. [에이전트를 재시작합니다][3]. +3. [에이전트를 재시작][3]하세요. [1]: https://docs.datadoghq.com/ko/agent/guide/agent-configuration-files/#agent-configuration-directory [2]: https://github.com/DataDog/integrations-core/blob/master/couch/datadog_checks/couch/data/conf.yaml.example @@ -162,7 +166,7 @@ _Agent 버전 6.0 이상에서 사용 가능_ _Agent 버전 6.0 이상에서 사용 가능_ -Datadog 에이전트에서 로그 수집은 기본값으로 비활성화되어 있습니다. 이를 활성화하려면 [쿠버네티스(Kubernetes) 로그 수집][2]을 참조하세요. +Datadog Agent에서 로그 수집은 기본값으로 비활성화되어 있습니다. 이를 활성화하려면 [쿠버네티스(Kubernetes) 로그 수집][2]을 참조하세요. | 파라미터 | 값 | | -------------- | ---------------------------------------------------- | diff --git a/content/ko/integrations/glusterfs.md b/content/ko/integrations/glusterfs.md new file mode 100644 index 00000000000..b4dee00b1c3 --- /dev/null +++ b/content/ko/integrations/glusterfs.md @@ -0,0 +1,181 @@ +--- +app_id: glusterfs +app_uuid: 3c3562fb-8dce-4265-a8de-eacaa30974e1 +assets: + dashboards: + Red Hat Gluster Storage: assets/dashboards/red_hat_gluster_storage.json + integration: + auto_install: true + configuration: + spec: assets/configuration/spec.yaml + events: + creates_events: false + metrics: + check: glusterfs.cluster.nodes.count + metadata_path: metadata.csv + prefix: glusterfs. + process_signatures: + - glusterd + - gluster + service_checks: + metadata_path: assets/service_checks.json + source_type_id: 10145 + source_type_name: GlusterFS + monitors: + Number of offline bricks is high: assets/monitors/brick_status.json + saved_views: + glusterfs_processes: assets/saved_views/glusterfs_processes.json +author: + homepage: https://www.datadoghq.com + name: Datadog + sales_email: info@datadoghq.com + support_email: help@datadoghq.com +categories: +- 데이터 스토어 +- 로그 수집 +custom_kind: 통합 +dependencies: +- https://github.com/DataDog/integrations-core/blob/master/glusterfs/README.md +display_on_public_website: true +draft: false +git_integration_title: glusterfs +integration_id: glusterfs +integration_title: Red Hat Gluster 스토리지 +integration_version: 3.0.1 +is_public: true +manifest_version: 2.0.0 +name: glusterfs +public_title: Red Hat Gluster 스토리지 +short_description: GlusterFS 클러스터 노드, 볼륨, 브릭 상태 메트릭을 모니터링합니다. +supported_os: +- 리눅스 +tile: + changelog: CHANGELOG.md + classifier_tags: + - Supported OS::Linux + - Category::Data Stores + - Category::Log Collection + - Offering::Integration + configuration: README.md#Setup + description: GlusterFS 클러스터 노드, 볼륨 및 브릭 상태 메트릭을 모니터링합니다. + media: [] + overview: README.md#Overview + support: README.md#Support + title: Red Hat Gluster 스토리지 +--- + + + + +## 개요 + +본 점검은 Datadog Agent로 [Red Hat Gluster 스토리지][1] 클러스터 서비스 상태, 볼륨, 브릭 상태를 모니터링합니다. +본 GlusterFS 통합은 Red Hat 벤더 및 오픈 소스 버전과 모두 호환됩니다. + +## 설정 + +아래 지침을 따라 호스트에서 실행되는 Agent에 대해 이 점검을 설치 및 설정하세요. 컨테이너화된 환경의 경우, 이러한 지침을 적용하는 데 가이드가 필요하다면 [자동탐지 통합 템플릿][2]을 참조하세요. + +### 설치 + +GlusterFS 점검은 [Datadog Agent][3] 패키지에 포함됩니다. +서버에 추가 설치할 필요가 없습니다. + +### 설정 + +1. Agent 설정 디렉터리 루트의 `conf.d/` 폴더에서 `glusterfs.d/conf.yaml` 파일을 편집해 GlusterFS 성능 데이터 수집을 시작합니다. 사용할 수 있는 설정 옵션을 모두 보려면 [glusterfs.d/conf.yaml 샘플][4]을 참고하세요. + + ```yaml + init_config: + + ## @param gstatus_path - string - optional - default: /opt/datadog-agent/embedded/sbin/gstatus + ## Path to the gstatus command. + ## + ## A version of the gstatus is shipped with the Agent binary. + ## If you are using a source install, specify the location of gstatus. + # + # gstatus_path: /opt/datadog-agent/embedded/sbin/gstatus + + instances: + - + ## @param min_collection_interval - number - optional - default: 60 + ## The GlusterFS integration collects cluster-wide metrics which can put additional workload on the server. + ## Increase the collection interval to reduce the frequency. + ## + ## This changes the collection interval of the check. For more information, see: + ## https://docs.datadoghq.com/developers/write_agent_check/#collection-interval + # + min_collection_interval: 60 + ``` + + **참고**: 기본값으로 [`gstatus`][5]는 `gluster` 명령을 내부 호출하며, 해당 명령은 superuser로 실행해야 합니다. `sudoers` 파일에 다음 줄을 추가합니다. + + ```text + dd-agent ALL=(ALL) NOPASSWD:/path/to/your/gstatus + ``` + + GlusterFS 환경에 루트가 필요하지 않은 경우 `use_sudo` 설정 옵션을 `false`로 설정합니다. + +2. [Agent를 재시작합니다][6]. + +#### 로그 수집 + + +1. Datadog 에이전트에서 로그 수집은 기본적으로 사용하지 않도록 설정되어 있습니다. `datadog.yaml`파일에서 로그 수집을 사용하도록 설정합니다. + + ```yaml + logs_enabled: true + ``` + +2. `glusterfs.d/conf.yaml` 파일에서 다음 설정 블록을 편집하여 GlusterFS 로그 수집을 시작합니다. + + ```yaml + logs: + - type: file + path: /var/log/glusterfs/glusterd.log + source: glusterfs + - type: file + path: /var/log/glusterfs/cli.log + source: glusterfs + ``` + + 환경에 따라 `path` 파라미터 값을 변경합니다. 사용 가능한 모든 설정 옵션은 [conf.yaml 샘플][4]을 참조하세요. + + 3. [Agent를 재시작합니다][6]. + +Kubernetes 환경에서 로그 수집 Agent를 설정하는 방법에 대한 자세한 내용을 확인하려면 [Kubernetes 로그 수집][7]을 참조하세요. + +### 검증 + +[Agent 상태 하위 명령을 실행][8]하고 점검 섹션에서 `glusterfs`를 검색합니다. + +## 수집한 데이터 + +### 메트릭 +{{< get-metrics-from-git "glusterfs" >}} + + +### 이벤트 + +GlusterFS는 이벤트를 포함하지 않습니다. + +### 서비스 점검 +{{< get-service-checks-from-git "glusterfs" >}} + + +## 트러블슈팅 + +도움이 필요하신가요? [Datadog 고객 지원팀][11]에 문의하세요. + + +[1]: https://www.redhat.com/en/technologies/storage/gluster +[2]: https://docs.datadoghq.com/ko/agent/kubernetes/integrations/ +[3]: https://app.datadoghq.com/account/settings/agent/latest +[4]: https://github.com/DataDog/integrations-core/blob/master/glusterfs/datadog_checks/glusterfs/data/conf.yaml.example +[5]: https://github.com/gluster/gstatus#install +[6]: https://docs.datadoghq.com/ko/agent/guide/agent-commands/#start-stop-and-restart-the-agent +[7]: https://docs.datadoghq.com/ko/agent/kubernetes/log/ +[8]: https://docs.datadoghq.com/ko/agent/guide/agent-commands/#agent-status-and-information +[9]: https://github.com/DataDog/integrations-core/blob/master/glusterfs/metadata.csv +[10]: https://github.com/DataDog/integrations-core/blob/master/glusterfs/assets/service_checks.json +[11]: https://docs.datadoghq.com/ko/help/ \ No newline at end of file diff --git a/content/ko/integrations/guide/azure-architecture-and-configuration.md b/content/ko/integrations/guide/azure-architecture-and-configuration.md index 20b7659b61b..7dbfcf40cdb 100644 --- a/content/ko/integrations/guide/azure-architecture-and-configuration.md +++ b/content/ko/integrations/guide/azure-architecture-and-configuration.md @@ -4,7 +4,6 @@ further_reading: - link: https://docs.datadoghq.com/integrations/azure/ tag: 설명서 text: Azure 통합 - title: Azure 통합 아키텍처 및 설정 --- @@ -117,12 +116,12 @@ Monitoring Reader 역할 아래로 액세스를 제한하면 다음과 같은 - 모니터링 데이터의 일부 또는 전체 손실 - 리소스 메트릭에 대한 태그 형태 메타데이터의 부분적 또는 전체 손실 - - [클라우드 보안 관리 잘못된 구성(CSM 잘못된 구성)][3] 또는 [리소스 카탈로그][4]에 대한 데이터의 부분적 또는 전체 손실 + - [Cloud Security Misconfigurations][3] 또는 [Resource Catalog][4]에 대한 데이터의 부분적 또는 전체 손실 - Datadog에서 생성된 메트릭의 부분적 또는 전체 손실 Azure AD 역할을 제한하거나 생략하면 다음과 같은 의미가 있습니다. - - CSM 잘못된 구성으로 인해 Azure AD 리소스에 대한 메타데이터의 부분적 또는 전체 손실 + - Cloud Security Misconfigurations에서 Azure AD 리소스에 대한 메타데이터의 부분적 또는 전체 손실 - Azure AD 리소스에 대한 크리덴셜 만료 모니터링의 부분적 또는 전체 손실 [1]: /ko/getting_started/site/ diff --git a/content/ko/integrations/oom_kill.md b/content/ko/integrations/oom_kill.md index c9bdb51bc4b..bc406e482b3 100644 --- a/content/ko/integrations/oom_kill.md +++ b/content/ko/integrations/oom_kill.md @@ -21,7 +21,7 @@ author: sales_email: info@datadoghq.com support_email: help@datadoghq.com categories: -- os & system +- OS & 시스템 - 이벤트 관리 custom_kind: 통합 dependencies: diff --git a/content/ko/logs/guide/sending-events-and-logs-to-datadog-with-amazon-eventbridge-api-destinations.md b/content/ko/logs/guide/sending-events-and-logs-to-datadog-with-amazon-eventbridge-api-destinations.md index 6e7ce59eadc..b040f1f8063 100644 --- a/content/ko/logs/guide/sending-events-and-logs-to-datadog-with-amazon-eventbridge-api-destinations.md +++ b/content/ko/logs/guide/sending-events-and-logs-to-datadog-with-amazon-eventbridge-api-destinations.md @@ -6,6 +6,7 @@ further_reading: - link: /logs/guide/reduce_data_transfer_fees tag: 가이드 text: 데이터 전송 수수료를 줄이면서 로그를 Datadog로 보내는 방법 +site_support_id: amazon_event_bridge title: Amazon EventBridge API 목적지를 사용하여 이벤트 및 로그를 Datadog에 전송하기 site_support_id: amazon_event_bridge --- diff --git a/content/ko/real_user_monitoring/session_replay/mobile/_index.md b/content/ko/real_user_monitoring/session_replay/mobile/_index.md index 4a25f8665ad..70175c1d19e 100644 --- a/content/ko/real_user_monitoring/session_replay/mobile/_index.md +++ b/content/ko/real_user_monitoring/session_replay/mobile/_index.md @@ -1,11 +1,11 @@ --- -title: 모바일 세션 리플레이 +aliases: null description: 모바일 디바이스에 대한 세션 리플레이 설정하기 -aliases: further_reading: - - link: /real_user_monitoring/session_replay - tag: 설명서 - text: 세션 리플레이 +- link: /real_user_monitoring/session_replay + tag: 설명서 + text: 세션 리플레이 +title: 모바일 세션 리플레이 --- ## 개요 @@ -34,7 +34,7 @@ further_reading: {{< partial name="whats-next/whats-next.html" >}} -[1]: /real_user_monitoring/session_replay/mobile/setup_and_configuration -[2]: /real_user_monitoring/session_replay/mobile/privacy_options -[3]: /real_user_monitoring/session_replay/mobile/app_performance -[4]: /real_user_monitoring/session_replay/mobile/troubleshooting +[1]: /ko/real_user_monitoring/session_replay/mobile/setup_and_configuration +[2]: /ko/real_user_monitoring/session_replay/mobile/privacy_options +[3]: /ko/real_user_monitoring/session_replay/mobile/app_performance +[4]: /ko/real_user_monitoring/session_replay/mobile/troubleshooting \ No newline at end of file diff --git a/content/ko/real_user_monitoring/session_replay/mobile/privacy_options.md b/content/ko/real_user_monitoring/session_replay/mobile/privacy_options.md deleted file mode 100644 index 1c2e0c20ea4..00000000000 --- a/content/ko/real_user_monitoring/session_replay/mobile/privacy_options.md +++ /dev/null @@ -1,256 +0,0 @@ ---- -aliases: null -description: 모바일 세션 재생을 위한 개인정보 보호 옵션을 설정합니다. -further_reading: -- link: /real_user_monitoring/session_replay/mobile - tag: 설명서 - text: 모바일 세션 재생 -- link: /real_user_monitoring/session_replay/mobile/app_performance - tag: 설명서 - text: 모바일 세션 재생이 앱 성능에 미치는 영향 -- link: /real_user_monitoring/session_replay/mobile/setup_and_configuration - tag: 설명서 - text: 모바일 세션 재생 설정 및 구성 -- link: /real_user_monitoring/session_replay/mobile/troubleshooting - tag: 설명서 - text: 모바일 세션 재생 트러블슈팅 -- link: /real_user_monitoring/session_replay - tag: 설명서 - text: 세션 재생 -title: 모바일 세션 재생 개인정보 보호 옵션 ---- - -## 개요 - -세션 재생은 모든 규모의 조직에서 민감한 데이터나 개인 데이터를 노출하지 않도록 개인정보 보호 제어 기능을 제공합니다. 데이터는 Datadog이 관리하는 클라우드 인스턴스에 저장되며 미사용시 암호화됩니다. - -세션 재생의 기본 개인정보 보호 옵션은 최종 사용자의 개인 정보를 보호하고 민감한 조직 정보가 수집되지 않도록 합니다. - -모바일 세션 재생을 활성화하면 민감한 요소가 RUM Mobile SDK를 통해 기록되지 않도록 자동으로 마스킹할 수 있습니다. 데이터가 마스킹되면 해당 데이터는 Datadog의 SDK에 의해 원래 형태로 수집되지 않으므로 백엔드로 전송되지 않습니다. - -## 마스킹 모드 설정하기 - -아래 마스킹 모드를 사용하면 애플리케이션별로 기본 설정을 재정의할 수 있습니다. - -### 모든 텍스트 요소를 마스킹 - -기본적으로 모든 데이터에 대해 `mask` 설정이 활성화되어 있으며, 이 설정을 활성화하면 아래와 같이 화면의 모든 텍스트 내용이 마스킹됩니다. - -{{< img src="real_user_monitoring/session_replay/mobile/masking-mode-mask-all-2.png" alt="`mask`가 활성화된 경우 애플리케이션 화면은 다음과 유사할 수 있습니다." style="width:50%;">}} - -{{< tabs >}} -{{% tab "Android" %}} - - {{< code-block lang="javascript" filename="build.gradle" disable_copy="false" collapsible="true" >}} - - // 모든 텍스트 요소 마스킹 - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setPrivacy(SessionReplayPrivacy.MASK) - .build() - SessionReplay.enable(sessionReplayConfig) - {{< /code-block >}} - -{{% /tab %}} -{{% tab "iOS" %}} - - {{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - - // 모든 텍스트 요소 마스킹 - SessionReplay.enable( - with: SessionReplay.Configuration( - replaySampleRate: sampleRate, - defaultPrivacyLevel: .mask - ) - ) - - {{< /code-block >}} - -{{% /tab %}} -{{< /tabs >}} - -### 입력 요소만 마스킹 - -`mask user input` 설정을 활성화하면 모든 입력 필드가 익명 텍스트로 바뀝니다. - -{{< img src="real_user_monitoring/session_replay/mobile/masking-mode-user-input-2.png" alt="사용자 입력 필드가 마스킹된 경우 애플리케이션 화면이 다음과 유사할 수 있습니다." style="width:50%;">}} - -{{< tabs >}} -{{% tab "Android" %}} - - {{< code-block lang="javascript" filename="build.gradle" disable_copy="false" collapsible="true" >}} - - // 입력 요소만 마스킹 - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setPrivacy(SessionReplayPrivacy.MASK_USER_INPUT) - .build() - SessionReplay.enable(sessionReplayConfig) - {{< /code-block >}} - -{{% /tab %}} -{{% tab "iOS" %}} - - {{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - - // 입력 요소만 마스킹 - SessionReplay.enable( - with: SessionReplay.Configuration( - replaySampleRate: sampleRate, - defaultPrivacyLevel: .maskUserInput - ) - ) - - {{< /code-block >}} - -{{% /tab %}} -{{< /tabs >}} - -### 허용 (마스킹 없음) - -`allow` 설정을 활성화하면 모든 텍스트가 표시됩니다. - -{{< img src="real_user_monitoring/session_replay/mobile/masking-mode-allow-all-2.png" alt="`allow`이 활성화된 경우 애플리케이션 화면은 다음과 유사할 수 있습니다." style="width:50%;">}} - -**참고**: 이 옵션을 사용해도 비밀번호, 이메일, 전화 번호 및 주소와 같은 민감한 텍스트 필드는 여전히 마스킹됩니다. 자세한 내용은 [텍스트 마스킹 정의](#text-masking-definitions)를 참조하세요. - -{{< tabs >}} -{{% tab "Android" %}} - - {{< code-block lang="javascript" filename="build.gradle" disable_copy="false" collapsible="true" >}} - - // 마스킹 없음; 모든 텍스트가 표시됨 - val sessionReplayConfig = SessionReplayConfiguration.Builder([sampleRate]) - .setPrivacy(SessionReplayPrivacy.ALLOW) - .build() - SessionReplay.enable(sessionReplayConfig) - {{< /code-block >}} - -{{% /tab %}} -{{% tab "iOS" %}} - - {{< code-block lang="swift" filename="AppDelegate.swift" disable_copy="false" collapsible="true" >}} - // 마스킹 없음; 모든 텍스트가 표시됨 - SessionReplay.enable( - with: SessionReplay.Configuration( - replaySampleRate: sampleRate, - defaultPrivacyLevel: .allow - ) - ) - - {{< /code-block >}} - -{{% /tab %}} -{{< /tabs >}} - -## 마스킹되는 데이터의 종류와 방법 - -이 섹션에서는 데이터 유형에 따라 Datadog 레코더가 마스킹을 처리하는 방법과 해당 데이터를 정의하는 방법에 대해 설명합니다. -### 텍스트 마스킹 전략 - -개인정보 보호 설정, 텍스트 유형 및 데이터 민감도를 어떻게 설정하는지에 따라 Datadog의 마스킹 규칙은 다양한 유형의 텍스트 필드에 다른 전략을 적용합니다. - -| 텍스트 마스킹 전략 | 설명 | 예시 | -|-----------------------|-------------|---------| -| 마스크 없음 | 텍스트가 세션 재생에 표시됨 | `"Hello world"` → `"Hello world"` | -| 공간 유지 마스크 | 눈에 보이는 각 문자가 소문자 "x"로 바뀜 | `"Hello world"` → `"xxxxx xxxxx"` | -| 고정 길이 마스크 | 전체 텍스트 필드가 세 개의 별표(***)로 구성된 정수로 바뀜 | `"Hello world"` → `"***"` - -위의 텍스트 전략을 염두에 두고 설정에서 `mask`의 기본 개인정보 보호 규칙을 재정의하기 위해 몇 가지 옵션을 선택할 수 있습니다. - -다음 차트는 Datadog이 설정에서 설정한 규칙을 사용하여 아래 텍스트 유형에 다양한 텍스트 마스킹 전략을 적용하는 방법을 보여줍니다. - -| 유형 | 모두 허용 | 모두 마스킹 | 사용자 입력 마스킹 | -|------|-------------|------------|-------------------| -| [민감한 텍스트](#sensitive-text) | 고정 길이 마스크 | 고정 길이 마스크 | 고정 길이 마스크 | -| [입력 및 옵션 텍스트](#input-and-option-text) | 마스크 없음 | 고정 길이 마스크 | 고정 길이 마스크 | -| [정적 텍스트](#static-text) | 마스크 없음 | 공간 유지 마스크 | 마스크 없음 | -| [힌트 텍스트](#hint-text) | 마스크 없음 | 고정 길이 마스크 | 마스크 없음 | - -### 텍스트 마스킹 정의 - -아래에서 Datadog의 레코더가 각 텍스트 유형을 어떻게 처리하는지 설명합니다. - -#### 민감한 텍스트 -민감한 텍스트에는 플랫폼별 방식으로 표시된 비밀번호, 이메일, 전화번호가 포함됩니다. 그리고 각 플랫폼에서 사용할 수 있는 기타 형태의 민감한 텍스트가 포함됩니다. - -여기에는 비밀번호, 이메일 및 전화번호가 포함됩니다: - -- 텍스트 필드 (iOS) -- 텍스트 보기 (iOS) -- 편집 텍스트 (Android) -- 주소 정보 (iOS + Android) -- 신용 카드 번호 (iOS) -- 일회용 코드 (iOS) - -#### 입력 및 옵션 텍스트 - -입력 및 옵션 텍스트는 사용자가 키보드나 기타 텍스트 입력 장치로 입력한 텍스트 또는 선택 요소의 사용자 지정(일반적이지 않은) 값입니다. - -여기에는 아래 사항이 포함됩니다. - -- 사용자가 입력한 텍스트: - - 텍스트 필드 (iOS) - - 텍스트 보기 (iOS) - - 편집 텍스트 (Android) -- 사용자가 선택한 옵션: - - 값 선택기 (iOS + Android) - - 세그먼트 (iOS) - - 드롭다운 목록 (Android) -- 중요한 제외 사항: - - 텍스트 필드, 텍스트 보기 및 편집 텍스트의 플레이스홀더(힌트) 텍스트(사용자가 입력하지 않음) - - 텍스트 보기(iOS)에서 편집할 수 없는 텍스트. - - 날짜 선택기의 월, 일 및 연도 레이블(일반 값) - -#### 정적 텍스트 -정적 텍스트는 사용자가 직접 입력하지 않은 텍스트이며 다음을 포함합니다. - -모든 텍스트: - -- 체크박스 및 라디오 버튼 제목 (Android) -- 편집할 수 없는 텍스트 보기(iOS)의 텍스트 -- 날짜 및 시간 선택기의 월, 일 및 연도 레이블 -- 슬라이더의 현재 값과 같이 입력 요소와의 제스처 상호 작용에 따라 업데이트된 값 -- 레이블, 탭 바, 탐색 바(iOS), 탭(Android)과 같은 "사용자 입력 요소"로 간주되지 않는 기타 컨트롤 - -#### 힌트 텍스트 -힌트 텍스트는 편집 가능한 텍스트 요소 또는 옵션 선택기에 있는 정적 텍스트로, 값이 지정되지 않은 경우 표시됩니다. 여기에는 다음이 포함됩니다: - -- 텍스트 필드(iOS), 텍스트 보기(iOS)의 플레이스홀더 -- 편집 텍스트의 힌트 (Android) -- 드롭다운 목록의 프롬프트 (Android) - -### 외형 마스킹 - -다음 차트는 설정에서 설정한 규칙을 사용하여 다양한 외형 마스킹 전략을 아래 텍스트 유형에 적용하는 방법을 보여줍니다. - -| 유형 | 모두 허용 | 모두 마스킹 | 사용자 입력 마스킹 | -|------|-------------|------------|-------------------| -| [공개 속성](#revealing-attributes) | | {{< X >}} | {{< X >}} | -| [기타 속성](#other-attributes) | | | | - -#### 공개 속성 -공개 속성이란, 입력 요소의 값을 드러내거나 제안하여, 유저의 입력 내용이나 선택 내용을 추측하는데 사용할 수 있는 속성입니다. - -여기에는 다음이 포함됩니다: - -**형태** -- 세그먼트(iOS)에서 선택한 옵션의 배경 -- 날짜 선택기에서 선택한 날짜를 둘러싼 원 (iOS) -- 체크박스 선택 표시 (Android) -- 슬라이더의 썸 (iOS and Android) - -**텍스트 속성** -- Date Picker (iOS)에서 선택한 날짜를 렌더링하는 레이블 색상 -- 값 선택기에서 첫번째 및 마지막 옵션 위치 (iOS and Android) - -### 터치 상호작용 - -다음 차트는 설정에서 설정한 규칙을 사용하여 다양한 터치 상호 작용 전략을 아래 텍스트 유형에 적용하는 방법을 보여 줍니다. 화면 키보드에서 발생하는 상호 작용은 마스킹되지만 다른 요소와의 상호 작용은 마스킹되지 않습니다. - -| 유형 | 모두 허용 | 모두 마스킹 | 사용자 입력 마스킹 | -|------|-------------|------------|-------------------| -| [기타 속성](#other-attributes) | | | | -| [화면 키보드](#on-screen-keyboard) | {{< X >}} | {{< X >}} | {{< X >}} | - -## 참고 자료 - -{{< partial name="whats-next/whats-next.html" >}} \ No newline at end of file diff --git a/content/ko/service_management/case_management/troubleshooting.md b/content/ko/service_management/case_management/troubleshooting.md index 2a0da3065bd..3d429bdc4b3 100644 --- a/content/ko/service_management/case_management/troubleshooting.md +++ b/content/ko/service_management/case_management/troubleshooting.md @@ -2,12 +2,6 @@ title: 트러블슈팅 --- -{{% site-region region="gov,ap1" %}} -
-Case Management는 {{< region-param key=dd_datacenter code="true" >}} 사이트에서 사용할 수 없습니다. -
-{{% /site-region %}} - ## 개요 본 지침에서는 케이스 관리에서 타사 통합 문제를 해결할 수 있도록 도와드립니다. 계속해서 문제가 발생하면 [Datadog 지원][1]으로 문의하여 추가 지원을 받으세요. diff --git a/content/ko/service_management/case_management/view_and_manage/_index.md b/content/ko/service_management/case_management/view_and_manage/_index.md index 26d94172709..e8c71b58163 100644 --- a/content/ko/service_management/case_management/view_and_manage/_index.md +++ b/content/ko/service_management/case_management/view_and_manage/_index.md @@ -6,12 +6,6 @@ further_reading: title: 사례 보기 및 관리 --- -{{% site-region region="gov,ap1" %}} -
-Case Management is not available in the {{< region-param key=dd_datacenter code="true" >}} site. -
-{{% /site-region %}} - ## 개요 {{< img src="/service_management/case_management/view_and_manage/view_and_manage_overview_cropped.png" alt="모든 사례 보기, 상태 선택 옵션 및 할당 번호 보기를 표시하는 사례 관리 폐이지" style="width:100%;" >}} diff --git a/data/api/v1/translate_actions.es.json b/data/api/v1/translate_actions.es.json index d8df2a0e652..67958d70fd5 100644 --- a/data/api/v1/translate_actions.es.json +++ b/data/api/v1/translate_actions.es.json @@ -188,7 +188,7 @@ "summary": "Anular un tiempo de inactividad" }, "GetDowntime": { - "description": "Obtén detalles de tiempos de inactividad por `id_de_tiempo_de_inactividad`. **Nota:** Este endpoint ha quedado obsoleto. Utiliza endpoints v2.", + "description": "Obtén información detallada de tiempos de inactividad por `id_de_tiempo_de_inactividad`. **Nota:** Este endpoint ha quedado obsoleto. Utiliza endpoints v2.", "summary": "Obtener un tiempo de inactividad" }, "UpdateDowntime": { @@ -208,7 +208,7 @@ "request_schema_description": "Objeto que representa un evento." }, "GetEvent": { - "description": "Este endpoint te permite consultar detalles de eventos.\n\n**Nota**: Si el evento que estás consultando contiene un formato markdown de cualquier tipo,\nes posible que aparezcan caracteres como `%`,`\\`,`n` en el resultado.", + "description": "Este endpoint te permite consultar información detallada de eventos.\n\n**Nota**: Si el evento que estás consultando contiene un formato markdown de cualquier tipo,\nes posible que aparezcan caracteres como `%`,`\\`,`n` en el resultado.", "summary": "Obtener un evento" }, "ListEmbeddableGraphs": { @@ -234,7 +234,7 @@ "summary": "Revocar una integración" }, "GetGraphSnapshot": { - "description": "Toma snapshots de gráficos.\n**Nota**: Cuando se crea un snapshot, tarda un tiempo en estar disponible.", + "description": "Toma de gráficos. Los snapshots son imágenes PNG generadas reproduciendo un widget específico en una página web y capturándolo una vez que los datos están disponibles. Luego, la imagen se carga al almacenamiento en la nube.\n\n**Nota**: Cuando se crea un snapshot, hay un cierto retraso antes de que esté disponible.", "summary": "Tomar snapshots de gráficos" }, "MuteHost": { @@ -368,7 +368,7 @@ "summary": "Modificar elementos de una lista de dashboards" }, "CreateAzureIntegration": { - "description": "Crea una integración Azure en Datadog.\n\nUtilizando el método `POST` actualiza la configuración de tu integración añadiendo tu nueva\nconfiguración a la que existe en tu organización Datadog.\n\nUtilizando el método `PUT` actualiza la configuración de tu integración reemplazando tu\nconfiguración actual con la nueva, enviada a tu organización Datadog.", + "description": "Crea una integración Azure en Datadog.\n\nUtilizando el método `POST` actualiza la configuración de tu integración añadiendo tu nueva\nconfiguración a la que existe en tu organización Datadog.\n\nUtilizando el método `PUT` actualiza la configuración de tu integración sustituyendo tu\nconfiguración actual por la nueva, enviada a tu organización Datadog.", "summary": "Crear una integración Azure", "request_description": "Crea una integración Azure en Datadog para el cuerpo de una solicitud de tu cuenta de Datadog.", "request_schema_description": "Integraciones Azure en Datadog configuradas para tu organización." @@ -442,7 +442,7 @@ "request_schema_description": "Nueva integración Slack en Datadog." }, "UpdateSlackIntegration": { - "description": "Añade canales a tu integración Slack en Datadog actual.\n\nEste método actualiza la configuración de tu integración **reemplazando**\ntu configuración actual con la nueva, enviada a tu organización Datadog.", + "description": "Añade canales a tu integración Slack en Datadog actual.\n\nEste método actualiza la configuración de tu integración **sustituyendo**\ntu configuración actual por la nueva, enviada a tu organización Datadog.", "summary": "Añadir canales a una integración Slack", "request_description": "Actualiza el cuerpo de una solicitud de integración Slack en Datadog existente.", "request_schema_description": "Configuración de tus canales de Slack." @@ -537,12 +537,16 @@ "request_description": "Objeto que contiene el nuevo índice.", "request_schema_description": "Objeto que describe un índice de logs de Datadog." }, + "DeleteLogsIndex": { + "description": "Elimina un índice existente en tu organización. La eliminación de un índice es permanente y no se puede revertir.\nNo podrás volver a crear un índice con el mismo nombre que los índices eliminados.", + "summary": "Eliminar un índice" + }, "GetLogsIndex": { "description": "Obtén un índice de logs de tu organización. Este endpoint no recibe argumentos JSON.", "summary": "Obtener un índice" }, "UpdateLogsIndex": { - "description": "Actualiza un índice identificado por su nombre.\nDevuelve el objeto Index enviado en el cuerpo de la solicitud, cuando la solicitud se realiza correctamente.\n\nUtilizando el método `PUT` se actualiza la configuración del índice **reemplazando**\ntu configuración actual por la nueva, enviada a tu organización Datadog.", + "description": "Actualiza un índice identificado por su nombre.\nDevuelve el objeto Index enviado en el cuerpo de la solicitud, cuando la solicitud se realiza correctamente.\n\nUtilizando el método `PUT` se actualiza la configuración del índice **sustituyendo**\ntu configuración actual por la nueva, enviada a tu organización Datadog.", "summary": "Actualizar un índice", "request_description": "Objeto que contiene la nueva `LogsIndexUpdateRequest`.", "request_schema_description": "Objeto para actualizar un índice de logs de Datadog." @@ -552,7 +556,7 @@ "summary": "Obtener el orden de los pipelines" }, "UpdateLogsPipelineOrder": { - "description": "Actualiza el orden de tus pipelines. Dado que los logs se procesan en secuencias, la reordenación de un pipeline puede cambiar\nla estructura y el contenido de los datos procesados por otros pipelines y sus procesadores.\n\n**Nota**: Utilizando el método `PUT` se actualiza el orden de tus pipelines, reemplazando tu orden actual\npor el nuevo, enviado a tu organización Datadog.", + "description": "Actualiza el orden de tus pipelines. Dado que los logs se procesan en secuencias, la reordenación de un pipeline puede cambiar\nla estructura y el contenido de los datos procesados por otros pipelines y sus procesadores.\n\n**Nota**: Utilizando el método `PUT` se actualiza el orden de tus pipelines, sustituyendo tu orden actual\npor el nuevo, enviado a tu organización Datadog.", "summary": "Actualizar el orden de los pipelines", "request_description": "Objeto que contiene la nueva lista ordenada de los ID de pipelines.", "request_schema_description": "Objeto que contiene la lista ordenada de los ID de pipelines." @@ -576,7 +580,7 @@ "summary": "Obtener un pipeline" }, "UpdateLogsPipeline": { - "description": "Actualiza la configuración de un pipeline determinado para cambiar sus procesadores o su orden.\n\n**Nota**: Utilizando este método, se modifica la configuración de tu pipeline **reemplazando**\nla configuración actual por la nueva, enviada a tu organización Datadog.", + "description": "Actualiza la configuración de un pipeline determinado para cambiar sus procesadores o su orden.\n\n**Nota**: Utilizando este método, se modifica la configuración de tu pipeline **sustituyendo**\nla configuración actual por la nueva, enviada a tu organización Datadog.", "summary": "Actualizar un pipeline", "request_description": "Nueva definición del pipeline.", "request_schema_description": "Los pipelines y los procesadores operan sobre los logs entrantes,\nanalizándolos y transformándolos en atributos estructurados para facilitar su consulta.\n\n**Nota**: Estos endpoints sólo están disponibles para usuarios administradores.\nAsegúrate de utilizar una clave de aplicación creada por un administrador." @@ -596,11 +600,11 @@ "request_schema_description": "Objeto con todos los metadatos relacionados con métricas." }, "ListMonitors": { - "description": "Obtén información detallada sobre el monitor especificado de tu organización.", - "summary": "Obtener todos los detalles de un monitor " + "description": "Obtén todos los monitores de tu organización.", + "summary": "Obtener todos los monitores" }, "CreateMonitor": { - "description": "Crea un monitor utilizando las opciones especificadas.\n\n#### Tipos de monitores\n\nTipo de monitor elegido de:\n\n- anomalía: `query alert`\n- APM: `query alert` or `trace-analytics alert`\n- compuesto: `composite`\n- personalizado: `service check`\n- previsión: `query alert`\n- host: `service check`\n- integración: `query alert` or `service check`\n- proceso en directo: `process alert`\n- logs: `log alert`\n- métric:a `query alert`\n- red: `service check`\n- outlier: `query alert`\n- proceso: `service check`\n- rum: `rum alert`\n- SLO: `slo alert`\n- watchdog: `event-v2 alert`\n- evento-v2: `event-v2 alert`\n- auditoría: `audit alert`\n- seguimiento de errores: `error-tracking alert`\n- monitorización de bases de datos: `database-monitoring alert`\n- rendimiento de redes: `network-performance alert`\n- coste de la nube: `cost alert`\n\n**Notas**:\n- Los monitores Synthetic se crean mediante la API Synthetics. Para obtener más información, consulta la documentación de la [API Synthetics](https://docs.datadoghq.com/api/latest/synthetics/).\n- Los monitores de logs requieren una clave de aplicación sin contexto.\n\n#### Tipos de consultas\n\n##### Consulta de alertas de métricas\n\nEjemplo: `time_aggr(time_window):space_aggr:metric{tags} [by {key}] operator #`\n\n- `time_aggr`: avg, sum, max, min, change o pct_change\n- `time_window`: `last_#m` (con `#` entre 1 y 10080 dependiendo del tipo de monitor) o `last_#h`(con`#` entre 1 y 168 dependiendo del tipo de monitor) o `last_1d` o `last_1w`\n- `space_aggr`: avg, sum, min, or max\n- `tags`: una o más etiquetas (separadas por comas) o *\n- `key`: a 'key' en sintaxis de etiqueta key:value; define una alerta individual para cada etiqueta del grupo (alertas múltiples)\n- `operator`: <, <=, >, >=, ==, or !=\n- `#`: número entero o decimal utilizado para definir el umbral\n\nSi estás utilizando el agregador de tiempo `_change_` or `_pct_change_`, utiliza `change_aggr(time_aggr(time_window) en su lugar,\ntimeshift):space_aggr:metric{tags} [by {key}] operator #` con:\n\n- `change_aggr` change, pct_change\n- `time_aggr` avg, sum, max, min [Más información](https://docs.datadoghq.com/monitors/create/types/#define-the-conditions)\n- `time_window` last\\_#m (entre 1 y 2880 dependiendo del tipo de monitor), last\\_#h (entre 1 y 48 dependiendo del tipo de monitor) o last_#d (1 or 2)\n- `timeshift` #m_ago (5, 10, 15 o 30), #h_ago (1, 2 o 4) o 1d_ago\n\nUtiliza esto para crear un monitor de outliers con la siguiente consulta:\n`avg(last_30m):outliers(avg:system.cpu.user{role:es-events-data} por {host}, 'dbscan', 7) > 0`\n\n##### Consulta de checks de servicio\n\nEjemplo: `\"check\".over(tags).last(count).by(group).count_by_status()`\n\n- `check` nombre del check, por ejemplo `datadog.agent.up`\n- `tags` una o más etiquetas entre comillas (separadas por comas) o \"*\". por ejemplo: `.over(\"env:prod\", \"role:db\")`; `over` no puede estar vacío.\n- `count` debe ser mayor o igual que tu umbral máximo (definido en las opciones`). Se limita a 100.\nPor ejemplo, si definiste la notificación de estados 1 crítico, 3 ok y 2 advertencia, `count` debería ser al menos 3.\n- `group` debe especificarse para monitores de checks. La agrupación por cada check ya es explícitamente conocida en algunos checks de servicio.\nPor ejemplo, los monitores de la integración Postgres están etiquetados como `db`, `host` y `port`, y los monitores de redes, como `host`, `instance` y `url`. Para obtener más información, consulta la documentación [Checks de servicios](https://docs.datadoghq.com/api/latest/service-checks/).\n\n##### Consulta de alertas de eventos\n\n**Nota:** La Consulta de alertas de eventos ha sido sustituida por la Consulta de alertas de eventos V2. Para obtener más información, consulta la [guía Migración de eventos](https://docs.datadoghq.com/service_management/events/guides/migrating_to_new_events_features/).\n\n##### Consulta de alertas de eventos V2\n\nEjemplo: `events(query).rollup(rollup_method[, measure]).last(time_window) operator #`\n\n- `query` Consulta de búsqueda que sigue la [sintaxis de búsqueda de logs](https://docs.datadoghq.com/logs/search_syntax/).\n- `rollup_method` Las estadísticas roll-up method - admiten `count`, `avg` y `cardinality`.\n- `measure` Para `avg` y cardinality `rollup_method` - especifica la medida o el nombre de faceta que quieres utilizar.\n- `time_window` #m (entre 1 y 2880), #h (entre 1 y 48).\n- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.\n- `#` número entero o decimal utilizado para definir el umbral.\n\n##### Consulta de alertas de procesos\n\nEjemplo: `processes(search).over(tags).rollup('count').last(timeframe) operator #`\n\n- `search` Cadena de búsqueda de texto libre para consultar procesos.\nResultados del emparejamiento de procesos coincidentes en la página [Procesos en directo](https://docs.datadoghq.com/infrastructure/process/?tab=linuxwindows).\n- `tags` una o más etiquetas (separadas por comas)\n- `timeframe` periodo de tiempo de los recuentos. Ejemplos: 10m, 4h. Periodos de tiempo compatibles: s, m, h, d\n- `operator` <, <=, >, >=, == o !=\n- `#` número entero o decimal utilizado para definir el umbral\n\n##### Consulta de alertas de logs\n\nEjemplo: `logs(query).index(index_name).rollup(rollup_method[, measure]).last(time_window) operator #`\n\n- `query` Consulta de búsqueda que sigue la [sintaxis de búsqueda de logs](https://docs.datadoghq.com/logs/search_syntax/).\n- `rollup_method` Las estadísticas roll-up method - admiten `count`, `avg` y `cardinality`.\n- `measure` Para `avg` y cardinality `rollup_method` - especifica la medida o el nombre de faceta que quieres utilizar.\n- `time_window` #m (entre 1 y 2880), #h (entre 1 y 48).\n- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.\n- `#` número entero o decimal utilizado para definir el umbral.\n\n##### Consulta compuesta\n\nEjemplo: `12345 && 67890`, donde `12345` y `67890` son los ID de los monitores no compuestos\n\n* `name` [*required*, *default* = **dynamic, based on query**]: Nombre de la alerta.\n* `message` [*required*, *default* = **dynamic, based on query**]: Mensaje a incluir con las notificaciones de este monitor.\nSe pueden enviar notificaciones por correo electrónico a usuarios específicos utilizando la misma notación '@username' que en los eventos.\n* `tags` [*optional*, *default* = **empty list**]: Lista de etiquetas a asociar con tu monitor.\nAl obtener detalles de monitores a través de la API, utiliza el argumento `monitor_tags` para filtrar los resultados por esas etiquetas.\nSólo está disponible a través de la API y no es visible ni editable en la interfaz de usuario de Datadog.\n\n##### Consulta de alertas de SLOs\n\nEjemplo: `error_budget(\"slo_id\").over(\"time_window\") operator #`\n\n- `slo_id`: El ID alfanumérico del SLO para el que configuras la alerta.\n- `time_window`: La ventana de tiempo del destino del SLO sobre el que quieres generar alertas. Opciones válidas: `7d`, `30d`, `90d`.\n- `operator`: `>=` or `>`\n\n##### Consulta de alertas de auditorías\n\nEjemplo: `audits(query).rollup(rollup_method[, measure]).last(time_window) operator #`\n\n- `query` La consulta de búsqueda que utiliza la [sintaxis de búsqueda de logs](https://docs.datadoghq.com/logs/search_syntax/).\n- `rollup_method` Las estadísticas roll-up method - admite `count`, `avg` y `cardinality`.\n- `measure` Para `avg` y cardinality `rollup_method` - especifica la medida o nombre de la faceta que quieres utilizar.\n- `time_window` #m (entre 1 y 2880), #h (entre 1 y 48).\n- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.\n- `#` número entero o decimal utilizado para definir el umbral.\n\n##### Consulta de alertas de pipelines CI\n\nEjemplo: `ci-pipelines(query).rollup(rollup_method[, measure]).last(time_window) operator #`\n\n- `query` La consulta de búsqueda que utiliza la [sintaxis de búsqueda de logs](https://docs.datadoghq.com/logs/search_syntax/).\n- `rollup_method` Las estadísticas roll-up method - admite `count`, `avg` y `cardinality`.\n- `measure` Para `avg` y cardinality `rollup_method` - especifica la medida o nombre de la faceta que quieres utilizar.\n- `time_window` #m (entre 1 y 2880), #h (entre 1 y 48).\n- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.\n- `#` número entero o decimal utilizado para definir el umbral.\n\n##### Consulta de alertas de tests CI\n\nEjemplo: `ci-tests(query).rollup(rollup_method[, measure]).last(time_window) operator #`\n\n- `query` La consulta de búsqueda que utiliza la [sintaxis de búsqueda de logs](https://docs.datadoghq.com/logs/search_syntax/).\n- `rollup_method` Las estadísticas roll-up method - admite `count`, `avg` y `cardinality`.\n- `measure` Para `avg` y cardinality `rollup_method` - especifica la medida o nombre de la faceta que quieres utilizar.\n- `time_window` #m (entre 1 y 2880), #h (entre 1 y 48).\n- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.\n- `#` número entero o decimal utilizado para definir el umbral.\n\n##### Consulta de alertas de seguimiento de errores\n\nEjemplo (RUM): `error-tracking-rum(query).rollup(rollup_method[, measure]).last(time_window) operator #`\nEjemplo (Trazas (traces) de APM): `error-tracking-traces(query).rollup(rollup_method[, measure]).last(time_window) operator #`\n\n- `query` La consulta de búsqueda que utiliza la [sintaxis de búsqueda de logs](https://docs.datadoghq.com/logs/search_syntax/).\n- `rollup_method` Las estadísticas roll-up method - admite `count`, `avg` y `cardinality`.\n- `measure` Para `avg` y cardinality `rollup_method` - especifica la medida o nombre de la faceta que quieres utilizar.\n- `time_window` #m (entre 1 y 2880), #h (entre 1 y 48).\n- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.\n- `#` número entero o decimal utilizado para definir el umbral.\n\n**Consulta de alertas de la monitorización de bases de datos**\n\nEjemplo: `database-monitoring(query).rollup(rollup_method[, measure]).last(time_window) operator #`\n\n- `query` La consulta de búsqueda que utiliza la [sintaxis de búsqueda de logs](https://docs.datadoghq.com/logs/search_syntax/).\n- `rollup_method` Las estadísticas roll-up method - admite `count`, `avg` y `cardinality`.\n- `measure` Para `avg` y cardinality `rollup_method` - especifica la medida o nombre de la faceta que quieres utilizar.\n- `time_window` #m (entre 1 y 2880), #h (entre 1 y 48).\n- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.\n- `#` número entero o decimal utilizado para definir el umbral.\n\n**Consulta de alertas de rendimiento de redes**\n\nEjemplo: `network-performance(query).rollup(rollup_method[, measure]).last(time_window) operator #`\n\n- `query` La consulta de búsqueda que utiliza la [sintaxis de búsqueda de logs](https://docs.datadoghq.com/logs/search_syntax/).\n- `rollup_method` Las estadísticas roll-up method - admite `count`, `avg` y `cardinality`.\n- `measure` Para `avg` y cardinality `rollup_method` - especifica la medida o nombre de la faceta que quieres utilizar.\n- `time_window` #m (entre 1 y 2880), #h (entre 1 y 48).\n- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.\n- `#` número entero o decimal utilizado para definir el umbral.", + "description": "Crea un monitor utilizando las opciones especificadas.\n\n#### Tipos de monitores\n\nEl tipo de monitor elegido a partir de:\n\n- anomalías: `query alert`\n- APM: `query alert` or `trace-analytics alert`\n- compuesto: `composite`\n- personalizado: `service check`\n- previsión: `query alert`\n- host: `service check`\n- integración: `query alert` or `service check`\n- proceso activo: `process alert`\n- logs: `log alert`\n- métricas: `query alert`\n- red: `service check`\n- outlier: `query alert`\n- proceso: `service check`\n- rum: `rum alert`\n- SLO: `slo alert`\n- watchdog: `event-v2 alert`\n- event-v2: `event-v2 alert`\n- auditorías: `audit alert`\n- seguimiento de errores: `error-tracking alert`\n- database-monitoring: `database-monitoring alert`\n- rendimiento de red: `network-performance alert`\n- coste de nube: `cost alert`\n\n**Notas**:\n- Los monitores Synthetic se crean a través de la API Synthetics. Para obtener más información, consulta la documentación de la [API Synthetics](https://docs.datadoghq.com/api/latest/synthetics/).\n- loguear monitor s requieren una Clave de Aplicación sin especificar.\n\n#### Tipos de consulta\n\n##### Consulta de alerta de métricas\n\nEjemplo: `time_aggr(time_window):space_aggr:metric{tags} [by {key}] operator #`\n\n- time_aggr: avg, sum, max, min, change o pct_change\n- time_window: last_#m (con # entre 1 y 10080 dependiendo del tipo de monitor) o last_#h(con# entre 1 y 168 dependiendo del tipo de monitor) o last_1d o last_1w\n- space_aggr: avg, sum, min, or max\n- tags: una o más etiquetas (separadas por comas) o *\n- key: a ‘key’ en sintaxis de etiqueta key:value; define una alerta individual para cada etiqueta del grupo (alertas múltiples)\n- operator: <, <=, >, >=, ==, or !=\n- #: número entero o decimal utilizado para definir el umbral\n\nSi estás utilizando el agregador de tiempo _change_ o _pct_change_, utiliza change_aggr(time_aggr(time_window) en su lugar, timeshift):space_aggr:metric{tags} [by {key}] operator # con:\n\n- change_aggr change, pct_change\n- time_aggr avg, sum, max, min Más información\n- time_window last_#m (entre 1 y 2880 dependiendo del tipo de monitor), last_#h (entre 1 y 48 dependiendo del tipo de monitor) o last_#d (1 or 2)\n- timeshift #m_ago (5, 10, 15 o 30), #h_ago (1, 2 o 4) o 1d_ago\n\nUtiliza esto para crear un monitor de outliers con la siguiente consulta: avg(last_30m):outliers(avg:system.cpu.user{role:es-events-data} por {host}, 'dbscan', 7) > 0`\n\n##### Consulta de checks de servicio\n\nEjemplo: \"check\".over(tags).last(count).by(group).count_by_status()`\n\n- 'check' nombre del check, por ejemplo datadog.agent.up`\n- 'tags' una o más etiquetas entre comillas (separadas por comas) o “*”. por ejemplo: .over(\"env:prod\", \"role:db\"); over no puede estar vacío.\n- 'count' debe ser mayor o igual que tu umbral máximo (definido en las opciones). Se limita a 100.\nPor ejemplo, si definiste la notificación de estados 1 crítico, 3 ok y 2 advertencia, count` debería ser al menos 3.\n- 'group' debe especificarse para monitores de checks. La agrupación por cada check ya es explícitamente conocida en algunos checks de servicio.\nPor ejemplo, los monitores de la integración Postgres están etiquetados como db, host y port, y los monitores de redes, como host, instance y url. Para obtener más información, consulta la documentación Checks de servicios (https://docs.datadoghq.com/api/latest/servicio-checks/).\n\n##### Consulta de alertas de eventos\n\nNota: La Consulta de alertas de eventos ha sido sustituida por la Consulta de alertas de eventos V2. Para obtener más información, consulta la guía [Migración de eventos].(https://docs.datadoghq.com/service_management/eventos/guides/migrating_to_new_events_features/).\n\n##### Consulta de alertas de eventos V2\n\nEjemplo: events(query).rollup(rollup_method[, measure]).last(time_window) operator #\n\n- 'query' Consulta de búsqueda que sigue la sintaxis de búsqueda de logs.\n- 'rollup_method' Las estadísticas roll-up method - admiten count, avg y cardinality.\n- 'measure' Para avg y cardinality rollup_method - especifica la medida o el nombre de faceta que quieres utilizar.\n- 'time_window' #m (entre 1 y 2880), #h (entre 1 y 48).\n- 'operator' <, <=, >, >=, ==, or !=.\n- '#' número entero o decimal utilizado para definir el umbral.\n\n##### Consulta de alertas de procesos\n\nEjemplo: processes(search).over(tags).rollup('count').last(timeframe) operator #\n\n- 'search' Cadena de búsqueda de texto libre para consultar procesos. Resultados del emparejamiento de procesos coincidentes en la página Procesos en directo.\n- 'tags' una o más etiquetas (separadas por comas)\n- 'timeframe' periodo de tiempo de los recuentos. Ejemplos: 10m, 4h. Periodos de tiempo compatibles: s, m, h, d\n- 'operator' <, <=, >, >=, == o !=\n- '#' número entero o decimal utilizado para definir el umbral\n\n##### Consulta de alertas de logs\n\nEjemplo: logs(query).index(index_name).rollup(rollup_method[, measure]).last(time_window) operator #\n\n- 'query' Consulta de búsqueda que sigue la sintaxis de búsqueda de logs.\n- 'rollup_method' Las estadísticas roll-up method - admiten count, avg y cardinality.\n- 'measure' Para avg y cardinality rollup_method - especifica la medida o el nombre de faceta que quieres utilizar.\n- 'time_window' #m (entre 1 y 2880), #h (entre 1 y 48).\n- 'operator' <, <=, >, >=, ==, or !=.\n- '#' número entero o decimal utilizado para definir el umbral.\n\n##### Consulta compuesta\n\nEjemplo: 12345 && 67890, donde 12345 y 67890 son los ID de los monitores no compuestos\n\n- `name' [required, default = dynamic, based on query]: Nombre de la alerta.\n- `message' [required, default = dynamic, based on query]: Mensaje a incluir con las notificaciones de este monitor. Se pueden enviar notificaciones por correo electrónico a usuarios específicos utilizando la misma notación ‘@username’ que en los eventos.\n- `tags' [optional, default = empty list]: Lista de etiquetas a asociar con tu monitor. Al obtener detalles de monitores a través de la API, utiliza el argumento monitor_tags para filtrar los resultados por esas etiquetas. Sólo está disponible a través de la API y no es visible ni editable en la interfaz de usuario de Datadog.\n\n##### Consulta de alertas de SLOs\n\nEjemplo: error_budget(\"slo_id\").over(\"time_window\") operator #\n\n- `slo_id': El ID alfanumérico del SLO para el que configuras la alerta.\n- `time_window': La ventana de tiempo del destino del SLO sobre el que quieres generar alertas. Opciones válidas: 7d, 30d, 90d.\n- `operator': >= or >\n\n##### Consulta de alertas de auditorías\n\nEjemplo: audits(query).rollup(rollup_method[, measure]).last(time_window) operator #\n\n- `query` La consulta de búsqueda que utiliza la sintaxis de búsqueda de logs.\n- `rollup_method` Las estadísticas roll-up method - admite count, avg y cardinality.\n- `measure` Para avg y cardinality rollup_method - especifica la medida o nombre de la faceta que quieres utilizar.\n- `time_window` #m (entre 1 y 2880), #h (entre 1 y 48).\n- `operator` <, <=, >, >=, ==, or !=.\n- `#` número entero o decimal utilizado para definir el umbral.\n\n##### Consulta de alertas de pipelines CI\n\nEjemplo: ci-pipelines(query).rollup(rollup_method[, measure]).last(time_window) operator #\n\n- `query` La consulta de búsqueda que utiliza la sintaxis de búsqueda de logs.\n- `rollup_method` Las estadísticas roll-up method - admite count, avg y cardinality.\n- `measure` Para avg y cardinality rollup_method - especifica la medida o nombre de la faceta que quieres utilizar.\n- `time_window` #m (entre 1 y 2880), #h (entre 1 y 48).\n- `operator` <, <=, >, >=, ==, or !=.\n- `#` número entero o decimal utilizado para definir el umbral.\n\n##### Consulta de alertas de tests CI\n\nEjemplo: ci-tests(query).rollup(rollup_method[, measure]).last(time_window) operator #\n\n- `query` La consulta de búsqueda que utiliza la sintaxis de búsqueda de logs.\n- `rollup_method` Las estadísticas roll-up method - admite count, avg y cardinality.\n- `measure` Para avg y cardinality rollup_method - especifica la medida o nombre de la faceta que quieres utilizar.\n- `time_window` #m (entre 1 y 2880), #h (entre 1 y 48).\n- `operator` <, <=, >, >=, ==, or !=.\n- `#` número entero o decimal utilizado para definir el umbral.\n\n##### Consulta de alertas de seguimiento de errores\n\n\"New issue\" example: `error-tracking(query).source(issue_source).new().rollup(rollup_method[, measure]).by(group_by).last(time_window) operator #`\n\"High impact issue\" example: `error-tracking(query).source(issue_source).impact().rollup(rollup_method[, measure]).by(group_by).last(time_window) operator #``\n\n- `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/).\n- `issue_source` The issue source - supports `all`, `browser`, `mobile` and `backend` and defaults to `all` if omitted.\n- `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality` and defaults to `count` if omitted.\n- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.\n- `group by` Comma-separated list of attributes to group by - should contain at least `issue.id`.\n- `time_window` #m (entre 1 y 2880), #h (entre 1 y 48).\n- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.\n- `#` número entero o decimal utilizado para definir el umbral.\n\n\n**Consulta de alertas de la monitorización de bases de datos**\n\nEjemplo: database-monitoring(query).rollup(rollup_method[, measure]).last(time_window) operator #\n\n- `query` La consulta de búsqueda que utiliza la sintaxis de búsqueda de logs.\n- `rollup_method` Las estadísticas roll-up method - admite count, avg y cardinality.\n- `measure` Para avg y cardinality rollup_method - especifica la medida o nombre de la faceta que quieres utilizar.\n- `time_window` #m (entre 1 y 2880), #h (entre 1 y 48).\n- `operator` <, <=, >, >=, ==, or !=.\n- `#` número entero o decimal utilizado para definir el umbral.\n\n**Consulta de alertas de rendimiento de redes**\n\nEjemplo: network-performance(query).rollup(rollup_method[, measure]).last(time_window) operator #`\n\n- `query` La consulta de búsqueda que utiliza la sintaxis de búsqueda de logs.\n- `rollup_method` Las estadísticas roll-up method - admite count, avg y cardinality.\n- `measure` Para avg y cardinality rollup_method - especifica la medida o nombre de la faceta que quieres utilizar.\n- `time_window` #m (entre 1 y 2880), #h (entre 1 y 48).\n- `operator` <, <=, >, >=, ==, or !=.\n- `#` número entero o decimal utilizado para definir el umbral.\n\n**Consulta de alerta de costes**\n\nEjemplo: `formula(query).timeframe_type(time_window).function(parameter) operator #``\n\n- `query` consulta de búsqueda- siguiendo la sintaxis de [búsqueda de logs](https://docs.datadoghq.com/Logs/search_syntax/).\n- `tipo_timeframe` El tipo de marco temporal para evaluar el coste\n - para `previsión` admite `current`.\n - para `cambio`, `anomalías`, `umbral` admite `last`\n- `time_window` - admite roll-up diario p.ej. `7d`\n-function` - [opcional, por defecto `threshold` monitor si se omite] admite `cambio`, `anomalías`, `previsión`\n- `parameter` Especifica el parámetro del tipo\n - para `change`:\n - admite `relative`, `absolute`\n - para `opcional`: admite `#`, donde `#` es un número entero o decimal utilizado para definir el umbral\n - para `anomalías`:\n - admite `direction=both`, `direction=above`, `direction=below`\n - [opcional] admite `threshold=#`, donde `#` es un número entero o decimal utilizado para definir el umbral\n- operador\n - para `threshold` admite `<`, `<=`, `>`, `>=`, `==`, o `!=`\n - para `cambio` admite `>`, `<`\n - para `anomalías` admite `>=`\n - para `previsión` admite `>`\n- `#` un número entero o decimal utilizado para definir el umbral.", "summary": "Crear un monitor", "request_description": "Crea el cuerpo de una solicitud de monitor.", "request_schema_description": "Objeto que describe un monitor." @@ -610,11 +614,11 @@ "summary": "Notebooks" }, "SearchMonitorGroups": { - "description": "Busca y filtra los detalles de tus grupos de monitores.", + "description": "Busca y filtra información detallada de tus grupos de monitores.", "summary": "Búsqueda de grupos de monitores" }, "SearchMonitors": { - "description": "Busca y filtra los detalles de tu monitor.", + "description": "Busca y filtra información detallada de tu monitor.", "summary": "Crear un monitor" }, "ValidateMonitor": { @@ -628,8 +632,8 @@ "summary": "Eliminar un monitor" }, "GetMonitor": { - "description": "Obtén información detallada sobre el monitor especificado de tu organización.", - "summary": "Obtener información de un monitor" + "description": "Obtén información detallada del monitor especificado de tu organización.", + "summary": "Obtener información detallada de un monitor" }, "UpdateMonitor": { "description": "Edita el monitor especificado.", @@ -695,7 +699,7 @@ "description": "Crea una organización secundaria.\n\nEste endpoint requiere la función de\n[cuenta multiorganización](https://docs.datadoghq.com/account_management/multi_organization/)\ny debe habilitarse\n[poniéndose en contacto con el servicio de asistencia](https://docs.datadoghq.com/help/).\n\nUna vez creada la nueva organización secundaria, puedes interactuar con ella\nutilizando `org.public_id`, `api_key.key` y\n`application_key.hash` proporcionados en la respuesta.", "summary": "Modificar un único objeto de servicio", "request_description": "Objeto de organización que debe crearse", - "request_schema_description": "Objeto que describe una organización a crear." + "request_schema_description": "Objeto que describe una organización por crear." }, "GetOrg": { "description": "Obtén información sobre la organización.", @@ -758,20 +762,20 @@ "summary": "Obtener una dependencia de servicio APM" }, "ListSLOs": { - "description": "Obtén una lista de objetos de objetivos de nivel servicio (SLOs) para tu organización.", + "description": "Obtén una lista de objetos de objetivos de nivel de servicio (SLOs) para tu organización.", "summary": "Obtener todos los SLOs" }, "CreateSLO": { - "description": "Crea un objeto objetivo de nivel servicio (SLO).", + "description": "Crea un objeto objetivo de nivel de servicio (SLO).", "summary": "Crear un objeto SLO", - "request_description": "Objeto de solicitud de objetivo de nivel de servicio.", + "request_description": "Objeto de solicitud de objetivos de nivel de servicio.", "request_schema_description": "Un objeto de solicitud de objetivo de nivel de servicio incluye un indicador de nivel servicio, umbrales\npara uno o varios periodos de tiempo y metadatos (`nombre`, `descripción`, `etiquetas`, etc.)." }, "DeleteSLOTimeframeInBulk": { - "description": "Elimina (o elimina parcialmente) varios objetos de objetivos de nivel servicio.\n\nEste endpoint facilita la eliminación de uno o varios umbrales para uno o varios\nobjetos de objetivos de nivel de servicio. Si se eliminan todos los umbrales, el objeto de objetivos de nivel servicio \ntambién se elimina.", + "description": "Elimina (o elimina parcialmente) varios objetos de objetivos de nivel de servicio.\n\nEste endpoint facilita la eliminación de uno o varios umbrales para uno o varios\nobjetos de objetivos de nivel de servicio. Si se eliminan todos los umbrales, el objeto de objetivos de nivel servicio \ntambién se elimina.", "summary": "Eliminación masiva de periodos de tiempo de SLOs", - "request_description": "Elimina el cuerpo de una solicitud de varios objetos de objetivos de nivel servicio.", - "request_schema_description": "Una asignación de ID de objeto de objetivos de nivel servicio a matrices de periodos de tiempo,\nque indican los umbrales a eliminar para cada ID." + "request_description": "Elimina el cuerpo de una solicitud de varios objetos de objetivos de nivel de servicio.", + "request_schema_description": "Una asignación de ID de objeto de objetivos de nivel de servicio a matrices de periodos de tiempo,\nque indican los umbrales a eliminar para cada ID." }, "CheckCanDeleteSLO": { "description": "Comprueba si un SLO puede eliminarse de forma segura. Por ejemplo,\nasegúrate de que un SLO puede eliminarse sin interrumpir un dashboard.", @@ -802,7 +806,7 @@ "request_schema_description": "Objeto que define una corrección que debe aplicarse a un SLO." }, "SearchSLO": { - "description": "Obtén una lista de objetos de objetivos de nivel servicio para tu organización.", + "description": "Obtén una lista de objetos de objetivos de nivel de servicio para tu organización.", "summary": "Buscar SLOs" }, "DeleteSLO": { @@ -811,13 +815,13 @@ }, "GetSLO": { "description": "Obtén un objeto de objetivos de nivel servicio.", - "summary": "Obtener los datos de un SLO" + "summary": "Obtener información detallada de un SLO" }, "UpdateSLO": { "description": "Actualiza el objeto de objetivos de nivel de servicio especificado.", "summary": "Actualizar un SLO", - "request_description": "El objeto de solicitud de objetivos de nivel servicio modificado.", - "request_schema_description": "Un objeto de solicitud de objetivo de nivel de servicio incluye un indicador de nivel servicio, umbrales\npara uno o varios periodos de tiempo y metadatos (`nombre`, `descripción`, `etiquetas`, etc.)." + "request_description": "El objeto de solicitud de objetivos de nivel de servicio modificado.", + "request_schema_description": "Un objeto de solicitud de objetivo de nivel de servicio incluye un indicador de nivel de servicio, umbrales\npara uno o varios periodos de tiempo y metadatos (`nombre`, `descripción`, `etiquetas`, etc.)." }, "GetSLOCorrections": { "description": "Obtener correcciones aplicadas a un SLO", @@ -828,8 +832,8 @@ "summary": "Obtener el historial de un SLO" }, "GetSyntheticsCIBatch": { - "description": "Obtén los datos actualizados de un lote.", - "summary": "Obtener detalles del lote" + "description": "Obtén información detallada actualizada de un lote.", + "summary": "Obtener información detallada del lote" }, "ListLocations": { "description": "Obtén la lista de ubicaciones públicas y privadas disponibles para tests Synthetic.\nNo se requieren argumentos.", @@ -838,8 +842,8 @@ "CreatePrivateLocation": { "description": "Crea una nueva localización Synthetic privada.", "summary": "Crear una localización privada", - "request_description": "Detalles de la localización privada a crear.", - "request_schema_description": "Objeto que contiene información sobre la localización privada a crear." + "request_description": "Información detallada de la localización privada por crear", + "request_schema_description": "Objeto que contiene información sobre la localización privada por crear" }, "DeletePrivateLocation": { "description": "Elimina una localización Synthetic privada.", @@ -852,8 +856,8 @@ "UpdatePrivateLocation": { "description": "Modifica una localización Synthetic privada.", "summary": "Modificar una localización privada", - "request_description": "Detalles de la localización privada a actualizar.", - "request_schema_description": "Objeto que contiene información sobre la localización privada a crear." + "request_description": "Información detallada de la localización privada a actualizar.", + "request_schema_description": "Objeto que contiene información sobre la localización privada por crear" }, "GetSyntheticsDefaultLocations": { "description": "Obtenga la configuración de localizaciones predeterminadas.", @@ -866,14 +870,14 @@ "CreateTest": { "description": "Este endpoint está obsoleto. Para crear un test, utiliza [Crear un test de API](https://docs.datadoghq.com/api/latest/synthetics/#create-an-api-test), o [Crear un test de navegador](https://docs.datadoghq.com/api/latest/synthetics/#create-a-browser-test).", "summary": "Crear un test", - "request_description": "Detalles del test a crear.", - "request_schema_description": "Objeto que contiene información sobre tu test Synthetic." + "request_description": "Información detallada del test a crear.", + "request_schema_description": "Objeto que contiene información detallada de tu test Synthetic." }, "CreateSyntheticsAPITest": { "description": "Crea un test de API Synthetic.", "summary": "Crear un test de API", - "request_description": "Detalles del test a crear.", - "request_schema_description": "Objeto que contiene detalles sobre un test de API Synthetic." + "request_description": "Información detallada del test a crear.", + "request_schema_description": "Objeto que contiene información detallada de un test de API Synthetic." }, "GetAPITest": { "description": "Obtén la configuración detallada, asociada a\nun test de API Synthetic.", @@ -882,14 +886,14 @@ "UpdateAPITest": { "description": "Edita la configuración de un test de API Synthetic.", "summary": "Editar un test de API", - "request_description": "Nuevos detalles del test a guardar.", - "request_schema_description": "Objeto que contiene detalles sobre un test de API Synthetic." + "request_description": "Nueva información detallada del test que se va a guardar.", + "request_schema_description": "Objeto que contiene información detallada de un test de API Synthetic." }, "CreateSyntheticsBrowserTest": { "description": "Crea un test de navegador Synthetic.", "summary": "Crear un test de navegador", - "request_description": "Detalles del test a crear.", - "request_schema_description": "Objeto que contiene detalles sobre un test de navegador Synthetic." + "request_description": "Información detallada del test a crear.", + "request_schema_description": "Objeto que contiene información detallada de un test de navegador Synthetic." }, "GetBrowserTest": { "description": "Obtén la configuración detallada (incluyendo los pasos), asociada a\nun test de navegador Synthetic.", @@ -898,8 +902,8 @@ "UpdateBrowserTest": { "description": "Edita la configuración de un test de navegador Synthetic.", "summary": "Editar un test de navegador", - "request_description": "Nuevos detalles del test a guardar.", - "request_schema_description": "Objeto que contiene detalles sobre un test de navegador Synthetic." + "request_description": "Nueva información detallada del test que se va a guardar.", + "request_schema_description": "Objeto que contiene información detallada de un test de navegador Synthetic." }, "GetBrowserTestLatestResults": { "description": "Obtén los últimos 150 resúmenes de los resultados de un determinado test de navegador Synthetic.", @@ -918,8 +922,8 @@ "CreateSyntheticsMobileTest": { "description": "Cree un test móvil Synthetic.", "summary": "Crear un test móvil", - "request_description": "Detalles del test a crear.", - "request_schema_description": "Objeto que contiene detalles sobre un test móvil Synthetic." + "request_description": "Información detallada del test a crear.", + "request_schema_description": "Objeto que contiene información detallada de un test móvil Synthetic." }, "GetMobileTest": { "description": "Obtén la configuración detallada asociada a\nun test móvil Synthetic.", @@ -928,8 +932,8 @@ "UpdateMobileTest": { "description": "Edita la configuración de un test móvil Synthetic.", "summary": "Editar un test móvil", - "request_description": "Nuevos detalles del test a guardar.", - "request_schema_description": "Objeto que contiene detalles sobre un test móvil Synthetic." + "request_description": "Nueva información detallada del test que se va a guardar.", + "request_schema_description": "Objeto que contiene información detallada de un test móvil Synthetic." }, "TriggerTests": { "description": "Activa un conjunto de tests Synthetic.", @@ -940,7 +944,7 @@ "TriggerCITests": { "description": "Activa un conjunto de tests Synthetic para la integración continua.", "summary": "Activar tests a partir de procesos CI/CD", - "request_description": "Detalles de los tests a activar.", + "request_description": "Información detallada de los tests a activar.", "request_schema_description": "Objeto que describe los tests Synthetic a activar." }, "FetchUptimes": { @@ -962,8 +966,8 @@ "UpdateTest": { "description": "Este endpoint está obsoleto. Para modificar un test, utiliza [Modificar un test de API](https://docs.datadoghq.com/api/latest/synthetics/#edit-an-api-test) o [Editar un test de navegador](https://docs.datadoghq.com/api/latest/synthetics/#edit-a-browser-test).", "summary": "Editar un test", - "request_description": "Nuevos detalles del test a guardar.", - "request_schema_description": "Objeto que contiene información sobre tu test Synthetic." + "request_description": "Nueva información detallada del test que se va a guardar.", + "request_schema_description": "Objeto que contiene información detallada de tu test Synthetic." }, "GetAPITestLatestResults": { "description": "Obtén los últimos 150 resúmenes de los resultados de un determinado test de API Synthetic.", @@ -986,8 +990,8 @@ "CreateGlobalVariable": { "description": "Crea una variable global Synthetic.", "summary": "Crear una variable global", - "request_description": "Detalles de la variable global a crear.", - "request_schema_description": "Detalles de la variable global a crear." + "request_description": "Información detallada de la variable global por crear", + "request_schema_description": "Información detallada de la variable global por crear" }, "DeleteGlobalVariable": { "description": "Elimina una variable global Synthetic.", @@ -1000,8 +1004,8 @@ "EditGlobalVariable": { "description": "Modifica una variable global Synthetic.", "summary": "Modificar una variable global", - "request_description": "Detalles de la variable global a actualizar.", - "request_schema_description": "Detalles de la variable global a crear." + "request_description": "Información detallada de la variable global a actualizar.", + "request_schema_description": "Información detallada de la variable global por crear" }, "ListHostTags": { "description": "Devuelve una asignación de etiquetas a hosts para toda tu infraestructura.", @@ -1028,7 +1032,7 @@ "request_schema_description": "Conjunto de etiquetas para asociar a tu host." }, "GetUsageAnalyzedLogs": { - "description": "Obtén el uso por hora de logs analizados (Monitorización de seguridad).\n**Nota:** Este endpoint ha quedado obsoleto. Los datos de uso por hora de todos los productos están ahora disponibles en [Obtener el uso por hora por API de familia de productos](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Consulta [Migración de la API de uso horario de la V1 a la V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) para obtener la guía de migración asociada.", + "description": "Obtén el uso por hora de logs analizados (Monitorización de seguridad).\n**Nota:** Este endpoint ha quedado obsoleto. Los datos de uso por hora de todos los productos están ahora disponibles en [Obtener el uso por hora por API de familia de productos](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Consulta [Migración de la API de uso por hora de la V1 a la V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) para obtener la guía de migración asociada.", "summary": "Obtener el uso por hora de los logs analizados" }, "GetUsageAuditLogs": { @@ -1036,7 +1040,7 @@ "summary": "Obtener el uso por hora de logs de auditoría" }, "GetUsageLambda": { - "description": "Obtén el uso por hora de Lambda.\n**Nota:** Este endpoint ha quedado obsoleto. Los datos de uso por hora de todos los productos están ahora disponibles en [Obtener el uso por hora por API de familia de productos](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Consulta [Migración de las API de uso horario de la V1 a la V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) para obtener la guía de migración asociada.", + "description": "Obtén el uso por hora de Lambda.\n**Nota:** Este endpoint ha quedado obsoleto. Los datos de uso por hora de todos los productos están ahora disponibles en [Obtener el uso por hora por API de familia de productos](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Consulta [Migración de las API de por hora de la V1 a la V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) para obtener la guía de migración asociada.", "summary": "Obtener el uso por hora de Lambda" }, "GetUsageBillableSummary": { @@ -1044,7 +1048,7 @@ "summary": "Obtener el uso facturable de tu cuenta" }, "GetUsageCIApp": { - "description": "Obtén el uso por hora de CI Visibility.\n**Nota:** Este endpoint ha quedado obsoleto. Los datos de uso por hora de todos los productos están ahora disponibles en [Obtener el uso por hora por API de familia de productos](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Consulta [Migración de la API de uso horario de la V1 a la V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) para obtener la guía de migración asociada.", + "description": "Obtén el uso por hora de CI Visibility.\n**Nota:** Este endpoint ha quedado obsoleto. Los datos de uso por hora de todos los productos están ahora disponibles en [Obtener el uso por hora por API de familia de productos](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Consulta [Migración de la API de por hora de la V1 a la V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) para obtener la guía de migración asociada.", "summary": "Obtener el uso por hora de CI Visibility" }, "GetUsageCloudSecurityPostureManagement": { @@ -1068,7 +1072,7 @@ "summary": "Obtener el uso por hora de hosts y contenedores" }, "GetHourlyUsageAttribution": { - "description": "Obtén la atribución de uso por hora. Los datos de múltiples regiones estarán disponibles a partir del 1 de marzo de 2023.\n\nEl endpoint de esta API está paginado. Para asegurarte de que recibes todos los registros, comprueba si el valor de `next_record_id` está\ndefinido en la respuesta. Si lo está, realiza otra solicitud y pasa `next_record_id` como parámetro.\nEjemplo de pseudocódigo:\n\n```\nresponse := GetHourlyUsageAttribution(start_month)\ncursor := response.metadata.pagination.next_record_id\nWHILE cursor != null BEGIN\nsleep(5 seconds) # Evita alcanzar el límite de frecuencia\nresponse := GetHourlyUsageAttribution(start_month, next_record_id=cursor)\ncursor := response.metadata.pagination.next_record_id\nEND", + "description": "Get hourly usage attribution. Multi-region data is available starting March 1, 2023.\n\nThis API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is\nset in the response. If it is, make another request and pass `next_record_id` as a parameter.\nPseudo code example:\n\n```\nresponse := GetHourlyUsageAttribution(start_month)\ncursor := response.metadata.pagination.next_record_id\nWHILE cursor != null BEGIN\n sleep(5 seconds) # Avoid running into rate limit\n response := GetHourlyUsageAttribution(start_month, next_record_id=cursor)\n cursor := response.metadata.pagination.next_record_id\nEND\n```", "summary": "Obtener la atribución de uso por hora" }, "GetIncidentManagement": { @@ -1100,7 +1104,7 @@ "summary": "Obtener el uso por hora de logs por índice" }, "GetMonthlyUsageAttribution": { - "description": "Obtén la atribución de uso por mes. Los datos de múltiples regiones estarán disponibles a partir del 1 de marzo de 2023.\n\nEl endpoint de esta API está paginado. Para asegurarte de que recibes todos los registros, comprueba si el valor de `next_record_id` está\ndefinido en la respuesta. Si lo está, realiza otra solicitud y pasa `next_record_id` como parámetro.\nEjemplo de pseudocódigo:\n\n```\nresponse := GetMonthlyUsageAttribution(start_month)\ncursor := response.metadata.pagination.next_record_id\nWHILE cursor != null BEGIN\nsleep(5 seconds) # Evita alcanzar el límite de la frecuencia\nresponse := GetMonthlyUsageAttribution(start_month, next_record_id=cursor)\ncursor := response.metadata.pagination.next_record_id\nEND\n```", + "description": "Get monthly usage attribution. Multi-region data is available starting March 1, 2023.\n\nThis API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is\nset in the response. If it is, make another request and pass `next_record_id` as a parameter.\nPseudo code example:\n\n```\nresponse := GetMonthlyUsageAttribution(start_month)\ncursor := response.metadata.pagination.next_record_id\nWHILE cursor != null BEGIN\n sleep(5 seconds) # Avoid running into rate limit\n response := GetMonthlyUsageAttribution(start_month, next_record_id=cursor)\n cursor := response.metadata.pagination.next_record_id\nEND\n```", "summary": "Obtenga la atribución de uso por mes" }, "GetUsageNetworkFlows": { @@ -1166,7 +1170,7 @@ "CreateUser": { "description": "Crea un usuario para tu organización.\n\n**Nota**: Los usuarios sólo pueden crearse con el rol de acceso de administrador,\nsi las claves de la aplicación pertenecen a los administradores.", "summary": "Crear un usuario", - "request_description": "Objeto de usuario a crear.", + "request_description": "Objeto de usuario por crear", "request_schema_description": "Crea, edita y desactiva usuarios." }, "DisableUser": { @@ -1175,7 +1179,7 @@ }, "GetUser": { "description": "Obtén los datos de un usuario.", - "summary": "Recibir los detalles de un usuario" + "summary": "Recibir información detallada de un usuario" }, "UpdateUser": { "description": "Actualiza la información de un usuario.\n\n**Nota**: Sólo puede utilizarse con claves de aplicación pertenecientes a administradores.", diff --git a/layouts/shortcodes/observability_pipelines/configure_existing_pipelines/source_env_vars/splunk_tcp.ja.md b/layouts/shortcodes/observability_pipelines/configure_existing_pipelines/source_env_vars/splunk_tcp.ja.md new file mode 100644 index 00000000000..1625cdf7bce --- /dev/null +++ b/layouts/shortcodes/observability_pipelines/configure_existing_pipelines/source_env_vars/splunk_tcp.ja.md @@ -0,0 +1,3 @@ +- Splunk TCP address: + - The Observability Pipelines Worker listens to this socket address to receive logs from the Splunk Forwarder. For example, `0.0.0.0:9997`. + - 環境変数 `DD_OP_SOURCE_SPLUNK_TCP_ADDRESS` に格納されます。 \ No newline at end of file diff --git a/layouts/shortcodes/observability_pipelines/configure_log_archive/amazon_s3/linux_rpm.es.md b/layouts/shortcodes/observability_pipelines/configure_log_archive/amazon_s3/linux_rpm.es.md new file mode 100644 index 00000000000..21bcf3be2e1 --- /dev/null +++ b/layouts/shortcodes/observability_pipelines/configure_log_archive/amazon_s3/linux_rpm.es.md @@ -0,0 +1,6 @@ +#### Crear un usuario o rol IAM + +Cree un [usuario][1001] o [rol][1002] de IAM y adjúntele la política. + +[1001]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html +[1002]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create.html \ No newline at end of file