Skip to end of metadata
Go to start of metadata

TOTVS Discovery

Objetivo

O TOTVS Discovery tem como objetivo monitorar os ambientes (Exemplo: Produção, Homologação, Desenvolvimento, etc...) de execução do ERP Protheus exibindo informações ou diagnósticos, permitindo que o usuário/cliente saiba como se antecipar numa tomada de decisão.

O TOTVS Discovery pode:

  • Auxiliar na detecção de problemas de Hardware/Software nos ambientes de produção, desenvolvimento e de testes.

  • Indicar problemas de performance nos ambientes.

  • Verificar se algum item de boa prática na configuração do ambiente não está sendo seguido.



O TOTVS Discovery está disponível a partir da LIB versão 20180820


Itens monitorados

O TOTVS Discovery monitora os softwares que compõem a instalação básica do Protheus além do Banco de Dados, abrangendo assim os seguintes itens:

  • AppServer

  • DBAccess

  • License Server

  • Banco de Dados


O ponto central do monitoramento são os serviços Appserver, sendo a comunicação com os demais itens efetuada a partir dos mesmos.

Topologia




  • Ao instalar o TOTVS Discovery, ele se tornará um servidor Web para a exibição das páginas de monitoramento e servidor REST para as respostas ao navegador.

  • O Servidor de licenças fornecerá o IP e porta de todos os serviços dos AppServers em execução em que o ambiente esteja utilizando esse servidor de licenças.

  • Ao monitorar o ambiente, será monitorado o DBAccess configurado no ambiente.

  • O DBAccess executará o monitoramento do Banco de dados que está configurado no ambiente.

Banco de dados

O monitoramento do banco de dados é efetuado por padrão nos seguintes produtos  

  • MSSQL

  • Oracle

  • Postgres


O monitoramento é feito através do disparo de consultas ao próprio banco de dados

Para monitorar bancos de dados não listados acima, deve-se utilizar o ponto de entrada TDDBSTAT.

O ponto de entrada TDDBSTAT tem como um retorno um array na seguinte estrutura:

  • Informações obrigatórias

    • aRet[ i , 1 ](C) = Título

    • aRet[ i , 2 ](C) = Descrição

    • aRet[ i , 3 ](X) = Valor

    • aRet[ i , 4 ](A) = Array de saúde não obrigatório

  • A saúde não é obrigatória

    • aRet[ 1 , 4 , j , 1 ](N) = Saúde - Status ( 1 , 2 , 3 , 4 ) --Atualmente o 3 e 4 estão sendo tratados da mesma forma

    • aRet[ 1 , 4 , j , 2 ](C) = Saúde - Descrição

    • aRet[ 1 , 4 , j , 3 ](C) = Saúde - Detalhe

    • aRet[ 1 , 4 , j , 4 ](C) = Saúde - Link


Abaixo um exemplo do mesmo:

Include 'protheus.ch'

User Function TDDBSTAT()

Local aDeArray As Array

aDeArray := {}

aAdd( aDeArray , { "idTesteMonitor" , "Item monitorado" , "Meu valor monitorado" , { { 1 , "Saúde" , "Tô legal" , Nil } } } )

Return aDeArray

Requisitos mínimos

Para o completo monitoramento do ambiente são necessários os seguintes requisitos:

  • Binário do ERP, versão Build 7.00.131227A ou superior

  • Binários DbAccess Build 20171117-20180316 ou superior

  • Lib data 06/06/2018 ou superior

  • License Server Virtual, 1.03.015

  • Navegadores de internet compatíveis com o THF, maiores informações http://tdn.totvs.com/display/THF/Infraestrutura


Como habilitar

O TOTVS Discovery estará disponível a partir da LIB versão 20180820
O Download da ferramenta será disponibilizado em breve. Previsão para Outubro/2018.


O TOTVS Discovery deve ser instalado como um serviço onde será indicado qual o servidor de licenças deverá ser usado para o monitoramento.

Instalação

  • Baixe o instalador no portal Suporte TOTVS (Downloads > Protheus > TotvsTec-Framework > Instaladores)

  • Execute o TOTVS Discovery_setup.exe


Confirme a tela de bem vindo


Confirme a tela de “EULA”


Informe em qual diretório devem ser instalados os arquivos do TOTVS Discovery


Caso o diretório não exista o sistema irá criar automaticamente.


