Abandoned [App] edproxy - Remote the ED netLog to multiple listeners

Edproxy is not being maintained at this time.

Elite: Dangerous Netlog proxy server (edproxy) replicates the netLog entries (currently System only) out to any registered listeners via TCP so that an application may run from anywhere.

edproxy now fully supports Elite: Dangerous screen shots. The images may be renamed to the current system automatically, and may be converted to either JPG or PNG.

Installation Instructions
  1. Download Edproxy
  2. Install the application through the normal means for your OS.
  3. On first launch Edproxy will attempt to locate your E:D Log and AppConfig directories. If it fails to find these directories in their default paths you will need to manually enter them in Settings.
    • Common Windows Log locations:
      • <user_dir>\AppData\Local\Frontier_Developments\Products\elite-dangerous-64\Logs
      • <user_dir>\AppData\Local\Frontier_Developments\Products\FORC-FDEV-D-1010\Logs
      • C:\Program Files (x86)\Steam\steamapps\common\Elite Dangerous\Products\elite-dangerous-64\Log
      • C:\Program Files (x86)\Steam\steamapps\common\Elite Dangerous\Products\FORC-FDEV-D-1010\Log
    • Common Windows AppConfig locations:
      • <user_dir>\AppData\Local\Frontier_Developments\Products\elite-dangerous-64
      • <user_dir>\AppData\Local\Frontier_Developments\Products\FORC-FDEV-D-1010
      • C:\Program Files (x86)\Steam\steamapps\common\Elite Dangerous\Products\elite-dangerous-64
      • C:\Program Files (x86)\Steam\steamapps\common\Elite Dangerous\Products\FORC-FDEV-D-1010
    • Common MacOSx Log locations:
      • <user_dir>/Library/Application Support/Frontier Developments/Elite Dangerous/Logs
      • <user_dir>/Library/Application Support/Steam/steamapps/common/Elite Dangerous/Products/elite-dangerous-64/Logs
      • <user_dir>/Library/Application Support/Steam/steamapps/common/Elite Dangerous/Products/FORC-FDEV-D-1010/Logs
    • Common MacOSx AppConfig locations:
      • <user_dir>/Library/Application Support/Frontier_Developments/Products/elite-dangerous-64/EliteDangerous.app/Contents/Resources
      • <user_dir>/Library/Application Support/Frontier_Developments/Products/FORC-FDEV-D-1010/EliteDangerous.app/Contents/Resources
      • <user_dir>/Library/Application Support/Steam/steamapps/common/Elite Dangerous/Products/elite-dangerous-64/EliteDangerous.app/Contents/Resources
      • <user_dir>/Library/Application Support/Steam/steamapps/common/Elite Dangerous/Products/FORC-FDEV-D-1010/EliteDangerous.app/Contents/Resources
  4. If you wish to event your snapshot images set your Images path within Settings.
    • You may also wish to have the name of the snapshot image converted to the system name.
  5. Click on Start to start Edproxy.

If you find an issue please create a new ticket in Jira.

I would like to give special thanks to CMDR Bam and CMDR Myshka for beta testing the Windows versions for me!

Version 2.3.2
- Fixed handling of duplicate entries within EDSM nightly json file.
** This should address an issue where the download/sync gets stuck.
- Hardened all database interactions.
- Fixed startup issue for UI display thread.
- Added support for websockets.
** URL is "ws://<ip/v1"
- Changed EDSM sync behavior. The initial database download will be modal (synchronous), however updates will be performed in the background.

Version 2.2.2
- EDSM now requires the application version number.

Version 2.2.1
- Add support for the Engineers release
- Add support for new (x, y, z) API with the EDSM plugin

Version 2.2.0
- Edproxy now downloads the EDSM database.
* Distance information will now be added into the System event. (up to 25 entries)
* You may retrieve distances between two systems using the "GetDistances" API. This API is an array so you may ask for multiple at a time.
- Fixed parsing error with the netLog. "System" netLog lines are being concatenated with their previous line.
- Edproxy now supports "SendKeys" on Windows only (sorry Mac folks).
* The keys will be sent out via DirectX key events. They will be broadcast to the PC and not just to Elite. Thus whatever application is in the foreground will receive the key event.

Version 2.1.5
- Now using AppConfigLocal.xml instead of AppConfig.xml.
- Separated out the net Log directory and AppConfig directories in the configuration and settings.
- Auto-detect directory paths if none have been set.
- Do not allow special characters from systems names when saving image files.


