Closed juckerf closed 2 years ago
Hi @juckerf ah I see, thanks for creating the issue. I only been using that for Android and together with WebPageReplay. It works running without Docker, but of course it should work in Docker too, let me have a look at it tonight.
Hi @juckerf I just pushed 25.3.1 that I hope fixes the problem, please let me know if it works for you now.
Hi @soulgalore
Thanks a lot for your efforts.
Unfortunately the docker
option does not seem to get picked up by the preWarmServer
function (which is strange because your code seems legit).
Output:
$ docker run --rm sitespeedio/sitespeed.io:25.3.1 --browsertime.docker -n1 -b chromdeo false -v --preWarmServer https://www.google.com
Google Chrome 103.0.5060.53
Mozilla Firefox 102.0
Microsoft Edge 103.0.1264.37
[2022-06-30 06:41:10] INFO: [sitespeedio] Versions OS: linux 4.15.0-177-generic nodejs: v16.15.0 sitespeed.io: 25.3.1 browsertime: 16.11.1 coach: 7.1.2
[2022-06-30 06:41:10] DEBUG: [sitespeedio] Running with options: {
"_": [
"https://www.google.com"
],
"browsertime": {
"docker": true,
"iterations": 1,
"browser": "chrome",
"video": false,
"preWarmServer": true,
"pre-warm-server": true,
"xvfb": true,
"xvfbParams": {
"display": 99
},
"xvfb-params": {
"display": 99
},
"spa": false,
"debug": false,
"gnirehtet": false,
"connectivity": {
"profile": "native",
"engine": "external"
},
"timeouts": {
"pageCompleteCheck": 120000,
"page-complete-check": 120000
},
"pageCompleteWaitTime": 5000,
"page-complete-wait-time": 5000,
"pageCompleteCheckInactivity": false,
"page-complete-check-inactivity": false,
"pageCompleteCheckPollTimeout": 1500,
"page-complete-check-poll-timeout": 1500,
"pageCompleteCheckStartWait": 500,
"page-complete-check-start-wait": 500,
"pageLoadStrategy": "none",
"page-load-strategy": "none",
"viewPort": "1366x708",
"view-port": "1366x708",
"scriptInput": {
"longTask": 50
},
"script-input": {
"long-task": 50
},
"videoParams": {
"framerate": 30,
"crf": 23,
"addTimer": true,
"convert": true,
"keepOriginalVideo": false,
"filmstripFullSize": false,
"filmstripQuality": 75,
"createFilmstrip": true,
"thumbsize": 400
},
"video-params": {
"framerate": 30,
"crf": 23,
"add-timer": true,
"convert": true,
"keep-original-video": false,
"filmstrip-full-size": false,
"filmstrip-quality": 75,
"create-filmstrip": true,
"thumbsize": 400
},
"tcpdump": false,
"firefox": {
"includeResponseBodies": "none",
"include-response-bodies": "none",
"memoryReport": false,
"memory-report": false,
"memoryReportParams": {
"minizeFirst": false
},
"memory-report-params": {
"minize-first": false
},
"geckoProfiler": false,
"gecko-profiler": false,
"geckoProfilerParams": {
"features": "js,stackwalk,leaf",
"threads": "GeckoMain,Compositor,Renderer",
"bufferSize": 1000000
},
"gecko-profiler-params": {
"features": "js,stackwalk,leaf",
"threads": "GeckoMain,Compositor,Renderer",
"buffer-size": 1000000
},
"windowRecorder": false,
"window-recorder": false,
"disableSafeBrowsing": true,
"disable-safe-browsing": true,
"disableTrackingProtection": true,
"disable-tracking-protection": true
},
"chrome": {
"timeline": true,
"cdp": {
"performance": true
},
"ignoreCertificateErrors": true,
"ignore-certificate-errors": true,
"includeResponseBodies": "none",
"include-response-bodies": "none"
},
"android": false,
"androidRooted": false,
"android-rooted": false,
"androidBatteryTemperatureWaitTimeInSeconds": 120,
"android-battery-temperature-wait-time-in-seconds": 120,
"androidVerifyNetwork": false,
"android-verify-network": false,
"safari": {
"ios": false,
"useTechnologyPreview": false,
"use-technology-preview": false,
"useSimulator": false,
"use-simulator": false
},
"headless": false,
"iqr": false,
"preWarmServerWaitTime": 5000,
"pre-warm-server-wait-time": 5000,
"screenshot": true,
"screenshotParams": {
"type": "png",
"png": {
"compressionLevel": 6
},
"jpg": {
"quality": 80
},
"maxSize": 2000
},
"screenshot-params": {
"type": "png",
"png": {
"compression-level": 6
},
"jpg": {
"quality": 80
},
"max-size": 2000
},
"visualMetrics": true
},
"n": 1,
"b": "chrome",
"browser": "chrome",
"video": false,
"v": 1,
"verbose": 1,
"preWarmServer": true,
"pre-warm-server": true,
"xvfb": true,
"debugMessages": false,
"debug-messages": false,
"xvfbParams": {
"display": 99
},
"xvfb-params": {
"display": 99
},
"spa": false,
"debug": false,
"gnirehtet": false,
"c": "native",
"connectivity": {
"engine": "external"
},
"maxLoadTime": 120000,
"max-load-time": 120000,
"pageCompleteWaitTime": 5000,
"page-complete-wait-time": 5000,
"pageCompleteCheckInactivity": false,
"page-complete-check-inactivity": false,
"pageCompleteCheckPollTimeout": 1500,
"page-complete-check-poll-timeout": 1500,
"pageCompleteCheckStartWait": 500,
"page-complete-check-start-wait": 500,
"pageLoadStrategy": "none",
"page-load-strategy": "none",
"viewPort": "1366x708",
"view-port": "1366x708",
"minLongTaskLength": 50,
"min-long-task-length": 50,
"videoParams": {
"framerate": 30,
"crf": 23,
"addTimer": true,
"convert": true,
"keepOriginalVideo": false,
"filmstripFullSize": false,
"filmstripQuality": 75,
"createFilmstrip": true,
"thumbsize": 400
},
"fps": 30,
"video-params": {
"framerate": 30,
"crf": 23,
"add-timer": true,
"convert": true,
"keep-original-video": false,
"filmstrip-full-size": false,
"filmstrip-quality": 75,
"create-filmstrip": true,
"thumbsize": 400
},
"filmstrip": {
"showAll": false,
"show-all": false
},
"tcpdump": false,
"firefox": {
"includeResponseBodies": "none",
"include-response-bodies": "none",
"memoryReport": false,
"memory-report": false,
"memoryReportParams": {
"minizeFirst": false
},
"memory-report-params": {
"minize-first": false
},
"geckoProfiler": false,
"gecko-profiler": false,
"geckoProfilerParams": {
"features": "js,stackwalk,leaf",
"threads": "GeckoMain,Compositor,Renderer",
"bufferSize": 1000000
},
"gecko-profiler-params": {
"features": "js,stackwalk,leaf",
"threads": "GeckoMain,Compositor,Renderer",
"buffer-size": 1000000
},
"windowRecorder": false,
"window-recorder": false,
"disableSafeBrowsing": true,
"disable-safe-browsing": true,
"disableTrackingProtection": true,
"disable-tracking-protection": true
},
"chrome": {
"timeline": true,
"cdp": {
"performance": true
},
"ignoreCertificateErrors": true,
"ignore-certificate-errors": true,
"includeResponseBodies": "none",
"include-response-bodies": "none"
},
"android": false,
"androidRooted": false,
"android-rooted": false,
"androidBatteryTemperatureWaitTimeInSeconds": 120,
"android-battery-temperature-wait-time-in-seconds": 120,
"androidVerifyNetwork": false,
"android-verify-network": false,
"safari": {
"ios": false,
"useTechnologyPreview": false,
"use-technology-preview": false,
"useSimulator": false,
"use-simulator": false
},
"headless": false,
"crawler": {
"ignoreRobotsTxt": false,
"ignore-robots-txt": false
},
"grafana": {
"port": 80,
"annotationScreenshot": false,
"annotation-screenshot": false
},
"graphite": {
"port": 2003,
"httpPort": 8080,
"http-port": 8080,
"namespace": "sitespeed_io.default",
"includeQueryParams": false,
"include-query-params": false,
"arrayTags": true,
"array-tags": true,
"annotationScreenshot": false,
"annotation-screenshot": false,
"sendAnnotation": true,
"send-annotation": true,
"statsd": false,
"addSlugToKey": true,
"add-slug-to-key": true,
"bulkSize": null,
"bulk-size": null,
"skipSummary": false,
"skip-summary": false,
"perIteration": false,
"per-iteration": false
},
"screenshot": {
"type": "png",
"png": {
"compressionLevel": 6,
"compression-level": 6
},
"jpg": {
"quality": 80
},
"maxSize": 2000,
"max-size": 2000
},
"influxdb": {
"protocol": "http",
"port": 8086,
"database": "sitespeed",
"tags": "category=default",
"includeQueryParams": false,
"include-query-params": false,
"groupSeparator": "_",
"group-separator": "_",
"annotationScreenshot": false,
"annotation-screenshot": false
},
"metrics": {
"list": false,
"filterList": false,
"filter-list": false
},
"slack": {
"userName": "Sitespeed.io",
"user-name": "Sitespeed.io",
"type": "all",
"limitWarning": 90,
"limit-warning": 90,
"limitError": 80,
"limit-error": 80,
"limitMetric": "coachScore",
"limit-metric": "coachScore"
},
"s3": {
"removeLocalResult": false,
"remove-local-result": false
},
"gcs": {
"public": false,
"gzip": false,
"removeLocalResult": false,
"remove-local-result": false
},
"html": {
"showAllWaterfallSummary": false,
"show-all-waterfall-summary": false,
"fetchHARFiles": false,
"fetch-h-a-r-files": false,
"logDownloadLink": false,
"log-download-link": false,
"topListSize": 10,
"top-list-size": 10,
"showScript": false,
"show-script": false,
"pageSummaryMetrics": [
"transferSize.total",
"requests.total",
"thirdParty.requests",
"transferSize.javascript",
"transferSize.css",
"transferSize.image",
"score.performance"
],
"page-summary-metrics": [
"transferSize.total",
"requests.total",
"thirdParty.requests",
"transferSize.javascript",
"transferSize.css",
"transferSize.image",
"score.performance"
],
"summaryBoxes": [
"score.score",
"score.accessibility",
"score.bestpractice",
"score.privacy",
"score.performance",
"timings.firstPaint",
"timings.firstContentfulPaint",
"timings.fullyLoaded",
"timings.pageLoadTime",
"timings.largestContentfulPaint",
"timings.FirstVisualChange",
"timings.LastVisualChange",
"timings.SpeedIndex",
"timings.PerceptualSpeedIndex",
"timings.VisualReadiness",
"timings.VisualComplete",
"timings.backEndTime",
"googleWebVitals.cumulativeLayoutShift",
"requests.total",
"requests.javascript",
"requests.css",
"requests.image",
"transferSize.total",
"transferSize.html",
"transferSize.javascript",
"contentSize.javascript",
"transferSize.css",
"transferSize.image",
"thirdParty.transferSize",
"thirdParty.requests",
"webpagetest.SpeedIndex",
"webpagetest.lastVisualChange",
"webpagetest.render",
"webpagetest.visualComplete",
"webpagetest.visualComplete95",
"webpagetest.TTFB",
"webpagetest.fullyLoaded",
"axe.critical",
"axe.serious",
"axe.minor",
"axe.moderate",
"cpu.longTasksTotalDuration",
"cpu.longTasks",
"cpu.totalBlockingTime",
"cpu.maxPotentialFid",
"sustainable.totalCO2",
"sustainable.co2PerPageView",
"sustainable.co2FirstParty",
"sustainable.co2ThirdParty"
],
"summary-boxes": [
"score.score",
"score.accessibility",
"score.bestpractice",
"score.privacy",
"score.performance",
"timings.firstPaint",
"timings.firstContentfulPaint",
"timings.fullyLoaded",
"timings.pageLoadTime",
"timings.largestContentfulPaint",
"timings.FirstVisualChange",
"timings.LastVisualChange",
"timings.SpeedIndex",
"timings.PerceptualSpeedIndex",
"timings.VisualReadiness",
"timings.VisualComplete",
"timings.backEndTime",
"googleWebVitals.cumulativeLayoutShift",
"requests.total",
"requests.javascript",
"requests.css",
"requests.image",
"transferSize.total",
"transferSize.html",
"transferSize.javascript",
"contentSize.javascript",
"transferSize.css",
"transferSize.image",
"thirdParty.transferSize",
"thirdParty.requests",
"webpagetest.SpeedIndex",
"webpagetest.lastVisualChange",
"webpagetest.render",
"webpagetest.visualComplete",
"webpagetest.visualComplete95",
"webpagetest.TTFB",
"webpagetest.fullyLoaded",
"axe.critical",
"axe.serious",
"axe.minor",
"axe.moderate",
"cpu.longTasksTotalDuration",
"cpu.longTasks",
"cpu.totalBlockingTime",
"cpu.maxPotentialFid",
"sustainable.totalCO2",
"sustainable.co2PerPageView",
"sustainable.co2FirstParty",
"sustainable.co2ThirdParty"
]
},
"summary": false,
"summary-detail": false,
"summaryDetail": false,
"sustainable": {
"disableHosting": false,
"disable-hosting": false,
"useGreenWebHostingAPI": false,
"use-green-web-hosting-a-p-i": false
},
"crux": {
"enable": true,
"formFactor": "ALL",
"form-factor": "ALL",
"collect": "ALL"
},
"matrix": {
"messages": [
"error",
"budget"
]
},
"mobile": false,
"gzipHAR": false,
"gzip-h-a-r": false,
"copyLatestFilesToBase": false,
"copy-latest-files-to-base": false,
"utc": false,
"logToFile": false,
"log-to-file": false,
"useHash": false,
"use-hash": false,
"multi": false,
"$0": "/usr/src/app/bin/sitespeed.js",
"explicitOptions": {
"_": [],
"browsertime": {
"docker": true,
"iterations": 1,
"browser": "chrome",
"video": "false",
"preWarmServer": "https://www.google.com"
},
"n": 1,
"b": "chrome",
"video": "false",
"verbose": true,
"v": true,
"preWarmServer": "https://www.google.com",
"$0": "/usr/src/app/bin/sitespeed.js"
},
"urls": [
"https://www.google.com"
],
"urlsMetaData": {},
"slug": "www_google_com"
}
[2022-06-30 06:41:11] DEBUG: [browsertime] Running with options: {
"scripts": [],
"iterations": 1,
"delay": 0,
"videoParams": {},
"browser": "chrome",
"xvfb": true,
"android": false
}
[2022-06-30 06:41:11] DEBUG: [browsertime] Preparing port 9222 for devtools on Chrome/Edge
[2022-06-30 06:41:11] INFO: [plugin.browsertime] Start pre-testing/warminghttps://www.google.com
[2022-06-30 06:41:11] INFO: [browsertime] Running tests using Chrome - 1 iteration(s)
[2022-06-30 06:41:11] DEBUG: [browsertime.chrome] Setting the following Selenium options: {"map_":{},"options_":{"prefs":{"profile.password_manager_enable":false,"profile.default_content_setting_values.notifications":2,"credentials_enable_service":false},"args":["--disable-gpu","--window-position=0,0","--window-size=1366,768","--host-resolver-rules=\"MAP cache.pack.google.com 127.0.0.1\",\"MAP clients1.google.com 127.0.0.1\",\"MAP update.googleapis.com 127.0.0.1\",\"MAP redirector.gvt1.com 127.0.0.1\",\"MAP laptop-updates.brave.com 127.0.0.1\",\"MAP offlinepages-pa.googleapis.com 127.0.0.1\",\"MAP edge.microsoft.com 127.0.0.1\",\"MAP optimizationguide-pa.googleapis.com 127.0.0.1\"","--disable-background-networking","--no-default-browser-check","--no-first-run","--new-window","--allow-running-insecure-content","--disable-client-side-phishing-detection","--disable-component-update","--disable-default-apps","--disable-device-discovery-notifications","--disable-domain-reliability","--disable-background-timer-throttling","--load-media-router-component-extension=0","--mute-audio","--disable-hang-monitor","--password-store=basic","--disable-breakpad","--dont-require-litepage-redirect-infobar","--override-https-image-compression-infobar","--disable-fetching-hints-at-navigation-start","--disable-dev-shm-usage","--disable-back-forward-cache","--disable-site-isolation-trials","--remote-debugging-port=9222","--disable-features=ChromeWhatsNewUI"],"perfLoggingPrefs":{"enableNetwork":true,"enablePage":true},"excludeSwitches":["enable-automation"]}}
[2022-06-30 06:41:12] INFO: [browsertime] chrome failed to start, trying 2 more time(s): unknown error: Chrome failed to start: exited abnormally.
(chrome not reachable)
(The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
[2022-06-30 06:41:12] DEBUG: [browsertime.chrome] Setting the following Selenium options: {"map_":{},"options_":{"prefs":{"profile.password_manager_enable":false,"profile.default_content_setting_values.notifications":2,"credentials_enable_service":false},"args":["--disable-gpu","--window-position=0,0","--window-size=1366,768","--host-resolver-rules=\"MAP cache.pack.google.com 127.0.0.1\",\"MAP clients1.google.com 127.0.0.1\",\"MAP update.googleapis.com 127.0.0.1\",\"MAP redirector.gvt1.com 127.0.0.1\",\"MAP laptop-updates.brave.com 127.0.0.1\",\"MAP offlinepages-pa.googleapis.com 127.0.0.1\",\"MAP edge.microsoft.com 127.0.0.1\",\"MAP optimizationguide-pa.googleapis.com 127.0.0.1\"","--disable-background-networking","--no-default-browser-check","--no-first-run","--new-window","--allow-running-insecure-content","--disable-client-side-phishing-detection","--disable-component-update","--disable-default-apps","--disable-device-discovery-notifications","--disable-domain-reliability","--disable-background-timer-throttling","--load-media-router-component-extension=0","--mute-audio","--disable-hang-monitor","--password-store=basic","--disable-breakpad","--dont-require-litepage-redirect-infobar","--override-https-image-compression-infobar","--disable-fetching-hints-at-navigation-start","--disable-dev-shm-usage","--disable-back-forward-cache","--disable-site-isolation-trials","--remote-debugging-port=9222","--disable-features=ChromeWhatsNewUI"],"perfLoggingPrefs":{"enableNetwork":true,"enablePage":true},"excludeSwitches":["enable-automation"]}}
[2022-06-30 06:41:13] INFO: [browsertime] chrome failed to start, trying 1 more time(s): unknown error: Chrome failed to start: exited abnormally.
(chrome not reachable)
(The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
[2022-06-30 06:41:13] DEBUG: [browsertime.chrome] Setting the following Selenium options: {"map_":{},"options_":{"prefs":{"profile.password_manager_enable":false,"profile.default_content_setting_values.notifications":2,"credentials_enable_service":false},"args":["--disable-gpu","--window-position=0,0","--window-size=1366,768","--host-resolver-rules=\"MAP cache.pack.google.com 127.0.0.1\",\"MAP clients1.google.com 127.0.0.1\",\"MAP update.googleapis.com 127.0.0.1\",\"MAP redirector.gvt1.com 127.0.0.1\",\"MAP laptop-updates.brave.com 127.0.0.1\",\"MAP offlinepages-pa.googleapis.com 127.0.0.1\",\"MAP edge.microsoft.com 127.0.0.1\",\"MAP optimizationguide-pa.googleapis.com 127.0.0.1\"","--disable-background-networking","--no-default-browser-check","--no-first-run","--new-window","--allow-running-insecure-content","--disable-client-side-phishing-detection","--disable-component-update","--disable-default-apps","--disable-device-discovery-notifications","--disable-domain-reliability","--disable-background-timer-throttling","--load-media-router-component-extension=0","--mute-audio","--disable-hang-monitor","--password-store=basic","--disable-breakpad","--dont-require-litepage-redirect-infobar","--override-https-image-compression-infobar","--disable-fetching-hints-at-navigation-start","--disable-dev-shm-usage","--disable-back-forward-cache","--disable-site-isolation-trials","--remote-debugging-port=9222","--disable-features=ChromeWhatsNewUI"],"perfLoggingPrefs":{"enableNetwork":true,"enablePage":true},"excludeSwitches":["enable-automation"]}}
[2022-06-30 06:41:14] INFO: [browsertime] chrome failed to start, trying 0 more time(s): unknown error: Chrome failed to start: exited abnormally.
(chrome not reachable)
(The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
[2022-06-30 06:41:14] ERROR: [browsertime] BrowserError: Could not start chrome with 3 tries
at SeleniumRunner.start (/usr/src/app/node_modules/browsertime/lib/core/seleniumRunner.js:91:13)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at async Iteration.run (/usr/src/app/node_modules/browsertime/lib/core/engine/iteration.js:114:7)
at async Engine.runByScript (/usr/src/app/node_modules/browsertime/lib/core/engine/index.js:270:20)
at async preWarmServer (/usr/src/app/lib/plugins/browsertime/analyzer.js:36:5)
at async Object.analyzeUrl (/usr/src/app/lib/plugins/browsertime/analyzer.js:132:7)
at async Object.processMessage (/usr/src/app/lib/plugins/browsertime/index.js:150:26)
[2022-06-30 06:41:14] ERROR: [browsertime] No data to collect
[2022-06-30 06:41:14] INFO: [plugin.browsertime] Pre-testing done, closed the browser.
[2022-06-30 06:41:19] DEBUG: [browsertime] Running with options: {
"scripts": [],
"iterations": 1,
"delay": 0,
"videoParams": {
"framerate": 30,
"crf": 23,
"addTimer": true,
"convert": true,
"keepOriginalVideo": false,
"filmstripFullSize": false,
"filmstripQuality": 75,
"createFilmstrip": true,
"thumbsize": 400
},
"statistics": true,
"browser": "chrome",
"connectivity": {
"profile": "native",
"engine": "external"
},
"screenshot": true,
"screenshotLCP": true,
"screenshotLS": true,
"screenshotParams": {
"type": "png",
"png": {
"compressionLevel": 6
},
"jpg": {
"quality": 80
},
"maxSize": 2000
},
"viewPort": "1366x708",
"xvfbParams": {
"display": 99
},
"docker": true,
"video": false,
"preWarmServer": true,
"pre-warm-server": true,
"xvfb": true,
"xvfb-params": {
"display": 99
},
"spa": false,
"debug": false,
"gnirehtet": false,
"timeouts": {
"pageCompleteCheck": 120000,
"page-complete-check": 120000
},
"pageCompleteWaitTime": 5000,
"page-complete-wait-time": 5000,
"pageCompleteCheckInactivity": false,
"page-complete-check-inactivity": false,
"pageCompleteCheckPollTimeout": 1500,
"page-complete-check-poll-timeout": 1500,
"pageCompleteCheckStartWait": 500,
"page-complete-check-start-wait": 500,
"pageLoadStrategy": "none",
"page-load-strategy": "none",
"view-port": "1366x708",
"scriptInput": {
"longTask": 50
},
"script-input": {
"long-task": 50
},
"video-params": {
"framerate": 30,
"crf": 23,
"add-timer": true,
"convert": true,
"keep-original-video": false,
"filmstrip-full-size": false,
"filmstrip-quality": 75,
"create-filmstrip": true,
"thumbsize": 400
},
"tcpdump": false,
"firefox": {
"includeResponseBodies": "none",
"include-response-bodies": "none",
"memoryReport": false,
"memory-report": false,
"memoryReportParams": {
"minizeFirst": false
},
"memory-report-params": {
"minize-first": false
},
"geckoProfiler": false,
"gecko-profiler": false,
"geckoProfilerParams": {
"features": "js,stackwalk,leaf",
"threads": "GeckoMain,Compositor,Renderer",
"bufferSize": 1000000
},
"gecko-profiler-params": {
"features": "js,stackwalk,leaf",
"threads": "GeckoMain,Compositor,Renderer",
"buffer-size": 1000000
},
"windowRecorder": false,
"window-recorder": false,
"disableSafeBrowsing": true,
"disable-safe-browsing": true,
"disableTrackingProtection": true,
"disable-tracking-protection": true
},
"chrome": {
"timeline": true,
"cdp": {
"performance": true
},
"ignoreCertificateErrors": true,
"ignore-certificate-errors": true,
"includeResponseBodies": "none",
"include-response-bodies": "none"
},
"android": false,
"androidRooted": false,
"android-rooted": false,
"androidBatteryTemperatureWaitTimeInSeconds": 120,
"android-battery-temperature-wait-time-in-seconds": 120,
"androidVerifyNetwork": false,
"android-verify-network": false,
"safari": {
"ios": false,
"useTechnologyPreview": false,
"use-technology-preview": false,
"useSimulator": false,
"use-simulator": false
},
"headless": false,
"iqr": false,
"preWarmServerWaitTime": 5000,
"pre-warm-server-wait-time": 5000,
"screenshot-params": {
"type": "png",
"png": {
"compression-level": 6
},
"jpg": {
"quality": 80
},
"max-size": 2000
},
"visualMetrics": true,
"verbose": 1,
"mobile": false,
"screenshotType": "png",
"coach": true,
"resultDir": "/sitespeed.io/sitespeed-result/www.google.com/2022-06-30-06-41-10"
}
[2022-06-30 06:41:19] DEBUG: [browsertime] Preparing port 9223 for devtools on Chrome/Edge
[2022-06-30 06:41:19] INFO: [browsertime] Running tests using Chrome - 1 iteration(s)
[2022-06-30 06:41:19] DEBUG: [browsertime.chrome] Setting the following Selenium options: {"map_":{},"options_":{"prefs":{"profile.password_manager_enable":false,"profile.default_content_setting_values.notifications":2,"credentials_enable_service":false},"args":["--no-sandbox","--disable-setuid-sandbox","--disable-gpu","--window-position=0,0","--window-size=1366,708","--host-resolver-rules=\"MAP cache.pack.google.com 127.0.0.1\",\"MAP clients1.google.com 127.0.0.1\",\"MAP update.googleapis.com 127.0.0.1\",\"MAP redirector.gvt1.com 127.0.0.1\",\"MAP laptop-updates.brave.com 127.0.0.1\",\"MAP offlinepages-pa.googleapis.com 127.0.0.1\",\"MAP edge.microsoft.com 127.0.0.1\",\"MAP optimizationguide-pa.googleapis.com 127.0.0.1\"","--ignore-certificate-errors","--disable-background-networking","--no-default-browser-check","--no-first-run","--new-window","--allow-running-insecure-content","--disable-client-side-phishing-detection","--disable-component-update","--disable-default-apps","--disable-device-discovery-notifications","--disable-domain-reliability","--disable-background-timer-throttling","--load-media-router-component-extension=0","--mute-audio","--disable-hang-monitor","--password-store=basic","--disable-breakpad","--dont-require-litepage-redirect-infobar","--override-https-image-compression-infobar","--disable-fetching-hints-at-navigation-start","--disable-dev-shm-usage","--disable-back-forward-cache","--disable-site-isolation-trials","--remote-debugging-port=9223","--disable-features=ChromeWhatsNewUI"],"perfLoggingPrefs":{"enableNetwork":true,"enablePage":true},"excludeSwitches":["enable-automation"]}}
[2022-06-30 06:41:20] INFO: [browsertime.command.measure] Testing url https://www.google.com iteration 1
[...]
it seems to get picked up when I run browsertime directly (vs. when running through sitespeed):
$ docker run --rm sitespeedio/browsertime:16.11.1 --docker -n1 -b chrome --video false -v --preWarmServer https://www.google.com
Google Chrome 103.0.5060.53
Mozilla Firefox 102.0
Microsoft Edge 103.0.1264.37
[2022-06-30 06:48:08] DEBUG: [browsertime] Running with options: {
"scripts": [],
"iterations": 1,
"delay": 0,
"videoParams": {
"framerate": 30,
"crf": 23,
"addTimer": true,
"debug": false,
"keepOriginalVideo": false,
"thumbsize": 400,
"filmstripFullSize": false,
"filmstripQuality": 75,
"createFilmstrip": true,
"nice": 0,
"convert": true,
"threads": 0
},
"_": [
"https://www.google.com"
],
"docker": true,
"n": 1,
"b": "chrome",
"browser": "chrome",
"video": false,
"v": 1,
"verbose": 1,
"preWarmServer": true,
"pre-warm-server": true,
"connectivity": {
"engine": "external",
"profile": "native",
"throttle": {
"localhost": false
}
},
"xvfb": true,
"timeouts": {
"browserStart": 60000,
"browser-start": 60000,
"pageLoad": 300000,
"page-load": 300000,
"script": 120000,
"pageCompleteCheck": 120000,
"page-complete-check": 120000
},
"maxLoadTime": 120000,
"max-load-time": 120000,
"chrome": {
"netLogCaptureMode": "IncludeSensitive",
"net-log-capture-mode": "IncludeSensitive",
"includeResponseBodies": "none",
"include-response-bodies": "none",
"cdp": {
"performance": true
},
"ignoreCertificateErrors": true,
"ignore-certificate-errors": true
},
"firefox": {
"includeResponseBodies": "none",
"include-response-bodies": "none",
"appconstants": false,
"windowRecorder": false,
"window-recorder": false,
"memoryReport": false,
"memory-report": false,
"memoryReportParams": {
"minizeFirst": false
},
"memory-report-params": {
"minize-first": false
},
"geckoProfiler": false,
"gecko-profiler": false,
"geckoProfilerParams": {
"features": "js,stackwalk,leaf",
"threads": "GeckoMain,Compositor,Renderer",
"bufferSize": 13107200
},
"gecko-profiler-params": {
"features": "js,stackwalk,leaf",
"threads": "GeckoMain,Compositor,Renderer",
"buffer-size": 13107200
},
"perfStats": false,
"perf-stats": false,
"perfStatsParams": {
"mask": 4294967295
},
"perf-stats-params": {
"mask": 4294967295
},
"setMozLog": "timestamp,nsHttp:5,cache2:5,nsSocketTransport:5,nsHostResolver:5",
"set-moz-log": "timestamp,nsHttp:5,cache2:5,nsSocketTransport:5,nsHostResolver:5",
"noDefaultPrefs": false,
"no-default-prefs": false,
"disableSafeBrowsing": true,
"disable-safe-browsing": true,
"disableTrackingProtection": true,
"disable-tracking-protection": true
},
"video-params": {
"framerate": 30,
"crf": 23,
"add-timer": true,
"debug": false,
"keep-original-video": false,
"thumbsize": 400,
"filmstrip-full-size": false,
"filmstrip-quality": 75,
"create-filmstrip": true,
"nice": 0,
"convert": true,
"threads": 0
},
"scriptInput": {
"longTask": 50
},
"minLongTaskLength": 50,
"min-long-task-length": 50,
"script-input": {
"long-task": 50
},
"android": false,
"androidRooted": false,
"android-rooted": false,
"androidBatteryTemperatureWaitTimeInSeconds": 120,
"android-battery-temperature-wait-time-in-seconds": 120,
"androidBatteryTemperatureReboot": false,
"android-battery-temperature-reboot": false,
"androidPretestPowerPress": false,
"android-pretest-power-press": false,
"androidVerifyNetwork": false,
"android-verify-network": false,
"processStartTime": false,
"process-start-time": false,
"safari": {
"ios": false,
"useTechnologyPreview": false,
"use-technology-preview": false,
"useSimulator": false,
"use-simulator": false
},
"screenshot": false,
"screenshotLCP": false,
"screenshot-l-c-p": false,
"screenshotLS": false,
"screenshot-l-s": false,
"screenshotParams": {
"type": "jpg",
"png": {
"compressionLevel": 6
},
"jpg": {
"quality": 80
},
"maxSize": 2000
},
"screenshot-params": {
"type": "jpg",
"png": {
"compression-level": 6
},
"jpg": {
"quality": 80
},
"max-size": 2000
},
"pageCompleteWaitTime": 8000,
"page-complete-wait-time": 8000,
"pageCompleteCheckInactivity": false,
"page-complete-check-inactivity": false,
"pageCompleteCheckPollTimeout": 1500,
"page-complete-check-poll-timeout": 1500,
"pageCompleteCheckStartWait": 5000,
"page-complete-check-start-wait": 5000,
"pageLoadStrategy": "none",
"page-load-strategy": "none",
"prettyPrint": false,
"pretty-print": false,
"timeToSettle": 0,
"time-to-settle": 0,
"webdriverPageload": false,
"webdriver-pageload": false,
"c": "native",
"percentiles": [
0,
10,
90,
99,
100
],
"decimals": 0,
"iqr": false,
"cacheClearRaw": false,
"cache-clear-raw": false,
"xvfbParams": {
"display": 99
},
"xvfb-params": {
"display": 99
},
"tcpdump": false,
"tcpdumpPacketBuffered": false,
"tcpdump-packet-buffered": false,
"preURLDelay": 1500,
"warmLoadDealy": 1500,
"warm-load-dealy": 1500,
"pre-u-r-l-delay": 1500,
"headless": false,
"gnirehtet": false,
"flushDNS": false,
"flush-d-n-s": false,
"spa": false,
"browserRestartTries": 3,
"browser-restart-tries": 3,
"preWarmServerWaitTime": 5000,
"pre-warm-server-wait-time": 5000,
"debug": false,
"silent": 0,
"q": 0,
"$0": "/usr/src/app/bin/browsertime.js",
"visualMetrics": true
}
[2022-06-30 06:48:08] DEBUG: [browsertime] Running with options: {
"scripts": [],
"iterations": 1,
"delay": 0,
"videoParams": {},
"browser": "chrome",
"xvfb": true,
"android": false,
"docker": true,
"headless": false
}
[2022-06-30 06:48:08] DEBUG: [browsertime] Preparing port 9222 for devtools on Chrome/Edge
[2022-06-30 06:48:08] INFO: [browsertime] Start pre-testing/warming
[2022-06-30 06:48:08] INFO: [browsertime] Running tests using Chrome - 1 iteration(s)
[2022-06-30 06:48:08] DEBUG: [browsertime.chrome] Setting the following Selenium options: {"map_":{},"options_":{"prefs":{"profile.password_manager_enable":false,"profile.default_content_setting_values.notifications":2,"credentials_enable_service":false},"args":["--no-sandbox","--disable-setuid-sandbox","--disable-gpu","--window-position=0,0","--window-size=1366,768","--host-resolver-rules=\"MAP cache.pack.google.com 127.0.0.1\",\"MAP clients1.google.com 127.0.0.1\",\"MAP update.googleapis.com 127.0.0.1\",\"MAP redirector.gvt1.com 127.0.0.1\",\"MAP laptop-updates.brave.com 127.0.0.1\",\"MAP offlinepages-pa.googleapis.com 127.0.0.1\",\"MAP edge.microsoft.com 127.0.0.1\",\"MAP optimizationguide-pa.googleapis.com 127.0.0.1\"","--disable-background-networking","--no-default-browser-check","--no-first-run","--new-window","--allow-running-insecure-content","--disable-client-side-phishing-detection","--disable-component-update","--disable-default-apps","--disable-device-discovery-notifications","--disable-domain-reliability","--disable-background-timer-throttling","--load-media-router-component-extension=0","--mute-audio","--disable-hang-monitor","--password-store=basic","--disable-breakpad","--dont-require-litepage-redirect-infobar","--override-https-image-compression-infobar","--disable-fetching-hints-at-navigation-start","--disable-dev-shm-usage","--disable-back-forward-cache","--disable-site-isolation-trials","--remote-debugging-port=9222","--disable-features=ChromeWhatsNewUI"],"perfLoggingPrefs":{"enableNetwork":true,"enablePage":true},"excludeSwitches":["enable-automation"]}}
[2022-06-30 06:48:09] INFO: [browsertime.command.measure] Testing url https://www.google.com iteration 1
[2022-06-30 06:48:09] DEBUG: [browsertime] Using window.location to navigate
[2022-06-30 06:48:11] DEBUG: [browsertime] Waiting for script pageCompleteCheck at most 60000 ms
[2022-06-30 06:48:16] DEBUG: [browsertime.command.measure] Stop measuring
[2022-06-30 06:48:16] DEBUG: [browsertime.chrome] Getting performance logs from Chrome
[2022-06-30 06:48:18] INFO: [browsertime] https://www.google.com 12 requests
[2022-06-30 06:48:18] INFO: [browsertime] Pre-testing done, closed the browser.
[2022-06-30 06:48:23] DEBUG: [browsertime] Preparing port 9223 for devtools on Chrome/Edge
[2022-06-30 06:48:23] INFO: [browsertime] Running tests using Chrome - 1 iteration(s)
[2022-06-30 06:48:23] DEBUG: [browsertime.chrome] Setting the following Selenium options: {"map_":{},"options_":{"prefs":{"profile.password_manager_enable":false,"profile.default_content_setting_values.notifications":2,"credentials_enable_service":false},"args":["--no-sandbox","--disable-setuid-sandbox","--disable-gpu","--window-position=0,0","--window-size=1366,768","--host-resolver-rules=\"MAP cache.pack.google.com 127.0.0.1\",\"MAP clients1.google.com 127.0.0.1\",\"MAP update.googleapis.com 127.0.0.1\",\"MAP redirector.gvt1.com 127.0.0.1\",\"MAP laptop-updates.brave.com 127.0.0.1\",\"MAP offlinepages-pa.googleapis.com 127.0.0.1\",\"MAP edge.microsoft.com 127.0.0.1\",\"MAP optimizationguide-pa.googleapis.com 127.0.0.1\"","--ignore-certificate-errors","--disable-background-networking","--no-default-browser-check","--no-first-run","--new-window","--allow-running-insecure-content","--disable-client-side-phishing-detection","--disable-component-update","--disable-default-apps","--disable-device-discovery-notifications","--disable-domain-reliability","--disable-background-timer-throttling","--load-media-router-component-extension=0","--mute-audio","--disable-hang-monitor","--password-store=basic","--disable-breakpad","--dont-require-litepage-redirect-infobar","--override-https-image-compression-infobar","--disable-fetching-hints-at-navigation-start","--disable-dev-shm-usage","--disable-back-forward-cache","--disable-site-isolation-trials","--remote-debugging-port=9223","--disable-features=ChromeWhatsNewUI"],"perfLoggingPrefs":{"enableNetwork":true,"enablePage":true},"excludeSwitches":["enable-automation"]}}
[2022-06-30 06:48:24] INFO: [browsertime.command.measure] Testing url https://www.google.com iteration 1
[...]
oh, I see, sitespeed has it's own version of preWarmServer
in the browsertime plugin (https://github.com/sitespeedio/sitespeed.io/blob/4b9b8f9b4e3d89287872baf33173c068eede35aa/lib/plugins/browsertime/analyzer.js) so your fix to browsertime
has no effect when running sitespeed.
I'm happy to provide a PR - but what's the best way? Is it really copy&paste?
@juckerf ah thanks! I'll did the fix now, hope it works this time :)
@soulgalore Thanks a lot, seems to work now (sitespeed 25.3.2)!
Have you read the documentation?
URL
https://www.google.com
What are you trying to accomplish
I tried to instruct sitespeed to call the URLs under test prior to the actual test with browsertimes
preWarmServer
option. Unfortunately during thepreWarmServer
phase the browser (chrome) fails to start/crashes (see log below).The actual test runs succeed however.
The browsertime engine in the
preWarmServer
function is created with different options (e.g. missing--no-sandbox
) than the engine in the actual test runs. See also the instantiation of the engine with very limited options inpreWarmServer
: https://github.com/sitespeedio/sitespeed.io/blob/3ec707a8bee331bb42b6578d5f9d80c350056e7f/lib/plugins/browsertime/analyzer.js#L24).What browser did you use?
Chrome
How to reproduce
Relevant log output