automation-cloud
latest
false
Importante :
Este contenido se ha localizado parcialmente a partir de un sistema de traducción automática. La localización de contenidos recién publicados puede tardar entre una y dos semanas en estar disponible.
UiPath logo, featuring letters U and I in white

Guía para administradores de Automation Cloud

Última actualización 18 de dic. de 2025

Exportar registros

Imagen de 'Etiqueta de empresa' Esta característica solo está disponible si estás en el plan de licencia Empresarial.

La experiencia de registro unificado te permite exportar registros de Automation CloudTM en formato CSV utilizando uno de los siguientes métodos:
  • Opción Exportar en la interfaz de usuario: en la sección Registros de auditoría de tu organización o tenant, selecciona Exportar.
  • API de registros de auditoría: utiliza las API de registros de auditoría.
  • Script personalizado de UiPath: ejecuta un script desarrollado por UiPath para exportar registros del almacén de registros de auditoría a largo plazo de UiPath.

Para fines de retención o cumplimiento a largo plazo, tanto la experiencia de registro unificada como la clásica te permiten configurar las exportaciones de registros de robots para enviar automáticamente datos de Orchestrator a Azure Blob Storage, AWS S3 o Google Cloud Storage, donde los archivos de registro se generan cada hora y pueden procesarse utilizando sus propias soluciones de BI o de supervisión.

Exportar registros mediante script

Si utilizas la experiencia de registro unificado, puedes utilizar un script dedicado para exportar los registros de auditoría que ya no están disponibles a través de la interfaz de Registros de auditoría. El script admite la recuperación de registros de hasta 2 años en el pasado.

Este script es útil cuando:

  • Necesitas acceso a los registros de auditoría más antiguos para fines de cumplimiento o investigación.

  • Quiere automatizar el archivo de registros a largo plazo.