Version 2.1.4
- New image event was not transmitted due to bad date/time.

-----
Version 2.1.3:
- Horizons release changed netLog naming format. This update handles that change.

-----
Version 2.1.2:
- New support for 3rd party plugins!
** Support is limited to those items included by hand currently. Sorry to say this is not truly dynamic yet.
** Added new View into active 3rd party plugins.
- Support for EDSM 3rd party plugin
** Cloud based storage for all the systems you have visited!
** Edproxy is designed to only *read* the netLog. Thus it does not have a concept of exploration notes or anything like that. Here we are *only* sending the systems you have visited just like Edproxy currently events out to listening applications.

How to setup Edproxy to transmit your system logs to EDSM
1. Go create an EDSM (www.edsm.net) account.
2. Look in your Account settings for your API Key.
3. Open Edproxy->Settings (MacOSx->Preferences)
4. Enter your API key AND the commander name you registered.
5. Click OK!
6. If you have auto-start on then Edproxy will automatically Stop then Start the server. Otherwise click on the "Start" button.

If you have a lot of systems in your log file the initial upload may take a very long time depending where you are in the world. It could be more than 30 minutes to get everything up-to-date. HOWEVER, you do NOT have to wait! Edproxy remembers where you are in the update process so even if you close the application, and restart, it will begin the update from where you left off. Also, you do NOT need to wait for it to finish to continue your exploration, or movement in the game. Edproxy will automatically send out all systems in order until it has caught up with your current location.

-----
Version 2.0.4:
* Fixed several crashes, or lockups, due to networking
* Fixed High Resolution images not being converted.
* Added new Ping/Pong heartbeat so both Edproxy and clients may react faster to disconnects.

-----
Version 2.0.3:
* Fixed startup issue where the .edproxy did not exist so the application would crash.
* Added 'Heartbeat' flag to 'Init' message. This is optional and will function without a heartbeat.
* Added 'Heartbeat' message type.
** A client sends a heartbeat at an assigned (better to be a few seconds before) interval. If edproxy misses two heartbeats in a row then it will close down the connection.

Big thank you to @silence_please for looking into the root cause!

-----
Version 2.0.2:
* Now supports Windows *and* Mac installers!
** Full support for "automatic" updates.

The major version was rolled to 2.x to delineate between auto-install and self install.

-----
Releasing version 1.2.1:
- New "Settings" or "Preferences" interface!
** It is now easier than ever to setup the netlog path.
** Now contains settings for starting the server automatically on edproxy launch.
** There is now an Image acquisition section.
** The multicast Time-to-Live (TTL) is now configurable.
- New configuration and log files.
** Configuration and Log files are now stored in <User Dir>/.edproxy
- Added Image acquisition!
** Listeners to edproxy will be notified of new images files on "creation"
** Images will be automatically renamed to the current "system" with existing date/time stamps.
** Automatic file format conversion to PNG or JPG supported.
** Replace "space" with other characters supported. (NOTE: It is recommended for AndDiscovered to leave spaces!!!!)
** Option to automatically delete old BMP after conversion. (Those high resolution files are 99.5MB folks!)
- Properly handle reconnection of client.
- Many bugs have been squashed. Many I say!

-----
Releasing version 1.1.0:
- Added log into <UserDir>/.edproxy/edproxy.log
- Added list view that shows actively connected client IP address and port.
 
Last edited:

wolverine2710

Tutorial & Guide Writer
WOW. Nice tool. Have to spread some love before I can do: Rep +1.

Its amazing (better said a shame), such a nice tool and NOT a single post here with feedback. A prime example imho of a thread which got snowed under badly by the forum. I've been watching,following the forums like a hawk but totally missed this one, my bad. AFAIK edporxy is unique so far. Its marvelous from a technical point of view.

In the hope that more commanders find this gem I've added it to EDCodex . Its a website with a database of currently approx 210 tools,threads,websites,videos for ED. Any one can and is encouraged to add entries there. EDCodex companion thread. Its equally suited for PC's, tablets and smartphones.

I've added the following entries to EDCodex:

If you deem it useful you can become owner of your entry. Just register, login and use the "Claim Ownership" button. After doing that please send me a PM with the email address you used for registration. This is for verification and to prevent that others claim your entry.
 
