Can you please help elaborate your use-case ?
Right now, you should be able to build a RegistryBasedServlet, wire it into Selenium Hub and then given a node id (which is typically its IP and port), invoke getRegistry().getAllProxies().getProxyById(id).getConfig()
You don’t need to be going to the node to get hold of the configuration, because the node at the time of registration forwards its configuration to the Hub.
Thanks & Regards
"All the desirable things in life are either illegal, expensive, fattening or in love with someone else!"
My Scribblings @ http://wakened-cognition.blogspot.com/
My Technical Scribbings @ http://rationaleemotions.com/
You received this message because you are subscribed to the Google Groups "Selenium Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to selenium-develo...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/selenium-developers/CAOuKoX3HO9Dvf95pGj5rqXkimFJkgYbCH0AjgxyPDT7jTOSSBA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
To view this discussion on the web visit https://groups.google.com/d/msgid/selenium-developers/3BF75E94-133C-47B6-A89B-ECA53773A24E%40gmail.com.
>>>> I read that new PRs for old grid are stopped.
Yes, officially Selenium3 development has stopped and as such PRs would be accepted only for Selenium4.
>>>> I know how to get all that at "hub" server but i was finding some clean way at "node".
That was why I was asking what exactly is your use-case ? Anyone who is working with the Selenium Grid, ideally speaking should not have any need to directly talk to a selenium node.
>>>>> btw, i wrote a workaround of it. I extended the GridLauncher class, checked that the current role == NODE and read the command line supplied options to build GridNodeConfguration which worked well but it still a workaround.
Yes, it’s kind of a workaround for sure because now you would need a user to be able to talk to both the hub and the node directly. But if you resort to the approach that I had highlighted, you would just be talking to the Hub alone and not to the node.
To view this discussion on the web visit https://groups.google.com/d/msgid/selenium-developers/CAOuKoX1R26B3o1ENfvHFe31MA3K3eXZUF-K_uAiyM1ST6Z4OfQ%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/selenium-developers/2FADD8F6-DDB7-42D9-A86C-79CCF4874B49%40gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/selenium-developers/CAOuKoX1Q88HvybuXvwSOev%2BGm-MSWkSzwdhQFn3QggGVvJ%3Dy%3DA%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/selenium-developers/CANikZL%3D8h4EnGyEANL_c-nFLz5GU69MDQB8CmuZr6iPQUoXF9Q%40mail.gmail.com.
>>>> When did I say that the node servlet is directly accessed?
Which is why I have asking from the beginning, “What is your use case”. But you seem to be alluding the question for reasons better known to you [ Not my concern ]
>>>> Seems like you don't have in depth knowledge of how and can a node work. Let me explain.
Sure. You could say that. Considering the fact that I have only built a self-healing grid which is part of SeLion, and also just managed to just create an end-to-end documentation for the selenium grid, yeah I guess I still have a lot to learn ☺
But then again, we aren’t here to figure out all of that are we. But thanks for the explanation though. Appreciate it!
>>>>> It's also inefficient to get it from hub when the node should be able to access it from within its own container without wasting bandwidth
It’s a one-time request that a node makes to the hub (just as how the registration request goes out). So not sure what bandwidth wastage are you referring to here. The node servlet would just need to contact the hub once to do it.
>>>> My custom servlet is at node because it need to access the test running in a browser just like why a video recording servlet should be at node.
Well, all you had to do was say this at the beginning and the ambiguities would have been ruled out.
>>>>> it needs to watch for node server resources like CPU/RAM usage and alert hub to take some action like spinning up a new node or shut it down
I wouldn’t put in observability as one of the attributes that is to be done by the node. There are more sophisticated ways of doing this and I believe the Selenium Hub and Node also exposes some JMX beans which can be queried by tools such as Prometheus and an alerting mechanism could be setup which could inform the Hub of this and the hub could take corrective action.
All said and done, I believe your question has been answered.
To view this discussion on the web visit https://groups.google.com/d/msgid/selenium-developers/CAOuKoX3Sx0UnjWjN6Vzwv0T7BMmyEnUf02WYJGsjW7%2Bf6eYBhQ%40mail.gmail.com.