Skip to main content
Known Participant
May 15, 2010
Question

Fixing the "Failed to make debug connection ..." error

  • May 15, 2010
  • 3 replies
  • 2761 views

Hi all,

I am trying to start making an admin client side application to monitor our service, including its properties that simply cannot be done through Administration Console, like blocking IP addresses of offending users.

My problem is that even before I start using the Administration API (on which I will comment further down), I tried to f.e. inspect the shared objects and streams of the application through the Admin. Console, but I get a popup "Failed to make debug connection, please check that the application is in debug mode." Configuration files are unaltered from install, which means MaxPendingDebugConnections is set to 50, AllowDebugDefault is set to false, BUT in the serve side main.asc file I have "application.allowDebug = true;"

Yet, it does not work. Why?

Also, on a related note, I can see that the Administration API lists the API itself, but there is vague to no mention at all where to connect first? I recall spotting somewhere suffixing the RTMP URL with something like "_fcs_debug" or something, but you can see how this frustrates me - I really don't like to google stuff that is supposed to be in the documentation The application instance usually accepts connections from regular non-admin clients, with proper parameters, which are irrelevant for admins unless these are users too (double membership, you can say). This bugs me - I understand I will be using NetConnection.call to call the API methods, but I need to establish the connection first, and can't seem to find a word about it in the docs.

    This topic has been closed for replies.

    3 replies

    Inspiring
    May 20, 2010

    This is really confusing... where did you find the documentation about this issue?? I could only find documentation concerning FMS 2 ( see the link here ) but never was able to find anything about this issue on FMS 3.5 documentation.

    I did exactly as you guys said ( and as the documentation of FMS 2 says as well )...

    first I define these:

    var serverdomain:String = "myServerDomain";

    var randomNumber:Number = Math.random() * 10000;

    var appName:String = "someAppName";

    and I have (application.allowDebug = true) in my application

    then I connect as admin

    _adminNC.connect( "rtmp://" + serverdomain + ":1111/Admin", username, pass );

    (I get a success in the net status handler of the adminNC )

    and then I create a debug connection

    _debugNC.connect( "rtmp://" + serverdomain + "/" + appName + "?_fcs_debugreq_=" + randomNumber );

    (I dont get anything back in the NetStatus handler of the _debugNC)

    and then I call approveDebugSession

    _adminNC.call( "approveDebugSession", new Responder( onResult, onError ), appName, randomNumber );

    Now, here is what is confusing:

    The onResult function is called back with a "NetConnection.Call.Success", on the admin console I can see the number of clients of my specific application has increased by one... However, the problem is that I still don't get anything back in the netStatusHandler of the _debugNC, and the property _debugNC.connected is still false, and so I cannot create a NetStream object on the _debugNC in order to view the streams of that application....

    am I missing something here??

    Thanks,

    amnAuthor
    Known Participant
    May 21, 2010

    I have cooked up my first admin preview version, and things appear to be working just fine. No errors so far!

    Inspiring
    May 21, 2010

    AmnlSaid,

    In post number 1, you said: "Found a link at the bottom of the docs"... could you please privde that link over here?

    In addition, in your working version... does your debugging netConnection actually connect and give you back a "NetConnection.Connect.Success"? Are you able to pass it to a NetStream object in order to start listening for streams??

    Thanks,

    Mutasem

    calmchessplayer
    Inspiring
    May 18, 2010

    well this is nothing new to me have you by any chance stuffed an array in a sharedObject? I have this error happen to me all the time i just trace the shared object data from the client.....not an elegant solution but I've tried many things and it is the best solution to the problem.

    amnAuthor
    Known Participant
    May 18, 2010

    No array. Just about 7000 properties.

    BUT, before you blame it on the amount of properties, you should know that I used this shared object (copied the .FSO file) in a development service setup at another location, and there were no problems with debug connection there - i.e. I could at least see the object in the list. With this error, I see nothing except the abovementioned error popup when I click on the object row. And I have no idea what is the difference between the two service setups, if I knew I would know the cause of this. Both run on default configuration and the same application. I might suspect some network configuration, but I _AM_ able to connect to both with Admin. Console.

    Participating Frequently
    May 19, 2010

    Can you describe your both set-ups, are both identical , i mean same kind of operating system. And you say you get error when you click on object in the list - so you see the objects which are present but you are not able to see details about it. If that's the case , please provide more details about how you created the .fso and details about the set-up you are using - i just want to see if there is some genuine bug here.

    amnAuthor
    Known Participant
    May 15, 2010

    Found a link at the bottom of the docs linking to "additional" documentation which does shed some light on the connecting phase. Been using the docs for some months now, but when your are desperate and look in the weirder places, you tend to find anything :-)

    Still, any takers on the debug connection error issue?

    Thanks in advance, and have a good saturday.

    Participating Frequently
    May 17, 2010

    Can you let me know what steps are you following:

    Do following steps:

    1. Make approveDebugDefault to true in Application.xml OR application.allowDebug = true in say onAppStart in main.asc of the application - I suppose you are doing this.

    2. Make a debug connect

         example: nc1.connect(rtmp://<server-uri>/<app-name>?_fcs_debugreq_=1234"); 

    3. Approve debug session:

           example:   admin_nc.call("approveDebugSession", new RTMPResultHandler(), "<app-name>/_definst_", 1234);

         where admin_nc is netconnection made to Admin Server.

    Let me know if you still finding issues when you try above steps.

    amnAuthor
    Known Participant
    May 18, 2010

    Will do,

    But - are 'nc1' and 'admin_nc' in your example two different connections? In case they are, what is the end point URL of the connection referenced by 'admin_nc'?