Log++ logging for a cloud-native world

Research output: Contribution to journalEditorial

3 Scopus citations

Abstract

Logging is a fundamental part of the software development and deployment lifecycle but logging support is often provided as an afterthought via limited library APIs or third-party modules. Given the critical nature of logging in modern cloud, mobile, and IoT development workflows, the unique needs of the APIs involved, and the opportunities for optimization using semantic knowledge, we argue logging should be included as a central part of the language and runtime designs. This paper presents a rethinking of the logger for modern cloud-native workflows. Based on a set of design principles for modern logging we build a logging system, that supports near zero-cost for disabled log statements, low cost lazy-copying for enabled log statements, selective persistence of logging output, unified control of logging output across different libraries, and DevOps integration for use with modern cloud-based deployments. To evaluate these concepts we implemented the Log++ logger for Node.js hosted JavaScript applications.

Original languageEnglish
Pages (from-to)25-36
Number of pages12
JournalDLS 2018 - Proceedings of the 14th ACM SIGPLAN International Symposium on Dynamic Languages, co-located with SPLASH 2018
DOIs
StatePublished - Oct 24 2018
Event14th ACM SIGPLAN International Symposium on Dynamic Languages, DLS 2018, co-located with SPLASH 2018 - Boston, United States
Duration: Nov 6 2018 → …

Bibliographical note

Publisher Copyright:
© 2018 Copyright held by the owner/author(s).

Keywords

  • JavaScript
  • Logging
  • Runtime Monitoring

ASJC Scopus subject areas

  • Computer Science Applications
  • Computational Theory and Mathematics
  • Software
  • Computer Networks and Communications

Fingerprint

Dive into the research topics of 'Log++ logging for a cloud-native world'. Together they form a unique fingerprint.

Cite this