Open GuillaumeFradet opened 5 months ago
@GuillaumeFradet, thank you for creating this issue. We will troubleshoot it as soon as we can.
Triage this issue by using labels.
If information is missing, add a helpful comment and then I-issue-template
label.
If the issue is a question, add the I-question
label.
If the issue is valid but there is no time to troubleshoot it, consider adding the help wanted
label.
If the issue requires changes or fixes from an external project (e.g., ChromeDriver, GeckoDriver, MSEdgeDriver, W3C),
add the applicable G-*
label, and it will provide the correct link and auto-close the
issue.
After troubleshooting the issue, please add the R-awaiting answer
label.
Thank you!
I saw in the chart YAML that the image tag is 4.16.1-20231212
but in screenshot chrome version is v115
?
With node chrome v115
(image tag < 4.16.1
) I guess it could be going to the situation in https://github.com/SeleniumHQ/docker-selenium/issues/2045
Sorry the screenshot was from an other cluster where i use 4.11 and get the same problem.I tried again on the cluster where I have 4.16 and I have the same problem even though I have a version 120 of the browser. I'm going to test with a version 118.
Ah ok, can you do one more step that open tab Network in e.g Chrome DevTools to see the Websockets request URL and there status, something like
I have this in DevTools
When i look into console i get this error .It certainly comes from this
Does your deployment have ingress upfront? if yes, can you try a trick by opening Grid URL with schema HTTPS to see how it behaves?
No sorry i don't have ingress upfront
Yes, it looks similar the same behavior was reproduced here - https://github.com/SeleniumHQ/selenium/issues/13393#issuecomment-1878359615 Even I also tried the same in my local but didn't see that error message. Will let you know it we have any clue
I see that the issue you mentioned has just been marked as fixed, which means that the problem has been solved?
We mark them as fixed then the code has landed, however we still need to do a new release.
I see that the issue you mentioned has just been marked as fixed, which means that the problem has been solved?
Ah, the background is the issue relates to the Grid with --sub-path
not opening sessions Websockets (novnc, cdp, etc.) correctly in the upstream repo, which was fixed.
While trying a test image to confirm, he reported that While the WebSocket connection is successful, it seems to close immediately if the Duration is less than 10 seconds. It's not exact, but it appears that only after exceeding about 10 seconds
-> with the same error could be seen noVNC requires a secure context (TLS). Expect crashes!
in console -> If any clues relate to this error, we will continue discussing it here
While waiting for the patch to be deployed, I tried to disable noVnc. I did see the start_vnc option with the value false. But by setting it like that I still get the record. Should I set it differently? That would allow me to use the service while waiting for the next version.
chromeNode:
# Enable chrome nodes
enabled: true
vncEnabled: false
# NOTE: Only used when autoscaling.enabled is false
# Enable creation of Deployment
# true (default) - if you want long living pods
# false - for provisioning your own custom type such as Jobs
deploymentEnabled: true
# Number of chrome nodes
replicas: 1
# imageRegistry: selenium
# Image of chrome nodes
imageName: node-chrome
# Image of chrome nodes (this overwrites global.seleniumGrid.nodesImageTag)
# imageTag: 4.16.1-20231212
# Image pull policy (see https://kubernetes.io/docs/concepts/containers/images/#updating-images)
imagePullPolicy: IfNotPresent
# Image pull secret (see https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/)
imagePullSecret: ""
# Port list to enable on container
ports:
- 5555
# Selenium port (spec.ports[0].targetPort in kubernetes service)
seleniumPort: 5900
# Selenium port exposed in service (spec.ports[0].port in kubernetes service)
seleniumServicePort: 6900
# Annotations for chrome-node pods
annotations: {}
# Labels for chrome-node pods
labels: {}
# Resources for chrome-node container
resources:
requests:
memory: "1300Mi"
cpu: "1"
limits:
memory: "1300Mi"
cpu: "1"
# SecurityContext for chrome-node container
securityContext: {}
# Tolerations for chrome-node pods
tolerations: []
# Node selector for chrome-node pods
nodeSelector: {}
# Custom host aliases for chrome nodes
hostAliases:
# - ip: "198.51.100.0"
# hostnames:
# - "example.com"
# - "example.net"
# - ip: "203.0.113.0"
# hostnames:
# - "example.org"
# Custom environment variables for chrome nodes
extraEnvironmentVariables:
- name: SE_SESSION_REQUEST_TIMEOUT
value: "5400"
- name: SE_SESSION_RETRY_INTERVAL
value: "15"
- name: SE_NODE_SESSION_TIMEOUT
value: "5400"
- name: SE_START_VNC
value: "false"
#- name: SE_DRAIN_AFTER_SESSION_COUNT
# value: "1"
# - name: SE_JAVA_OPTS
# value: "-Xmx512m"
# - name:
# valueFrom:
# secretKeyRef:
# name: secret-name
# key: secret-key
If disable noVNC, I think it should be SE_START_NO_VNC
Ok I have set it too but it still seems activated as you can see
`kubectl get scaledjob selenium-chrome-node -n selenium-grid -o yaml apiVersion: keda.sh/v1alpha1 kind: ScaledJob metadata: annotations: helm.sh/hook: post-install,post-upgrade creationTimestamp: "2024-01-10T06:48:04Z" finalizers:
Ah ok, misunderstood your requirement. Those 2 ENV are used to disable the process in containers only. For the Grid UI, e.g you want to disable the recorder button or prevent the user from accessing the live preview of a session, I guess it does not support. That feature needs to be implemented on the upstream repository. @diemol, correct me if any missing
In fact I wanted to see if disabling it, would remove the error since it seems to come from NoVnc.Ok, I'll keep looking for another solution if it's not supported.
You need to disable SE_START_XVFB
and then the video icon will not show up.
Ok thanks, it does hide the camera preventing vision, but the browser still crashes after several minutes not finishing the process.
but the browser still crashes after several minutes not finishing the process.
What does this mean in detail? Can you describe this better please?
I used nightly
image tag to reproduce.
The error websock.js:231 WebSocket connection to 'wss://ci.ndviet.org/selenium/session/d84db2d3d1b2b67c0f6a2eadb13ebfea/se/vnc' failed: Close received after close
could be seen in the first time opened and page is blank. Probably I enabled VNC_PASSWORD hence this flakiness comes, still checking.
Then I clicked the Close button and opened it again, it could connect successfully and the preview kept alive until the session was closed. I didn't see it closed after a short time
Can you try the
nightly
image also and confirm?
I launch my script which starts the navigation it goes on several pages, all goes well on the first ones then after a few minutes I have this result (as on the capture).My script is stopped and cannot even make a capture of the problem as the log of my script shows it.
Move to next URL...
Command error after processing: 4 minutes, 3 seconds
Screenshot failed
Failed to exit browser
I get the same result by setting the noVnc , vnc and start_xvfb options to false @diemol
Ok I'll try with the nightly @vietnd96
Those flags enable or disable VNC.
Can you share the Grid log and the test log?
Here are the node logs for my last test:
2024-01-10 12:44:12,695 INFO Included extra file "/etc/supervisor/conf.d/selenium.conf" during parsing
2024-01-10 12:44:12,698 INFO RPC interface 'supervisor' initialized
2024-01-10 12:44:12,698 CRIT Server 'unix_http_server' running without any HTTP authentication checking
2024-01-10 12:44:12,699 INFO supervisord started with pid 8
2024-01-10 12:44:13,703 INFO spawned: 'xvfb' with pid 9
2024-01-10 12:44:13,707 INFO spawned: 'vnc' with pid 10
2024-01-10 12:44:13,712 INFO spawned: 'novnc' with pid 11
2024-01-10 12:44:13,717 INFO spawned: 'selenium-node' with pid 14
2024-01-10 12:44:13,722 INFO success: selenium-node entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
Appending Selenium options: --session-timeout 5400
Generating Selenium Config
Configuring server...
Setting up SE_NODE_HOST...
Setting up SE_NODE_PORT...
Tracing is disabled
Selenium Grid Node configuration:
[events]
publish = "tcp://selenium-hub:4442"
subscribe = "tcp://selenium-hub:4443"
[node]
grid-url = "http://xxxxx:xxxxx@selenium-hub.selenium-grid:4444"
session-timeout = "5400"
override-max-sessions = false
detect-drivers = false
drain-after-session-count = 1
max-sessions = 1
[[node.driver-configuration]]
display-name = "chrome"
stereotype = '{"browserName": "chrome", "browserVersion": "120.0", "platformName": "Linux", "goog:chromeOptions": {"binary": "/usr/bin/google-chrome"}}'
max-sessions = 1
Starting Selenium Grid Node...
2024-01-10 12:44:14,761 INFO success: xvfb entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2024-01-10 12:44:14,761 INFO success: vnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2024-01-10 12:44:14,761 INFO success: novnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
12:44:14.878 INFO [LoggingOptions.configureLogEncoding] - Using the system default encoding
12:44:14.883 INFO [OpenTelemetryTracer.createTracer] - Using OpenTelemetry for tracing
12:44:15.081 INFO [UnboundZmqEventBus.<init>] - Connecting to tcp://selenium-hub:4442 and tcp://selenium-hub:4443
12:44:15.189 INFO [UnboundZmqEventBus.<init>] - Sockets created
12:44:16.191 INFO [UnboundZmqEventBus.<init>] - Event bus ready
12:44:16.293 INFO [NodeServer.createHandlers] - Reporting self as: http://100.64.48.104:5555
12:44:16.378 INFO [NodeOptions.getSessionFactories] - Detected 1 available processors
12:44:16.466 INFO [NodeOptions.report] - Adding chrome for {"browserName": "chrome","browserVersion": "120.0","goog:chromeOptions": {"binary": "\u002fusr\u002fbin\u002fgoogle-chrome"},"platformName": "linux","se:noVncPort": 7900,"se:vncEnabled": true} 1 times
12:44:16.483 INFO [Node.<init>] - Binding additional locator mechanisms: relative
12:44:16.704 INFO [NodeServer$1.start] - Starting registration process for Node http://100.64.48.104:5555
12:44:16.705 INFO [NodeServer.execute] - Started Selenium node 4.17.0-SNAPSHOT (revision 111086d): http://100.64.48.104:5555
12:44:16.713 INFO [NodeServer$1.lambda$start$1] - Sending registration event...
12:44:16.985 INFO [NodeServer.lambda$createHandlers$2] - Node has been added
12:44:18.566 INFO [LocalNode.checkSessionCount] - Draining Node, configured sessions value (1) has been reached.
12:44:18.574 INFO [LocalNode.newSession] - Session created by the Node. Id: 3d477976dc13edf1b0fc49b6987c3365, Caps: Capabilities {acceptInsecureCerts: false, browserName: chrome, browserVersion: 120.0.6099.216, chrome: {chromedriverVersion: 120.0.6099.109 (3419140ab66..., userDataDir: /tmp/.org.chromium.Chromium...}, fedcm:accounts: true, goog:chromeOptions: {debuggerAddress: localhost:42579}, networkConnectionEnabled: false, pageLoadStrategy: normal, platformName: linux, proxy: Proxy(), se:bidiEnabled: false, se:cdp: ws://admin:rmdscrap@seleniu..., se:cdpVersion: 120.0.6099.216, se:vnc: ws://admin:rmdscrap@seleniu..., se:vncEnabled: true, se:vncLocalAddress: ws://100.64.48.104:7900, setWindowRect: true, strictFileInteractability: false, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior: dismiss and notify, webauthn:extension:credBlob: true, webauthn:extension:largeBlob: true, webauthn:extension:minPinLength: true, webauthn:extension:prf: true, webauthn:virtualAuthenticators: true}
12:44:23.972 INFO [ProxyNodeWebsockets.createWsEndPoint] - Establishing connection to ws://100.64.48.104:7900
12:44:27.398 INFO [ProxyNodeWebsockets.createWsEndPoint] - Establishing connection to ws://100.64.48.104:7900
12:44:30.828 INFO [ProxyNodeWebsockets.createWsEndPoint] - Establishing connection to ws://100.64.48.104:7900
An test log : Starting command between "2024-01-17" and "2024-02-22" (36 days) Browser session ID is 3d477976dc13edf1b0fc49b6987c3365 Day 1/36 (2024-01-17) Wait for the results... Results are here! Gonna take the good result Can take the good result Day process time: 35 seconds Day 2/36 (2024-01-18) Wait for the results... Results are here! Gonna take the good result Can take the good result Day process time: 7 seconds ..... Day 20/36 (2024-02-05) Wait for the results... Results are here! Gonna take the good result Can take the good result Day process time: 1 minute, 47 seconds Day 21/36 (2024-02-06) Move to next day detail page URL... Command error after processing: 6 minutes, 52 seconds Screenshot failed Failed to exit browser
@diemol
I'm doing some more tests on the nigthly version before I get back to you, but it seems to do the same thing.
@vietnd96
I don't understand why, since last week it worked perfectly.
The Grid log seems incomplete.
Although it was the entire log of the pod containing the Chrome node, I have this coming from the pod containing the hub. The HTTP connect time out error is raised when the browser is cut off and the connection becomes impossible.
13:49:19.780 WARN [SeleniumSpanExporter$1.lambda$export$1] - Unable to execute request for an existing session: java.net.http.HttpConnectTimeoutException: HTTP connect timed out
Build info: version: '4.17.0-SNAPSHOT', revision: '111086d'
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '6.2.0-36-generic', java.version: '11.0.21'
Driver info: driver.version: unknown
13:49:19.780 WARN [SeleniumSpanExporter$1.lambda$export$3] - {"traceId": "48c27d204ea997d745b37e7ba962653a","eventTime": 1704894559778843957,"eventName": "exception","attributes": {"exception.message": "Unable to execute request for an existing session: java.net.http.HttpConnectTimeoutException: HTTP connect timed out\nBuild info: version: '4.17.0-SNAPSHOT', revision: '111086d'\nSystem info: os.name: 'Linux', os.arch: 'amd64', os.version: '6.2.0-36-generic', java.version: '11.0.21'\nDriver info: driver.version: unknown","exception.stacktrace": "org.openqa.selenium.TimeoutException: java.net.http.HttpConnectTimeoutException: HTTP connect timed out\nBuild info: version: '4.17.0-SNAPSHOT', revision: '111086d'\nSystem info: os.name: 'Linux', os.arch: 'amd64', os.version: '6.2.0-36-generic', java.version: '11.0.21'\nDriver info: driver.version: unknown\n\tat org.openqa.selenium.remote.http.jdk.JdkHttpClient.execute0(JdkHttpClient.java:392)\n\tat org.openqa.selenium.remote.http.RetryRequest.lambda$apply$5(RetryRequest.java:81)\n\tat dev.failsafe.Functions.lambda$toCtxSupplier$11(Functions.java:243)\n\tat dev.failsafe.Functions.lambda$get$0(Functions.java:46)\n\tat dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74)\n\tat dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74)\n\tat dev.failsafe.internal.FallbackExecutor.lambda$apply$0(FallbackExecutor.java:51)\n\tat dev.failsafe.SyncExecutionImpl.executeSync(SyncExecutionImpl.java:187)\n\tat dev.failsafe.FailsafeExecutor.call(FailsafeExecutor.java:376)\n\tat dev.failsafe.FailsafeExecutor.get(FailsafeExecutor.java:112)\n\tat org.openqa.selenium.remote.http.RetryRequest.lambda$apply$6(RetryRequest.java:81)\n\tat org.openqa.selenium.remote.http.AddSeleniumUserAgent.lambda$apply$0(AddSeleniumUserAgent.java:42)\n\tat org.openqa.selenium.remote.http.Filter.lambda$andFinally$1(Filter.java:55)\n\tat org.openqa.selenium.remote.http.jdk.JdkHttpClient.execute(JdkHttpClient.java:358)\n\tat org.openqa.selenium.remote.tracing.TracedHttpClient.execute(TracedHttpClient.java:54)\n\tat org.openqa.selenium.grid.web.ReverseProxyHandler.execute(ReverseProxyHandler.java:90)\n\tat org.openqa.selenium.grid.router.HandleSession.execute(HandleSession.java:181)\n\tat org.openqa.selenium.remote.http.Route$PredicatedRoute.handle(Route.java:383)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.grid.router.Router.execute(Router.java:87)\n\tat org.openqa.selenium.grid.web.EnsureSpecCompliantResponseHeaders.lambda$apply$0(EnsureSpecCompliantResponseHeaders.java:34)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$NestedRoute.handle(Route.java:270)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.grid.security.BasicAuthenticationFilter.lambda$apply$0(BasicAuthenticationFilter.java:54)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.AddWebDriverSpecHeaders.lambda$apply$0(AddWebDriverSpecHeaders.java:35)\n\tat org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.netty.server.SeleniumHandler.lambda$channelRead0$0(SeleniumHandler.java:44)\n\tat java.base\u002fjava.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)\n\tat java.base\u002fjava.util.concurrent.FutureTask.run(FutureTask.java:264)\n\tat java.base\u002fjava.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)\n\tat java.base\u002fjava.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)\n\tat java.base\u002fjava.lang.Thread.run(Thread.java:829)\nCaused by: java.net.http.HttpConnectTimeoutException: HTTP connect timed out\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:512)\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.getExceptionalCF(MultiExchange.java:459)\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.lambda$responseAsyncImpl$7(MultiExchange.java:386)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:930)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture$UniHandle.tryFire(CompletableFuture.java:907)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2094)\n\tat java.net.http\u002fjdk.internal.net.http.Http1Exchange.lambda$cancelImpl$9(Http1Exchange.java:482)\n\t... 3 more\nCaused by: java.net.ConnectException: HTTP connect timed out\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:513)\n\t... 10 more\n","exception.type": "org.openqa.selenium.TimeoutException","http.flavor": 1,"http.handler_class": "org.openqa.selenium.grid.router.HandleSession","http.host": "195.154.74.229:4444","http.method": "POST","http.request_content_length": "72","http.scheme": "HTTP","http.target": "\u002fsession\u002f46544a19c5852c24b27e383b9ddc6329\u002felements","session.id": "46544a19c5852c24b27e383b9ddc6329"}}
13:49:49.817 WARN [SeleniumSpanExporter$1.lambda$export$1] - org.openqa.selenium.TimeoutException: java.net.http.HttpConnectTimeoutException: HTTP connect timed out
Build info: version: '4.17.0-SNAPSHOT', revision: '111086d'
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '6.2.0-36-generic', java.version: '11.0.21'
Driver info: driver.version: unknown
at org.openqa.selenium.remote.http.jdk.JdkHttpClient.execute0(JdkHttpClient.java:392)
at org.openqa.selenium.remote.http.RetryRequest.lambda$apply$5(RetryRequest.java:81)
at dev.failsafe.Functions.lambda$toCtxSupplier$11(Functions.java:243)
at dev.failsafe.Functions.lambda$get$0(Functions.java:46)
at dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74)
at dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74)
at dev.failsafe.internal.FallbackExecutor.lambda$apply$0(FallbackExecutor.java:51)
at dev.failsafe.SyncExecutionImpl.executeSync(SyncExecutionImpl.java:187)
at dev.failsafe.FailsafeExecutor.call(FailsafeExecutor.java:376)
at dev.failsafe.FailsafeExecutor.get(FailsafeExecutor.java:112)
at org.openqa.selenium.remote.http.RetryRequest.lambda$apply$6(RetryRequest.java:81)
at org.openqa.selenium.remote.http.AddSeleniumUserAgent.lambda$apply$0(AddSeleniumUserAgent.java:42)
at org.openqa.selenium.remote.http.Filter.lambda$andFinally$1(Filter.java:55)
at org.openqa.selenium.remote.http.jdk.JdkHttpClient.execute(JdkHttpClient.java:358)
at org.openqa.selenium.remote.tracing.TracedHttpClient.execute(TracedHttpClient.java:54)
at org.openqa.selenium.grid.web.ReverseProxyHandler.execute(ReverseProxyHandler.java:90)
at org.openqa.selenium.grid.router.HandleSession.execute(HandleSession.java:181)
at org.openqa.selenium.remote.http.Route$PredicatedRoute.handle(Route.java:383)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.grid.router.Router.execute(Router.java:87)
at org.openqa.selenium.grid.web.EnsureSpecCompliantResponseHeaders.lambda$apply$0(EnsureSpecCompliantResponseHeaders.java:34)
at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.http.Route$NestedRoute.handle(Route.java:270)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.grid.security.BasicAuthenticationFilter.lambda$apply$0(BasicAuthenticationFilter.java:54)
at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.AddWebDriverSpecHeaders.lambda$apply$0(AddWebDriverSpecHeaders.java:35)
at org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)
at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
at org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)
at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
at org.openqa.selenium.netty.server.SeleniumHandler.lambda$channelRead0$0(SeleniumHandler.java:44)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.net.http.HttpConnectTimeoutException: HTTP connect timed out
at java.net.http/jdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:512)
at java.net.http/jdk.internal.net.http.MultiExchange.getExceptionalCF(MultiExchange.java:459)
at java.net.http/jdk.internal.net.http.MultiExchange.lambda$responseAsyncImpl$7(MultiExchange.java:386)
at java.base/java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:930)
at java.base/java.util.concurrent.CompletableFuture$UniHandle.tryFire(CompletableFuture.java:907)
at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)
at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2094)
at java.net.http/jdk.internal.net.http.Http1Exchange.lambda$cancelImpl$9(Http1Exchange.java:482)
... 3 more
Caused by: java.net.ConnectException: HTTP connect timed out
at java.net.http/jdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:513)
... 10 more
13:49:49.817 WARN [SeleniumSpanExporter$1.lambda$export$1] - Unable to execute request for an existing session: java.net.http.HttpConnectTimeoutException: HTTP connect timed out
Build info: version: '4.17.0-SNAPSHOT', revision: '111086d'
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '6.2.0-36-generic', java.version: '11.0.21'
Driver info: driver.version: unknown
13:49:49.817 WARN [SeleniumSpanExporter$1.lambda$export$3] - {"traceId": "b73792621e3f48baf63789f7a0077dca","eventTime": 1704894589816912064,"eventName": "exception","attributes": {"exception.message": "Unable to execute request for an existing session: java.net.http.HttpConnectTimeoutException: HTTP connect timed out\nBuild info: version: '4.17.0-SNAPSHOT', revision: '111086d'\nSystem info: os.name: 'Linux', os.arch: 'amd64', os.version: '6.2.0-36-generic', java.version: '11.0.21'\nDriver info: driver.version: unknown","exception.stacktrace": "org.openqa.selenium.TimeoutException: java.net.http.HttpConnectTimeoutException: HTTP connect timed out\nBuild info: version: '4.17.0-SNAPSHOT', revision: '111086d'\nSystem info: os.name: 'Linux', os.arch: 'amd64', os.version: '6.2.0-36-generic', java.version: '11.0.21'\nDriver info: driver.version: unknown\n\tat org.openqa.selenium.remote.http.jdk.JdkHttpClient.execute0(JdkHttpClient.java:392)\n\tat org.openqa.selenium.remote.http.RetryRequest.lambda$apply$5(RetryRequest.java:81)\n\tat dev.failsafe.Functions.lambda$toCtxSupplier$11(Functions.java:243)\n\tat dev.failsafe.Functions.lambda$get$0(Functions.java:46)\n\tat dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74)\n\tat dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74)\n\tat dev.failsafe.internal.FallbackExecutor.lambda$apply$0(FallbackExecutor.java:51)\n\tat dev.failsafe.SyncExecutionImpl.executeSync(SyncExecutionImpl.java:187)\n\tat dev.failsafe.FailsafeExecutor.call(FailsafeExecutor.java:376)\n\tat dev.failsafe.FailsafeExecutor.get(FailsafeExecutor.java:112)\n\tat org.openqa.selenium.remote.http.RetryRequest.lambda$apply$6(RetryRequest.java:81)\n\tat org.openqa.selenium.remote.http.AddSeleniumUserAgent.lambda$apply$0(AddSeleniumUserAgent.java:42)\n\tat org.openqa.selenium.remote.http.Filter.lambda$andFinally$1(Filter.java:55)\n\tat org.openqa.selenium.remote.http.jdk.JdkHttpClient.execute(JdkHttpClient.java:358)\n\tat org.openqa.selenium.remote.tracing.TracedHttpClient.execute(TracedHttpClient.java:54)\n\tat org.openqa.selenium.grid.web.ReverseProxyHandler.execute(ReverseProxyHandler.java:90)\n\tat org.openqa.selenium.grid.router.HandleSession.execute(HandleSession.java:181)\n\tat org.openqa.selenium.remote.http.Route$PredicatedRoute.handle(Route.java:383)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.grid.router.Router.execute(Router.java:87)\n\tat org.openqa.selenium.grid.web.EnsureSpecCompliantResponseHeaders.lambda$apply$0(EnsureSpecCompliantResponseHeaders.java:34)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$NestedRoute.handle(Route.java:270)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.grid.security.BasicAuthenticationFilter.lambda$apply$0(BasicAuthenticationFilter.java:54)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.AddWebDriverSpecHeaders.lambda$apply$0(AddWebDriverSpecHeaders.java:35)\n\tat org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.netty.server.SeleniumHandler.lambda$channelRead0$0(SeleniumHandler.java:44)\n\tat java.base\u002fjava.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)\n\tat java.base\u002fjava.util.concurrent.FutureTask.run(FutureTask.java:264)\n\tat java.base\u002fjava.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)\n\tat java.base\u002fjava.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)\n\tat java.base\u002fjava.lang.Thread.run(Thread.java:829)\nCaused by: java.net.http.HttpConnectTimeoutException: HTTP connect timed out\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:512)\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.getExceptionalCF(MultiExchange.java:459)\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.lambda$responseAsyncImpl$7(MultiExchange.java:386)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:930)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture$UniHandle.tryFire(CompletableFuture.java:907)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2094)\n\tat java.net.http\u002fjdk.internal.net.http.Http1Exchange.lambda$cancelImpl$9(Http1Exchange.java:482)\n\t... 3 more\nCaused by: java.net.ConnectException: HTTP connect timed out\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:513)\n\t... 10 more\n","exception.type": "org.openqa.selenium.TimeoutException","http.flavor": 1,"http.handler_class": "org.openqa.selenium.grid.router.HandleSession","http.host": "195.154.74.229:4444","http.method": "POST","http.request_content_length": "698","http.scheme": "HTTP","http.target": "\u002fsession\u002f46544a19c5852c24b27e383b9ddc6329\u002furl","session.id": "46544a19c5852c24b27e383b9ddc6329"}}
13:50:19.856 WARN [SeleniumSpanExporter$1.lambda$export$1] - org.openqa.selenium.TimeoutException: java.net.http.HttpConnectTimeoutException: HTTP connect timed out
Build info: version: '4.17.0-SNAPSHOT', revision: '111086d'
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '6.2.0-36-generic', java.version: '11.0.21'
Driver info: driver.version: unknown
at org.openqa.selenium.remote.http.jdk.JdkHttpClient.execute0(JdkHttpClient.java:392)
at org.openqa.selenium.remote.http.RetryRequest.lambda$apply$5(RetryRequest.java:81)
at dev.failsafe.Functions.lambda$toCtxSupplier$11(Functions.java:243)
at dev.failsafe.Functions.lambda$get$0(Functions.java:46)
at dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74)
at dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74)
at dev.failsafe.internal.FallbackExecutor.lambda$apply$0(FallbackExecutor.java:51)
at dev.failsafe.SyncExecutionImpl.executeSync(SyncExecutionImpl.java:187)
at dev.failsafe.FailsafeExecutor.call(FailsafeExecutor.java:376)
at dev.failsafe.FailsafeExecutor.get(FailsafeExecutor.java:112)
at org.openqa.selenium.remote.http.RetryRequest.lambda$apply$6(RetryRequest.java:81)
at org.openqa.selenium.remote.http.AddSeleniumUserAgent.lambda$apply$0(AddSeleniumUserAgent.java:42)
at org.openqa.selenium.remote.http.Filter.lambda$andFinally$1(Filter.java:55)
at org.openqa.selenium.remote.http.jdk.JdkHttpClient.execute(JdkHttpClient.java:358)
at org.openqa.selenium.remote.tracing.TracedHttpClient.execute(TracedHttpClient.java:54)
at org.openqa.selenium.grid.web.ReverseProxyHandler.execute(ReverseProxyHandler.java:90)
at org.openqa.selenium.grid.router.HandleSession.execute(HandleSession.java:181)
at org.openqa.selenium.remote.http.Route$PredicatedRoute.handle(Route.java:383)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.grid.router.Router.execute(Router.java:87)
at org.openqa.selenium.grid.web.EnsureSpecCompliantResponseHeaders.lambda$apply$0(EnsureSpecCompliantResponseHeaders.java:34)
at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.http.Route$NestedRoute.handle(Route.java:270)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.grid.security.BasicAuthenticationFilter.lambda$apply$0(BasicAuthenticationFilter.java:54)
at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.AddWebDriverSpecHeaders.lambda$apply$0(AddWebDriverSpecHeaders.java:35)
at org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)
at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
at org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)
at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
at org.openqa.selenium.netty.server.SeleniumHandler.lambda$channelRead0$0(SeleniumHandler.java:44)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.net.http.HttpConnectTimeoutException: HTTP connect timed out
at java.net.http/jdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:512)
at java.net.http/jdk.internal.net.http.MultiExchange.getExceptionalCF(MultiExchange.java:459)
at java.net.http/jdk.internal.net.http.MultiExchange.lambda$responseAsyncImpl$7(MultiExchange.java:386)
at java.base/java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:930)
at java.base/java.util.concurrent.CompletableFuture$UniHandle.tryFire(CompletableFuture.java:907)
at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)
at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2094)
at java.net.http/jdk.internal.net.http.Http1Exchange.lambda$cancelImpl$9(Http1Exchange.java:482)
... 3 more
Caused by: java.net.ConnectException: HTTP connect timed out
at java.net.http/jdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:513)
... 10 more
13:50:19.856 WARN [SeleniumSpanExporter$1.lambda$export$1] - Unable to execute request for an existing session: java.net.http.HttpConnectTimeoutException: HTTP connect timed out
Build info: version: '4.17.0-SNAPSHOT', revision: '111086d'
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '6.2.0-36-generic', java.version: '11.0.21'
Driver info: driver.version: unknown
13:50:19.856 WARN [SeleniumSpanExporter$1.lambda$export$3] - {"traceId": "84bf58116ba776f6b5ebc71503539fe6","eventTime": 1704894619855159595,"eventName": "exception","attributes": {"exception.message": "Unable to execute request for an existing session: java.net.http.HttpConnectTimeoutException: HTTP connect timed out\nBuild info: version: '4.17.0-SNAPSHOT', revision: '111086d'\nSystem info: os.name: 'Linux', os.arch: 'amd64', os.version: '6.2.0-36-generic', java.version: '11.0.21'\nDriver info: driver.version: unknown","exception.stacktrace": "org.openqa.selenium.TimeoutException: java.net.http.HttpConnectTimeoutException: HTTP connect timed out\nBuild info: version: '4.17.0-SNAPSHOT', revision: '111086d'\nSystem info: os.name: 'Linux', os.arch: 'amd64', os.version: '6.2.0-36-generic', java.version: '11.0.21'\nDriver info: driver.version: unknown\n\tat org.openqa.selenium.remote.http.jdk.JdkHttpClient.execute0(JdkHttpClient.java:392)\n\tat org.openqa.selenium.remote.http.RetryRequest.lambda$apply$5(RetryRequest.java:81)\n\tat dev.failsafe.Functions.lambda$toCtxSupplier$11(Functions.java:243)\n\tat dev.failsafe.Functions.lambda$get$0(Functions.java:46)\n\tat dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74)\n\tat dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74)\n\tat dev.failsafe.internal.FallbackExecutor.lambda$apply$0(FallbackExecutor.java:51)\n\tat dev.failsafe.SyncExecutionImpl.executeSync(SyncExecutionImpl.java:187)\n\tat dev.failsafe.FailsafeExecutor.call(FailsafeExecutor.java:376)\n\tat dev.failsafe.FailsafeExecutor.get(FailsafeExecutor.java:112)\n\tat org.openqa.selenium.remote.http.RetryRequest.lambda$apply$6(RetryRequest.java:81)\n\tat org.openqa.selenium.remote.http.AddSeleniumUserAgent.lambda$apply$0(AddSeleniumUserAgent.java:42)\n\tat org.openqa.selenium.remote.http.Filter.lambda$andFinally$1(Filter.java:55)\n\tat org.openqa.selenium.remote.http.jdk.JdkHttpClient.execute(JdkHttpClient.java:358)\n\tat org.openqa.selenium.remote.tracing.TracedHttpClient.execute(TracedHttpClient.java:54)\n\tat org.openqa.selenium.grid.web.ReverseProxyHandler.execute(ReverseProxyHandler.java:90)\n\tat org.openqa.selenium.grid.router.HandleSession.execute(HandleSession.java:181)\n\tat org.openqa.selenium.remote.http.Route$PredicatedRoute.handle(Route.java:383)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.grid.router.Router.execute(Router.java:87)\n\tat org.openqa.selenium.grid.web.EnsureSpecCompliantResponseHeaders.lambda$apply$0(EnsureSpecCompliantResponseHeaders.java:34)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$NestedRoute.handle(Route.java:270)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.grid.security.BasicAuthenticationFilter.lambda$apply$0(BasicAuthenticationFilter.java:54)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.AddWebDriverSpecHeaders.lambda$apply$0(AddWebDriverSpecHeaders.java:35)\n\tat org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.netty.server.SeleniumHandler.lambda$channelRead0$0(SeleniumHandler.java:44)\n\tat java.base\u002fjava.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)\n\tat java.base\u002fjava.util.concurrent.FutureTask.run(FutureTask.java:264)\n\tat java.base\u002fjava.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)\n\tat java.base\u002fjava.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)\n\tat java.base\u002fjava.lang.Thread.run(Thread.java:829)\nCaused by: java.net.http.HttpConnectTimeoutException: HTTP connect timed out\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:512)\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.getExceptionalCF(MultiExchange.java:459)\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.lambda$responseAsyncImpl$7(MultiExchange.java:386)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:930)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture$UniHandle.tryFire(CompletableFuture.java:907)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2094)\n\tat java.net.http\u002fjdk.internal.net.http.Http1Exchange.lambda$cancelImpl$9(Http1Exchange.java:482)\n\t... 3 more\nCaused by: java.net.ConnectException: HTTP connect timed out\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:513)\n\t... 10 more\n","exception.type": "org.openqa.selenium.TimeoutException","http.flavor": 1,"http.handler_class": "org.openqa.selenium.grid.router.HandleSession","http.host": "195.154.74.229:4444","http.method": "GET","http.request_content_length": "0","http.scheme": "HTTP","http.target": "\u002fsession\u002f46544a19c5852c24b27e383b9ddc6329\u002fscreenshot","session.id": "46544a19c5852c24b27e383b9ddc6329"}}
13:50:49.894 WARN [SeleniumSpanExporter$1.lambda$export$1] - org.openqa.selenium.TimeoutException: java.net.http.HttpConnectTimeoutException: HTTP connect timed out
Build info: version: '4.17.0-SNAPSHOT', revision: '111086d'
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '6.2.0-36-generic', java.version: '11.0.21'
Driver info: driver.version: unknown
at org.openqa.selenium.remote.http.jdk.JdkHttpClient.execute0(JdkHttpClient.java:392)
at org.openqa.selenium.remote.http.RetryRequest.lambda$apply$5(RetryRequest.java:81)
at dev.failsafe.Functions.lambda$toCtxSupplier$11(Functions.java:243)
at dev.failsafe.Functions.lambda$get$0(Functions.java:46)
at dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74)
at dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74)
at dev.failsafe.internal.FallbackExecutor.lambda$apply$0(FallbackExecutor.java:51)
at dev.failsafe.SyncExecutionImpl.executeSync(SyncExecutionImpl.java:187)
at dev.failsafe.FailsafeExecutor.call(FailsafeExecutor.java:376)
at dev.failsafe.FailsafeExecutor.get(FailsafeExecutor.java:112)
at org.openqa.selenium.remote.http.RetryRequest.lambda$apply$6(RetryRequest.java:81)
at org.openqa.selenium.remote.http.AddSeleniumUserAgent.lambda$apply$0(AddSeleniumUserAgent.java:42)
at org.openqa.selenium.remote.http.Filter.lambda$andFinally$1(Filter.java:55)
at org.openqa.selenium.remote.http.jdk.JdkHttpClient.execute(JdkHttpClient.java:358)
at org.openqa.selenium.remote.tracing.TracedHttpClient.execute(TracedHttpClient.java:54)
at org.openqa.selenium.grid.web.ReverseProxyHandler.execute(ReverseProxyHandler.java:90)
at org.openqa.selenium.grid.router.HandleSession.execute(HandleSession.java:181)
at org.openqa.selenium.remote.http.Route$PredicatedRoute.handle(Route.java:383)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.grid.router.Router.execute(Router.java:87)
at org.openqa.selenium.grid.web.EnsureSpecCompliantResponseHeaders.lambda$apply$0(EnsureSpecCompliantResponseHeaders.java:34)
at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.http.Route$NestedRoute.handle(Route.java:270)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.grid.security.BasicAuthenticationFilter.lambda$apply$0(BasicAuthenticationFilter.java:54)
at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)
at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
at org.openqa.selenium.remote.AddWebDriverSpecHeaders.lambda$apply$0(AddWebDriverSpecHeaders.java:35)
at org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)
at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
at org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)
at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
at org.openqa.selenium.netty.server.SeleniumHandler.lambda$channelRead0$0(SeleniumHandler.java:44)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.net.http.HttpConnectTimeoutException: HTTP connect timed out
at java.net.http/jdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:512)
at java.net.http/jdk.internal.net.http.MultiExchange.getExceptionalCF(MultiExchange.java:459)
at java.net.http/jdk.internal.net.http.MultiExchange.lambda$responseAsyncImpl$7(MultiExchange.java:386)
at java.base/java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:930)
at java.base/java.util.concurrent.CompletableFuture$UniHandle.tryFire(CompletableFuture.java:907)
at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)
at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2094)
at java.net.http/jdk.internal.net.http.Http1Exchange.lambda$cancelImpl$9(Http1Exchange.java:482)
... 3 more
Caused by: java.net.ConnectException: HTTP connect timed out
at java.net.http/jdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:513)
... 10 more
13:50:49.894 WARN [SeleniumSpanExporter$1.lambda$export$1] - Unable to execute request for an existing session: java.net.http.HttpConnectTimeoutException: HTTP connect timed out
Build info: version: '4.17.0-SNAPSHOT', revision: '111086d'
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '6.2.0-36-generic', java.version: '11.0.21'
Driver info: driver.version: unknown
13:50:49.895 WARN [SeleniumSpanExporter$1.lambda$export$3] - {"traceId": "2445c2225c8be21080ddec9cb39ae8f1","eventTime": 1704894649893604164,"eventName": "exception","attributes": {"exception.message": "Unable to execute request for an existing session: java.net.http.HttpConnectTimeoutException: HTTP connect timed out\nBuild info: version: '4.17.0-SNAPSHOT', revision: '111086d'\nSystem info: os.name: 'Linux', os.arch: 'amd64', os.version: '6.2.0-36-generic', java.version: '11.0.21'\nDriver info: driver.version: unknown","exception.stacktrace": "org.openqa.selenium.TimeoutException: java.net.http.HttpConnectTimeoutException: HTTP connect timed out\nBuild info: version: '4.17.0-SNAPSHOT', revision: '111086d'\nSystem info: os.name: 'Linux', os.arch: 'amd64', os.version: '6.2.0-36-generic', java.version: '11.0.21'\nDriver info: driver.version: unknown\n\tat org.openqa.selenium.remote.http.jdk.JdkHttpClient.execute0(JdkHttpClient.java:392)\n\tat org.openqa.selenium.remote.http.RetryRequest.lambda$apply$5(RetryRequest.java:81)\n\tat dev.failsafe.Functions.lambda$toCtxSupplier$11(Functions.java:243)\n\tat dev.failsafe.Functions.lambda$get$0(Functions.java:46)\n\tat dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74)\n\tat dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74)\n\tat dev.failsafe.internal.FallbackExecutor.lambda$apply$0(FallbackExecutor.java:51)\n\tat dev.failsafe.SyncExecutionImpl.executeSync(SyncExecutionImpl.java:187)\n\tat dev.failsafe.FailsafeExecutor.call(FailsafeExecutor.java:376)\n\tat dev.failsafe.FailsafeExecutor.get(FailsafeExecutor.java:112)\n\tat org.openqa.selenium.remote.http.RetryRequest.lambda$apply$6(RetryRequest.java:81)\n\tat org.openqa.selenium.remote.http.AddSeleniumUserAgent.lambda$apply$0(AddSeleniumUserAgent.java:42)\n\tat org.openqa.selenium.remote.http.Filter.lambda$andFinally$1(Filter.java:55)\n\tat org.openqa.selenium.remote.http.jdk.JdkHttpClient.execute(JdkHttpClient.java:358)\n\tat org.openqa.selenium.remote.tracing.TracedHttpClient.execute(TracedHttpClient.java:54)\n\tat org.openqa.selenium.grid.web.ReverseProxyHandler.execute(ReverseProxyHandler.java:90)\n\tat org.openqa.selenium.grid.router.HandleSession.execute(HandleSession.java:181)\n\tat org.openqa.selenium.remote.http.Route$PredicatedRoute.handle(Route.java:383)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.grid.router.Router.execute(Router.java:87)\n\tat org.openqa.selenium.grid.web.EnsureSpecCompliantResponseHeaders.lambda$apply$0(EnsureSpecCompliantResponseHeaders.java:34)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$NestedRoute.handle(Route.java:270)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.grid.security.BasicAuthenticationFilter.lambda$apply$0(BasicAuthenticationFilter.java:54)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:346)\n\tat org.openqa.selenium.remote.http.Route.execute(Route.java:69)\n\tat org.openqa.selenium.remote.AddWebDriverSpecHeaders.lambda$apply$0(AddWebDriverSpecHeaders.java:35)\n\tat org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)\n\tat org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)\n\tat org.openqa.selenium.netty.server.SeleniumHandler.lambda$channelRead0$0(SeleniumHandler.java:44)\n\tat java.base\u002fjava.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)\n\tat java.base\u002fjava.util.concurrent.FutureTask.run(FutureTask.java:264)\n\tat java.base\u002fjava.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)\n\tat java.base\u002fjava.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)\n\tat java.base\u002fjava.lang.Thread.run(Thread.java:829)\nCaused by: java.net.http.HttpConnectTimeoutException: HTTP connect timed out\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:512)\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.getExceptionalCF(MultiExchange.java:459)\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.lambda$responseAsyncImpl$7(MultiExchange.java:386)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:930)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture$UniHandle.tryFire(CompletableFuture.java:907)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)\n\tat java.base\u002fjava.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2094)\n\tat java.net.http\u002fjdk.internal.net.http.Http1Exchange.lambda$cancelImpl$9(Http1Exchange.java:482)\n\t... 3 more\nCaused by: java.net.ConnectException: HTTP connect timed out\n\tat java.net.http\u002fjdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:513)\n\t... 10 more\n","exception.type": "org.openqa.selenium.TimeoutException","http.flavor": 1,"http.handler_class": "org.openqa.selenium.grid.router.HandleSession","http.host": "195.154.74.229:4444","http.method": "DELETE","http.request_content_length": "0","http.scheme": "HTTP","http.target": "\u002fsession\u002f46544a19c5852c24b27e383b9ddc6329","session.id": "46544a19c5852c24b27e383b9ddc6329"}}
13:53:21.750 INFO [GridModel.purgeDeadNodes] - Removing Node http://100.64.48.173:5555, DOWN for too long
Looks like a command is timing out, but it is not clear as the log from the Node is incomplete.
You said that this was working fine before, which version were you using?
I have 3 clusters, 2 are on version 4.11.0-20230801 and 1 on version 4.16.1-20231212. Right now, I'm running tests on the nightly version.
Here's another log from one of my last tests for the chrome node kubectl logs selenium-chrome-node-b87vv-lkpf6 -n selenium-grid > chromeNode.log : `2024-01-10 14:12:43,201 INFO Included extra file "/etc/supervisor/conf.d/selenium.conf" during parsing 2024-01-10 14:12:43,203 INFO RPC interface 'supervisor' initialized 2024-01-10 14:12:43,203 CRIT Server 'unix_http_server' running without any HTTP authentication checking 2024-01-10 14:12:43,203 INFO supervisord started with pid 9 2024-01-10 14:12:44,208 INFO spawned: 'xvfb' with pid 10 2024-01-10 14:12:44,214 INFO spawned: 'vnc' with pid 11 2024-01-10 14:12:44,221 INFO spawned: 'novnc' with pid 17 2024-01-10 14:12:44,228 INFO spawned: 'selenium-node' with pid 24 2024-01-10 14:12:44,231 INFO success: selenium-node entered RUNNING state, process has stayed up for > than 0 seconds (startsecs) Appending Selenium options: --session-timeout 5400 Generating Selenium Config Configuring server... Setting up SE_NODE_HOST... Setting up SE_NODE_PORT... Tracing is disabled Selenium Grid Node configuration: [events] publish = "tcp://selenium-hub:4442" subscribe = "tcp://selenium-hub:4443"
[node] grid-url = "http://xxxx:xxxxx@selenium-hub.selenium-grid:4444" session-timeout = "5400" override-max-sessions = false detect-drivers = false drain-after-session-count = 1 max-sessions = 1
[[node.driver-configuration]] display-name = "chrome" stereotype = '{"browserName": "chrome", "browserVersion": "120.0", "platformName": "Linux", "goog:chromeOptions": {"binary": "/usr/bin/google-chrome"}}' max-sessions = 1
Starting Selenium Grid Node...
2024-01-10 14:12:45,268 INFO success: xvfb entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2024-01-10 14:12:45,269 INFO success: vnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2024-01-10 14:12:45,269 INFO success: novnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
14:12:45.482 INFO [LoggingOptions.configureLogEncoding] - Using the system default encoding
14:12:45.487 INFO [OpenTelemetryTracer.createTracer] - Using OpenTelemetry for tracing
14:12:45.692 INFO [UnboundZmqEventBus.
My question is if things are still working with the previous version and when did it stop working?
It doesn't work with either 4.11 or 4.16 since monday. It was working the previous friday
OK, so if it is not working with 4.11, which was the previous version, and the Selenium components have not changed since then... what is your reasoning for this as a Selenium issue? Have you tried to troubleshoot your test and your system under test?
Because I haven't changed anything between Friday and Monday, neither in the code nor in the test, and now the bug occurs when the grid window turns white, which didn't happen before.
The Grid window turns white on 4.11 as well?
Yes, the same as you can see here, it's on version 4.11 with a Chrome v115 everytime its between 5 and 8 minutes
OK, 4.11 has not changed, as we do not patch old versions. You need to check and trace what changes might have happened in your environment.
12:44:23.972 INFO [ProxyNodeWebsockets.createWsEndPoint] - Establishing connection to ws://100.64.48.104:7900
12:44:27.398 INFO [ProxyNodeWebsockets.createWsEndPoint] - Establishing connection to ws://100.64.48.104:7900
12:44:30.828 INFO [ProxyNodeWebsockets.createWsEndPoint] - Establishing connection to ws://100.64.48.104:7900
This message will show when the live preview is opened on UI. It would be the IP of Node pod.
It doesn't work with either 4.11 or 4.16 since monday. It was working the previous Friday
In this case, can you check in the cluster, is there any e.g network policy applied in between that could drop the connection?
As I continued searching, I found out that my problem was coming from the RAM. The session was using between 1.50 and 2GB of RAM while the limit was set to 1.3GB. By modifying it this way, the browser continues to work, as the RAM limit is not reached. I am looking into how to reduce RAM usage. Fix: resources: requests: memory: "2500Mi" // before was 1300Mi cpu: "1" limits: memory: "2500Mi" // before was 1300Mi cpu: "1"
@GuillaumeFradet, is that fine in recent versions with the increase resource requests/limits?
@VietND96 I am still on 4.16 where indeed I no longer have this issue since increasing the resources. I had quickly tested 4.18 where I did not encounter the problem.
What happened?
As you can see from the screenshot, there's no longer a browser present in the session, yet the session remains active and the script continues to run on it.
Command used to start Selenium Grid with Docker (or Kubernetes)
Relevant log output
Operating System
Kubernetes
Docker Selenium version (image tag)
4.16.1-20231212
Selenium Grid chart version (chart version)
No response