Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3102980.3103001acmconferencesArticle/Chapter ViewAbstractPublication PageshotosConference Proceedingsconference-collections
research-article
Open access

The Game of Twenty Questions: Do You Know Where to Log?

Published: 07 May 2017 Publication History

Abstract

A production system's printed logs are often the only source of runtime information available for postmortem debugging, performance analysis and profiling, security auditing, and user behavior analytics. Therefore, the quality of this data is critically important. Recent work has attempted to enhance log quality by recording additional variable values, but logging statement placement, i.e., where to place a logging statement, which is the most challenging and fundamental problem for improving log quality, has not been adequately addressed so far. This position paper proposes we automate the placement of logging statements by measuring how much uncertainty, i.e., the expected number of possible execution code paths taken by the software, can be removed by adding a logging statement to a basic block. Guided by ideas from information theory, we describe a simple approach that automates logging statement placement. Preliminary results suggest that our algorithm can effectively cover, and further improve, the existing logging statement placements selected by developers. It can compute an optimal logging statement placement that disambiguates the entire function call path with only 0.218% of slowdown.

References

[1]
M. K. Aguilera, J. C. Mogul, J. L. Wiener, P. Reynolds, and A. Muthitacharoen. Performance Debugging for Distributed Systems of Black Boxes. In Proceedings of the 19th ACM Symposium on Operating Systems Principles, SOSP '03, pages 74--89. ACM, 2003.
[2]
P. Barham, A. Donnelly, R. Isaacs, and R. Mortier. Using Magpie for Request Extraction and Workload Modelling. In Proceedings of the 6th Conference on Symposium on Opearting Systems Design & Implementation, OSDI '04, pages 259--272. USENIX Association, 2004.
[3]
M. Chow, D. Meisner, J. Flinn, D. Peek, and T. F. Wenisch. The Mystery Machine: End-to-end Performance Analysis of Large-scale Internet Services. In Proceedings of the 11th USENIX Conference on Operating Systems Design and Implementation, OSDI '14, pages 217--231. USENIX Association, 2014.
[4]
R. Fonseca, G. Porter, R. H. Katz, S. Shenker, and I. Stoica. X-Trace: A Pervasive Network Tracing Framework. In Proceedings of the 4th USENIX Conference on Networked Systems Design & Implementation, NSDI '07, pages 271--284. USENIX Association, 2007.
[5]
Q. Fu, J. Zhu, W. Hu, J.-G. Lou, R. Ding, Q. Lin, D. Zhang, and T. Xie. Where Do Developers Log? An Empirical Study on Logging Practices in Industry. In Companion Proceedings of the 36th International Conference on Software Engineering, ICSE Companion 2014, pages 24--33. ACM, June 2014.
[6]
S. Huang, J. Huang, J. Dai, T. Xie, and B. Huang. The HiBench Benchmark Suite: Characterization of the MapReduce-based Data Analysis. In 26th International Conference on Data Engineering Workshops, ICDEW '10, pages 41--51. IEEE Computer Society, 2010.
[7]
H. Li, W. Shang, Y. Zou, and A. E. Hassan. Towards Just-in-time Suggestions for Log Changes. Empirical Software Engineering, pages 1--35, October 2016.
[8]
C. E. Shannon. A Mathematical Theory of Communication. The Bell System Technical Journal, 27(4):623--656, October 1948.
[9]
D. Yuan, S. Park, P. Huang, Y. Liu, M. Lee, Y. Zhou, and S. Savage. Be Conservative: Enhancing Failure Diagnosis with Proactive Logging. In Proceedings of the 10th USENIX Symposium on Operating System Design and Implementation, OSDI '12, pages 293--306. USENIX Association, 2012.
[10]
D. Yuan, S. Park, and Y. Zhou. Characterizing Logging Practices in Open-Source Software. In Proceedings of the 34th International Conference on Software Engineering, ICSE '12, pages 102--112. IEEE Press, 2012.
[11]
D. Yuan, J. Zheng, S. Park, Y. Zhou, and S. Savage. Improving Software Diagnosability via Log Enhancement. In Proceedings of the 16th International Conference on Architecture Support for Programming Languages and Operating Systems, ASPLOS '11, pages 3--14. ACM, 2011.

Cited By

View all
  • (2024)Mitigating the Uncertainty and Imprecision of Log-Based Code Coverage Without Requiring Additional Logging StatementsIEEE Transactions on Software Engineering10.1109/TSE.2024.343506750:9(2350-2362)Online publication date: Sep-2024
  • (2024)A literature review and existing challenges on software logging practicesEmpirical Software Engineering10.1007/s10664-024-10452-w29:4Online publication date: 18-Jun-2024
  • (2023)Logging Practices in Software Engineering: A Systematic Mapping StudyIEEE Transactions on Software Engineering10.1109/TSE.2022.316692449:2(902-923)Online publication date: 1-Feb-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
HotOS '17: Proceedings of the 16th Workshop on Hot Topics in Operating Systems
May 2017
185 pages
ISBN:9781450350686
DOI:10.1145/3102980
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 07 May 2017

Check for updates

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

HotOS '17
Sponsor:
HotOS '17: Workshop on Hot Topics in Operating Systems
May 7 - 10, 2017
BC, Whistler, Canada

Upcoming Conference

HOTOS '25
Workshop on Hot Topics in Operating Systems
May 14 - 16, 2025
Banff or Lake Louise , AB , Canada

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)122
  • Downloads (Last 6 weeks)29
Reflects downloads up to 25 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Mitigating the Uncertainty and Imprecision of Log-Based Code Coverage Without Requiring Additional Logging StatementsIEEE Transactions on Software Engineering10.1109/TSE.2024.343506750:9(2350-2362)Online publication date: Sep-2024
  • (2024)A literature review and existing challenges on software logging practicesEmpirical Software Engineering10.1007/s10664-024-10452-w29:4Online publication date: 18-Jun-2024
  • (2023)Logging Practices in Software Engineering: A Systematic Mapping StudyIEEE Transactions on Software Engineering10.1109/TSE.2022.316692449:2(902-923)Online publication date: 1-Feb-2023
  • (2023)Auto-Logging: Al-Centred Logging InstrumentationProceedings of the 45th International Conference on Software Engineering: New Ideas and Emerging Results10.1109/ICSE-NIER58687.2023.00023(95-100)Online publication date: 17-May-2023
  • (2022)The sense of logging in the Linux kernelEmpirical Software Engineering10.1007/s10664-022-10136-327:6Online publication date: 1-Nov-2022
  • (2021)A Survey on Automated Log Analysis for Reliability EngineeringACM Computing Surveys10.1145/346034554:6(1-37)Online publication date: 13-Jul-2021
  • (2021)A Survey of Software Log InstrumentationACM Computing Surveys10.1145/344897654:4(1-34)Online publication date: 3-May-2021
  • (2020)Can You Capture Information As You Intend To? A Case Study on Logging Practice in Industry2020 IEEE International Conference on Software Maintenance and Evolution (ICSME)10.1109/ICSME46990.2020.00012(12-22)Online publication date: Sep-2020
  • (2020)Blockchain structures to guarantee logging integrity of a digital platform to support community-dwelling older adultsCluster Computing10.1007/s10586-020-03084-4Online publication date: 14-Mar-2020
  • (2020)Automatically Generating Descriptive Texts in Logging Statements: How Far Are We?Programming Languages and Systems10.1007/978-3-030-64437-6_13(251-269)Online publication date: 24-Nov-2020
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media