automation-cloud
latest
false
Importante :
A tradução automática foi aplicada parcialmente neste conteúdo. A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.
UiPath logo, featuring letters U and I in white

Guia de administração do Automation Cloud

Última atualização 18 de dez de 2025

Exportação de logs

Imagem "Rótulo Enterprise" Essa funcionalidade só estará disponível se você estiver no plano de licenciamento Enterprise.

A experiência de registro Unificada permite exportar logs do Automation CloudTM no formato CSV usando um dos seguintes métodos:
  • Opção Exportar na interface do usuário: na seção Logs de auditoria de sua organização ou tenant, selecione Exportar.
  • APIs de logs de auditoria: use as APIs de logs de auditoria.
  • Script personalizado da UiPath: execute um script desenvolvido pela UiPath para exportar logs do armazenamento de logs de auditoria de longo prazo da UiPath.

Para fins de retenção de longo prazo ou de conformidade, tanto a experiência de registro em log unificada quanto a clássica permitem que você configure as exportações de log do Robot para enviar automaticamente dados do Orchestrator para o Azure Blob Storage, AWS S3 ou Google Cloud Storage, onde os arquivos de log são gerados por hora e podem serão processados usando suas próprias soluções de BI ou monitoramento.

Exportando logs usando script

Se você estiver usando a experiência de log unificada, você pode usar um script dedicado para exportar logs de auditoria que não estão mais disponíveis por meio da interface de Logs de Auditoria. O script suporta a recuperação de logs de até 2 anos atrás.

Este script é útil quando:

  • Você precisa acessar logs de auditoria mais antigos para fins de conformidade ou investigação.

  • Você deseja automatizar o arquivamento de logs a longo prazo.

Pré-requisitos

  1. Copie o seguinte script para um arquivo .sh próprio:
    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. Execute o script em um ambiente WSL (Windows Subsystem para Linux) e certifique-se de que as seguintes ferramentas estejam instaladas:
    sudo apt install dos2unix unzip jqsudo apt install dos2unix unzip jq
  3. Prepare o script para execução usando os seguintes comandos:
    dos2unix <script-name>.sh
    chmod +x <script-name>.shdos2unix <script-name>.sh
    chmod +x <script-name>.sh
  4. Crie um aplicativo externo confidencial em seu tenant e atribua o seguinte escopo de API: PM.Audit.Read (aplicativo).
  5. Colete as seguintes credenciais do aplicativo:

    • ID do aplicativo (client_id)
    • Segredo do aplicativo (client_secret)

Etapas

  1. Defina as variáveis necessárias no seu 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. Execute o script usando o seguinte comando: ./<script-name>.sh $client_id $client_secret $org_name $start_date $end_date.

    Por exemplo:

    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

Configuração da Exportação de Logs de Robôs

Para exportar logs de Robôs gerados em seus serviços do Orchestrator para o Azure, AWS S3 e o Armazenamento do Google Cloud, siga os procedimentos específicos descritos mais abaixo. Os logs são salvos em um arquivo .csv no contêiner uipathrobotlogs . A exportação é feita por tenant o que facilita o seguinte:
  • Armazenamento de logs que devem ser mantidos para fins de conformidade e auditoria.
  • Analisando e visualizando a saída de logs em sua própria ferramenta de relatórios ou BI.

    Observação: ao configurar a página de exportação de logs, não oferecemos suporte ao preenchimento de logs de 30 dias.
  1. Faça login na sua conta do Automation Cloud™.
  2. Acesse Admin e selecione o tenant no painel à esquerda.
  3. Selecionar Serviços
  4. No cartão do Orchestrator selecione o ícone Mais e selecione Configuração de exportação de logs.

    O painel Configuração será aberto à direita da janela

  5. Habilite a alternância Enviar logs de robôs para o armazenamento personalizado.
  6. No menu suspenso Tipo de armazenamento, selecione o provedor de armazenamento para o qual deseja exportar os logs. As seguintes opções estão disponíveis:
    • Azure
    • AWS S3
    • Google Cloud Storage
    Observação:

    O recurso de exportação de logs não oferece suporte ao AWS KMS.

  7. Após executar as etapas específicas do provedor, o .csv será gerado.
  8. Os logs serão entregues de hora em hora. Esse intervalo de tempo não é configurável.

Azure

Dica: você pode configurar IPs estáticos para a lista de permissões e não abrir sua rede para todos os IPs externos. Vá para Configurações > Rede > Acesso público > Firewall > Intervalo de endereços no Armazenamento de Blobs do Azure para adicionar os IPs estáticos. Consulte a página Configurando o firewall para obter a lista completa de IPs.


