Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

CONTEÚDO

  1. Visão Geral
  2. Objetivo
  3. Pré-requisitos
  4. Instalação
  5. Configuração
  6. Iniciar o serviço instalado
  7. Novidades


01. VISÃO GERAL

O Novo RPW - Task Manager é um substituto do RPW clássico (btb908za). Mais moderno, a execução de pedidos passou a ser realizada em broker appserver já utilizando a funcionalidade de Broker Escalável. Além disso, possui uma configuração mais simplificada. O Novo RPW também conta com novas funcionalidade como cancelamento e priorização de pedidos, também há a possibilidade de alterar e duplicar pedidos de execução e suas respectivas agendas, trazendo mais produtividade para a criação de pedidos de execução. 


02. Objetivo

Esta documentação tem a finalidade de servir como uma guia no momento da migração do RPW padrão para o Novo RPW (Task Manager) e apresentar as novas funcionalidades do Task Manager.


03. Pré-requisitos

  • Datasul versão 12.1.2205 ou superior
  • Java 11


04. Instalação

Copiar arquivo compactado


O arquivo está localizado no diretório do Foundation fnd/interfac/TaskManager/TaskManager.zip.

Extrair os arquivos do arquivo compactado

Expandir
titleProcedimento

Extrair os arquivos em um diretório de sua escolha. 

Exemplo: "C:/TOTVS/TaskManager"

Como resultado obtém-se a estrutura abaixo:

  • C:\TOTVS\TaskManager\application.properties
  • C:\TOTVS\TaskManager\README.txt
  • C:\TOTVS\TaskManager\lib\TaskManager.jar
  • C:\TOTVS\TaskManager\service\Linux\taskmanager
  • C:\TOTVS\TaskManager\service\Linux\TaskManager.sh
  • C:\TOTVS\TaskManager\service\Windows\install.bat
  • C:\TOTVS\TaskManager\service\Windows\JavaService.exe
  • C:\TOTVS\TaskManager\service\Windows\uninstall.bat

Instalador de serviço para Windows

Expandir
titleProcedimento

Editar o arquivo "/service/Windows/install.bat"

Bloco de código
languagebash
themeRDark
:default
@echo on

chcp 65001

set TASKMANAGER_HOME=C:/TOTVS/TaskManager

mkdir "%TASKMANAGER_HOME%/log"

JavaService.exe -install "TOTVS TaskManager-RPW" "%JAVA_HOME%/bin/server/jvm.dll" -Djava.class.path="%TASKMANAGER_HOME%/lib/TaskManager.jar" -start org.springframework.boot.loader.JarLauncher -out %TASKMANAGER_HOME%/log/taskmanager_out.log -err %TASKMANAGER_HOME%/log/taskmanager_err.log -current %TASKMANAGER_HOME% -manual -description "Serviço para a execução do RPW em AppServer"

@echo off

:eof

@echo .
@echo .
@echo .
PAUSE.
Expandir
titleNome do serviço
  • Por padrão temos o nome do serviço definido como "TOTVS TaskManager-RPW"
  • Sugerimos o uso do nome do seu ambiente para complementar e facilitar a organização do serviço.
Expandir
titleDescrição do serviço
  • A descrição do serviço pode ser alterada por meio do parâmetro -description.
Expandir
titleJAVA
  • Deve ser utilizado JAVA 11
  • No arquivo estamos utilizando o %JAVA_HOME% como padrão, caso necessário faça a alteração para utilizar a sua variável de ambiente já existente.
Expandir
titleParâmetros
  • Os parâmetros -Djava.class.path, -current e -err fazem o uso do valor informando em TASK_MANAGER_HOME (ajustar para o diretório definido nas etapas anteriores).

Instalação do serviço:

  • Execute Prompt de Comando como administrador
  • Execute o arquivo "TaskManager/service/Windows/install.bat"

Desinstalador de serviço para Windows

Expandir
titleProcedimento

