Automatizar os Downloads do Relatório de Atividade para um Computador Local

Use o script nesta seção para automatizar o download dos Relatórios de Atividades de um ambiente para um computador local.

Você usa syncAprReports.bat para fazer download de Relatórios de Atividade. Você pode agendar o arquivo de lote usando o agendador do Windows para automatizar o download de Relatórios de Atividade. Consulte Uso de Relatórios de Atividade e Logs de Acesso para Monitoramento do Uso em Introdução ao Oracle Enterprise Performance Management Cloud para Administradores para obter informações detalhadas sobre o Relatório de Atividade.

Você cria relatórios syncAprReports.bat manualmente copiando o script fornecido no procedimento a seguir e, em seguida, atualizando os parâmetros de conexão. Esse script verifica o ambiente e faz o download apenas dos relatórios mais recentes que os disponíveis no diretório de download do computador local.

Nota:

  • O script deve ser executado somente a partir de um computador Windows.
  • Esse script não faz download do Relatório de Atividades de Feedback, que é gerado quando usuários enviar um feedback.
  • Se a senha contiver caracteres especiais, consulte Caracteres Especiais.
  1. Crie um arquivo de lote (.BAT) chamado syncAprReports.bat contendo o script a seguir e salve-o em um local conveniente, como, por exemplo, C:\automate_scripts.
    @echo off
    title APR
    setlocal DisableDelayedExpansion
    
    REM To hardcode the values in the script replace %1, %2, %3, and %4, with the actual values.
    REM Example:
    REM set apr_dir="C:\Oracle\apr"
    REM set username="serviceAdmin"
    REM set password="Ex@mple!"
    REM set url="https://test-example.stg-pbcs.us1.oraclecloud.com"
    set apr_dir=%1
    set username=%2
    set password=%3
    set url=%4
    setlocal EnableDelayedExpansion
    set epmautomate_dir=%cd%
    set lastfile=
    set argC=0
    for %%x in (%*) do Set /A argC+=1
    if %argC% neq 0 (
            if %argC% neq 3 (
                    if %argC% neq 4 (
                            goto :usage
                    )
            )
    )
    goto :login
    :usage
    echo.
    echo Invalid syntax. Please check the parameters. 
    echo Syntax:
    echo 1) syncAprReports.bat APR_FolderPath_on_client username password url
    echo     or 
    echo 2) set the parameters in the file and use below syntax
    echo    syncAprReports.bat
    goto :end
    
    :login
    setlocal DisableDelayedExpansion
    for /f "delims=" %%i in ('epmautomate login %username% %password% %url%') do set result=%%i
    if "Login successful" neq "%result%" (
            echo Login Failed
            goto :end
    ) 
    
    if not exist %apr_dir% (
    echo.
    echo apr folder does not exist 
    GOTO :end
    )
    cd /D %apr_dir%
    for /f "delims=" %%D in ('dir /a:d /b /o:-n') do ( 
    REM AFTER: for /f "delims=" %%D in ('dir /a-d /b /s /o:-n') do (
            set "lastFile=%%~nD"
            goto :next
    )
    
    :next
    setlocal EnableDelayedExpansion
    echo.
    echo Most Recent APR on client is %lastFile%
    
    set "output_cnt=0"
    cd /D %epmautomate_dir%
    for /F "delims=" %%f in ('epmautomate listfiles') do (
    
            cd /D !apr_dir!
            set "line=%%f"
            for /f "tokens=* delims= " %%a in ("!line!") do set line=%%a
            if "!line:~0,3!" equ "apr" (
    
                    if "!line:~4,8!" neq "Feedback" (
    
                            set isValidFile=false
                            if "!line:~-5!" equ ".html" set isValidFile=true
                            if "!line:~-5!" equ ".json" set isValidFile=true
    
                            if "!isValidFile!" equ "true" (
                                    
                                    if "%lastFile%" lss "!line:~4,19!" (
                                            
                                                    if "!line:~4,19!" neq "!dirname!" (
                                                            
                                                            set apr_dir=!apr_dir:"=!
                                                            set /a output_cnt+=1
                                                            set "output[!output_cnt!]=!apr_dir!\!line:~4,19!"
                                                            set "dirname=!line:~4,19!"
                                                            
                                                            REM start downloading
                                                            mkdir "!dirname!"
                                                            cd /D !dirname!
                                                            echo downloading !line!
                                                            set "downloadDir=!apr_dir!\!dirname!"
                                                                                    
                                                            cd /D %epmautomate_dir%
                                                            for /f "delims=" %%i in ('epmautomate downloadfile "!line!"') do set result1=%%i
                                                            move "!line:~24!" "!downloadDir!" > nul
                                                            echo !result1!
                                                            REM end downloading
                                                            
                                                    ) else (
                                                    
                                                            REM start downloading
                                                            cd /D !dirname!
                                                            echo downloading !line!
                                                            set apr_dir=!apr_dir:"=!
                                                            set "downloadDir=!apr_dir!\!dirname!"
                                                            cd /D %epmautomate_dir%
                                                            for /f "delims=" %%i in ('epmautomate downloadfile "!line!"') do set result1=%%i
                                                            move "!line:~24!" "!downloadDir!" > nul
                                                            echo !result1!
                                                            REM end downloading
                                                            
                                                    )
                                    ) else (
                                    
                                            REM TO-DO
                                            
                                    )
                            )
                    )
            )
    )
    
    echo.
    echo %output_cnt% APR's downloaded
    for /L %%n in (1 1 !output_cnt!) DO echo !output[%%n]!
    goto :end
    
    :end
    cd /D %epmautomate_dir%
    endlocal
  2. Modifique syncAprReports.bat para definir os valores dos parâmetros na tabela a seguir. Esses valores são usados para acessar o ambiente com o objetivo de fazer o download de Relatórios de Atividade.

    Tabela 3-3 Valores de Parâmetros a Serem Incluídos no syncAprReports.bat

    Parâmetro Valor Esperado
    set apr_dir=%1 Especifique um diretório existente no qual será feito o download dos Relatórios de Atividade.

    Exemplo: set apr_dir="C:\Oracle\apr"

    set username=%2 Um nome de usuário do Oracle Enterprise Performance Management Cloud que é usado para conexão com o ambiente e fazer o download de Relatórios de Atividade.

    Exemplo: set username="ServiceAdmin"

    set password=%3

    O nome e a localização do arquivo que armazena a senha criptografada do usuário especificado pela variável username. Você também pode especificar a senha do usuário em texto simples (não recomendado). Consulte o comando encrypt para obter informações sobre a criação de um arquivo de senha criptografada.

    Exemplos:

    set password="C:\mySecuredir\password.epw"

    set password="Ex@mple1"

    set url=%4 O URL do ambiente.

    Exemplo: set url="https://test-example.stg-pbcs.us1.oraclecloud.com"

  3. Utilizando o Agendador do Windows, agende syncAprReports.bat. Consulte Automação da Execução de Scripts para obter as etapas detalhadas.