<type>documentation</type>
<domain>proj</domain>
<id>remote-trouble</id>
<title>Trouble-Shooting Remote Development Problems</title>
<date>$Date: 2010-05-14 11:53:19 -0400 (Fri, 14 May 2010) $</date>
<version>$Revision: 22093 $</version>
<product-version>6+</product-version>
<product>pro+</product>

If you are having problems getting remote development working, you should first check that 
you can connect to the remote host outside of Wing.  If that does not work, then Wing will
also not be able to connect to the remote host.

Collecting Diagnostic Logs
--------------------------

To further diagnose problems setting up and using remote development in Wing, look in the
file ``ide.log`` in Wing's `User Settings <ref:install/user-settings-dir>`__ directory,
which is listed in Wing's About box, or submit this file to Wingware with a bug report
from Wing's ``Help`` menu.

If this shows that Wing is successfully connecting to the remote host, then there may
also be a log file on the remote system.  This is the file ``remote-agent.log`` in
the directory ``~/.wingpro~~MAJOR_VERSION~~``.  

Feel free to email these files to support@wingware.com for help.

Fixing Slow Connection Times
----------------------------

In some cases, remote development can be slow or unreliable if there are one or more SSH
keys on your host system (where the IDE is running) that are not accepted by the remote
host. This results in Wing trying to use those keys in order, each being rejected, before
prompting for a login password. Even after passwords are entered, non-working keys may be
tried, slowing down the connection time considerably, or preventing connection from
occurring before network timeouts are reached.

If you are having this problem, you can solve it by setting ``Private Key`` under the
``Options`` tab in your remote host configuration, accessed via ``Remote Hosts`` in the
``Project`` menu.  This ensures the correct key is tried first.

An alternative solution that may also work is to place your SSH public key in the file
``~/.ssh/authorized_keys`` on the remote system, so that the key is accepted. Note that if
you are using PuTTY, you will need to convert your key to OpenSSH format using
``puttygen``. See `Working with PuTTY <ref:proj/ssh-setup-details-putty>`__ for details.

Working with Slow Network Connections or Hosts
----------------------------------------------

If you have a slow network connection, or if your remote host is relatively slow (for example,
a Raspberry Pi Zero), then you may need to increase the 
`Remote Development > SSH Timeout <script:show_preferences_gui#prefname="main.ssh-timeout">`__, 
`Remote Development > Hung Connection Timeout <script:show_preferences_gui#prefname="main.hung-connection-threshold">`__, and 
`Debugger > Network > `Network Timeout <script:show_preferences_gui#prefname="debug.network-timeout">`__ preferences.

