mchr3k / org.intrace

Java tracing agent and live trace client
http://mchr3k.github.com/org.intrace/
73 stars 18 forks source link

Enhanced error reporting #18

Closed eostermueller closed 12 years ago

eostermueller commented 12 years ago

So TraceExample.java is working fine. I've moved on to hooking up InTrace to our SOA and having some problems. The initial connection is made and InTrace reports the number of classes being traced. (42837). However, about a minute or so after initial connection, I'm getting a "Connection timed out: connect" message out of this source:

org.intrace\src\org\intrace\client\gui\helper\InTraceUI.java

  {
    outputTabs.textOutputTab.filterThread
        .addSystemTraceLine("Failed to setup network trace: "
            + ex.toString());
  }

This potentially could be a firewall issue...but need more help from the code to diagnose. Perhaps the values of the following InTraceUI#setSocket() local variables could be logged somewhere, along with a stack trace? remoteAddress, networkTracePortStr, networkTracePort, networkTraceThread

--Erik

eostermueller commented 12 years ago

This error consistently shows up about 22 seconds after I click the "Connect" button.

eostermueller commented 12 years ago

I wrote:

So TraceExample.java is working fine. I was wrong about that....had it running on machine X but on on machine Y. ...and machine Y is behind a pretty restrictive firewall.

I wrote:

This potentially could be a firewall issue.

this is really looking like a firewall issue. Our network guy has uber access to ports on the machine we're trying to trace. I don't.

The InTrace UI works for him, but not for me.

However, we both have access to the default port, 9123 Seems like access to 9123, alone, is not enough.

But we could use some help on what else is required. Perhaps InTrace could be limited to a particular range of ports, and we could configure our firewall with that range?

Thanks, --Erik

mchr3k commented 12 years ago

InTrace has a single port which is used to establish the initial control connection. The first thing InTrace UI does after connection is request network trace. This cases InTrace to open another random port, and return this port number over the control connection. InTrace UI then connects to this port to receive network trace.

mchr3k commented 12 years ago

This is now checked in.

https://github.com/mchr3k/org.intrace/tree/master/binaries/jars/latest_development

pjlegato commented 9 years ago

It'd be nice if it didn't need another random port but rather a specific port, so you can use it via SSH port forwarding, through firewalls, and so on.