Jactelk
Consultable a partir de
2025-03-01
Fecha
2020Autor
Director
Versión
Acceso embargado 5 años / 5 urteko bahitura
Tipo
Trabajo Fin de Grado/Gradu Amaierako Lana
Impacto
|
nodoi-noplumx
|
Resumen
Tesicnor works with thousands of clients and has tens of projects. Each one, is
deployed in a concrete server. All these apps have their own database, which contain many
data, such as mail tables, audits (logs, reports, app events). It means, each app stores its
audits in its own server.
The project to be developed, is a new big audit management system on a new server, in order
to prevent se ...
[++]
Tesicnor works with thousands of clients and has tens of projects. Each one, is
deployed in a concrete server. All these apps have their own database, which contain many
data, such as mail tables, audits (logs, reports, app events). It means, each app stores its
audits in its own server.
The project to be developed, is a new big audit management system on a new server, in order
to prevent sending all these data reports to individual databases of each app, and to send
them to a centralized system. The main idea is to use Apache Kafka, a data bus that can
transfer many information in both senses and it’s very efficient.
For the project, it would be a good idea to use Docker, a deployment system, based in
containers, which gives us the opportunity to run our app in any device independently of its
Operative System.
Another current problem is memory space. Existing audit logs require a lot of space, and each
app needs a different schema to store data. The database should be able to have a central
point to store the complete set of logs and be able to process in real time logs from different
apps (different schema). Non-relational databases are more adapted than relational
databases for doing the above tasks. Therefore, we should consider using a non-relational
one, such as MongoDB for example
As soon as we finish the backend, we will start developing the frontend. We will almost
certainly use Angular or ReactJS. With the UI, the user can access all clients and to all audits
of all apps that are subscribed to this system. Finally, remark that for the development of this
project, apart from the previously mentioned technologies, other tools such as Jenkins will be
used for continuous integration, and other ones such as Jhipster, Spring Boot… [--]
Titulación
Graduado o Graduada en Ingeniería Informática por la Universidad Pública de Navarra /
Informatika Ingeniaritzako Graduatua Nafarroako Unibertsitate Publikoan