---
_id: '12856'
abstract:
- lang: eng
  text: "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.\r\n\r\nWe 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.\r\nWe
    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."
acknowledgement: This work was supported in part by the ERC-2020-AdG 101020093. The
  authors would like to thank the anonymous FASE reviewers for their valuable feedback
  and suggestions.
alternative_title:
- LNCS
article_processing_charge: No
author:
- first_name: Marek
  full_name: Chalupa, Marek
  id: 87e34708-d6c6-11ec-9f5b-9391e7be2463
  last_name: Chalupa
- first_name: Fabian
  full_name: Mühlböck, Fabian
  id: 6395C5F6-89DF-11E9-9C97-6BDFE5697425
  last_name: Mühlböck
  orcid: 0000-0003-1548-0177
- first_name: Stefanie
  full_name: Muroya Lei, Stefanie
  id: a376de31-8972-11ed-ae7b-d0251c13c8ff
  last_name: Muroya Lei
- first_name: Thomas A
  full_name: Henzinger, Thomas A
  id: 40876CD8-F248-11E8-B48F-1D18A9856A87
  last_name: Henzinger
  orcid: 0000-0002-2985-7724
citation:
  ama: 'Chalupa M, Mühlböck F, Muroya Lei S, Henzinger TA. Vamos: Middleware for best-effort
    third-party monitoring. In: <i>Fundamental Approaches to Software Engineering</i>.
    Vol 13991. Springer Nature; 2023:260-281. doi:<a href="https://doi.org/10.1007/978-3-031-30826-0_15">10.1007/978-3-031-30826-0_15</a>'
  apa: 'Chalupa, M., Mühlböck, F., Muroya Lei, S., &#38; Henzinger, T. A. (2023).
    Vamos: Middleware for best-effort third-party monitoring. In <i>Fundamental Approaches
    to Software Engineering</i> (Vol. 13991, pp. 260–281). Paris, France: Springer
    Nature. <a href="https://doi.org/10.1007/978-3-031-30826-0_15">https://doi.org/10.1007/978-3-031-30826-0_15</a>'
  chicago: 'Chalupa, Marek, Fabian Mühlböck, Stefanie Muroya Lei, and Thomas A Henzinger.
    “Vamos: Middleware for Best-Effort Third-Party Monitoring.” In <i>Fundamental
    Approaches to Software Engineering</i>, 13991:260–81. Springer Nature, 2023. <a
    href="https://doi.org/10.1007/978-3-031-30826-0_15">https://doi.org/10.1007/978-3-031-30826-0_15</a>.'
  ieee: 'M. Chalupa, F. Mühlböck, S. Muroya Lei, and T. A. Henzinger, “Vamos: Middleware
    for best-effort third-party monitoring,” in <i>Fundamental Approaches to Software
    Engineering</i>, Paris, France, 2023, vol. 13991, pp. 260–281.'
  ista: 'Chalupa M, Mühlböck F, Muroya Lei S, Henzinger TA. 2023. Vamos: Middleware
    for best-effort third-party monitoring. Fundamental Approaches to Software Engineering.
    FASE: Fundamental Approaches to Software Engineering, LNCS, vol. 13991, 260–281.'
  mla: 'Chalupa, Marek, et al. “Vamos: Middleware for Best-Effort Third-Party Monitoring.”
    <i>Fundamental Approaches to Software Engineering</i>, vol. 13991, Springer Nature,
    2023, pp. 260–81, doi:<a href="https://doi.org/10.1007/978-3-031-30826-0_15">10.1007/978-3-031-30826-0_15</a>.'
  short: M. Chalupa, F. Mühlböck, S. Muroya Lei, T.A. Henzinger, in:, Fundamental
    Approaches to Software Engineering, Springer Nature, 2023, pp. 260–281.
conference:
  end_date: 2023-04-27
  location: Paris, France
  name: 'FASE: Fundamental Approaches to Software Engineering'
  start_date: 2023-04-22
date_created: 2023-04-20T08:29:42Z
date_published: 2023-04-20T00:00:00Z
date_updated: 2023-04-25T07:19:07Z
day: '20'
ddc:
- '000'
department:
- _id: ToHe
doi: 10.1007/978-3-031-30826-0_15
ec_funded: 1
file:
- access_level: open_access
  checksum: 17a7c8e08be609cf2408d37ea55e322c
  content_type: application/pdf
  creator: dernst
  date_created: 2023-04-25T07:16:36Z
  date_updated: 2023-04-25T07:16:36Z
  file_id: '12865'
  file_name: 2023_LNCS_ChalupaM.pdf
  file_size: 580828
  relation: main_file
  success: 1
file_date_updated: 2023-04-25T07:16:36Z
has_accepted_license: '1'
intvolume: '     13991'
language:
- iso: eng
month: '04'
oa: 1
oa_version: Published Version
page: 260-281
project:
- _id: 62781420-2b32-11ec-9570-8d9b63373d4d
  call_identifier: H2020
  grant_number: '101020093'
  name: Vigilant Algorithmic Monitoring of Software
publication: Fundamental Approaches to Software Engineering
publication_identifier:
  eisbn:
  - '9783031308260'
  eissn:
  - 1611-3349
  isbn:
  - '9783031308253'
  issn:
  - 0302-9743
publication_status: published
publisher: Springer Nature
quality_controlled: '1'
related_material:
  record:
  - id: '12407'
    relation: earlier_version
    status: public
status: public
title: 'Vamos: Middleware for best-effort third-party monitoring'
tmp:
  image: /images/cc_by.png
  legal_code_url: https://creativecommons.org/licenses/by/4.0/legalcode
  name: Creative Commons Attribution 4.0 International Public License (CC-BY 4.0)
  short: CC BY (4.0)
type: conference
user_id: 2DF688A6-F248-11E8-B48F-1D18A9856A87
volume: 13991
year: '2023'
...