Requisitos previos

  1. Copia el siguiente script en un archivo .sh propio:
    appId=$1
    appSecret=$2
    organizatioNameOrId=$3
    fromDate=$4
    toDate=$5
    mode=${6:-s}
    cloud=${7:-cloud}
    
    if [[ $# -lt 5 ]]; then
      echo "Error: Not all required input parameters provided."
      echo "Usage: $0 <appId> <appSecret> <organizatioNameOrId> <fromDate> <toDate> <mode>(optional: v for verbose, s for silent)"
      exit 1
    fi
    
    # Validate "fromDate" date format (MM/DD/YYYY)
    if ! date -d "$fromDate" &>/dev/null; then
      echo "Error: Invalid date format for 'fromDate'. Please use MM/DD/YYYY format."
      exit 1 
    fi
    
    # Validate "to" date format (MM/DD/YYYY)
    if ! date -d "$toDate" &>/dev/null; then
      echo "Error: Invalid date format for 'toDate'. Please use MM/DD/YYYY format."
      exit 1
    fi
    
    echo $(date +"%Y-%m-%d %H:%M:%S.%3N") "Start Getting UiPath Token."
    response=$(curl --data-urlencode -X POST "https://${cloud}.uipath.com/${organizationNameOrId}/identity_/connect/token" -$mode \
                -d "grant_type=client_credentials" \
                -d "scope=PM.Audit.Read" \
                -d "client_id=$appId" \
                -d "client_secret=$appSecret" \
                -H "Content-Type: application/x-www-form-urlencoded")
    
    access_token=$(echo "$response" | jq -r '.access_token')
    
    if [[ "$access_token" == null ]]; then
      echo "Error: Access token is null or empty in the response. Please verify the appId and appSecret."
      exit 1
    fi
    
    base_dir=$(date +"%Y-%m-%d%H:%M:%S.%3N")
    echo $base_dir "Start Downloading UiPath Platform Audit logs."
    # Define the base URL
    base_url="https://${cloud}.uipath.com/${organizatioNameOrId}/orgaudit_/api/query/downloadeventsfromlongtermstore"
    
    mkdir -p $base_dir
    # Iterate through time intervals
    current_date=$(date -u -d "$fromDate" +"%Y-%m-%dT%H:%M:%SZ")
    seconds_in_a_day=$((24*60*60))
    while [ "$(date -d "$current_date" +%s)" -le "$(date -d "$toDate" +%s)" ]; do
      next_date=$(date -u -d "$current_date + $(($seconds_in_a_day-1)) seconds" +"%Y-%m-%dT%H:%M:%SZ")
      
      # Construct the full URL with the current time interval
      formatted_current_date=$(date -u -d "$current_date" +"%Y-%m-%dT%H:%M:%SZ" | sed 's/\//%2F/g')
      formatted_current_date="${current_date}"
      formatted_next_date=$next_date | sed 's/\//%2F/g'
      formatted_next_date="${next_date}"
      full_url="$base_url?from=$formatted_current_date&to=$formatted_next_date"
    
      echo $full_url
    
      echo "Downloading UiPath Audit Log from $current_date to $next_date"
      curl -X GET "$full_url" -$mode \
           -H "Authorization: Bearer $access_token" \
           -o "${base_dir}/${current_date////-}_to_${next_date////-}.zip"  # Save the response to a file
      
      # Move to the next time interval
      current_date=$next_date
      one=1
      current_date=$(date -u -d "$current_date + $one seconds" +"%Y-%m-%dT%H:%M:%SZ")
    done
    
    for zip_file in "$base_dir"/*.zip; do
      zip_file_name="$(basename "$zip_file")"
      unzip -q "$zip_file" -d "$base_dir/auditlogs/"
      echo "Extracted ${zip_file_name%.*}"
      rm "$zip_file"
    done
    
    shopt -s nullglob
    for zip_file in "$base_dir/auditlogs"/*.zip; do
      zip_file_name="$(basename "$zip_file")"
      unzip -q "$zip_file" -d "$base_dir/auditlogs/${zip_file_name%.*}"
      for data_file in "$base_dir/auditlogs"/${zip_file_name%.*}/*.txt; do
        data_file_name="$(basename "$data_file")"
        mv "$data_file" "$base_dir/auditlogs/${data_file_name%.*}_${zip_file_name%.*}.txt"
        rm -r "$base_dir/auditlogs/${zip_file_name%.*}"
      done
      rm "$zip_file"
    done
    shopt -u nullglob
    
    echo $(date +"%Y-%m-%d %H:%M:%S.%3N") "Downloaded UiPath Platform Audit logs and saved them according to UTC date"appId=$1
    appSecret=$2
    organizatioNameOrId=$3
    fromDate=$4
    toDate=$5
    mode=${6:-s}
    cloud=${7:-cloud}
    
    if [[ $# -lt 5 ]]; then
      echo "Error: Not all required input parameters provided."
      echo "Usage: $0 <appId> <appSecret> <organizatioNameOrId> <fromDate> <toDate> <mode>(optional: v for verbose, s for silent)"
      exit 1
    fi
    
    # Validate "fromDate" date format (MM/DD/YYYY)
    if ! date -d "$fromDate" &>/dev/null; then
      echo "Error: Invalid date format for 'fromDate'. Please use MM/DD/YYYY format."
      exit 1 
    fi
    
    # Validate "to" date format (MM/DD/YYYY)
    if ! date -d "$toDate" &>/dev/null; then
      echo "Error: Invalid date format for 'toDate'. Please use MM/DD/YYYY format."
      exit 1
    fi
    
    echo $(date +"%Y-%m-%d %H:%M:%S.%3N") "Start Getting UiPath Token."
    response=$(curl --data-urlencode -X POST "https://${cloud}.uipath.com/${organizationNameOrId}/identity_/connect/token" -$mode \
                -d "grant_type=client_credentials" \
                -d "scope=PM.Audit.Read" \
                -d "client_id=$appId" \
                -d "client_secret=$appSecret" \
                -H "Content-Type: application/x-www-form-urlencoded")
    
    access_token=$(echo "$response" | jq -r '.access_token')
    
    if [[ "$access_token" == null ]]; then
      echo "Error: Access token is null or empty in the response. Please verify the appId and appSecret."
      exit 1
    fi
    
    base_dir=$(date +"%Y-%m-%d%H:%M:%S.%3N")
    echo $base_dir "Start Downloading UiPath Platform Audit logs."
    # Define the base URL
    base_url="https://${cloud}.uipath.com/${organizatioNameOrId}/orgaudit_/api/query/downloadeventsfromlongtermstore"
    
    mkdir -p $base_dir
    # Iterate through time intervals
    current_date=$(date -u -d "$fromDate" +"%Y-%m-%dT%H:%M:%SZ")
    seconds_in_a_day=$((24*60*60))
    while [ "$(date -d "$current_date" +%s)" -le "$(date -d "$toDate" +%s)" ]; do
      next_date=$(date -u -d "$current_date + $(($seconds_in_a_day-1)) seconds" +"%Y-%m-%dT%H:%M:%SZ")
      
      # Construct the full URL with the current time interval
      formatted_current_date=$(date -u -d "$current_date" +"%Y-%m-%dT%H:%M:%SZ" | sed 's/\//%2F/g')
      formatted_current_date="${current_date}"
      formatted_next_date=$next_date | sed 's/\//%2F/g'
      formatted_next_date="${next_date}"
      full_url="$base_url?from=$formatted_current_date&to=$formatted_next_date"
    
      echo $full_url
    
      echo "Downloading UiPath Audit Log from $current_date to $next_date"
      curl -X GET "$full_url" -$mode \
           -H "Authorization: Bearer $access_token" \
           -o "${base_dir}/${current_date////-}_to_${next_date////-}.zip"  # Save the response to a file
      
      # Move to the next time interval
      current_date=$next_date
      one=1
      current_date=$(date -u -d "$current_date + $one seconds" +"%Y-%m-%dT%H:%M:%SZ")
    done
    
    for zip_file in "$base_dir"/*.zip; do
      zip_file_name="$(basename "$zip_file")"
      unzip -q "$zip_file" -d "$base_dir/auditlogs/"
      echo "Extracted ${zip_file_name%.*}"
      rm "$zip_file"
    done
    
    shopt -s nullglob
    for zip_file in "$base_dir/auditlogs"/*.zip; do
      zip_file_name="$(basename "$zip_file")"
      unzip -q "$zip_file" -d "$base_dir/auditlogs/${zip_file_name%.*}"
      for data_file in "$base_dir/auditlogs"/${zip_file_name%.*}/*.txt; do
        data_file_name="$(basename "$data_file")"
        mv "$data_file" "$base_dir/auditlogs/${data_file_name%.*}_${zip_file_name%.*}.txt"
        rm -r "$base_dir/auditlogs/${zip_file_name%.*}"
      done
      rm "$zip_file"
    done
    shopt -u nullglob
    
    echo $(date +"%Y-%m-%d %H:%M:%S.%3N") "Downloaded UiPath Platform Audit logs and saved them according to UTC date"
  2. Ejecuta el script en un entorno WSL (Subsistema de Windows para Linux) y asegúrate de que estén instaladas las siguientes herramientas:
    sudo apt install dos2unix unzip jqsudo apt install dos2unix unzip jq
  3. Prepara el script para su ejecución utilizando los siguientes comandos:
    dos2unix <script-name>.sh
    chmod +x <script-name>.shdos2unix <script-name>.sh
    chmod +x <script-name>.sh
  4. Crea una aplicación externa confidencial en tu tenant y asigna el siguiente ámbito de API: PM.Audit.Read (aplicación).
  5. Recopila las siguientes credenciales de aplicación:

    • ID de la aplicación (client_id)
    • Secreto de la aplicación (client_secret)

Pasos

  1. Establece las variables requeridas en tu terminal:
    client_id='<your-client-id>'
    client_secret='<your-client-secret>'
    org_name='<your-org-name>'
    start_date='MM/DD/YYYY'
    end_date='MM/DD/YYYY'client_id='<your-client-id>'
    client_secret='<your-client-secret>'
    org_name='<your-org-name>'
    start_date='MM/DD/YYYY'
    end_date='MM/DD/YYYY'
  2. Ejecuta el script utilizando el siguiente comando: ./<script-name>.sh $client_id $client_secret $org_name $start_date $end_date.

    Por ejemplo:

    client_id='<clientId>'
    client_secret='<clientsecret>'
    org_name='test_org'
    start_date='09/01/2025'
    end_date='10/01/2025'
    ./<script-name>.sh $client_id $client_secret $org_name $start_date $end_date vclient_id='<clientId>'
    client_secret='<clientsecret>'
    org_name='test_org'
    start_date='09/01/2025'
    end_date='10/01/2025'
    ./<script-name>.sh $client_id $client_secret $org_name $start_date $end_date v

Configuración de la exportación de los registros del robot

Para exportar los registros de UiPath Robot generados en tus servicios de Orchestrator a Azure, AWS S3 y Google Cloud Storage, sigue los procedimientos específicos descritos más adelante. Los registros se guardan en un archivo .csv en el contenedor uipathrobotlogs . La exportación se realiza por tenant, lo que facilita lo siguiente:
  • Almacenamiento de registros que deben conservarse para fines de cumplimiento y auditoría.
  • Analizar y visualizar los resultados de los registros en tus propias herramientas de informes o de BI.

    Nota: Al configurar la página de exportación de registros, no se admite la reposición de registros de 30 días.
  1. Inicia sesión en tu cuenta de Automation Cloud™.
  2. Ve a Administración y seleccione el tenant en el panel de la izquierda.
  3. Seleccionar Servicios.
  4. En la tarjeta de Orchestrator, selecciona el icono Más y selecciona Configuración de exportación de registros.

    El panel Configuración aparecerá a la derecha de la ventana.

  5. Activa la opción Enviar los registros del robot a un almacenamiento personalizado.
  6. En el menú desplegable Tipo de almacenamiento, selecciona el proveedor de almacenamiento al que quieres exportar los registros. Las siguientes opciones están disponibles:
    • Azure
    • AWS S3
    • Cloud Storage de Google
    Nota:

    La característica de exportación de registros no es compatible con AWS KMS.

  7. Después de realizar los pasos específicos del proveedor, se genera .csv.
  8. Los registros se entregarán por horas. Este intervalo de tiempo no es configurable.

Azure

Consejo: puedes configurar IP estáticas en la lista de permitidos y no abrir tu red a todas las IP externas. Ve a Configuración > Redes > Acceso público > Firewall > Intervalo de direcciones en Azure Blob Storage para añadir las IP estáticas. Consulta la página Configurar el cortafuegos para ver la lista completa de IP.


Se admiten las siguientes opciones de almacenamiento:
  • Almacenamiento estándar con redundancia local (LRS)
  • Almacenamiento estándar con redundancia geográfica (GRS)
  • Almacenamiento con redundancia geográfica de acceso de lectura estándar (RA-GRS)
  • Almacenamiento estándar con redundancia de zona (ZRS)
  • LRS premium
Para obtener más información sobre los tipos de almacenamiento, consulta la página Información general de la cuenta de almacenamiento en la documentación oficial de Azure.
  1. En el menú desplegable Tipo de almacenamiento, selecciona Cuenta de almacenamiento de Azure.


  2. En el campo Azure Blob Connection String, introduce la cadena de conexión blob tal y como se ha recuperado de Azure Portal.


  3. En el campo Nombre del contenedor, introduce el nombre del contenedor utilizado para almacenar el .csv en Azure. El valor predeterminado es uipathrobotlogs. Si se ofrece un nombre de contenedor personalizado y aún no existe, se creará el contenedor para ti.
  4. Selecciona Guardar. Se muestra una notificación que te permite saber que has configurado con éxito la exportación de los registros del robot.
  5. En tu cuenta de Blob Storage en Azure Portal:
    • Selecciona Red en Configuración en el panel izquierdo.
    • Selecciona Permitir el acceso desde > Todas las redes.
    • Selecciona Guardar para guardar los cambios.



  6. En el plazo de una hora, se genera un archivo de registro .csv en el almacenamiento blob. El .csv se genera en el contenedor uipathrobotlogs, bajo la siguiente jerarquía de carpetas [tenant_key]/[year]/[month]/[day]/[hour]/output. Se recomienda asignar un tenant a un contenedor, ya que la clave del tenant es la única forma de distinguir entre tenants si se dirigen varios a un contenedor.


AWS S3

Consejo: puedes configurar IP estáticas en la lista de permitidos y no abrir tu red a todas las IP externas. Utiliza políticas de acceso en AWS S3 para añadir denegar todas las solicitudes a menos que sea de la lista aws:SourceIp como se describe en la página Políticas de depósito para Amazon S3 de la guía de usuario de AWS S3. Consulta la página Configurar el cortafuegos de la guía de administración de Automation Cloud para ver la lista completa de IP.


  1. En el menú desplegable Tipo de almacenamiento, selecciona AWS S3.


  2. En el campo Nombre del depósito, introduce el nombre del depósito tal y como está configurado en AWS.
    Nota:No puede compartirse el mismo nombre de depósito entre varias organizaciones.
  3. En el campo Nombre de la región, introduce el nombre de las regiones a las que se van a exportar los registros. Por ejemplo, us-west-1.
  4. Asegúrate de conceder al usuario IAM proporcionado a través de la solicitud s3:PutObject y s3:DeleteObject acceso a tu depósito.

Cloud Storage de Google

  1. En el menú desplegable Tipo de almacenamiento, selecciona Google Cloud Storage.


  2. En el campo Nombre del depósito, introduce el nombre del depósito tal y como está configurado en Google Cloud Platform.
    Nota:No puede compartirse el mismo nombre de depósito entre varias organizaciones.
  3. Otorga el acceso adecuado a la cuenta de servicio de UiPath®, como se especifica en la siguiente solicitud:
    1. En Google Cloud Platform, navega hasta Almacenamiento > Navegador.
    2. Busca el depósito para el que quieres editar los permisos.
    3. Selecciona los puntos suspensivos verticales y selecciona Editar permisos de depósito.
    4. Selecciona Añadir miembros e introduce la cuenta de servicio que utilizas para acceder al depósito.
    5. En el menú desplegable Seleccionar un rol , selecciona Administrador de objetos de almacenamiento. Para obtener más información, consulta Gestión de identidades y accesos en la documentación de GCP.


Cómo eliminar la configuración de la exportación de registros

  1. Despliega el tenant para el que quieres eliminar la exportación de registros.
  2. Para el servicio de Orchestrator en ese tenant, selecciona Configuración de exportación de registros. Se mostrará el panel derecho de Configuración .
  3. Activa la opción Enviar los registros del robot a un almacenamiento personalizado.
  4. En la ventana Eliminar configuración , selecciona Eliminar para confirmar. La configuración se ha eliminado correctamente.

¿Te ha resultado útil esta página?

Obtén la ayuda que necesitas
RPA para el aprendizaje - Cursos de automatización
Foro de la comunidad UiPath
Uipath Logo
Confianza y seguridad
© 2005-2025 UiPath. Todos los derechos reservados.