Confirme a tela de pacotes necessários para o funcionamento do TOTVS Discovery


Informe os seguintes campos.

  • IP do License Server - O TOTVS Discovery utilizará as informações desse servidor de licenças para obter as informações dos ambientes conectados nele.

  • Porta do License Server - Porta onde o servidor de licenças está em execução.

  • Porta para o AppServer do TOTVS Discovery - Uma porta reservada para o uso de conexão com o TOTVS Discovery via SmartClient.

  • IP da máquina - IP da máquina onde será executado o serviço de HTTP para a exibição.


  • Porta para o HTTP - informa a porta que será utilizada para exibição da página. Recomendamos o uso de uma porta diferente da 80, que é padrão do sistema operacional, para evitar possíveis conflitos.

  • Porta para o REST - informa a porta para o serviço de REST.


  • Aguarde a instalação.



  • Indique o caminho de instalação para os atalhos a serem criados.


  • Ao término da instalação, abra um navegador de internet e indique o servidor e porta informados na instalação. Por exemplo http://l192.168.1.1:8080



Versão Linux

  • Baixe o instalador Linux totvsdiscovery_installer.jar no portal Suporte TOTVS (Downloads > Protheus > TotvsTec-Framework > Instaladores)

  • Execute-o como administrador sudo java –jar totvsdiscovery_installer.jar


Confirme a tela de “EULA”



Pressione 1 para aceitar o termo e continuar

 

Informe em qual diretório devem ser instalados os arquivos do TOTVS Discovery

Caso o diretório não exista o sistema irá criar automaticamente.

 


Confirme os pacotes necessários para o funcionamento do TOTVS Discovery

 

Informe os seguintes campos: 

  • IP do License Server - O TOTVS Discovery utilizará as informações desse servidor de licenças para obter as informações dos ambientes conectados nele.

  • Porta do License Server - Porta onde o servidor de licenças está em execução.

  • Porta para o AppServer do TOTVS Discovery - Uma porta reservada para o uso de conexão com o TOTVS Discovery via SmartClient.

  • IP da máquina - IP da máquina onde será executado o serviço de HTTP para a exibição.

  • Porta para o HTTP - informa a porta que será utilizada para exibição da página. Recomendamos o uso de uma porta diferente da 80, que é padrão do sistema operacional, para evitar possíveis conflitos.

  • Porta para o REST - informa a porta para o serviço de REST.


Pressione 1 para continuar 


Aguarde a instalação.

Esse é a estrutura criada ao final na instalação:

Para subir o serviço (Server) do TOTVS Discovery execute o seguinte comando: ./discovery.sh start

Server iniciado (appsrvlinux)


Uso

Para a utilização do TOTVS Discovery é necessário o cadastramento de um usuário no Servidor de licenças, maiores detalhes verifique a documentação http://tdn.totvs.com/display/framework/TOTVS+License+Server+Virtual


Acesse o link conforme a instalação http://192.168.1.1:8080

  • Utilize o usuário criado no Servidor de Licenças.

  • O usuário deve possuir uma senha, não é permitido senhas vazias.


  • Em alguns casos, se o Servidor de licenças for reinstalado ou a máquina onde o Hardlock está instalado sofrer alguma alteração (Porta, IP, outros motivos) será gerado um novo ID, devendo ser selecionado o ID atual.


  • Após o login, Serão exibidos todos os ambientes que estão utilizando o servidor de licenças monitorado.


  • Serão criados os cartões para os seguintes itens de monitoração.

  1. Servidores.

  2. Servidor de licenças.

  3. Gateway.

  4. Banco de dados.


  • Para cada item será exibido um status de saúde com 3 níveis.

  1. OK - Os itens monitorados não possuem valores fora do padrão.

  2. Atenção - Existe algum item monitorado que requer atenção.

  3. Problemas - Existe algum item monitorado que está fora do padrão de monitoração.



  1. Servidores


  • Nessa página serão listadas as informações da máquina selecionada, como exemplo a memória.

  • Serão criados cartões referentes a cada serviço do Protheus em execução com a opção de visualização de maiores detalhes.


  • É possível expandir informações detalhadas como por exemplo Memória física total, onde aparecerá um descritivo indicando o motivo do status.


  • Clicando em detalhes serão exibidos os detalhes do serviço Protheus selecionado. Como por exemplo o modo de execução do serviço.


