Skip to main content
Log in

Troubleshooting Serverless functions: a combined monitoring and debugging approach

  • Special Issue Paper
  • Published:
SICS Software-Intensive Cyber-Physical Systems

Abstract

Today, Serverless computing gathers pace and attention in the cloud computing area. The abstraction of operational tasks combined with the auto-scaling property are convincing reasons to adapt this new cloud paradigm. Building applications in a Serverless style via cloud functions is challenging due to the fine-grained architecture and the tighter coupling to back end services. Increased complexity, loss of control over software layers and the large number of participating functions and back end services complicate the task of finding the cause of a faulty execution. A tedious but widespread strategy is the manual analysis of log data. In this paper, we present a semi-automated troubleshooting process to improve fault detection and resolution for Serverless functions. Log data is the vehicle to enable a posteriori analysis. The process steps of our concept enhance the log quality, detect failed executions automatically, and generate test skeletons based on the information provided in the log data. Ultimately, this leads to an increased test coverage, a better regression testing and more robust functions. Developers can trigger this process asynchronously and work with their accustomed tools. We also present a prototype SeMoDe to validate our approach for Serverless functions implemented in Java and deployed to AWS Lambda.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1

Similar content being viewed by others

Notes

  1. https://github.com/johannes-manner/SeMoDe.

References

  1. Fromm K (2012) Why the future of software and apps is Serverless. https://readwrite.com/2012/10/15/why-the-future-of-software-and-apps-is-serverless/. Accessed 31 Jan 2018

  2. Savage N (2018) Going Serverless. Commun ACM 61:2

    Google Scholar 

  3. Mell P, Grance T (2011) The NIST deinition of cloud computing. Technical report, National Institute of Standards and Technology, Gaithersburg

  4. Baldini I et al (2017) Serverless computing: current trends and open problems. In: Chaudhary S, Somani G, Buyya R (eds) Research advances in cloud computing. Springer, Singapore

  5. Sbarski P (2017) Serverless architectures on Aws: with examples using Aws Lambda. Manning Publications, New York

    Google Scholar 

  6. Kolb S, Wirtz G (2014) Towards application portability in platform as a service. In: Proceedings of SOSE

  7. van Eyk E et al (2017) The SPEC cloud group’s research vision on FaaS and Serverless architectures. In: Proceedings of WoSC

  8. Hendrickson S et al (2016) Serverless computation with openLambda. In: Proceedings of HotCloud

  9. Villamizar M et al (2016) Infrastructure cost comparison of running web applications in the cloud using AWS Lambda and monolithic and microservice architectures. In: Proceedings of CCGrid

  10. Jonas E et al (2017) Occupy the cloud: distributed computing for the 99%. In: Proceedings of SoCC

  11. Roberts M, Chapin J (2017) What is Serverless?. O’Reilly Media. Inc, Newton

    Google Scholar 

  12. Spring J (2011) Monitoring cloud computing by layer, part 1. IEEE Secur Priv 9(2):66–68

  13. Spring J (2011) Monitoring cloud computing by layer, part 2. IEEE Secur Priv 9(3):52–55

  14. Aceto G et al (2012) Cloud monitoring: definitions, issues and future directions. In: Proceedings of CLOUDNET

  15. Yuan D et al (2011) Improving software diagnosability via log enhancement. In: Proceedings of ASPLOS

  16. Kobayashi M et al (2017) Discovering cloud operation history through log analysis. In: Proceedings of AnNet

  17. Kellogg M (2016) Combining bug detection and test case generation. In: Proceedings of SIGSOFT

  18. Armbrust M et al (2010) A view of cloud computing. Commun ACM 53(4):50–58

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Johannes Manner.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Manner, J., Kolb, S. & Wirtz, G. Troubleshooting Serverless functions: a combined monitoring and debugging approach. SICS Softw.-Inensiv. Cyber-Phys. Syst. 34, 99–104 (2019). https://doi.org/10.1007/s00450-019-00398-6

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00450-019-00398-6

Keywords

Navigation