Releasing version 1.2.1:
- New "Settings" or "Preferences" interface!
** It is now easier than ever to setup the netlog path.
** Now contains settings for starting the server automatically on edproxy launch.
** There is now an Image acquisition section.
** The multicast Time-to-Live (TTL) is now configurable.
- New configuration and log files.
** Configuration and Log files are now stored in <User Dir>/.edproxy
- Added Image acquisition!
** Listeners to edproxy will be notified of new images files on "creation"
** Images will be automatically renamed to the current "system" with existing date/time stamps.
** Automatic file format conversion to PNG or JPG supported.
** Replace "space" with other characters supported. (NOTE: It is recommended for AndDiscovered to leave spaces!!!!)
** Option to automatically delete old BMP after conversion. (Those high resolution files are 99.5MB folks!)
- Properly handle reconnection of client.
- Many bugs have been squashed. Many I say!
 
Windows
MacOSx

Version 2.0.2:
* Now supports Windows *and* Mac installers!
** Full support for "automatic" updates.

The major version was rolled to 2.x to delineate between auto-install and self install.
 
It might be obvious to some, but I have no idea what this is for or why...?

The netlogs being referred to here, are logs generated by the ED game client when the option to enable them has been, well, enabled ;)

My Captain's Log application uses ED's verbose netlogs to detect when you have jumped into a system, as does the ever-excellent EDDiscovery.

Until now, you could only use Captain's Log on the same machine that ED is running on (well, there is a way of utilising Window's networking and shared folders to run CL and EDD on a different machine).

Gen.Fussypants's utility here enables the verbose netlogs to be available to applications running on systems other than the one on which ED is running.

Gen.Fussypants, this looks like a great thingy, and when I get the time I'll have a look at it in more detail :)
 
Last edited:
Anyone get this working on Windows 10? I installed it but when I click on the program to run nothing happens. Any help?
 
I just downloaded the installer, installed and when I click nothing happens. Do I need an additional software?

I tried the other windows versions and none of them seem to work in Windows 10 with compatibility set to Win 78 and Run as Administrator.
 
Last edited:
This is an interesting issue. I have a development environment on Windows 10 that I test with. In fact the .exe is generated on a Windows 10 box. (The application is in Python so there is normally not an .exe)

Can you email me your <User Dir>/.edproxy/ folder and contents. This will include the log file and configuration file so I can see what is going on. Thanks!

fussyware@gmail.com

Gen. Fussypants
 
@Joey2o15

There are currently numerous application for ED that use the netLog (EDs logging file) in order to get your current system information. Tools like: EliteOCR, EDDiscovery, Captain's Log, etc. All of these tools require you to run on your PC because that is were the log files are. I wanted to write an Android based exploration tracking tool however I could not get to the log files. Thus I wrote edproxy to event out the log file entries. This opens the door to applications running on computers other than the one running ED.

Why would this be useful? Well, in my case I have one monitor. I run ED in fullscreen mode which means Alt-Tab is a pain the rear. Thus I want to run my tools on my laptop sitting next to me, or on my Android tablet. If the developers of the other tools would support the edproxy API then you could run those applications on another machine also.

Gen. Fussypants
 
Any chance you'd be willing to add an HTTP API or even websockets?

This could allow web apps to connect too. With CORS headers and polling (or websocket with push) some cool stuff could be done!
 
@Joey2o15

There are currently numerous application for ED that use the netLog (EDs logging file) in order to get your current system information. Tools like: EliteOCR, EDDiscovery, Captain's Log, etc. All of these tools require you to run on your PC because that is were the log files are. I wanted to write an Android based exploration tracking tool however I could not get to the log files. Thus I wrote edproxy to event out the log file entries. This opens the door to applications running on computers other than the one running ED.

Why would this be useful? Well, in my case I have one monitor. I run ED in fullscreen mode which means Alt-Tab is a pain the rear. Thus I want to run my tools on my laptop sitting next to me, or on my Android tablet. If the developers of the other tools would support the edproxy API then you could run those applications on another machine also.

Gen. Fussypants

That explains things nicely :)
 
I have been considering websockets, and I am talking to others about sending data directly out of edproxy to the cloud so that we can move AndDiscovered data into the cloud. However, this will take some research and time on my part. I am an Embedded C guy (Audio/Video middleware frameworks) so all this UI and networking stuff is a learning curve for me. :)
 
Thanks for this awesome little tool!
One small issue I found is that if it doesn't find an edproxy.ini file in the installdir the app will not start or display any error message regarding this. By default a fresh installation doesn't have an edproxy.ini file so it won't start. This is something that occurs with 1.2.1 and 2.0.2, previous versions had an .ini bundled with them.
 
Back
Top Bottom