• Publications
  • Influence
Characterizing logging practices in open-source software
Software logging is a conventional programming practice. While its efficacy is often important for users and developers to understand what have happened in the production run, yet software logging isExpand
  • 133
  • 29
  • PDF
Improving software diagnosability via log enhancement
TLDR
We describe a tool, LogEnhancer that automatically "enhances" existing logging code to aid in future post-failure debugging. Expand
  • 177
  • 21
  • PDF
Be Conservative: Enhancing Failure Diagnosis with Proactive Logging
TLDR
We describe the design and implementation of our tool, Errlog , and show that it automatically inserts messages that cover 84% of error cases manually logged by programmers across 10 diverse software projects. Expand
  • 111
  • 17
  • PDF
Quasi-periodic Pulsations in Solar and Stellar Flares: An Overview of Recent Results (Invited Review)
Quasi-periodic pulsations (or QPPs) are periodic intensity variations in the flare emission that occur across all wavelength bands. In this article, we review the observational and modellingExpand
  • 63
  • 17
  • PDF
SherLog: error diagnosis by connecting clues from run-time logs
TLDR
We propose a tool, called SherLog, that analyzes source code by leveraging information provided by run-time logs to infer what must or may have happened during the failed production run. Expand
  • 205
  • 14
  • PDF
/*icomment: bugs or bad comments?*/
TLDR
This paper takes the first step in automatically analyzing commentswritten in natural language to extract implicit program rules and use these rules to automatically detect inconsistencies between comments and source code, indicating either bugs or bad comments. Expand
  • 211
  • 13
  • PDF
Simple Testing Can Prevent Most Critical Failures: An Analysis of Production Failures in Distributed Data-Intensive Systems
TLDR
We present the result of a comprehensive study investigating 198 randomly selected, user-reported failures that occurred on Cassandra, HBase, Hadoop Distributed File System (HDFS) and Redis, with the goal of understanding how one or multiple faults eventually evolve into a user-visible failure. Expand
  • 127
  • 13
  • PDF
Relative radiometric normalization of Landsat Multispectral Scanner data using an automatic scattergram-controlled regression
A relative radiometric normalization (RRN) based on an Automatic Scattergram-Controlled Regression (ASCR) has been developed to create radiometrically comparable multispectral data sets, compensatingExpand
  • 186
  • 12
  • PDF
How do fixes become bugs?
TLDR
This paper presents a comprehensive characteristic study on incorrect bug-fixes from large operating system code bases including Linux, OpenSolaris, FreeBSD and also a mature commercial OS developed and evolved over the last 12 years, investigating not only themistake patterns during bug-fixing but also the possible human reasons in the development process. Expand
  • 197
  • 10
Do not blame users for misconfigurations
TLDR
We build a tool, called Spex, to automatically infer configuration requirements (referred to as constraints) from software source code, and then use the inferred constraints to: (1) expose misconfiguration vulnerabilities; and (2) detect certain types of error-prone configuration design and handling. Expand
  • 113
  • 10
  • PDF