![]() ![]() ![]() Contrast this with typical debugging where you can even trace into the OS kernel if you so choose. You'll never been able to get a stack trace that crosses into the internal calls of the platform services like S3 or Lambda. Their sheer size and complexity will mean that your visibility will always be limited. Shared platforms can't generally allow "invasive" debugging for security reasons. You can't peer into their source code, it is all proprietary and even secret. The only full-fidelity platform is the shared server. Does not provide all-local workstations. Now, in the 2020s, mainframes are back! They're just called "the cloud" now, but not much of their essential nature has changed other than the vendor name. Productivity skyrocketed, and most enterprises shifted the majority of their workload away from mainframes. This dramatically tightened the edit-compile-debug loop, down to seconds or at most minutes. This work loop is incredibly inefficient, and was replaced by development that happened entirely locally on a workstation. You'd get a printout of the results back hours later, or even tomorrow. You "submit" it to the system, and it would be scheduled to run along with other workloads. You'd develop some program in isolation, unable to properly run it. Programming in the 1960s to 80s was like this too. You've discovered what many other people have: The cloud is the new time-share mainframe. Would that work for me? I did try SAM but I was a bit underwhelmed and I don't want to use a separate IaC tool for these.Īlternatively, do other FaaS providers solve this problem? I have heard localstack is quite good although I haven't given it a go yet. It would be quite cool if I could define BDD style tests around them too.Īnyone have any suggestions or share my frustrations? ![]() What I want is to run the lambdas locally, ideally more than one, and then exercise them with streams of test events (perhaps captured from a real environment). I can unit test bits of the code just fine, but at some point I always end up stuck in a slow feedback loop where I deploy the code, do some manual invoking, go and dig through the logs in CloudWatch, add another print statement in my lambda. Maybe I'm doing this wrong but does anyone else find the experience to be really frustrating? I've been using AWS lambda a bit recently, mostly as a way to glue together various bits and pieces. ![]()
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |