{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,20]],"date-time":"2026-02-20T08:35:09Z","timestamp":1771576509245,"version":"3.50.1"},"reference-count":49,"publisher":"Springer Science and Business Media LLC","issue":"3","license":[{"start":{"date-parts":[[2019,9,9]],"date-time":"2019-09-09T00:00:00Z","timestamp":1567987200000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2019,9,9]],"date-time":"2019-09-09T00:00:00Z","timestamp":1567987200000},"content-version":"vor","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"funder":[{"DOI":"10.13039\/501100001809","name":"National Natural Science Foundation of China","doi-asserted-by":"publisher","award":["61690203"],"award-info":[{"award-number":["61690203"]}],"id":[{"id":"10.13039\/501100001809","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100001809","name":"National Natural Science Foundation of China","doi-asserted-by":"publisher","award":["U1711261"],"award-info":[{"award-number":["U1711261"]}],"id":[{"id":"10.13039\/501100001809","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100001809","name":"National Natural Science Foundation of China","doi-asserted-by":"publisher","award":["61872373"],"award-info":[{"award-number":["61872373"]}],"id":[{"id":"10.13039\/501100001809","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100001809","name":"National Natural Science Foundation of China","doi-asserted-by":"publisher","award":["61872375"],"award-info":[{"award-number":["61872375"]}],"id":[{"id":"10.13039\/501100001809","id-type":"DOI","asserted-by":"publisher"}]},{"name":"National Key R&D Program of China","award":["2017YFB1001802"],"award-info":[{"award-number":["2017YFB1001802"]}]},{"name":"National Key R&D Program of China","award":["2017YFB0202201"],"award-info":[{"award-number":["2017YFB0202201"]}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Empir Software Eng"],"published-print":{"date-parts":[[2020,5]]},"DOI":"10.1007\/s10664-019-09757-y","type":"journal-article","created":{"date-parts":[[2019,9,9]],"date-time":"2019-09-09T07:03:56Z","timestamp":1568012636000},"page":"2302-2340","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":7,"title":["Guiding log revisions by learning from software evolution history"],"prefix":"10.1007","volume":"25","author":[{"given":"Shanshan","family":"Li","sequence":"first","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0001-7622-7904","authenticated-orcid":false,"given":"Xu","family":"Niu","sequence":"additional","affiliation":[]},{"given":"Zhouyang","family":"Jia","sequence":"additional","affiliation":[]},{"given":"Xiangke","family":"Liao","sequence":"additional","affiliation":[]},{"given":"Ji","family":"Wang","sequence":"additional","affiliation":[]},{"given":"Tao","family":"Li","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2019,9,9]]},"reference":[{"key":"9757_CR1","unstructured":"Ice (2018) Ice - comprehensive rpc framework. \nhttps:\/\/zeroc.com\/products\/ice"},{"issue":"5","key":"9757_CR2","doi-asserted-by":"publisher","first-page":"168","DOI":"10.1145\/381694.378832","volume":"36","author":"M Arnold","year":"2001","unstructured":"Arnold M, Ryder BG (2001) A framework for reducing the cost of instrumented code. ACM SIGPLAN Not 36(5):168\u2013179. \nhttps:\/\/doi.org\/10.1145\/381694.378832\n\n. \nhttp:\/\/portal.acm.org\/citation.cfm?doid=381694.378832","journal-title":"ACM SIGPLAN Not"},{"issue":"1","key":"9757_CR3","doi-asserted-by":"publisher","first-page":"330","DOI":"10.1007\/s10664-016-9429-5","volume":"22","author":"BJ Chen","year":"2017","unstructured":"Chen BJ, Jiang ZM (2017) Characterizing logging practices in Java-based open source software projects - a replication study in apache software foundation. Empir Softw Eng 22(1):330\u2013374. \nhttps:\/\/doi.org\/10.1007\/s10664-016-9429-5","journal-title":"Empir Softw Eng"},{"key":"9757_CR4","doi-asserted-by":"publisher","unstructured":"Chen B, Jiang Z M (2017) Characterizing and detecting anti-patterns in the logging code. Proceedings - 2017 IEEE\/ACM 39th international conference on software engineering, ICSE 2017, pp 71\u201381. \nhttps:\/\/doi.org\/10.1109\/ICSE.2017.15","DOI":"10.1109\/ICSE.2017.15"},{"key":"9757_CR5","doi-asserted-by":"publisher","unstructured":"Collard M L, Decker M J, Maletic JI (2013) SrcML: An infrastructure for the exploration, analysis, and manipulation of source code: A tool demonstration. In: IEEE international conference on software maintenance, ICSM, IEEE, pp 516-519, DOI \nhttps:\/\/doi.org\/10.1109\/ICSM.2013.85","DOI":"10.1109\/ICSM.2013.85"},{"key":"9757_CR6","unstructured":"Collectd (2017) Start page - collectd - The system statistics collection daemon. \nhttp:\/\/collectd.org\/"},{"key":"9757_CR7","unstructured":"Conservancy SF (2018) Git. \nhttps:\/\/git-scm.com\/"},{"key":"9757_CR8","unstructured":"Davison W (2018) rsync. \nhttps:\/\/rsync.samba.org\/"},{"issue":"4","key":"9757_CR9","doi-asserted-by":"publisher","first-page":"364","DOI":"10.1093\/comjnl\/20.4.364","volume":"20","author":"D Defays","year":"1977","unstructured":"Defays D (1977) An efficient algorithm for a complete link method. Comput J 20 (4):364\u2013366. \nhttps:\/\/doi.org\/10.1093\/comjnl\/20.4.364\n\n. \nhttp:\/\/oup.prod.sis.lan\/comjnl\/article-pdf\/20\/4\/364\/1108735\/200364.pdf","journal-title":"Comput J"},{"key":"9757_CR10","unstructured":"Ding R, Zhou H, Lou J G, Zhang H, Lin Q, Fu Q, Zhang D, Xie T (2015) Log 2: a cost-aware logging mechanism for performance diagnosis"},{"key":"9757_CR11","doi-asserted-by":"crossref","unstructured":"Falleri JR, Morandat F, Blanc X, Martinez M, Montperrus M (2014) Fine-grained and accurate source code differencing. Proceedings of the 29th ACM\/IEEE international conference on automated software engineering - ASE \u201914 pp 313\u2013324. \nhttp:\/\/dl.acm.org\/citation.cfm?doid=2642937.2642982","DOI":"10.1145\/2642937.2642982"},{"key":"9757_CR12","unstructured":"Foundation FS (2016) Diffutils - gnu project - free software foundation. \nhttps:\/\/www.gnu.org\/software\/diffutils\/"},{"key":"9757_CR13","unstructured":"Foundation FS (2017a) Tar - gnu project - free software foundation. \nhttps:\/\/www.gnu.org\/software\/tar\/"},{"key":"9757_CR14","unstructured":"Foundation FS (2017b) Wget - gnu project - free software foundation. \nhttps:\/\/www.gnu.org\/software\/wget\/"},{"key":"9757_CR15","unstructured":"Foundation PS (2018) Built-in functions-python 2.7.14 documentation. \nhttps:\/\/docs.python.org\/2\/library\/functions.html"},{"key":"9757_CR16","unstructured":"Foundation TAS (2017c) httpd - apache hypertext transfer protocol server - apache http server version 2.4. \nhttp:\/\/httpd.apache.org\/docs\/2.4\/programs\/httpd.html"},{"key":"9757_CR17","unstructured":"Foundation W (2019) Wireshark - go deep. \nhttps:\/\/www.wireshark.org\/"},{"key":"9757_CR18","doi-asserted-by":"crossref","unstructured":"Fu Q, Zhu J, Hu W, Lou JG, Ding R, Lin Q, Zhang D, Xie T (2014) Where do developers log? an empirical study on logging practices in industry. Proceedings of the 36th international conference on software engineering - ICSE \u201914 pp 24\u201333. \nhttp:\/\/dl.acm.org\/citation.cfm?doid=2591062.2591175","DOI":"10.1145\/2591062.2591175"},{"key":"9757_CR19","doi-asserted-by":"crossref","unstructured":"Gabel M, Jiang L, Su Z (2008) Scalable detection of semantic clones. Proceedings of the 30th international conference on Software engineering - ICSE \u201908 p 321. \nhttp:\/\/portal.acm.org\/citation.cfm?doid=1368088.1368132","DOI":"10.1145\/1368088.1368132"},{"key":"9757_CR20","unstructured":"Github (2018a) Github - gumtreediff\/gumtree: A neat code differencing tool. \nhttps:\/\/github.com\/GumTreeDiff\/gumtree"},{"key":"9757_CR21","unstructured":"GitHub (2018b) skyhover\/deckard: Code clone detection; clone-related bug detection; semantic clone analysis. \nhttps:\/\/github.com\/skyhover\/Deckard"},{"key":"9757_CR22","unstructured":"Github (2019) niuxu18\/logtracker: Automatic tool which tries to guide log revisions by mining software evolution"},{"key":"9757_CR23","first-page":"1","volume":"11","author":"M Hassani","year":"2018","unstructured":"Hassani M, Shang W, Shihab E, Tsantalis N (2018) Studying and detecting log-related issues. Empir Softw Eng 11:1\u201333","journal-title":"Empir Softw Eng"},{"key":"9757_CR24","doi-asserted-by":"publisher","unstructured":"Jiang L, Misherghi G, Su Z, Glondu S (2007) DECKARD: Scalable and accurate tree-based detection of code clones. In: Proceedings of the 29th International Conference on on Software Engineering - ICSE \u201907, pp 96\u2013105, DOI \nhttps:\/\/doi.org\/10.1109\/ICSE.2007.30","DOI":"10.1109\/ICSE.2007.30"},{"key":"9757_CR25","doi-asserted-by":"publisher","unstructured":"Juergens E, Deissenboeck F, Hummel B (2009) CloneDetective - A workbench for clone detection research. In: Proceedings of the 31th International Conference on Software Engineering - ICSE \u201909, pp 603\u2013606, DOI \nhttps:\/\/doi.org\/10.1109\/ICSE.2009.5070566","DOI":"10.1109\/ICSE.2009.5070566"},{"issue":"7","key":"9757_CR26","doi-asserted-by":"publisher","first-page":"654","DOI":"10.1109\/TSE.2002.1019480","volume":"28","author":"T Kamiya","year":"2002","unstructured":"Kamiya T, Kusumoto S, Inoue K (2002) CCFinder: A multilinguistic token-based code clone detection system for large scale source code. IEEE Trans Softw Eng 28(7):654\u2013670. \nhttps:\/\/doi.org\/10.1109\/TSE.2002.1019480","journal-title":"IEEE Trans Softw Eng"},{"key":"9757_CR27","doi-asserted-by":"publisher","unstructured":"Kawrykow D, Robillard M P (2011) Non-essential changes in version histories. In: Proceedings of the 33th international conference on Software engineering - ICSE \u201911, pp 351\u2013360. \nhttps:\/\/doi.org\/10.1145\/1985793.1985842","DOI":"10.1145\/1985793.1985842"},{"key":"9757_CR28","unstructured":"kevin8t8 (2018) The mutt e-mail client. \nhttp:\/\/www.mutt.org\/"},{"issue":"5","key":"9757_CR29","doi-asserted-by":"publisher","first-page":"187","DOI":"10.1145\/1095430.1081737","volume":"30","author":"M Kim","year":"2005","unstructured":"Kim M, Sazawal V, Notkin D (2005) An empirical study of code clone genealogies. ACM SIGSOFT Software Engineering Notes 30(5):187. \nhttps:\/\/doi.org\/10.1145\/1095430.1081737\n\n. \nhttp:\/\/portal.acm.org\/citation.cfm?doid=1095430.1081737","journal-title":"ACM SIGSOFT Software Engineering Notes"},{"issue":"4","key":"9757_CR30","doi-asserted-by":"publisher","first-page":"1831","DOI":"10.1007\/s10664-016-9467-z","volume":"22","author":"H Li","year":"2017","unstructured":"Li H, Shang W, Zou Y, E Hassan A (2017) Towards just-in-time suggestions for log changes. Empir Softw Eng 22(4):1831\u20131865. \nhttps:\/\/doi.org\/10.1007\/s10664-016-9467-z","journal-title":"Empir Softw Eng"},{"key":"9757_CR31","doi-asserted-by":"crossref","unstructured":"Li S, Niu X, Jia Z, Wang J, He H, Wang T (2018) Logtracker: Learning log revision behaviors proactively from software evolution history. In: Proceedings of IEEE\/ACM international conference on program comprehension 2018 - ICPC, 2018","DOI":"10.1145\/3196321.3196328"},{"key":"9757_CR32","doi-asserted-by":"publisher","unstructured":"Li Z, Lu S, Myagmar S, Zhou Y (2004) CP-Miner: A tool for finding copy-paste and related bugs in operating system code. In: Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - OSDI \u201904, pp 20, DOI \nhttps:\/\/doi.org\/10.1109\/TSE.2006.28","DOI":"10.1109\/TSE.2006.28"},{"key":"9757_CR33","unstructured":"Media S (2018) Sloccount download \u2014 sourceforge.net. \nhttps:\/\/sourceforge.net\/projects\/sloccount\/"},{"key":"9757_CR34","doi-asserted-by":"crossref","unstructured":"Meng N, Kim M, McKinley KS (2011) Systematic editing. Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation - PLDI \u201911 p 329. \nhttp:\/\/portal.acm.org\/citation.cfm?doid=1993498.1993537","DOI":"10.1145\/1993498.1993537"},{"key":"9757_CR35","doi-asserted-by":"crossref","unstructured":"Meng N, Kim M, McKinley K S (2013) LASE : Locating and Applying Systematic Edits by Learning from Examples","DOI":"10.1109\/ICSE.2013.6606596"},{"key":"9757_CR36","doi-asserted-by":"crossref","unstructured":"Mondai M, Roy C K, Schneider K A (2018) Micro-clones in evolving software. Proceedings of 25th IEEE international conference on software analysis, evolution and reengineering - SANER\u201918, pp 50\u201360","DOI":"10.1109\/SANER.2018.8330196"},{"key":"9757_CR37","unstructured":"OCI (2018) Opendds. \nhttp:\/\/opendds.org\/"},{"key":"9757_CR38","doi-asserted-by":"publisher","unstructured":"Pecchia A, Cinque M, Carrozza G, Cotroneo D (2015) Industry practices and event logging: Assessment of a critical software development process. In: Proceedings of the 37th IEEE international conference on software engineering - ICSE \u201915, pp 169\u2013178, DOI \nhttps:\/\/doi.org\/10.1109\/ICSE.2015.145","DOI":"10.1109\/ICSE.2015.145"},{"issue":"10","key":"9757_CR39","doi-asserted-by":"publisher","first-page":"107","DOI":"10.1145\/2858965.2814310","volume":"50","author":"O Polozov","year":"2015","unstructured":"Polozov O, Gulwani S (2015) FlashMeta: A framework for inductive program synthesis. ACM SIGPLAN Not 50(10):107\u2013126. \nhttps:\/\/doi.org\/10.1145\/2858965.2814310\n\n. \nhttp:\/\/dl.acm.org\/citation.cfm?doid=2858965.2814310","journal-title":"ACM SIGPLAN Not"},{"key":"9757_CR40","doi-asserted-by":"publisher","unstructured":"Rolim R, Soares G, D\u2019Antoni L, Polozov O, Gulwani S, Gheyi R, Suzuki R, Hartmann B (2017) Learning syntactic program transformations from examples. In: Proceedings of the 39th international conference on software engineering - ICSE \u201917, pp 404\u2013415, DOI \nhttps:\/\/doi.org\/10.1109\/ICSE.2017.44","DOI":"10.1109\/ICSE.2017.44"},{"key":"9757_CR41","unstructured":"Sigelman B H, Andr L, Burrows M, Stephenson P, Plakal M, Beaver D, Jaspan S, Shanbhag C (2010) Dapper, A large-scale distributed systems tracing infrastructure. Tech rep., California, USA. \nhttps:\/\/ai.google\/research\/pubs\/pub36356"},{"key":"9757_CR42","unstructured":"Systems CR (2019) Sample size calculator. \nhttps:\/\/www.surveysystem.com\/sscalc.htm"},{"key":"9757_CR43","unstructured":"Team TG (2019) Gimp - gnu image manipulation program. \nhttps:\/\/www.gimp.org\/"},{"key":"9757_CR44","unstructured":"Venema W (2013) The postfix home page. \nhttp:\/\/www.postfix.org\/"},{"key":"9757_CR45","unstructured":"Yuan D, Park S, Huang P, Liu Y, Lee M (2012a) Be conservative: enhancing failure diagnosis with proactive logging. In: Proceedings of the 10th USENIX conference on Operating Systems Design and Implementation - OSDI \u201912, 41(6):293\u2013306"},{"key":"9757_CR46","doi-asserted-by":"crossref","unstructured":"Yuan D, Park S, Zhou Y (2012b) Characterizing logging practices in open-source software. In: Proceedings of the 34th international conference on software engineering - ICSE \u201912, pp 102\u2013112","DOI":"10.1109\/ICSE.2012.6227202"},{"issue":"1","key":"9757_CR47","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/2110356.2110360","volume":"30","author":"D Yuan","year":"2012","unstructured":"Yuan D, Zheng J, Park S, Zhou Y, Savage S (2012c) Improving software diagnosability via log enhancement. ACM Trans Comput Syst 30(1):1\u201328. \nhttps:\/\/doi.org\/10.1145\/2110356.2110360\n\n. \nhttp:\/\/dl.acm.org\/citation.cfm?doid=2110356.2110360","journal-title":"ACM Trans Comput Syst"},{"key":"9757_CR48","doi-asserted-by":"publisher","unstructured":"Zhao X, Rodrigues K, Stumm M (2017) Log20: Fully automated optimal placement of log printing statements under specified overhead threshold. In: Proceedings of the 26th symposium on operating systems principles - SOSP \u201917, pp 565\u2013581, DOI \nhttps:\/\/doi.org\/10.1145\/3132747.3132778","DOI":"10.1145\/3132747.3132778"},{"key":"9757_CR49","doi-asserted-by":"publisher","unstructured":"Zhu J, He P, Fu Q, Zhang H, Lyu M R, Zhang D (2015) Learning to log: Helping developers make informed logging decisions. In: Proceedings of the 37th international conference on software engineering - ICSE \u201915, pp 415\u2013425, DOI \nhttps:\/\/doi.org\/10.1109\/ICSE.2015.60","DOI":"10.1109\/ICSE.2015.60"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-019-09757-y.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s10664-019-09757-y\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-019-09757-y.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,9,7]],"date-time":"2020-09-07T23:31:16Z","timestamp":1599521476000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s10664-019-09757-y"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019,9,9]]},"references-count":49,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2020,5]]}},"alternative-id":["9757"],"URL":"https:\/\/doi.org\/10.1007\/s10664-019-09757-y","relation":{},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"value":"1382-3256","type":"print"},{"value":"1573-7616","type":"electronic"}],"subject":[],"published":{"date-parts":[[2019,9,9]]},"assertion":[{"value":"9 September 2019","order":1,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}}]}}