SimpleDB is good for a lot of things, but the unpredictable costs (since you're charged for box usage which varies) and network latency make it unsuitable for logging at scale. (like, what if you get 100's of error messages a second?)<p>We use a decidedly low-tech scheme. We log everything to files on local storage. Then we use a command line tool to periodically sync these to S3. Each instance gets its own folder.<p>When we want to query, we have several options. We can run good old grep or tail on one instance -- or on several instances with pssh. We can use the S3 command line tool to process multiple files on an admin machine. Or we could use Hadoop to mess with files in S3 (haven't done that yet...!)<p>Not as snazzy as having each log record stored in a structured fashion, but it's a lot cheaper than SimpleDB.