{"_id":"18169","date_updated":"2024-10-09T21:04:58Z","article_processing_charge":"Yes (via OA deal)","title":"VAMOS: Middleware for best-effort third-party monitoring","abstract":[{"text":"As the complexity and criticality of software increase every year, so does the importance of runtime monitoring. Third-party and best-effort monitoring are especially valuable, yet under-explored areas of runtime monitoring. In this context, third-party monitoring means monitoring with a limited knowledge of the monitored software (as it has been developed by a third party). Best-effort monitoring keeps pace with the monitored software at the cost of possibly imprecise verdicts when keeping up with the monitored software would not be feasible. Most existing monitoring frameworks do not support the combination of third-party and best-effort monitoring because they either require the full access to the monitored code or the ability to process all observable events, or both.\r\nWe present a middleware framework, Vamos, for the runtime monitoring of software. Vamos is explicitly designed to support third-party and best-effort scenarios. The design goals of Vamos are (i) efficiency (tracing events with low overhead), (ii) flexibility (the ability to monitor a variety of different event channels, and to connect to a wide range of monitors), and (iii) ease-of-use. To achieve its goals, Vamos combines aspects of event broker and event recognition systems with aspects of stream processing systems.\r\nWe implemented a prototype toolchain for Vamos and conducted a set of experiments demonstrating the usability of the scheme. The results indicate that Vamos enables writing useful yet efficient monitors, and simplifies key aspects of setting up a monitoring system from scratch.","lang":"eng"}],"language":[{"iso":"eng"}],"author":[{"first_name":"Marek","last_name":"Chalupa","full_name":"Chalupa, Marek","id":"87e34708-d6c6-11ec-9f5b-9391e7be2463"},{"first_name":"Fabian","last_name":"Mühlböck","orcid":"0000-0003-1548-0177","full_name":"Mühlböck, Fabian","id":"6395C5F6-89DF-11E9-9C97-6BDFE5697425"},{"id":"a376de31-8972-11ed-ae7b-d0251c13c8ff","full_name":"Muroya Lei, Stefanie","last_name":"Muroya Lei","first_name":"Stefanie"},{"id":"40876CD8-F248-11E8-B48F-1D18A9856A87","full_name":"Henzinger, Thomas A","last_name":"Henzinger","orcid":"0000-0002-2985-7724","first_name":"Thomas A"}],"publication_status":"epub_ahead","date_published":"2024-09-27T00:00:00Z","status":"public","citation":{"chicago":"Chalupa, Marek, Fabian Mühlböck, Stefanie Muroya Lei, and Thomas A Henzinger. “VAMOS: Middleware for Best-Effort Third-Party Monitoring.” Science of Computer Programming. Elsevier, 2024. https://doi.org/10.1016/j.scico.2024.103212.","short":"M. Chalupa, F. Mühlböck, S. Muroya Lei, T.A. Henzinger, Science of Computer Programming 240 (2024).","ama":"Chalupa M, Mühlböck F, Muroya Lei S, Henzinger TA. VAMOS: Middleware for best-effort third-party monitoring. Science of Computer Programming. 2024;240. doi:10.1016/j.scico.2024.103212","mla":"Chalupa, Marek, et al. “VAMOS: Middleware for Best-Effort Third-Party Monitoring.” Science of Computer Programming, vol. 240, 103212, Elsevier, 2024, doi:10.1016/j.scico.2024.103212.","apa":"Chalupa, M., Mühlböck, F., Muroya Lei, S., & Henzinger, T. A. (2024). VAMOS: Middleware for best-effort third-party monitoring. Science of Computer Programming. Elsevier. https://doi.org/10.1016/j.scico.2024.103212","ieee":"M. Chalupa, F. Mühlböck, S. Muroya Lei, and T. A. Henzinger, “VAMOS: Middleware for best-effort third-party monitoring,” Science of Computer Programming, vol. 240. Elsevier, 2024.","ista":"Chalupa M, Mühlböck F, Muroya Lei S, Henzinger TA. 2024. VAMOS: Middleware for best-effort third-party monitoring. Science of Computer Programming. 240, 103212."},"article_type":"original","month":"09","article_number":"103212","year":"2024","corr_author":"1","related_material":{"record":[{"id":"12856","relation":"earlier_version","status":"public"}]},"ec_funded":1,"scopus_import":"1","user_id":"2DF688A6-F248-11E8-B48F-1D18A9856A87","publication":"Science of Computer Programming","day":"27","publisher":"Elsevier","oa_version":"Published Version","department":[{"_id":"ToHe"}],"doi":"10.1016/j.scico.2024.103212","volume":240,"publication_identifier":{"issn":["0167-6423"]},"quality_controlled":"1","date_created":"2024-10-06T22:01:10Z","acknowledgement":"This work was supported in part by the ERC-2020-AdG 101020093. The authors would like to thank the STTT reviewers for their valuable feedback and suggestions.","project":[{"grant_number":"101020093","name":"Vigilant Algorithmic Monitoring of Software","call_identifier":"H2020","_id":"62781420-2b32-11ec-9570-8d9b63373d4d"}],"intvolume":" 240","type":"journal_article"}