2. Servidor de licenças.


  • Ao selecionar o Servidor de licenças, serão mostradas as informações da máquina em que o serviço está em execução.

  • Será criado um cartão para a exibição de maiores detalhes.

  • Nos detalhes serão mostradas informações referentes ao Serviço do Servidor de Licenças monitorado.



3. DBAccess



  • Ao clicar no DBAccess serão mostradas informações referentes ao serviço do DBAccess monitorado.


4. DataBase


  • Ao Selecionar o Database, serão exibida algumas informações monitoradas sobre o banco de dados.


Configurações:


Nessa tela é possível configurar os seguintes aspectos do TOTVS Discovery:

  • Monitoramento: É possível ativar ou desativar o monitoramento, sendo que ao desativá-lo, a thread de monitoramento continua sendo executada, porém ao ver que está desativada, deixa de se conectar em todos os nós via RPC e fica em estado de espera.

  • Tempo de monitoramento: Aqui é possível definir de quantos em quantos minutos o TOTVS Discovery irá efetuar o monitoramento do ambiente Protheus.

  • Histórico: Aqui é possível definir em quantos dias no máximo serão armazenadas as informações de monitoramento, lembrando que tudo que é monitorado é persistido em uma base local SQLite, presente no próprio TOTVS Discovery, portanto uma limpeza periódica dos dados é essencial para a plena atividade do SQLite.

  • Envio de dados para a TOTVS: Aqui é possível habilitar o envio de dados para a TOTVS, uma vez ativo, todos os dados monitorados serão enviados para a TOTVS, com o intuito da TOTVS ter pleno conhecimento no ambiente do cliente e agilizar o atendimento.


FAQ - Perguntas Frequentes

1. Ao entrar no endereço do TOTVS Discovery não é exibida nenhuma página.
> Verifique se você indicou a porta correta no endereço, por padrão a porta do HTTP é a porta 80, porém é possível indicar uma porta diferente durante a instalação.
> Verifique se as configurações da seção HTTP do AppServer.ini estão ativas e corretas

2. Os recursos deixaram de ser monitorados.
> Verifique se sua infraestrutura está permitindo a conexão RPC corretamente e também se a mesma está em plena atividade.
> O TOTVS Discovery possui um JOB de monitoramento que ao finalizar o monitoramento se auto-inicia novamente, caso nenhuma thread esteja no ar algum erro inesperado ocorreu, reinicie o serviço do AppServer e verifique o LOG para mais informações sobre o erro.

3. Ao navegar no TOTVS Discovery, diversos erros estão ocorrendo e nenhum item é exibido.
> A comunicação entre a interface web e o TOTVS Discovery é efetuada via REST, portanto o mesmo precisa estar configurado corretamente e ativo no AppServer.ini. Para utilização do REST é importante ressaltar a importância da chave MAXSTRINGSIZE na seção GENERAL.

4. Como adiciono recursos para monitoramento?
> Isso é feito de forma automática quando esse novo recurso solicita qualquer informação ao License Server, após algum tempo o TOTVS Discovery pede os endereços conhecidos e então efetua o monitoramento.

5. O monitoramento não é online?
> Não, o monitoramento é efetuado de tempos em tempos (de acordo com a configuração) e os dados são persistidos no SQLite do próprio TOTVS Discovery. Isso evita que os itens monitorados sofram com qualquer queda de performance devido ao constante monitoramento e intensivo tráfego de dados na rede.

6. Por que o SmartClient não é monitorado?
> Todo o monitoramento é efetuado via RPC e JOBS, dado isso não é possível trabalhar com qualquer interface, seja ela o SmartClient padrão, SmartClient HTML ou WebApp.

7. O que fazer se o IP do servidor onde o TOTVS Discovery está instalado for alterado, ou estiver ocorrendo erro de HTTP no login?
> Primeiramente, abra o arquivo appserver.ini (por padrão, na pasta C:\TOTVS\TOTVSDiscovery\bin\appserver), e altere o IP na linha AllowOrigin= da seção [HTTPURI]
> Em seguida, abra o arquivo config.json (por padrão, na pasta C:\TOTVS\TOTVSDiscovery\data\web\assets) e altere o IP
> Salve os arquivos e reinicie o serviço do TOTVS Discovery
> No navegador utilizado, na tela de login, pressione as teclas CTRL+F5 para fazer um refresh forçado. Se não resolver, limpe o cache do navegador e reinicie-o.






  • No labels