The reviewed record of science sign in
Pith

arxiv: 2201.04837 · v2 · pith:QGBW37FD · submitted 2022-01-13 · cs.SE

Using Deep Learning to Generate Complete Log Statements

Reviewed by Pith T0 review T1 audit T2 compute T3 formal T4 kernel pith:QGBW37FDrecord.jsonopen to challenge →

classification cs.SE
keywords loggingstatementlancejavalevelsoftwarestatementscases
0
0 comments X
read the original abstract

Logging is a practice widely adopted in several phases of the software lifecycle. For example, during software development log statements allow engineers to verify and debug the system by exposing fine-grained information of the running software. While the benefits of logging are undisputed, taking proper decisions about where to inject log statements, what information to log, and at which log level (e.g., error, warning) is crucial for the logging effectiveness. In this paper, we present LANCE (Log stAtemeNt reCommEnder), the first approach supporting developers in all these decisions. LANCE features a Text-To-Text-Transfer-Transformer (T5) model that has been trained on 6,894,456 Java methods. LANCE takes as input a Java method and injects in it a full log statement, including a human-comprehensible logging message and properly choosing the needed log level and the statement location. Our results show that LANCE is able to (i) properly identify the location in the code where to inject the statement in 65.9% of Java methods requiring it; (ii) selecting the proper log level in 66.2% of cases; and (iii) generate a completely correct log statement including a meaningful logging message in 15.2% of cases.

This paper has not been read by Pith yet.

discussion (0)

Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.