I have a python process that is writing a large number of items into a DynamoDB table. I just noticed that it seems to be frozen. The process is reading from a large text file line by line and puts a new item into the table for each line. It seems to have frozen at some line and is not moving forward while not producing any exceptions. So I need to figure out if the problem is in interactions with DynamoDB or elsewhere. To check the former, how can I figure out what's going on with the table? I'm looking at the management console under "Monitoring". It's showing some activity under Read Capacity (because I did some manual queries trying to figure out what has made it to the table and what hasn't) but all other graphs (Write Capacity etc etc) are all empty. How do I find out exactly where the process is stuck? Thanks!
Asked
Active
Viewed 281 times
1 Answers
0
I think you've already done all possible stuffs from DynamoDB. Furthermore, your problem seems to be related to Python more than DynamoDB.
I found an very interesting question on SO explaining how to attach a debugger to a running process. The author seems to have a problem similar to yours. Showing the stack trace from a running Python application. As a downside to this technique, you must prepare it before launching the program and it only works on *NIX
But this is sometimes directly related to Python's interpreter bug. In this case, this article from Python's documentation may be of some help: http://wiki.python.org/moin/DebuggingWithGdb