As seguintes opções de armazenamento são suportadas:
  • Armazenamento padrão localmente redundante (LRS)
  • Armazenamento com redundância geográfica padrão (GRS)
  • Armazenamento padrão com redundância geográfica com acesso de leitura (RA-GRS)
  • Armazenamento padrão com redundância de zona (ZRS)
  • LRS Premium
Para obter mais informações sobre tipos de armazenamento, consulte a página Visão geral da conta de armazenamento na documentação oficial do Azure.
  1. No menu suspenso Tipo de Armazenamento, selecione Conta de Armazenamento do Azure.


  2. No campo Azure Blob Connection String, digite a string de conexão do blob conforme recuperado do Azure Portal.


  3. No campo Nome do contêiner, digite o nome do contêiner usado para armazenar o csv no Azure. Por padrão, é uipathrobotlogs. Se um nome de contêiner personalizado for fornecido e ainda não existir, o contêiner será criado para você.
  4. Selecione Salvar. Uma notificação é exibida avisando que você que configurou a exportação dos logs de robô com sucesso.
  5. Na sua Conta de Armazenamento de Blobs no Azure Portal:
    • Selecione Rede em Configurações no painel esquerdo.
    • Selecione Permitir acesso de > Todas as redes.
    • Selecione Salvar para guardar as alterações.



  6. Dentro de uma hora, um arquivo de log .csv é gerado no armazenamento de blobs. O .csv é gerado no contêiner uipathrobotlogs, sob a seguinte hierarquia de pastas [tenant_key]/[year]/[month]/[day]/[hour]/output. É recomendável mapear um tenant para um contêiner, pois a chave do tenant é a única maneira de distinguir entre os tenants se vários forem encaminhados para um contêiner.


AWS S3

Dica: você pode configurar IPs estáticos para a lista de permissões e não abrir sua rede para todos os IPs externos. Use políticas de acesso no AWS S3 para adicionar negar todas as solicitações, a menos que seja da lista aws:SourceIp conforme descrito na página Políticas de bucket para o Amazon S3 do Guia do usuário do AWS S3. Confira a página Configurando o firewall no guia de administração do Automation Cloud para ver a lista completa de IPs.


  1. No menu suspenso Tipo de armazenamento, selecione o AWS S3.


  2. No campo Bucket Name, digite o nome do bucket conforme configurado na AWS.
    Nota: O mesmo nome do bucket não pode ser compartilhado por várias organizações.
  3. No campo Nome da Região, digite o nome das regiões para onde os logs serão exportados. Por exemplo, us-west-1.
  4. Certifique-se de conceder ao usuário do IAM fornecido por meio do comando s3:PutObjecet e s3:DeleteObject acesso ao seu bucket.

Google Cloud Storage

  1. No menu suspenso Tipo de armazenamento, selecione Armazenamento do Google Cloud.


  2. No campo Bucket Name, digite o nome do bucket conforme configurado na Plataforma do Google Cloud.
    Nota: O mesmo nome do bucket não pode ser compartilhado por várias organizações.
  3. Conceda o acesso adequado à conta de serviço da UiPath®, conforme especificado no seguinte comando:
    1. Na plataforma do Google Cloud, navegue para Armazenamento > Navegador.
    2. Encontre o bucket para o qual você deseja editar permissões.
    3. Selecione as elipses verticais e selecione Editar permissões do bucket.
    4. Selecione Adicionar membros e insira a conta de serviço que você usa para acessar o bucket.
    5. No menu suspenso Selecionar uma função , selecione Administrador de Objetos de Armazenamento. Para obter mais informações, consulte Gerenciamento de Identidades e Acessos na documentação do GCP.


Exclusão de configurações de exportação de logs

  1. Expanda o tenant para o qual deseja excluir as configurações de exportação de logs.
  2. Para o serviço do Orchestrator nesse tenant, selecione Configuração de Exportação de Logs. O painel direito da Configuração é exibido.
  3. Desabilite a alternância Enviar logs de robôs para o armazenamento personalizado.
  4. Na janela Excluir configuração , selecione Excluir para confirmar. A configuração é excluída com sucesso.

Esta página foi útil?

Obtenha a ajuda que você precisa
Aprendendo RPA - Cursos de automação
Fórum da comunidade da Uipath
Uipath Logo
Confiança e segurança
© 2005-2025 UiPath. Todos os direitos reservados.