Importante
Esse serviço estará disponível apenas em builds iguais ou superiores 20.3.2.0 do Appserver.
WebMonitor é o novo monitor de conexões do Appserver acessado através do browser. Ele é uma substituição direta do Monitor Eléctron.
Foi todo desenvolvido com tecnologias internas, sendo TLPP no backend e PO-UI no frontend.
Para o correto funcionamento é necessária a utilização da porta multiprotocolo (veja aqui)
Configurações no arquivo ini (appserver.ini)
Por padrão o WebMonitor estará ligado, para desligar o serviço é necessário adicionar a chave ENABLE=0 na seção WEBMONITOR no appserver.ini:
[WEBMONITOR] ENABLE=0
Sistema de Privilégios (a partir da versão 1.2)
O WebMonitor, suporta um sistema simples de privilégios, baseada em configuração efetuada no arquivo appServer.ini, podendo-se configurar privilégios para determinadas operações e usuários, através da adição de chaves na sessão [TDS].
- Para manter o mesmo comportamento de ambientes com versões mais antigas, todas as operações vem liberadas por padrão na ausência da sessão [TDS] ou da chave da operação.
- O usuário deve pertencer ao grupo administrador ou ser administrador.
- As informações dessa sessão são compartilhadas pelo monitor da extensão "TDS-VSCode" e pela aplicação "Monitor (Electron)".
[TDS] AllowMonitor=<username list> EnableDisconnectUser=<username list> EnableSendMessage=<username list> EnableBlockNewConnection=<username list>
Chave | Permissão |
---|---|
AllowMonitor | Acesso ao monitor de conexões |
EnableDisconnectUser | Desconectar usuários |
EnableSendMessage | Enviar mensagens |
EnableBlockNewConnection | Bloquear novas conexões |
- <username list> é a lista de usuários com o privilégio liberado, separadas por `,` (vírgula).
- Para liberar o privilégio a qualquer usuário, coloque `*` (valor padrão).
- Para bloquear o privilégio a qualquer usuário coloque `0` (zero).
Acesso (URL)
O acesso é feito através do browser e deve ser utilizada a mesma porta de conexão do Smartclient, lembrando apenas do protocolo HTTP ou HTTPS (caso a conexão seja segura, com SSL).
O endereço de acesso é o seguinte:
ou
Para saber se o ambiente está com SSL ligado, clique aqui para verificar a chave MULTIPROTOCOLPORTSECURE do appserver.ini.
Como ocorre no Monitor Eléctron, o login no serviço do WebMonitor somente pode ser feito através do usuário Administrador.
WebMonitor com Broker
Para utilização do WebMonitor com o Broker SmartClient é necessário utilizar a chave PROTHEUS_MONITOR_EMBEDDED=1 (veja mais aqui) no appserver.ini do broker
Importante
A partir da versão 12.1.2410 do Protheus (24.3.0.0 do Appserver) o Broker HTTP também aceita conexões do WebMonitor, mudando apenas a chave para USING_WEBMONITOR = 1.
Para versões anteriores, a chave PROTHEUS_MONITOR_EMBEDDED só funciona para o broker para Smartclient Desktop, portanto se utilizar broker HTTP para WebApp será necessário criar um segundo broker como Smartclient desktop apenas para monitoramento.
A partir da versão 12.1.2410 do Protheus (24.3.0.0 do Appserver) o acesso ao WebMonitor via Broker HTTP pode ser realizado com HTTPS ou HTTP.
Para versões anteriores, o acesso do WebMonitor via Broker deve obrigatoriamente ser feito através do protocolo HTTP (http://), mesmo que a conexão tenha sido configurada via SSL, essa característica se deve à configuração da Multi Porta.
Exemplo do arquivo appserver.ini do Broker para o balance do Smartclient Desktop:
[BALANCE_SMART_CLIENT_DESKTOP] ; nome do serviço Windows (apenas se broker for usado como serviço Windows) SERVICE_NAME = Nome_Serviço_Windows ; porta TCP onde os cliente se conectam LOCAL_SERVER_PORT = 5000 ; servidores para serem balanceados REMOTE_SERVER_01 = 127.0.0.1 1235 REMOTE_SERVER_02 = 127.0.0.1 1236 ; etc ; configuracao para o protheus monitor PROTHEUS_MONITOR_EMBEDDED=1 ;Server sem ssl MONITORING_TYPE=SMARTCLIENT_ACTIVE ;Server com ssl ;MONITORING_TYPE=SMARTCLIENT_SSL_ACTIVE
Exemplo do arquivo appserver.ini do Broker HTTP:
[BALANCE_HTTP] ... REMOTE_SERVER_01 = 127.0.0.1 14341 REMOTE_SERVER_02 = 127.0.0.1 14342 USING_WEBMONITOR = 1 N_EXTRA_SERVERS = 2 EXTRA_SERVER_000 = 127.0.0.1 14343 EXTRA_SERVER_001 = 127.0.0.1 14344
Importante
Caso o acesso seja efetuado via Broker, a sessão TDS e suas chaves devem ser informadas no arquivo de configuração (INI) do Broker.