Sometimes the last logs before error are missed too (which makes work even harder since not even server.log can be used to see which line of the code is reached).
Here it is one example log which has error somewhere after first line of code (first line is imp.configure, than a server log with “Test firmware starting …” than some code which has error in it:
Tuesday, November 13, 2012 12:54:14: Device configured to be "Test firmware"
Tuesday, November 13, 2012 12:54:14: Power state: online=>offline
Tuesday, November 13, 2012 12:54:25: Power state: offline=>online
Tuesday, November 13, 2012 12:54:25: Device booting
Tuesday, November 13, 2012 12:54:26: Device configured to be "Test firmware"
Tuesday, November 13, 2012 12:54:26: Test firmware starting …
Tuesday, November 13, 2012 12:54:26: Power state: online=>offline
Tuesday, November 13, 2012 12:54:41: Power state: offline=>online
Tuesday, November 13, 2012 12:54:42: Device booting
Tuesday, November 13, 2012 12:54:42: Device configured to be "Test firmware"
Tuesday, November 13, 2012 12:54:42: Power state: online=>offline
Tuesday, November 13, 2012 12:54:53: Power state: offline=>online
Tuesday, November 13, 2012 12:54:53: Device booting
Tuesday, November 13, 2012 12:54:55: Device booting
Tuesday, November 13, 2012 12:54:55: Device configured to be "Test firmware"
Tuesday, November 13, 2012 12:54:55: Test firmware starting …
Tuesday, November 13, 2012 12:54:55: Power state: online=>offline
Tuesday, November 13, 2012 12:55:06: Power state: offline=>online
Tuesday, November 13, 2012 12:55:06: Device booting
Tuesday, November 13, 2012 12:55:06: Device configured to be "Test firmware"
Tuesday, November 13, 2012 12:55:06: Test firmware starting …
Tuesday, November 13, 2012 12:55:06: Power state: online=>offline
Tuesday, November 13, 2012 12:55:17: Power state: offline=>online
Tuesday, November 13, 2012 12:55:17: Device booting
My hint would be: the error reporting cuts the connection too fast and the last messages + the error never reaches the planner.