Towards Systematic and Cost-Effective Monitoring of Large-Scale Software Systems
Towards Systematic and Cost-Effective Monitoring of Large-Scale Software Systems
批准号:
RGPIN-2021-03900
负责人:
Li, Heng
金额:
$1.75万
依托单位国家:
加拿大
项目类别:
Discovery Grants Program - Individual
财政年份:
2021
资助国家:
加拿大
项目状态:
已结题
起止时间:
2021-01-01 至 2022-12-31
中文摘要
大型软件系统的故障会对我们的生命和安全,以及对我们社会的经济和安全产生重大影响。例如,加拿大税务局(CRA)网站在2017年3月和2019年3月出现故障,导致许多加拿大人数天无法报税。要快速检测和解决此类故障并减少其对用户的影响,了解这些系统的内部状态和运行时行为至关重要。软件可观测性(即,可以推断系统内部状态的程度)使软件工程师能够获得这样的理解,验证系统是否按预期运行,并检测和诊断运行时故障。软件监控(如日志记录和跟踪)是确保大型软件系统可观察性的关键。尽管软件监控很重要,但有几个挑战使大型软件系统的监控变得复杂。首先,大型软件系统通常由许多组件(例如微服务)组成,这些组件可能由不同的组织使用不同的编程语言开发。此外,这些组成部分往往在不断演变。多种多样和不断发展的性质使确保对这些系统进行一致和最新的监测具有挑战性。其次,随着软件的规模和复杂性的增加,对产生和管理监控数据所需的计算资源的要求也在增加,这可能会给大型软件系统的操作带来显著的开销(例如,性能和存储开销)。第三,大型软件系统通常会从多个来源(例如,来自不同的Web服务和应用程序)生成非常大量的监控数据,这给这些数据的分析和利用带来了挑战。我的长期研究目标是发现、设计和开发一个全面和系统的解决方案,以改进软件监控并提高大型软件系统的可观察性。为了实现这一长期目标,拟议的研究计划将从三个相辅相成的角度应对软件监测的挑战:软件开发、软件执行和监测数据分析。首先,我们的目标是通过系统地考虑整个软件开发生命周期中的监控方面来提高软件监控的质量。其次,我们的目标是通过动态优化软件执行过程中的监控强度来提高软件监控的成本效益。第三,我们将开发通用方法来简化分析监测数据的常见工作流程。提出的研究计划将是系统地提高大型软件系统的监控性和可观察性的开创性尝试,这将有利于加拿大在生产高质量软件方面的研究和实践。
英文摘要
Failures of large-scale software systems can have significant impacts on our lives and safety, as well as on the economy and security of our society. For example, failures of the Canada Revenue Agency (CRA) website in March 2017 and March 2019 blocked many Canadians from filing their taxes for days. To detect and address such failures quickly and reduce their impact on users, it is crucial to gain an understanding of the internal state and runtime behavior of these systems. Software observability (i.e., the extent to which the internal state of a system can be inferred) allows software engineers to gain such an understanding, to verify if a system behaves as expected, and to detect and diagnose runtime failures. Software monitoring (e.g., logging and tracing) is the key to ensure the observability of large-scale software systems. Despite the importance of software monitoring, several challenges complicate the monitoring of large-scale software systems. First, large-scale software systems are usually composed of many components (e.g., microservices) that may be developed by different organizations using different programming languages. Furthermore, these components are often evolving. The heterogeneous and evolving nature makes it challenging to ensure consistent and up-to-date monitoring of these systems. Second, as the scale and complexity of software increases, so do the requirements on the computing resources needed to produce and manage the monitoring data, which could introduce significant overhead (e.g., performance and storage overhead) to the operations of large-scale software systems. Third, large-scale software systems usually generate a very large amount of monitoring data from multiple sources (e.g., from different web services and applications), which poses challenges for the analysis and utilization of these data. My long-term research goal is to discover, design, and develop a comprehensive and systematic solution to improve software monitoring and increase the observability of large-scale software systems. To achieve this long-term goal, the proposed research program will tackle the challenges of software monitoring from three mutually complementary perspectives: software development, software execution, and analysis of monitoring data. First, we aim to improve the quality of software monitoring by systematically considering the monitoring aspect across the entire software development lifecycle. Second, we aim to increase the cost-effectiveness of software monitoring by dynamically optimizing the monitoring intensity during software execution. Third, we will develop generic approaches to simplify common workflows of analyzing monitoring data. The proposed research program will be a pioneering attempt to systematically improve the monitoring and observability of large-scale software systems, which will benefit the research and practices in Canada in producing high-quality software.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
Towards Systematic and Cost-Effective Monitoring of Large-Scale Software Systems
-
批准号:RGPIN-2021-03900
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.75万
-
财政年份:2022
-
负责人:Li, Heng
-
依托单位:
Towards Systematic and Cost-Effective Monitoring of Large-Scale Software Systems
-
批准号:DGECR-2021-00239
-
项目类别:Discovery Launch Supplement
-
资助金额:$0.91万
-
财政年份:2021
-
负责人:Li, Heng
-
依托单位:
海外基金