Marek Chaupa
Sefanie Muroya Lei
Fabian Muehlboeck
Thomas Henzinger A.
2023-01-27
<p>This is an software artifact to the paper <em>VAMOS: Middleware for Best-Effort Third-Party Monitoring</em> by Marek Chalupa, Fabian Muehlboeck, Stefanie Muroya Lei, and Thomas A. Henzinger.</p>
<p>There are two artifacts in fact. The file <strong>fase23artifact47.tar.gz</strong> is the artifact submitted to FASE 2023 AE that is meant to be loaded into the FASE 2023 VM (<a href="https://doi.org/10.5281/zenodo.7446277">https://doi.org/10.5281/zenodo.7446277</a>). Unfortunately, due to technical difficulties, we were not able to make running all the experiments from the paper on the VM. Therefore, we prepared a second artifact that uses <em>docker.</em> The docker artifact is available either as a pre-built image <strong>vamos-fase23.tar.gz</strong> or as a source code archive <strong>fase23-experiments.zip </strong>from which the artifact can be build.</p>
<p>For instructions how to use any of the artifacts, see the README files in the corresponding archives. We put the README from the docker artifact also in the top-level directory of this artifact.</p>
<p>The source code of the docker artifact can be found also at <a href="https://github.com/ista-vamos/fase23-experiments">https://github.com/ista-vamos/fase23-experiments</a>. The newest source code of VAMOS is on Github in the repository <a href="https://github.com/ista-vamos/vamos">https://github.com/ista-vamos/vamos</a>.</p>
<p>This artifact contains also the pre-print of the paper with all appendices (<strong>VAMOS-techreport.pdf</strong>).</p>
<p> </p>
<p>Abstract of the paper:</p>
<p>As the complexity and criticality of software increase every year, so does the importance of run-time monitoring. Third-party monitoring, with limited knowledge of the monitored software, and best-effort monitoring, which keeps pace with the monitored software, are especially valuable, yet underexplored areas of run-time monitoring. Most existing monitoring frameworks do not support their combination because they either require access to the monitored code for instrumentation purposes or the processing of all observed events, or both.<br>
We present a middleware framework, VAMOS, for the run-time monitoring of software which is explicitly designed to support third-party and best-effort scenarios. The design goals of VAMOS are (i) efficiency (keeping pace at low overhead), (ii) flexibility (the ability to monitor black-box code through a variety of different event channels, and the connectability to monitors written in different specification languages), 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. We implemented a prototype toolchain for VAMOS and conducted experiments including a case study of monitoring for data races. The results indicate that VAMOS enables writing useful yet efficient monitors, is compatible with a variety of event sources and monitor specifications, and simplifies key aspects of setting up a monitoring system from scratch.</p>
https://doi.org/10.5281/zenodo.7574688
oai:zenodo.org:7574688
Zenodo
https://doi.org/10.5281/zenodo.7574687
info:eu-repo/semantics/openAccess
Creative Commons Attribution 4.0 International
https://creativecommons.org/licenses/by/4.0/legalcode
FASE
runtime monitoring
runtime verification
VAMOS: Middleware for Best-Effort Third-Party Monitoring
info:eu-repo/semantics/other