Monitorização de Defeitos em Runtime

Detalhes bibliográficos
Autor(a) principal: Carvalho, Bruno Miguel de Figueiredo
Data de Publicação: 2020
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: http://hdl.handle.net/10362/125330
Resumo: Sistemas de grande dimensão não são facilmente desenvolvidos ou mantidos. Em certos casos é difícil encontrar problemas no código, realizando apenas uma análise estática. A maneira mais comum de lidar com este problema é através do uso de debuggers. No entanto, pode não ser fácil, por exemplo, testar todos os valores de input possíveis ou testar código que interaja com subsistemas complexos ou com código desconhecido. De forma a encontrar problemas na execução de sistemas complexos, é necessário realizar uma monitorização contínua. Grande parte dos sistemas implementa registos de eventos. Estes registos contêm informação acerca do estado de cada subsistema, que podem ser usados para inferir o estado geral do sistema. Nesta dissertação propõe-se uma solução de monitorização modular, flexível e configurável, baseada em registos de eventos de diferentes sistemas. Embora esta solução tenha sido desenvolvida no âmbito de um projeto específico com necessidades específicas, pretende-se que esta possa ser adaptada para outros casos. De modo a facilitar o desenvolvimento futuro, ao longo deste documento, irá ser descrita toda a implementação atual, a sua estrutura e ainda, a análise realizada para a escolha de ferramentas e para outras tomadas de decisão. De modo a avaliar a solução implementada, foram realizados alguns testes, comparando o seu desempenho com uma outra solução semelhante, implementada anteriormente, que se pretendia melhorar. Para avaliar a sua utilidade, foi ainda pedido a algumas pessoas que testassem a nova solução e a comparassem com a solução antiga.
id RCAP_e0a2261a8c771823f0fc2b80e59053f0
oai_identifier_str oai:run.unl.pt:10362/125330
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling Monitorização de Defeitos em RuntimeMonitorizaçãoDebuggingLoggingHealth CheckDomínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e InformáticaSistemas de grande dimensão não são facilmente desenvolvidos ou mantidos. Em certos casos é difícil encontrar problemas no código, realizando apenas uma análise estática. A maneira mais comum de lidar com este problema é através do uso de debuggers. No entanto, pode não ser fácil, por exemplo, testar todos os valores de input possíveis ou testar código que interaja com subsistemas complexos ou com código desconhecido. De forma a encontrar problemas na execução de sistemas complexos, é necessário realizar uma monitorização contínua. Grande parte dos sistemas implementa registos de eventos. Estes registos contêm informação acerca do estado de cada subsistema, que podem ser usados para inferir o estado geral do sistema. Nesta dissertação propõe-se uma solução de monitorização modular, flexível e configurável, baseada em registos de eventos de diferentes sistemas. Embora esta solução tenha sido desenvolvida no âmbito de um projeto específico com necessidades específicas, pretende-se que esta possa ser adaptada para outros casos. De modo a facilitar o desenvolvimento futuro, ao longo deste documento, irá ser descrita toda a implementação atual, a sua estrutura e ainda, a análise realizada para a escolha de ferramentas e para outras tomadas de decisão. De modo a avaliar a solução implementada, foram realizados alguns testes, comparando o seu desempenho com uma outra solução semelhante, implementada anteriormente, que se pretendia melhorar. Para avaliar a sua utilidade, foi ainda pedido a algumas pessoas que testassem a nova solução e a comparassem com a solução antiga.Systems with big dimensions are not easily developed or maintained. In some cases, it is hard to find every problem in the code by only executing a static analysis. The most common way to deal with this problem is by using debuggers, however, these tools also have some limitations, for example, it might not be possible to test every possible combination of input values, or to test code that interacts with complex systems or with unknown code. In order to find problems in the execution of complex systems, it is necessary to perform a continuous system monitoring. Most systems implement some type of logging. Log files contain useful information about the state of each subsystem, this information can then be used to infer the state of the main system. This dissertation proposes a flexible and configurable solution for monitoring, based on logs from different systems. This solution was developed in the context of a specific project with specific needs, however, it should be possible to be adapted to be used in other projects or systems. In order to help further development, in this document it will be described the development, structure and even the research and analysis executed in order to choose different tools or ways to implement the final solution. To evaluate this solution, some tests were conducted in order to compare its performance against another similar solution that was previously developed. To evaluate its usefulness, some people were asked to test the final solution and to compare it with the previous one.Serafim, RodrigoRodrigues, ArmandaRUNCarvalho, Bruno Miguel de Figueiredo2021-09-29T14:37:06Z2020-012020-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10362/125330porinfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2024-03-11T05:06:22Zoai:run.unl.pt:10362/125330Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-20T03:45:41.419814Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv Monitorização de Defeitos em Runtime
title Monitorização de Defeitos em Runtime
spellingShingle Monitorização de Defeitos em Runtime
Carvalho, Bruno Miguel de Figueiredo
Monitorização
Debugging
Logging
Health Check
Domínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
title_short Monitorização de Defeitos em Runtime
title_full Monitorização de Defeitos em Runtime
title_fullStr Monitorização de Defeitos em Runtime
title_full_unstemmed Monitorização de Defeitos em Runtime
title_sort Monitorização de Defeitos em Runtime
author Carvalho, Bruno Miguel de Figueiredo
author_facet Carvalho, Bruno Miguel de Figueiredo
author_role author
dc.contributor.none.fl_str_mv Serafim, Rodrigo
Rodrigues, Armanda
RUN
dc.contributor.author.fl_str_mv Carvalho, Bruno Miguel de Figueiredo
dc.subject.por.fl_str_mv Monitorização
Debugging
Logging
Health Check
Domínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
topic Monitorização
Debugging
Logging
Health Check
Domínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
description Sistemas de grande dimensão não são facilmente desenvolvidos ou mantidos. Em certos casos é difícil encontrar problemas no código, realizando apenas uma análise estática. A maneira mais comum de lidar com este problema é através do uso de debuggers. No entanto, pode não ser fácil, por exemplo, testar todos os valores de input possíveis ou testar código que interaja com subsistemas complexos ou com código desconhecido. De forma a encontrar problemas na execução de sistemas complexos, é necessário realizar uma monitorização contínua. Grande parte dos sistemas implementa registos de eventos. Estes registos contêm informação acerca do estado de cada subsistema, que podem ser usados para inferir o estado geral do sistema. Nesta dissertação propõe-se uma solução de monitorização modular, flexível e configurável, baseada em registos de eventos de diferentes sistemas. Embora esta solução tenha sido desenvolvida no âmbito de um projeto específico com necessidades específicas, pretende-se que esta possa ser adaptada para outros casos. De modo a facilitar o desenvolvimento futuro, ao longo deste documento, irá ser descrita toda a implementação atual, a sua estrutura e ainda, a análise realizada para a escolha de ferramentas e para outras tomadas de decisão. De modo a avaliar a solução implementada, foram realizados alguns testes, comparando o seu desempenho com uma outra solução semelhante, implementada anteriormente, que se pretendia melhorar. Para avaliar a sua utilidade, foi ainda pedido a algumas pessoas que testassem a nova solução e a comparassem com a solução antiga.
publishDate 2020
dc.date.none.fl_str_mv 2020-01
2020-01-01T00:00:00Z
2021-09-29T14:37:06Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10362/125330
url http://hdl.handle.net/10362/125330
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799138061269860352