plugin-lighthouse icon indicating copy to clipboard operation
plugin-lighthouse copied to clipboard

Lighthouse could not test page - LHError: PROTOCOL_TIMEOUT

Open UladzislauCharkouski opened this issue 3 years ago • 5 comments

Your question

Hi I'm trying to test pages with sitespeedio/sitespeed.io:25.11.0-plus1 But receiving the error: ERROR: Lighthouse could not test http://localhost:3000/testPage please create an upstream issue: https://github.com/GoogleChrome/lighthouse/issues/new?assignees=&labels=bug&template=bug-report.yml LHError: PROTOCOL_TIMEOUT at /lighthouse/node_modules/lighthouse/lighthouse-core/gather/driver.js:348:50.....

After researching, one possible solution that could help is to add a chrome flag "--disable-dev-shm-usage" (https://github.com/GoogleChrome/lighthouse/issues/6512) But none of the options for passing flags to the lighthouse plugin, as I see it, does not work for me (from --lighthouse.config config.js or --lighthouse.flags flag.json) And as I see here https://github.com/sitespeedio/plugin-lighthouse/blob/main/index.js#L36-L68 the chrome flags are already set but without the ability to pass additional flags into it (maybe I'm wrong). @soulgalore could you please tell me if there are any other ways to pass chrome flags to the lighthouse plugin? Or maybe there are other ways to fix the error?

UladzislauCharkouski avatar Sep 13 '22 16:09 UladzislauCharkouski

Hi @UladzislauCharkouski inside the Docker container localhost is inside the container, wanted to check if you followed https://www.sitespeed.io/documentation/sitespeed.io/docker/#access-localhost so you can access it on the machine instead?

soulgalore avatar Sep 14 '22 17:09 soulgalore

@soulgalore thanks for the quick response Yes, I use this flag and sitespeed has access and measures correctly. The container runs in Kubernetes in the same pod as the application. here are my options: -v ${WORKSPACE}:/sitespeed.io --network=host --cap-add=NET_ADMIN --entrypoint='' -u root --outputFolder output -n 5 --mobile --browsertime.connectivity.engine=throttle --browsertime.connectivity.profile 3gfast --config sitespeed_config.json

UladzislauCharkouski avatar Sep 15 '22 09:09 UladzislauCharkouski

Getting the same issue but not for localhost. All configs are pretty much default. I tried to add the param that @UladzislauCharkouski suggested but no luck.

    "browsertime": {
        "iterations": 1,
        "browser": "chrome"
    },
    "chrome": {
        "args": [
            "disable-dev-shm-usage"
        ]
    }

Is that should be considered as Lighthouse issue?

max-perepelov avatar Oct 25 '22 12:10 max-perepelov

@max-perepelov "--shm-size=1g" flag resolved my issue example: docker run --shm-size=1g --rm -v "$(pwd):/sitespeed.io" sitespeedio/sitespeed.io:26.1.0-plus1 https://www.sitespeed.io/

UladzislauCharkouski avatar Oct 25 '22 14:10 UladzislauCharkouski

@max-perepelov that will disable dev-shm for Browsertime, not Lighthouse (it starts there own version of Chrome). I think the easiest is if I add that disable-dev-shm-usage by default for Lighthouse and see if it helps.

soulgalore avatar Oct 25 '22 17:10 soulgalore