Editar o arquivo "/service/Windows/uninstall.bat"

  • Informe o nome do serviço definido na etapa anterior (Instalador de serviço para Windows)

Desinstalação do serviço:

  • Execute Prompt de Comando como administrador
  • Execute o arquivo "/service/Windows/uninstall.bat"

Instalador de serviço para Linux

Expandir
titleProcedimento - Linux Java Service Wrapper
  1. Copiar o arquivo TaskManager/service/Linux/taskmanager em /etc/init.d/
  2. Modificar as linhas abaixo do arquivo TaskManager/service/Linux/taskmanager caso seja alterado o diretório do .jar

    Bloco de código
    themeRDark
    PATH_JAR=/usr/local/TaskManager/
    PID_PATH_NAME=/usr/local/TaskManager/TaskManager-pid
    nohup java -jar $PATH_TO_JAR >> /usr/local/TaskManager/log/TaskManager.out 2>&1&
  3. Conceder permissões caso ainda não esteja configurado: 

    Bloco de código
    themeRDark
    sudo chmod +x /etc/init.d/taskmanager


  • Comandos para testes
      - Runs:      sudo service taskmanager start
      - Stops:     sudo service taskmanager stop
      - Restarts: sudo service taskmanager restart
Expandir
titleProcedimento - Ubuntu 16+ Java Service Wrapper
  1. Criar um arquivo em /etc/systemd/system/ 

    Bloco de código
    themeRDark
    sudo vi /etc/systemd/system/TaskManager.service
  2.  Conteúdo do arquivo TaskManager.service

    Bloco de código
    themeRDark
    [Unit]
    Description = TaskManager Java Service
    After network.target = TaskManager.service
    
    [Service]
    Type = forking
    ExecStart = /usr/local/bin/TaskManager.sh start
    ExecStop = /usr/local/bin/TaskManager.sh stop
    ExecReload = /usr/local/bin/TaskManager.sh reload
    
    [Install]
    WantedBy=multi-user.target
  3.  Copiar o arquivo TaskManager/service/Linux/TaskManager.sh em /usr/local/bin/ 

  4.  Modificar as linhas abaixo caso seja alterado o diretório do .jar

    Bloco de código
    themeRDark
    PATH_JAR=/usr/local/TaskManager/
    PID_PATH_NAME=/usr/local/TaskManager/TaskManager-pid
    nohup java -jar $PATH_TO_JAR >> /usr/local/TaskManager/log/TaskManager.out 2>&1&
  5.  Conceder permissões caso ainda não esteja configurado

    Bloco de código
    themeRDark
    sudo chmod +x /usr/local/bin/TaskManager.sh
  6. Criar o diretório de log (alterar o caminho caso a instalação seja em outro local)

    Bloco de código
    themeRDark
    /usr/local/TaskManager/log


Comandos para testes

  • Runs:        /usr/local/bin/./TaskManager.sh start
  • Stops:       /usr/local/bin/./TaskManager.sh stop
  • Restarts:   /usr/local/bin/./TaskManager.sh restart
  • Habilitar o serviço:  sudo systemctl enable TaskManager
  • Iniciar o serviço:      sudo systemctl start TaskManager.service
  • Parar o serviço:       sudo systemctl stop TaskManager.service

05. Configuração


Arquivo de configuração


Arquivo de configuração application.properties.

Utilizando a pasta de exemplo dos passos anteriores, podemos encontrar o arquivo em: "/TaskManager/application.properties"


Configurações do arquivo application.properties


Expandir
titleProcedimento

Altere o arquivo application.properties e adicione as propriedades conforme exemplo abaixo

Bloco de código
themeRDark
appserver_url=AppServer://localhost:5162/Broker10
refresh_interval=10
  • appserver_url: Deve ser preenchido com o nome do servidor de aplicação que atenderá as requisições do orquestrador. Pode ser preenchido com informação de um servidor de aplicação já utilizado no ERP. 
  • refresh_interval: Esta propriedade indica o intervalo em segundos que o orquestrador fará a verificação se existem novos pedidos a serem executados. Esta propriedade é opcional, e caso não seja preenchida será assumido o valor padrão de 10 segundos. 



