> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tryprofound.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Adobe Experience Manager

> Esta documentación explica cómo configurar el Log Forwarding de Adobe Experience Manager as a Cloud Service (AEMaaCS) para enviar logs de CDN a la plataforma Profound Agent Analytics.

## Descripción general

La integración usa el Log Forwarding HTTPS de autoservicio de Adobe Experience Manager as a Cloud Service para enviar logs de CDN a nuestra API de Agent Analytics. La CDN de AEM está respaldada por Fastly y transmite logs de forma continua mediante HTTPS al destino configurado en tu programa. Para obtener más información sobre el Log Forwarding de AEM, [visita la documentación de Adobe](https://experienceleague.adobe.com/en/docs/experience-manager-cloud-service/content/implementing/developing/log-forwarding).

## Requisitos previos

* Un programa de AEM as a Cloud Service con el Log Forwarding de autoservicio habilitado (Adobe no admite los programas de nivel sandbox y no pueden reenviar logs)

* Acceso a Cloud Manager para confirmar cambios en el repositorio Git del programa y ejecutar un Config Pipeline

* Un Log Ingestion Token de Profound para Agent Analytics

## Configuración

<Steps>
  <Step title="Paso 1">
    En Cloud Manager, agrega tu Log Ingestion Token de Profound como variable secreta en los entornos desde los que quieras reenviar logs.

    Ve a **Configuration → Environment Variables → Add** y configura:

    * **Name** — `PROFOUND_LOG_INGESTION_TOKEN`

    * **Type** — `Secret`

    * **Service Applied** — `All`

    * **Value** — Tu Log Ingestion Token aprovisionado para la plataforma Agent Analytics de Profound (`bot_PROFOUND_LOG_INGESTION_TOKEN`)
  </Step>

  <Step title="Paso 2">
    Agrega un archivo `logForwarding.yaml` en un directorio `config/` de nivel superior en el repositorio Git de tu programa. Esta es la estructura de carpetas que requiere el Config Pipeline de AEM.

    ```yaml config/logForwarding.yaml theme={null}
    kind: "LogForwarding"
    version: "1"
    metadata:
      envTypes: ["prod"]
    data:
      https:
        default:
          enabled: true
          url: "https://artemis.api.tryprofound.com/v1/logs/aem"
          authHeaderName: "X-API-Key"
          authHeaderValue: "${{PROFOUND_LOG_INGESTION_TOKEN}}"
        aem:
          enabled: false
    ```

    `aem.enabled: false` deshabilita el reenvío de las familias de logs de la aplicación AEM, Apache y Dispatcher: solo se envían a Profound los logs de CDN.

    `metadata.envTypes` limita la configuración a tipos de entorno específicos. Establécelo en `["prod"]` para reenviar solo los logs de CDN de producción, o incluye `"stage"` y `"dev"` para reenviar también esos. Omite el bloque `metadata` para aplicarlo a todos los entornos a los que se dirige el Config Pipeline.
  </Step>

  <Step title="Paso 3 (opcional)">
    Los logs de CDN de AEM no incluyen un campo de referente de forma predeterminada. Para completar el campo `referer` de Profound, agrega una transformación de solicitudes de CDN que copie el encabezado `Referer` entrante en una propiedad de log personalizada.

    Agrega lo siguiente al archivo de configuración de CDN de tu programa (por ejemplo, `config/cdn.yaml`):

    ```yaml config/cdn.yaml theme={null}
    kind: "CDN"
    version: "1"
    data:
      requestTransformations:
        rules:
          - name: profound-log-referer
            when: "*"
            actions:
              - type: set
                logProperty: referer
                value:
                  reqHeader: referer
    ```

    <Note>
      El nombre de `logProperty` debe ser exactamente `referer` en minúsculas. Variantes como `Referer` o `referrer` no se reconocerán y el campo permanecerá vacío sin avisar.
    </Note>
  </Step>

  <Step title="Paso 4">
    Despliega la configuración con un **Config Pipeline** de Cloud Manager (Targeted Deployment).

    <Warning>
      `logForwarding.yaml` y los archivos de configuración de CDN solo se despliegan mediante un Config Pipeline. Los pipelines Full Stack y Web Tier no despliegan estos archivos.
    </Warning>

    1. En Cloud Manager, ve a **Pipelines → Add Pipeline → Targeted Deployment → Config Pipeline**.

    2. Apunta el pipeline a la rama que contiene `config/logForwarding.yaml` (y `config/cdn.yaml` si configuraste uno).

    3. Selecciona los entornos en los que debe estar activo el reenvío de logs.

    4. Ejecuta el pipeline.
  </Step>
</Steps>

<Note>
  En el primer envío, la capa de entrega de Fastly subyacente de AEM emite un desafío HTTP único a `/.well-known/fastly/logging/challenge` para validar el destino. El endpoint de Profound lo gestiona automáticamente: no se requiere ninguna acción por tu parte. Si revisas los logs de Cloud Manager y ves una única solicitud de desafío, es lo esperado.
</Note>

<Check>¡Listo! AEM ahora enviará logs de CDN a Profound. Los datos deberían empezar a aparecer en tu panel en unos minutos.</Check>

## Qué se captura

Las entradas de log de CDN de AEM se asignan al esquema de visitas de Profound de la siguiente manera:

* Hora e IP

  * `timestamp` — Hora en que la CDN recibió la solicitud.

  * `cli_ip` — Dirección IP del cliente.

* Solicitud

  * `host` — Encabezado Host de la solicitud del cliente.

  * `url` — Ruta y cadena de consulta solicitadas.

  * `method` — Método HTTP.

  * `req_ua` — Encabezado User-Agent informado por el cliente.

  * `referer` — Encabezado Referer (solo se completa cuando se despliega la transformación de solicitudes de CDN opcional del paso 3).

* Respuesta

  * `status` — Código de estado de la respuesta HTTP.

  * `ttfb` — Tiempo hasta el primer byte, en milisegundos.

  * Tamaño del cuerpo de la respuesta — El esquema de logs de CDN de Adobe no emite un campo nativo de tamaño de respuesta, por lo que se informa como `0`.

## Solución de problemas

* Si los logs no aparecen, confirma que el pipeline que realizó el despliegue fue un **Config Pipeline**, no Full Stack ni Web Tier

* Si el pipeline se ejecuta correctamente pero ninguna solicitud llega a Profound, es posible que el programa todavía use el reenvío de logs heredado de Adobe basado en tickets de soporte. Abre un ticket con Adobe para migrar al Log Forwarding de autoservicio antes de volver a intentarlo

* Si el volumen parece aproximadamente el doble de lo esperado, es posible que el reenvío de logs heredado y el de autoservicio se estén ejecutando en paralelo durante un periodo de migración (Adobe suele resolverlo en unas pocas horas)

* Para respuestas `401` o `403`, verifica que `PROFOUND_LOG_INGESTION_TOKEN` esté configurado con **Service Applied: All** y que el token esté activo en Profound

* Confirma que la `url` empiece con `https://` (de lo contrario, AEM rechaza la configuración en el momento del despliegue)

* Asegúrate de que `aem.enabled: false` esté presente para que no se reenvíen las familias de logs que no son de CDN

## Recursos adicionales

* [Adobe — Log Forwarding for AEM as a Cloud Service](https://experienceleague.adobe.com/en/docs/experience-manager-cloud-service/content/implementing/developing/log-forwarding)

* [Adobe — CDN log entry format](https://experienceleague.adobe.com/en/docs/experience-manager-cloud-service/content/implementing/developing/logging#cdn-log)

* [Adobe — Use Config Pipelines](https://experienceleague.adobe.com/en/docs/experience-manager-cloud-service/content/operations/config-pipeline)

* Contacta con [support@tryprofound.com](mailto:support@tryprofound.com) para preguntas relacionadas con la API

## Consideraciones de seguridad

* Almacena el Log Ingestion Token como variable secreta de Cloud Manager, nunca como un valor de entorno en texto plano

* Rota tu Log Ingestion Token con regularidad

* Supervisa la actividad de reenvío de logs para detectar patrones inusuales
