Serviço de Atividades
Serviço que permite a busca de atividades do usuário através dos dados coletados pelo fSense nas estações de trabalho.
Exportar Atividades - Exemplo de Implementação CSV
Para exportar as atividades no formato .csv, podemos fazer da seguinte maneira.
Configuração do Arquivo Properties
Definição do Serviço
No arquivo fsense.properties
, defina o serviço a ser executado ajustando a propriedade service.name
para ACTIVITY_SERVICE
.
# SERVICO A SER EXECUTADO
service.name=ACTIVITY_SERVICE
Método do Serviço
Configure o método do serviço para EXPORT_ACTIVITIES
através da propriedade service.method
.
# METODO DO SERVIÇO A SER EXECUTADO
service.method=EXPORT_ACTIVITIES
Tipo de Operação
Especifique o tipo de operação desejado através da propriedade operation.type
. Defina o como CSV
para exportar para um arquivo CSV ou como DATABASE
para exportar para um banco de dados. Para esta implementação, defina CSV
.
# TIPO DE OPERAÇÃO
operation.type=csv
Parâmetros de Exportação
É necessário definir um perÍodo de data para busca de atividades. Estes parâmetros podem ser definidos no arquivo fsense.properties
através das propriedades activity.initialDate
e activity.finalDate
. Veja o exemplo abaixo para referência:
# INTERVALO DE DATAS [dd/MM/yyyy] PARA SERVIÇO DE ATIVIDADES
activity.initialDate = 04/12/2023
activity.finalDate = 07/12/2023
Também é possível opcionalmente especificar a hora inicial e hora final para a busca de atividades através das propriedades activity.initialHour
e activity.finalHour
.
# INTERVALO DE HORAS PARA SERVIÇO DE ATIVIDADES
# FAVOR PREENCHER NESTE FORMATO [HH:mm:ss]
# SE VAZIO SE CONSIDERA ENTRE 00:00:00 e 23:59:59
activity.initialHour = HH:mm:ss
activity.finalHour = HH:mm:ss
Execução da Aplicação
Após configurar o arquivo fsense.properties
, execute a aplicação. A aplicação realizará requisições HTTP à API fSense para obter as atividades e gerará um arquivo CSV como nome calendars_{ANO_MES_DIA}.csv
.
========================================================
SELECTED SERVICE [ACTIVITY_SERVICE]
========================================================
OPERATION TYPE: CSV
========================================================
SELECTED METHOD [EXPORT_ACTIVITIES]
checking if token is valid?: false
========================================================
Starting authentication process
Getting access token
Token received.
5ad5b6fc-76ad-4012-b8e6-da40f710a51a
========================================================
AUTHENTICATION SUCCESS
========================================================
Getting activities of day: 06-09-2024
Nº of records found: 63
Nº pages : 7
Getting activities 1/7
Getting activities 2/7
Getting activities 3/7
Getting activities 4/7
Getting activities 5/7
Getting activities 6/7
Getting activities 7/7
======================================================
GENERATING CSV FILE
======================================================
File generated: activities_2024-09-06.csv
Status: saved successfully
File saved in path: ./src/main/resources/files/export/activities_2024-09-06.csv
======================================================
EXPORT ACTIVITIES FINISHED SUCCESSFULLY
======================================================
End of execution.
Os arquivos são armazenados no diretório src/main/resources/files/export/.
Verificação da Operação
Após a execução da aplicação, abra o arquivo gerado para verificar as atividades exportadas. O arquivo exportado terá uma estrutura semelhante à do exemplo abaixo:
'date','application','login','processName','evtDurationMilliseconds','host','category','categoryName'
'2024-09-06','Google Chrome','maria_silva','chrome','4441909','localhost:3000','B','Business Use'
'2024-09-06','Google Chrome','maria_silva','chrome','1678839','cogna.lms.ecoedu.com.br','U','Unclassified'
'2024-09-06','Google Chrome','maria_silva','chrome','781753','bitbucket.org','B','Business Use'
'2024-09-06','Google Chrome','maria_silva','chrome','121723','app.fsense.io','B','Business Use'
'2024-09-06','Google Chrome','maria_silva','chrome','34988','_SEARCHING_','B','Business Use'
'2024-09-06','Google Chrome','maria_silva','chrome','214976','api.fsense.com','B','Business Use'
'2024-09-06','Google Chrome','maria_silva','chrome','159727','login.live.com','B','Business Use'
'2024-09-06','Google Chrome','maria_silva','chrome','129588','app.fsense.com','B','Business Use'
'2024-09-06','Google Chrome','maria_silva','chrome','70800','instagram.com','A','Personal Use'
'2024-09-06','Google Chrome','maria_silva','chrome','12891','login.microsoftonline.com','B','Business Use'
'2024-09-06','Google Chrome','maria_silva','chrome','77169','portal.azure.com','B','Business Use'
'2024-09-06','Google Chrome','maria_silva','chrome','144426','github.com','B','Business Use'
'2024-09-06','Google Chrome','maria_silva','chrome','18598','id.atlassian.com','B','Business Use'
Exportar Atividades - Exemplo de Implementação de Banco de Dados
Para exportar as atividades na organização, fazendo a persistência no banco de dados, podemos fazer da seguinte maneira.
Configuração do Arquivo Properties
Definição do Serviço
No arquivo fsense.properties
, defina o serviço a ser executado ajustando a propriedade service.name
para ACTIVITY_SERVICE
.
# SERVIÇO A SER EXECUTADO
service.name=ACTIVITY_SERVICE
Método do Serviço
Configure o método do serviço para EXPORT_ACTIVITIES
através da propriedade service.method
.
# MÉTODO DO SERVIÇO A SER EXECUTADO
service.method=EXPORT_ACTIVITIES
Tipo de Operação
Especifique o tipo de operação desejado através da propriedade operation.type
. Defina o como CSV
para exportar para um arquivo CSV ou como DATABASE
para exportar para um banco de dados. Para esta implementação, defina DATABASE
.
# TIPO DE OPERAÇÃO
operation.type=database
Certifique-se de que o banco de dados está devidamente configurado e a tabela previamente criada. Certifique-se de que o banco de dados está devidamente configurado e a tabela previamente criada.
Se tiver dúvidas, consulte a seção Integração com Banco de Dados.
Parâmetros de Exportação
É necessário definir um perÍodo de data para busca de atividades. Estes parâmetros podem ser definidos no arquivo fsense.properties
através das propriedades activity.initialDate
e activity.finalDate
. Veja o exemplo abaixo para referência:
# INTERVALO DE DATAS [dd/MM/yyyy] PARA SERVIÇO DE ATIVIDADES
activity.initialDate = 04/12/2023
activity.finalDate = 07/12/2023
Também é possível opcionalmente especificar a hora inicial e hora final para a busca de atividades através das propriedades activity.initialHour
e activity.finalHour
.
# INTERVALO DE HORAS PARA SERVIÇO DE ATIVIDADES
# FAVOR PREENCHER NESTE FORMATO [HH:mm:ss]
# SE VAZIO SE CONSIDERA ENTRE 00:00:00 e 23:59:59
activity.initialHour = HH:mm:ss
activity.finalHour = HH:mm:ss
Execução da Aplicação
Após configurar o arquivo fsense.properties
, execute a aplicação. A aplicação realizará requisições HTTP à API fSense para obter as atividades e em seguida, fará a persistência dos dados no banco.
========================================================
SELECTED SERVICE [ACTIVITY_SERVICE]
========================================================
OPERATION TYPE: DATABASE
========================================================
SELECTED METHOD [EXPORT_ACTIVITIES]
checking if token is valid?: false
========================================================
Starting authentication process
Getting access token
Token received.
5ad5b6fc-76ad-4012-b8e6-da40f710a51a
========================================================
AUTHENTICATION SUCCESS
========================================================
Getting activities of day: 06-09-2024
Nº of records found: 63
Nº pages : 7
Getting activities 1/7
Getting activities 2/7
Getting activities 3/7
Getting activities 4/7
Getting activities 5/7
Getting activities 6/7
Getting activities 7/7
==========================================
Open database connection
Saving on tb_activity
==========================================
Update Count: 63
Database connection close
==========================================
SAVING DATABASE ACTIVITIES FINISHED SUCCESSFULLY
==========================================
End of execution.
Verificação da Operação
Após a execução da aplicação, abra a ferramenta de banco de dados de sua preferência e faça uma consulta na tabela tb_activity.
SELECT * FROM tb_activity;
A tabela terá uma estrutura semelhante à esta:
date | application | login | processName | evtDurationMilliseconds | host | category | categoryName |
---|---|---|---|---|---|---|---|
2024-09-06 | Google Chrome | maria_silva | chrome | 4441909 | localhost:3000 | B | Business Use |
2024-09-06 | Google Chrome | maria_silva | chrome | 1678839 | cogna.lms.ecoedu.com.br | U | Unclassified |
2024-09-06 | Google Chrome | maria_silva | chrome | 781753 | bitbucket.org | B | Business Use |
2024-09-06 | Google Chrome | maria_silva | chrome | 121723 | app.fsense.io | B | Business Use |
2024-09-06 | Google Chrome | maria_silva | chrome | 34988 | SEARCHING | B | Business Use |
2024-09-06 | Google Chrome | maria_silva | chrome | 214976 | api.fsense.com | B | Business Use |
2024-09-06 | Google Chrome | maria_silva | chrome | 159727 | login.live.com | B | Business Use |
2024-09-06 | Google Chrome | maria_silva | chrome | 129588 | app.fsense.com | B | Business Use |
2024-09-06 | Google Chrome | maria_silva | chrome | 70800 | instagram.com | A | Personal Use |
2024-09-06 | Google Chrome | maria_silva | chrome | 12891 | login.microsoftonline.com | B | Business Use |
2024-09-06 | Google Chrome | maria_silva | chrome | 77169 | portal.azure.com | B | Business Use |
2024-09-06 | Google Chrome | maria_silva | chrome | 144426 | github.com | B | Business Use |
2024-09-06 | Google Chrome | maria_silva | chrome | 18598 | id.atlassian.com | B | Business Use |