Jeff's article wasn't completely useful because SQL Developer was doing this...
Every second or so the Reconnect dialog would tell me 'Your database connection has been reset. Any pending transactions or session state has been lost.' Over and over again with no chance of having a glimpse at the debug log inside SQL Developer itself.
So I got thinking that the SQL Developer debug logging looks like standard Java logging with some custom properties set so a standard FileHandler should work...and it does!
This is what I added to the end of the sqldeveloper/sqldeveloper/bin/logging-debug.conf file...
sqldeveloper/sqldeveloper/bin/logging-debug.conf
...
java.util.logging.FileHandler.pattern=/tmp/sqldeveloper.log
java.util.logging.FileHandler.level=ALL
handlers=java.util.logging.FileHandler
Don't forget to add 'IncludeConfFile sqldeveloper-debug.conf' to the sqldeveloper.conf file to make this work, as per Jeff's article.
Adjust the path to your log file to suit.
After doing this I could see my log file filled with messages and didn't have to try and debug these inside SQL Developer itself...
Log Output
...
<record>
<date>2016-01-24T08:01:13</date>
<millis>1453586473870</millis>
<sequence>3627</sequence>
<logger>oracle.javatools.db.execute.ConnectionWrapper</logger>
<level>INFO</level>
<class>oracle.javatools.db.execute.ConnectionWrapper</class>
<method>call</method>
<thread>56</thread>
<message>RaptorTask: Object Selection: The connection to database MY_DATABASE is closed.</message>
</record>
...
-i