Criação dos brokers 

Expandir
titleProcedimento

No Task Manager os pedidos serão executados em brokers específicos para o RPW, por isso é necessário que esses brokers sejam criados para que no próximo passo seja possível fazer o vínculo de Servidor x Broker. 

Deve ser criado ao menos um broker para cada empresa existente no ERP. 

Link para documentação de como criar um appserver.

Sugere-se que os brokers criados sejam criados com a configuração de Pool Range - Minimum servers com valor 0 (zero). Desta forma, não ficarão agents no ar quando não houver pedidos em execução.

Habilitar o Task Manager

Expandir
titleProcedimento

Para começar a utilizar o Task Manager, é necessário habilitar o uso através de uma propriedade, para isso:

  • Acesse o Datasul
  • Acesse o programa propriedades-rpw
  • Marque como ativo a propriedade 'Habilita Task Manager'
  • Salve a alteração realizada

Após fazer isso, os pedidos não serão mais executados através do programa btb908za, somente através do Task Manager. Porém é possível desabilitar essa configuração caso seja necessário.

Criar/alterar servidor de execução

Expandir
titleProcedimento
  • Acesse o Datasul
  • Acesse o programa btb962aa

Os passos a seguir devem ser feitos para todas empresas cadastradas no programa btb962aa:

  • Selecione a aba 'Servidores'
  • No momento da migração, são criados automaticamente servidores do Novo RPW para todos os servidores que já existiam na base e não possuíam relação com nenhuma empresa. Por isso, podem aparecer alguns registros já criados com o aplicativo definido 'RPW'
  • Caso já existam os registros, é necessário apenas alterá-los, preenchendo o campo "Servidor de aplicação" com o valor do nome do servidor que será responsável pela execução dos pedidos de execução deste servidor e revisando as informações preenchidas na migração (selecione o botão 'Config. RPW) para ver algumas configurações específicas.
  • Caso os registros não existam, será necessário criar novos registros, instruções detalhadas podem ser encontradas em Cadastro de servidores

Ajuste de pedidos de execução

Expandir
titleProcedimento

Caso no passo anterior tenha sido utilizado os servidores criados pela migração, os pedidos de execução existentes já serão direcionados para os brokers criados para a execução de pedidos através do Task Manager. 

Caso tenham sido criados novos servidores com código diferentes, será necessário criar novos pedidos de execução para os pedidos pendentes utilizando o código dos novos servidores criados.

06. Iniciar serviço instalado



Após concluir as etapas anteriores, basta iniciar o serviço instalado e verificar no log se a aplicação foi iniciada com sucesso.

Bloco de código
themeRDark
  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v2.5.6)

2022-04-06 10:48:20.318  INFO 15224 --- [           main] c.t.f.t.TaskManagerApplication           : Starting TaskManagerApplication v11.5.X-NFRW-SNAPSHOT using Java 11.0.10 on JVN019401640 with PID 15224 (C:\fndlm\TaskManager\lib\TaskManager.jar started by JVN019401640$ in C:\fndlm\TaskManager)
2022-04-06 10:48:20.322  INFO 15224 --- [           main] c.t.f.t.TaskManagerApplication           : No active profile set, falling back to default profiles: default
2022-04-06 10:48:20.867  INFO 15224 --- [           main] c.t.f.t.TaskManagerApplication           : Started TaskManagerApplication in 1.052 seconds (JVM running for 1.795)
2022-04-06 10:48:20.878  INFO 15224 --- [           main] c.t.f.t.TaskManagerApplication           : Inicializando RPW - AppServer: AppServer://localhost:5162/Broker10

Criar pedido de execução

Após a inicialização com sucesso, o ambiente estará pronto para execução de pedidos pelo Task Manager. Pode ser feita a criação de novos pedidos de execução para testar a execução de pedidos utilizando a nova funcionalidade. 

07. Novidades