Data Logging Stops After Losing GPS Signal

So, Serial.print( gps.getLattitude( ) , 8 ); prints the number you want with 8 decimal places, but when you put it into your SD file, you don't get 8 decimal places ?

I can't see the code where you are doing that, but the suggestion occurs, if you are using the sprintf( ) function, well there is a bug ( of some kind ) in it, and it doesn't work properly. This is a problem that has come up before. There is a workaround for it, but I forget exactly what it is.