Tempo aproximado para leitura: 00:04:16 min
Dúvida
Como consultar o tempo de execução dos programas no PASOE?
Ambiente
Framework - Framework (Linha Datasul) - PASOE - A partir do OpenEdge 12
Solução
Para conhecer os tempos gastos por cada programa executado no PASOE - Progress Application Server for OpenEdge, siga os seguintes passos:
1. Salve o arquivo getRequestsMetrics.qry anexado a este artigo em uma pasta qualquer no servidor do PASOE. Como sugestão utilize a pasta jmxqueries já existente dentro da pasta bin da instância do PASOE, como faremos neste artigo;
2. Acesse o atalho PROENV do OpenEdge no servidor onde está configurada a instância do PASOE;
3. Navegue até a pasta bin da instância, conforme o exemplo a seguir:
cd C:\pasoe\oepas4\bin4. Execute o comando para coletar os tempos de execução:
oejmx -R -Q bin\getRequestsMetrics.qry5. A cada execução deste comando será gerado um arquivo na pasta temp da instância do PASOE com o nome:
getRequestsMetrics-out-<data>-<hora>.txtEsse arquivo contém o resultado da consulta no formato JSON - JavaScript Object Notation. Como a data e a hora fazem parte da composição do nome do arquivo, podem existir vários arquivos, um para cada execução que foi feita.
6. Opcional, para melhorar a visualização pode ser utilizado uma ferramenta que converta esse conteúdo JSON em um formato de tabela, como este aqui Convert JSON to CSV:
7. Opcional, ali é possível baixar o conteúdo no formato CSV - Comma Separator Value e importar em um editor de planilhas como o Excel ou similar, onde é possível filtrar e reordenar conforme desejado:
A coluna RequestLen é o tempo em milissegundos que foi gasto para executar a rotina.
O PASOE armazena as métricas dos últimos 1.000 programas executados.
Essa métrica é importante para conhecer tempos gastos efetivamente na execução da rotina, como tempo de leitura em banco de dados, lock de registros, cálculos, etc. Aqui não fica contabilizado o tempo que a requisição ficou enfileirada aguardando uma sessão livre para executá-la.
A execução desta consulta pode ficar agendada através do Agendador de Tarefas do Windows ou o Crontab do Linux para ser executada automaticamente de tempos em tempos, permitindo assim guardar um histórico do comportamento do ambiente não só em momentos de crise.
Saiba mais
Framework - Linha Datasul - TEC - Como gerenciar uma instância PASOE utilizando OEJMX
0 Comentários