01. VISÃO GERAL
Visando padronizar o processo de obtenção de Logs para identificação de problemas e fluxo de operações do Meu RH, foi implementado o RM Tracklog.
O RM TRACKLOG é o motor de logs do RM responsável por disponibilizar informações sobre o sistema através de arquivos de texto contendo data e hora do evento e mensagens criadas de forma automática.
Portanto, com o TRACKLOG, os logs são capazes de mostrar o que, quando e onde aconteceu um evento, além de indicar quem deu início a ele.
02. HABILITAR TRACKLOG E INSTALAÇÃO SERVIDOR SEQ
Para informações sobre como habilitar o tracklog e instalar o servidor de logs em tempo real (Servidor Seq), favor ler a documentação, conforme link 0.3.4 - Logs -RM Tracklog.
03. UTILIZAÇÃO DO SERVIDOR SEQ
Realizada a instalação do Servidor Seq, incluídos os arquivos de configuração do log e alterados os arquivos para inclusão da tag de gravação de log e reinício dos serviços do Host e IIS, abrir no navegador com a URL configurada na instalação do servidor Seq.
Ao acessar o endereço, poderá ser solicitado o usuário e senha informados na instalação:
Ao pressionar o ícone de Play, serão listados os logs gravados no período informado.
02.1 APLICAÇÃO DE FILTROS PARA ACOMPANHAMENTO
No servidor Seq é possível aplicar filtros para facilitar o acompanhamento dos logs que estão sendo gravados.
Além dos filtros por Nível (Level), como Warning e Errors, é possível filtrar por Logs de um Módulo, Categoria e Funcionalidade.
Para isto, no campo de busca, ao ládo do botão de Play, basta informar os campos que deseja filtrar:
- Aplicando filtro pelo Módulo: No caso, se for necessário analisar somente os logs do Meu RH, o módulo a ser filtrado será MeuRH, conforme demonstrado abaixo:
- Aplicando filtro por Categoria: É possível filtrar por uma categoria que contenha mais de uma funcionalidade. Como exemplo no Meu RH temos a Categoria de Funcionário. Dentro dela existem várias funcionalidades como Perfil, Atualização de dados pessoais, Atualização de endereço, Atualização de contatos, Foto, Próximas férias.
- É possível filtrar por logs de uma funcionalidade específica, seguindo o exemplo da categoria de Funcionário, pode ser aplicado um filtro para listar apenas pela funcionalidade de listagem de logs relacionado a busca de dados do perfil, por exemplo, conforme imagem abaixo:
- Os filtros podem ser aplicados em forma conjuta, ou seja, mais de um filtro, seguindo a sequência proposta, podemos aplicar um filtro por módulo, categoria e funcionalidade, conforme abaixo:
- Além deste filtros é possível filtrar por um intervalo de datas e horários:
- Outros possíveis campos a serem filtrados: CallerFilePath, CallerLineNumber, CallerMemberName, Category, EnvironmentName, EnvironmentUserName, Funcionality, GetTypeName, MachineName, Module, ProcessId, ProcessName, ServerName, Tenant, ThreadId.
03.2 CATEGORIAS E FUNCIONALIDADES DISPONÍVEIS PARA CONSULTA DE LOG NO MEU RH:
A gravação de logs utilizando RM Tracklog está sendo implementada de forma progressiva para as funcionalidades. Abaixo é possível identificar quais categorias e funcionalidades já podem ter seu log capturado e analisado:
03.2.1 CATEGORIAS:
Abaixo estão listadas as categorias e funcionalidades.
Para cada funcionalidade estão listadas as rotas que irão ter seu log gravado, com base na funcionalidade.
- Login:
- Cookie:
- rest/auth/login;
- rest/auth/isLogged;
- rest/auth/isFirstLogin;
- rest/auth/isFirstLoginAuthentic;
- Token;
- rest/new/auth/login/token;
- rest/new/auth/login;
- rest/new/auth/isLogged;
- rest/new/auth/isFirstLogin;
- rest/new/auth/isFirstLoginAuthentic;
- rh/v1/auth/isLogged;
- OAuth;
- rest/new/auth/login/TokenPrincipal;
- rest/new/auth/forceoauthlogin;
- SAML;
- Fluig:
- rest/auth/login/fluigIdentity;
- rest/new/auth/login/fluigIdentity;
- RefreshToken:
- rest/auth/login/refreshToken;
- rest/new/auth/login/refreshToken;
- RecoveryPassword:
- rest/auth/renewPassword;
- rest/new/auth/renewPassword;
- rest/new/auth/resetPassword;
- ChangePassword:
- rest/auth/resetPassword;
- rest/auth/ChangePassWithLastPass;
- rest/new/auth/ChangePassWithLastPass;
- General:
- SystemVersion;
- CompanySettings;
- rest/setting/companySettings;
- rest/new/setting/companySettings;
- rh/v1/setting/companySettings;
- Permissions;
- rest/setting/permissions;
- rest/new/setting/permissions;
- rh/v1/setting/permissions;
- HealthCheck:
- rest/new/services/healthcheck;
- rh/v1/services/healthcheck;
- Context:
- Contexts;
- rest/setting/contexts;
- rest/new/setting/contexts;
- rh/v1/setting/contexts;
- CurrentContext;
- rest/setting/context (GET);
- rest/new/setting/context (GET);
- rh/v1/setting/context (GET);
- UpdateCurrentContext;
- rest/setting/context (PUT);
- rest/new/setting/context (PUT);
- rh/v1/setting/context (PUT);
- Employee:
- Profile;
- rest/data/profile;
- rest/data/profile/summary;
- rest/new/data/profile;
- rest/new/data/profile/summary;
- rh/v1/data/profile;
- rh/v1/data/profile/summary;
- Photo;
- rest/data/profile/image;
- rest/new/data/profile/image;
- rh/v1/data/profile/image;
- IsCoordinator;
- rest/data/profile/isCoordinator;
- rest/new/data/profile/isCoordinator;
- rh/v1/data/profile/isCoordinator;
- NextVacationDatePeriod;
- rest/events/vacationDate;
- rest/new/events/vacationDate;
- rh/v1/data/profile/events/vacationDate;
- UpdateAddress;
- rest/data/profile/address;
- rest/new/data/profile/address;
- rh/v1/data/profile/address;
- UpdateContacts;
- rest/data/profile/contacts;
- rest/new/data/profile/contacts;
- rh/v1/data/profile/contacts;
- UpdatePersonalData;
- rest/data/profile/personalData;
- rest/new/data/profile/personalData;
- rh/v1/data/profile/data/profile/personalData;
- UpdateDocument;
- rest/data/profile/document;
- rest/new/data/profile/document;
- rh/v1/data/profile/document
- Team:
- NotificationTotalizer;
- rest/request/notifications/count;
- rest/new/request/notifications/count;
- rh/v1/request/notifications/count;
- BalanceSummary;
- rest/team/timesheet/balanceSummary;
- rest/new/team/timesheet/balanceSummary;
- rh/v1/team/timesheet/balanceSummary;
- Birthdates;
- rest/team/birthdates;
- rest/new/team/birthdates;
- rh/v1/team/birthdates;
- Payment:
- Available:
- rest/payment/available;
- rest/new/payment/available;
- rh/v1/payment/available;
- PushNotification:
- Settings;
- rest/push/settingParameter;
- rest/new/push/settingParameter;
- rh/v1/push/settingParameter;
- AmountNotifications;
- rest/request/notifications/pushNotification/count;
- rest/new/request/notifications/pushNotification/count;
- rh/v1/request/notifications/pushNotification/count;
- Tae:
- GenerateToken;
- rest/tae/token;
- rest/new/tae/token;
- rh/v1/tae/token;
- Dashboard;
- rest/tae/dashboard;
- rest/new/tae/dashboard;
- Timesheet:
- BalanceSummary:
- rest/timesheet/balanceSummary;
- rest/new/timesheet/balanceSummary;
- rh/v1/timesheet/balanceSummary;
OBS.: Quando o ambiente do cliente estiver configurado para usar token, além das categorias respectivas é importante adicionar a categoria Api e a funcionalidade Token. Isso acontece, pois quando é utilizado token, o sistema realiza um redirecionamento. Para obter os logs desse redirecionamento deverá ser observado os logs da categoria Api e a funcionalidade Token.