auto generate config docs when releasing
This commit is contained in:
parent
b810f63adc
commit
8660751ecc
|
|
@ -0,0 +1,89 @@
|
|||
bin/browsertime.js [options] <url>
|
||||
|
||||
timeouts
|
||||
--timeouts.browserStart Timeout when waiting for browser to start, in milliseconds [number] [default: 60000]
|
||||
--timeouts.pageLoad Timeout when waiting for url to load, in milliseconds [number] [default: 300000]
|
||||
--timeouts.script Timeout when running browser scripts, in milliseconds [number] [default: 80000]
|
||||
--timeouts.pageCompleteCheck Timeout when waiting for page to complete loading, in milliseconds [number] [default: 300000]
|
||||
|
||||
chrome
|
||||
--chrome.args Extra command line arguments to pass to the Chrome process (e.g. --no-sandbox). To add multiple arguments to Chrome, repeat --chrome.args once per argument.
|
||||
--chrome.binaryPath Path to custom Chrome binary (e.g. Chrome Canary). On OS X, the path should be to the binary inside the app bundle, e.g. "/Applications/Google Chrome Canary.app/Contents/MacOS/Google Chrome Canary"
|
||||
--chrome.chromedriverPath Path to custom Chromedriver binary. Make sure to use a Chromedriver version that's compatible with the version of Chrome you're using
|
||||
--chrome.mobileEmulation.deviceName Name of device to emulate. Works only standalone (see list in Chrome DevTools, but add phone like 'iPhone 6')
|
||||
--chrome.mobileEmulation.width Width in pixels of emulated mobile screen (e.g. 360) [number]
|
||||
--chrome.mobileEmulation.height Height in pixels of emulated mobile screen (e.g. 640) [number]
|
||||
--chrome.mobileEmulation.pixelRatio Pixel ratio of emulated mobile screen (e.g. 2.0)
|
||||
--chrome.android.package Run Chrome on your Android device. Set to com.android.chrome for default Chrome version. You need to run adb start-server before you start.
|
||||
--chrome.android.deviceSerial Choose which device to use. If you do not set it, first device will be used.
|
||||
--chrome.collectTracingEvents Include Tracing events in the performance log (implies chrome.collectPerfLog). [boolean]
|
||||
--chrome.traceCategories A comma separated list of Tracing event categories to include in the performance log (implies chrome.collectTracingEvents). [string]
|
||||
--chrome.collectPerfLog Collect performance log from Chrome with Page and Network events and save to disk. [boolean]
|
||||
--chrome.collectNetLog Collect network log from Chrome and save to disk. [boolean]
|
||||
|
||||
firefox
|
||||
--firefox.binaryPath Path to custom Firefox binary (e.g. Firefox Nightly). On OS X, the path should be to the binary inside the app bundle, e.g. /Applications/Firefox.app/Contents/MacOS/firefox-bin
|
||||
--firefox.nightly Use Firefox Nightly. Works on OS X. For Linux you need to set the binary path. [boolean]
|
||||
--firefox.beta Use Firefox Beta. Works on OS X. For Linux you need to set the binary path. [boolean]
|
||||
--firefox.developer Use Firefox Developer. Works on OS X. For Linux you need to set the binary path. [boolean]
|
||||
--firefox.preference Extra command line arguments to pass Firefox preferences by the format key:value To add multiple preferences, repeat --firefox.preference once per argument.
|
||||
--firefox.includeResponseBodies Include response bodies in HAR [boolean]
|
||||
|
||||
selenium
|
||||
--selenium.url URL to a running Selenium server (e.g. to run a browser on another machine).
|
||||
|
||||
video
|
||||
--videoParams.framerate Frames per second [default: 30]
|
||||
--videoParams.crf Constant rate factor see https://trac.ffmpeg.org/wiki/Encode/H.264#crf [default: 23]
|
||||
--videoParams.addTimer Add timer and metrics to the video. [boolean] [default: true]
|
||||
--videoParams.keepOriginalVideo [boolean] [default: false]
|
||||
--videoParams.filmstripFullSize Keep original sized screenshots. Will make the run take longer time [boolean] [default: false]
|
||||
--videoParams.filmstripQuality The quality of the filmstrip screenshots. 0-100. [default: 75]
|
||||
--videoParams.createFilmstrip Create filmstrip screenshots. [boolean] [default: true]
|
||||
|
||||
proxy
|
||||
--proxy.http Http proxy (host:port) [string]
|
||||
--proxy.https Https proxy (host:port) [string]
|
||||
|
||||
connectivity
|
||||
--connectivity.profile, -c The connectivity profile. [choices: "3g", "3gfast", "3gslow", "3gem", "2g", "cable", "native", "custom"] [default: "native"]
|
||||
--connectivity.downstreamKbps This option requires --connectivity.profile be set to "custom".
|
||||
--connectivity.upstreamKbps This option requires --connectivity.profile be set to "custom".
|
||||
--connectivity.latency This option requires --connectivity.profile be set to "custom".
|
||||
--connectivity.alias Give your connectivity profile a custom name
|
||||
--connectivity.engine The engine for connectivity. Throttle works on Mac and tc based Linux (it is experimental so please use with care). Use external if you set the connectivity outside of Browsertime. The best way do to this is described in https://github.com/sitespeedio/browsertime#connectivity [choices: "external", "throttle"] [default: "external"]
|
||||
--connectivity.throttle.localhost Add latency/delay on localhost. Perfect for testing with WebPageReplay [boolean] [default: false]
|
||||
|
||||
Options:
|
||||
--video Record a video. Requires FFMpeg to be installed [boolean]
|
||||
--speedIndex Calculate SpeedIndex. Requires FFMpeg and python dependencies [boolean]
|
||||
--browser, -b Specify browser [choices: "chrome", "firefox"] [default: "chrome"]
|
||||
--screenshot Save one screen shot per iteration. [boolean]
|
||||
--pageCompleteCheck Supply a Javascript that decides when the browser is finished loading the page and can start to collect metrics. The Javascript snippet is repeatedly queried to see if page has completed loading (indicated by the script returning true). Use it to fetch timings happening after the loadEventEnd.
|
||||
--iterations, -n Number of times to test the url (restarting the browser between each test) [number] [default: 3]
|
||||
--prettyPrint Enable to print json/har with spaces and indentation. Larger files, but easier on the eye. [boolean] [default: false]
|
||||
--delay Delay between runs, in milliseconds [number] [default: 0]
|
||||
--requestheader, -r Request header that will be added to the request. Add multiple instances to add multiple request headers.
|
||||
--block Domain to block. Add multiple instances to add multiple domains that will be blocked.
|
||||
--cacheClearRaw Use internal browser functionality to clear browser cache between runs instead of only using Selenium. [boolean] [default: false]
|
||||
--basicAuth Use it if your server is behind Basic Auth. Format: username@password (Only Chrome at the moment).
|
||||
--preScript Selenium script(s) to run before you test your URL (use it for login, warm the cache, etc). Note that --preScript can be passed multiple times.
|
||||
--postScript Selenium script(s) to run after you test your URL (use it for logout etc). Note that --postScript can be passed multiple times.
|
||||
--script Add custom Javascript to run after the page has finished loading to collect metrics. If a single js file is specified, it will be included in the category named "custom" in the output json. Pass a folder to include all .js scripts in the folder, and have the folder name be the category. Note that --script can be passed multiple times.
|
||||
--userAgent Override user agent
|
||||
--silent, -q Only output info in the logs, not to the console. Enter twice to suppress summary line. [count]
|
||||
--output, -o Specify file name for Browsertime data (ex: 'browsertime'). Unless specified, file will be named browsertime.json
|
||||
--har Specify file name for .har file (ex: 'browsertime'). Unless specified, file will be named browsertime.har
|
||||
--skipHar Pass --skipHar to not collect a HAR file. [boolean]
|
||||
--config Path to JSON config file
|
||||
--viewPort Size of browser window WIDTHxHEIGHT or "maximize". Note that "maximize" is ignored for xvfb.
|
||||
--resultDir Set result directory for the files produced by Browsertime
|
||||
--xvfb Start xvfb before the browser is started [boolean] [default: false]
|
||||
--xvfbParams.display The display used for xvfb [default: 99]
|
||||
--preURL A URL that will be accessed first by the browser before the URL that you wanna analyze. Use it to fill the cache.
|
||||
--preURLDelay Delay between preURL and the URL you want to test (in milliseconds) [default: 1500]
|
||||
--userTimingWhitelist All userTimings are captured by default this option takes a regex that will whitelist which userTimings to capture in the results.
|
||||
--headless Run the browser in headless mode. Needs Firefox Nightly or latest Chrome. [boolean] [default: false]
|
||||
-h, --help Show help [boolean]
|
||||
-V, --version Show version number [boolean]
|
||||
|
||||
|
|
@ -144,83 +144,5 @@ browsertime --browsertime.chrome.android.package com.android.chrome https://www.
|
|||
Run <code>$ bin/browsertime.js --help</code> and you can see the configuration options:
|
||||
|
||||
~~~help
|
||||
browsertime [options] <url>
|
||||
|
||||
timeouts
|
||||
--timeouts.browserStart Timeout when waiting for browser to start, in milliseconds [number] [default: 60000]
|
||||
--timeouts.pageLoad Timeout when waiting for url to load, in milliseconds [number] [default: 300000]
|
||||
--timeouts.script Timeout when running browser scripts, in milliseconds [number] [default: 80000]
|
||||
--timeouts.pageCompleteCheck Timeout when waiting for page to complete loading, in milliseconds [number] [default: 300000]
|
||||
|
||||
chrome
|
||||
--chrome.args Extra command line arguments to pass to the Chrome process (e.g. --no-sandbox). To add multiple arguments to Chrome, repeat --chrome.args once per
|
||||
argument.
|
||||
--chrome.binaryPath Path to custom Chrome binary (e.g. Chrome Canary). On OS X, the path should be to the binary inside the app bundle, e.g. /Applications/Google Chrome
|
||||
Canary.app/Contents/MacOS/Google Chrome Canary
|
||||
--chrome.chromedriverPath Path to custom Chromedriver binary. Make sure to use a Chromedriver version that's compatible with the version of Chrome you're using
|
||||
--chrome.mobileEmulation.deviceName Name of device to emulate. Works only standalone (see list in Chrome DevTools, but add company like 'Apple iPhone 6')
|
||||
--chrome.mobileEmulation.width Width in pixels of emulated mobile screen (e.g. 360) [number]
|
||||
--chrome.mobileEmulation.height Height in pixels of emulated mobile screen (e.g. 640) [number]
|
||||
--chrome.mobileEmulation.pixelRatio Pixel ratio of emulated mobile screen (e.g. 2.0)
|
||||
--chrome.android.package Run Chrome on your Android device. Set to com.android.chrome for default Chrome version. You need to run adb start-server before you start.
|
||||
--chrome.android.deviceSerial Choose which device to use. If you do not set it, first device will be used.
|
||||
--chrome.collectTracingEvents Include Tracing events in the performance log (implies chrome.collectPerfLog). [boolean]
|
||||
--chrome.traceCategories A comma separated list of Tracing event categories to include in the performance log (implies chrome.collectTracingEvents). [string]
|
||||
--chrome.collectPerfLog Collect performance log from Chrome with Page and Network events and save to disk. [boolean]
|
||||
--chrome.collectNetLog Collect network log from Chrome and save to disk. [boolean]
|
||||
|
||||
firefox
|
||||
--firefox.binaryPath Path to custom Firefox binary (e.g. Firefox Nightly). On OS X, the path should be to the binary inside the app bundle, e.g.
|
||||
/Applications/Firefox.app/Contents/MacOS/firefox-bin
|
||||
--firefox.preference Extra command line arguments to pass Firefox preferences by the format key:value To add multiple preferences, repeat --firefox.preference once per
|
||||
argument.
|
||||
--firefox.includeResponseBodies Include response bodies in HAR [boolean]
|
||||
|
||||
selenium
|
||||
--selenium.url URL to a running Selenium server (e.g. to run a browser on another machine).
|
||||
|
||||
proxy
|
||||
--proxy.http Http proxy (host:port) [string]
|
||||
--proxy.https Https proxy (host:port) [string]
|
||||
|
||||
connectivity
|
||||
--connectivity.profile, -c The connectivity profile. [choices: "3g", "3gfast", "3gslow", "3gem", "2g", "cable", "native", "custom"] [default: "native"]
|
||||
--connectivity.downstreamKbps This option requires --connectivity.profile be set to "custom".
|
||||
--connectivity.upstreamKbps This option requires --connectivity.profile be set to "custom".
|
||||
--connectivity.latency This option requires --connectivity.profile be set to "custom".
|
||||
--connectivity.alias Give your connectivity profile a custom name
|
||||
--connectivity.tc.device The connectivity device. Used for engine tc. [default: "eth0"]
|
||||
--connectivity.engine The engine for connectivity. TC (Linux Traffic Control) needs tc work but will only setup upload and latency. Use external if you set the connectivity
|
||||
outside of Browsertime. The best way do to this is described in https://github.com/sitespeedio/browsertime#connectivity
|
||||
[choices: "tc", "external"] [default: "external"]
|
||||
|
||||
Options:
|
||||
--video Record a video. Requires FFMpeg to be installed [boolean]
|
||||
--videoRaw Do not add timer and metrics to the video [boolean]
|
||||
--speedIndex Calculate SpeedIndex. Requires FFMpeg and python dependencies [boolean]
|
||||
--browser, -b Specify browser [choices: "chrome", "firefox"] [default: "chrome"]
|
||||
--screenshot Save one screen shot per iteration. [boolean]
|
||||
--pageCompleteCheck Supply a Javascript that decides when the browser is finished loading the page and can start to collect metrics. The Javascript snippet is repeatedly queried to
|
||||
see if page has completed loading (indicated by the script returning true). Use it to fetch timings happening after the loadEventEnd.
|
||||
--iterations, -n Number of times to test the url (restarting the browser between each test) [number] [default: 3]
|
||||
--prettyPrint Enable to print json/har with spaces and indentation. Larger files, but easier on the eye. [boolean] [default: false]
|
||||
--delay Delay between runs, in milliseconds [number] [default: 0]
|
||||
--preScript Selenium script(s) to run before you test your URL (use it for login, warm the cache, etc). Note that --preScript can be passed multiple times.
|
||||
--postScript Selenium script(s) to run after you test your URL (use it for logout etc). Note that --postScript can be passed multiple times.
|
||||
--script Add custom Javascript to run after the page has finished loading to collect metrics. If a single js file is specified, it will be included in the category named
|
||||
"custom" in the output json. Pass a folder to include all .js scripts in the folder, and have the folder name be the category. Note that --script can be passed
|
||||
multiple times.
|
||||
--userAgent Override user agent
|
||||
--silent, -q Only output info in the logs, not to the console. Enter twice to suppress summary line. [count]
|
||||
--output, -o Specify file name for Browsertime data (ex: 'browsertime'). Unless specified, file will be named browsertime.json
|
||||
--har Specify file name for .har file (ex: 'browsertime'). Unless specified, file will be named browsertime.har
|
||||
--skipHar Pass --skipHar to not collect a HAR file. [boolean]
|
||||
--config Path to JSON config file
|
||||
--viewPort Size of browser window WIDTHxHEIGHT or "maximize". Note that "maximize" is ignored for xvfb.
|
||||
--resultDir Set result directory for the files produced by Browsertime
|
||||
--xvfb Start xvfb before the browser is started [boolean] [default: false]
|
||||
--preURL A URL that will be accessed first by the browser before the URL that you wanna analyze. Use it to fill the cache.
|
||||
--userTimingWhitelist All userTimings are captured by default this option takes a regex that will whitelist which userTimings to capture in the results.
|
||||
-h, --help Show help [boolean]
|
||||
-V, --version Show version number [boolean]
|
||||
{% include_relative config.md %}
|
||||
~~~
|
||||
|
|
|
|||
|
|
@ -0,0 +1,135 @@
|
|||
bin/sitespeed.js [options] <url>/<file>
|
||||
|
||||
Browser
|
||||
--browsertime.browser, -b, --browser Choose which Browser to use when you test. [choices: "chrome", "firefox"] [default: "chrome"]
|
||||
--browsertime.iterations, -n How many times you want to test each page [default: 3]
|
||||
--browsertime.connectivity.profile, -c, --connectivity The connectivity profile. [choices: "3g", "3gfast", "3gslow", "3gem", "2g", "cable", "native", "custom"] [default: "native"]
|
||||
--browsertime.connectivity.downstreamKbps, --downstreamKbps This option requires --connectivity be set to "custom".
|
||||
--browsertime.connectivity.upstreamKbps, --upstreamKbps This option requires --connectivity be set to "custom".
|
||||
--browsertime.connectivity.latency, --latency This option requires --connectivity be set to "custom".
|
||||
--browsertime.connectivity.tsproxy.port The port used for TSProxy [default: 1080]
|
||||
--browsertime.connectivity.engine The engine for connectivity. TC (Linux Traffic Control) needs tc work but will only setup upload and latency. Use external if you set the connectivity outside of Browsertime. The best way do to this is described in https://github.com/sitespeedio/browsertime#connectivity [choices: "tc", "tsproxy", "external"] [default: "external"]
|
||||
--browsertime.pageCompleteCheck Supply a Javascript that decides when the browser is finished loading the page and can start to collect metrics. The Javascript snippet is repeatedly queried to see if page has completed loading (indicated by the script returning true). Use it to fetch timings happening after the loadEventEnd.
|
||||
--browsertime.script, --script Add custom Javascript that collect metrics and run after the page has finished loading. Note that --script can be passed multiple times if you want to collect multiple metrics. The metrics will automatically be pushed to the summary/detailed summary and each individual page + sent to Graphite/InfluxDB.
|
||||
--browsertime.selenium.url Configure the path to the Selenium server when fetching timings using browsers. If not configured the supplied NodeJS/Selenium version is used.
|
||||
--browsertime.viewPort The browser view port size WidthxHeight like 400x300 [default: "1366x708"]
|
||||
--browsertime.userAgent The full User Agent string, defaults to the User Agent used by the browsertime.browser option.
|
||||
--browsertime.preScript, --preScript Selenium script(s) to run before you test your URL (use it for login, warm the cache, etc). Note that --preScript can be passed multiple times.
|
||||
--browsertime.postScript, --postScript Selenium script(s) to run after you test your URL (use it for logout etc). Note that --postScript can be passed multiple times.
|
||||
--browsertime.delay Delay between runs, in milliseconds. Use it if your web server needs to rest between runs :)
|
||||
--browsertime.speedIndex, --speedIndex Calculate SpeedIndex. Requires FFMpeg and python dependencies [boolean]
|
||||
--browsertime.video, --video Record a video. Requires FFMpeg to be installed [boolean]
|
||||
--browsertime.preURL, --preURL A URL that will be accessed first by the browser before the URL that you wanna analyze. Use it to fill the cache.
|
||||
--browsertime.userTimingWhitelist, --userTimingWhitelist This option takes a regex that will whitelist which userTimings to capture in the results. All userTimings are captured by default. T
|
||||
--browsertime.firefox.preference Extra command line arguments to pass Firefox preferences by the format key:value To add multiple preferences, repeat --browsertime.firefox.preference once per argument.
|
||||
--browsertime.firefox.includeResponseBodies Include response bodies in HAR when using Firefox. [boolean]
|
||||
--browsertime.chrome.args Extra command line arguments to pass to the Chrome process (e.g. --no-sandbox). To add multiple arguments to Chrome, repeat --browsertime.chrome.args once per argument.
|
||||
--browsertime.chrome.collectTracingEvents Collect Chromes traceCategories [boolean]
|
||||
--browsertime.chrome.android.package Run Chrome on your Android device. Set to com.android.chrome for default Chrome version. You need to run adb start-server before you start.
|
||||
--browsertime.chrome.android.deviceSerial Choose which device to use. If you do not set it, the first found device will be used.
|
||||
--browsertime.chrome.collectNetLog Collect network log from Chrome and save to disk. [boolean]
|
||||
--browsertime.chrome.traceCategories Set the trace categories. [string]
|
||||
--browsertime.requestheader, -r Request header that will be added to the request. Add multiple instances to add multiple request headers.
|
||||
--browsertime.block Domain to block. Add multiple instances to add multiple domains that will be blocked.
|
||||
--browsertime.basicAuth, --basicAuth Use it if your server is behind Basic Auth. Format: username@password.
|
||||
|
||||
proxy
|
||||
--browsertime.proxy.http Http proxy (host:port) [string]
|
||||
--browsertime.proxy.https Https proxy (host:port) [string]
|
||||
|
||||
Crawler
|
||||
--crawler.depth, -d How deep to crawl (1=only one page, 2=include links from first page, etc.)
|
||||
--crawler.maxPages, -m The max number of pages to test. Default is no limit.
|
||||
|
||||
Graphite
|
||||
--graphite.host The Graphite host used to store captured metrics.
|
||||
--graphite.port The Graphite port used to store captured metrics. [default: 2003]
|
||||
--graphite.auth The Graphite user and password used for authentication. Format: user:password
|
||||
--graphite.httpPort The Graphite port used to access the user interface and send annotations event [default: 8080]
|
||||
--graphite.webHost The graphite-web host. If not specified graphite.host will be used.
|
||||
--graphite.namespace The namespace key added to all captured metrics. [default: "sitespeed_io.default"]
|
||||
--graphite.includeQueryParams Whether to include query parameters from the URL in the Graphite keys or not [boolean] [default: false]
|
||||
--graphite.arrayTags Send the tags as Array or a String. In Graphite 1.0 the tags is a array. Before a String [boolean] [default: true]
|
||||
|
||||
Plugins
|
||||
--plugins.list List all configured plugins in the log. [boolean]
|
||||
--plugins.disable Disable a plugin. Use it to disable generating html or screenshots. [array]
|
||||
--plugins.load Extra plugins that you want to run. Relative or absolute path to the plugin. [array]
|
||||
|
||||
Budget
|
||||
--budget.configPath Path to the JSON budget file.
|
||||
--budget.config The JSON budget config as a string.
|
||||
--budget.output The output format of the budget. [choices: "junit", "tap"]
|
||||
|
||||
InfluxDB
|
||||
--influxdb.protocol The protocol used to store connect to the InfluxDB host. [default: "http"]
|
||||
--influxdb.host The InfluxDB host used to store captured metrics.
|
||||
--influxdb.port The InfluxDB port used to store captured metrics. [default: 8086]
|
||||
--influxdb.username The InfluxDB username for your InfluxDB instance.
|
||||
--influxdb.password The InfluxDB password for your InfluxDB instance.
|
||||
--influxdb.database The database name used to store captured metrics. [default: "sitespeed"]
|
||||
--influxdb.tags A comma separated list of tags and values added to each metric [default: "category=default"]
|
||||
--influxdb.includeQueryParams Whether to include query parameters from the URL in the InfluxDB keys or not [boolean] [default: false]
|
||||
|
||||
Metrics
|
||||
--metrics.list List all possible metrics in the data folder (metrics.txt). [boolean] [default: false]
|
||||
--metrics.filterList List all configured filters for metrics in the data folder (configuredMetrics.txt) [boolean] [default: false]
|
||||
--metrics.filter Add/change/remove filters for metrics. If you want to send all metrics, use: *+ . If you want to remove all current metrics and send only the coach score: *- coach.summary.score.* [array]
|
||||
|
||||
WebPageTest
|
||||
--webpagetest.host The domain of your WebPageTest instance. [default: "https://www.webpagetest.org"]
|
||||
--webpagetest.key The API key for you WebPageTest instance.
|
||||
--webpagetest.location The location for the test [default: "Dulles:Chrome"]
|
||||
--webpagetest.connectivity The connectivity for the test. [default: "Cable"]
|
||||
--webpagetest.runs The number of runs per URL. [default: 3]
|
||||
--webpagetest.custom Execute arbitrary Javascript at the end of a test to collect custom metrics.
|
||||
--webpagetest.file Path to a script file
|
||||
--webpagetest.script The WebPageTest script as a string.
|
||||
--webpagetest.includeRepeatView Do repeat or single views [boolean] [default: false]
|
||||
--webpagetest.private Wanna keep the runs private or not [boolean] [default: true]
|
||||
|
||||
gpsi
|
||||
--gpsi.key The key to use Google Page Speed Insight
|
||||
|
||||
Slack
|
||||
--slack.hookUrl WebHook url for the Slack team (check https://<your team>.slack.com/apps/manage/custom-integrations).
|
||||
--slack.userName User name to use when posting status to Slack. [default: "Sitespeed.io"]
|
||||
--slack.channel The slack channel without the # (if something else than the default channel for your hook).
|
||||
--slack.type Send summary for a run, metrics from all URLs, only on errors or all to Slack. [choices: "summary", "url", "error", "all"] [default: "all"]
|
||||
--slack.limitWarning The limit to get a warning in Slack using the limitMetric [default: 90]
|
||||
--slack.limitError The limit to get a error in Slack using the limitMetric [default: 80]
|
||||
--slack.limitMetric The metric that will be used to set warning/error [choices: "coachScore", "speedIndex", "firstVisualChange"] [default: "coachScore"]
|
||||
|
||||
s3
|
||||
--s3.key The S3 key
|
||||
--s3.secret The S3 secret
|
||||
--s3.bucketname Name of the S3 bucket
|
||||
--s3.path Override the default folder path in the bucket where the results are uploaded. By default it's "DOMAIN_OR_FILENAME/TIMESTAMP", or the name of the folder if --outputFolder is specified.
|
||||
--s3.region The S3 region. Optional depending on your settings.
|
||||
--s3.removeLocalResult Remove all the local result files after they have been uploaded to S3 [boolean] [default: false]
|
||||
|
||||
HTML
|
||||
--html.showAllWaterfallSummary Set to true to show all waterfalls on page summary HTML report [boolean] [default: false]
|
||||
--html.fetchHARFiles Set to true to load HAR files using fetch instead of including them in the HTML. Turn this on if serve your pages using a server. [boolean] [default: false]
|
||||
--html.logDownloadLink Adds a link in the HTML so you easily can download the logs from the sitespeed.io run. If your server is public, be careful so you don't log passwords etc [boolean] [default: false]
|
||||
--html.topListSize Maximum number of assets to include in each toplist in the toplist tab [default: 10]
|
||||
|
||||
text
|
||||
--summary Show brief text summary to stdout [boolean] [default: false]
|
||||
--summary-detail Show longer text summary to stdout [boolean] [default: false]
|
||||
|
||||
Options:
|
||||
--version, -V Show version number [boolean]
|
||||
--debug Debug mode logs all internal messages to the console. [boolean] [default: false]
|
||||
--verbose, -v Verbose mode prints progress messages to the console. Enter up to three times (-vvv) to increase the level of detail. [count]
|
||||
--mobile Access pages as mobile a fake mobile device. Set UA and width/height. For Chrome it will use device Apple iPhone 6. [boolean] [default: false]
|
||||
--resultBaseURL The base URL to the server serving the HTML result. In the format of https://result.sitespeed.io
|
||||
--gzipHAR Compress the HAR files with GZIP. [boolean] [default: false]
|
||||
--outputFolder The folder where the result will be stored.
|
||||
--firstParty A regex running against each request and categorize it as first vs third party URL. (ex: ".*sitespeed.*")
|
||||
--utc Use Coordinated Universal Time for timestamps [boolean] [default: false]
|
||||
--config Path to JSON config file
|
||||
--help, -h Show help [boolean]
|
||||
|
||||
Read the docs at https://www.sitespeed.io/documentation/sitespeed.io/
|
||||
|
||||
|
|
@ -22,162 +22,7 @@ Sitespeed.io is highly configurable, let's check it out!
|
|||
You have the following options when running sitespeed.io within docker (run <code>docker run sitespeedio/sitespeed.io --help</code> to get the list on your command line):
|
||||
|
||||
~~~help
|
||||
bin/sitespeed.js [options] <url>/<file>
|
||||
|
||||
Browser
|
||||
--browsertime.browser, -b, --browser Choose which Browser to use when you test. [choices: "chrome", "firefox"] [default: "chrome"]
|
||||
--browsertime.iterations, -n How many times you want to test each page [default: 3]
|
||||
--browsertime.connectivity.profile, -c, --connectivity The connectivity profile.
|
||||
[choices: "3g", "3gfast", "3gslow", "3gem", "2g", "cable", "native", "custom"] [default: "native"]
|
||||
--browsertime.connectivity.downstreamKbps, --downstreamKbps This option requires --connectivity be set to "custom".
|
||||
--browsertime.connectivity.upstreamKbps, --upstreamKbps This option requires --connectivity be set to "custom".
|
||||
--browsertime.connectivity.latency, --latency This option requires --connectivity be set to "custom".
|
||||
--browsertime.connectivity.tsproxy.port The port used for TSProxy [default: 1080]
|
||||
--browsertime.connectivity.engine The engine for connectivity. TC (Linux Traffic Control) needs tc work but will only setup upload and latency.
|
||||
Use external if you set the connectivity outside of Browsertime. The best way do to this is described in
|
||||
https://github.com/sitespeedio/browsertime#connectivity
|
||||
[choices: "tc", "tsproxy", "external"] [default: "external"]
|
||||
--browsertime.pageCompleteCheck Supply a Javascript that decides when the browser is finished loading the page and can start to collect
|
||||
metrics. The Javascript snippet is repeatedly queried to see if page has completed loading (indicated by the
|
||||
script returning true). Use it to fetch timings happening after the loadEventEnd.
|
||||
--browsertime.script, --script Add custom Javascript that collect metrics and run after the page has finished loading. Note that --script can
|
||||
be passed multiple times if you want to collect multiple metrics. The metrics will automatically be pushed to
|
||||
the summary/detailed summary and each individual page + sent to Graphite/InfluxDB.
|
||||
--browsertime.selenium.url Configure the path to the Selenium server when fetching timings using browsers. If not configured the supplied
|
||||
NodeJS/Selenium version is used.
|
||||
--browsertime.viewPort The browser view port size WidthxHeight like 400x300 [default: "1366x708"]
|
||||
--browsertime.userAgent The full User Agent string, defaults to the User Agent used by the browsertime.browser option.
|
||||
--browsertime.preScript, --preScript Selenium script(s) to run before you test your URL (use it for login, warm the cache, etc). Note that
|
||||
--preScript can be passed multiple times.
|
||||
--browsertime.postScript, --postScript Selenium script(s) to run after you test your URL (use it for logout etc). Note that --postScript can be passed
|
||||
multiple times.
|
||||
--browsertime.delay Delay between runs, in milliseconds. Use it if your web server needs to rest between runs :)
|
||||
--browsertime.speedIndex, --speedIndex Calculate SpeedIndex. Requires FFMpeg and python dependencies [boolean]
|
||||
--browsertime.video, --video Record a video. Requires FFMpeg to be installed [boolean]
|
||||
--browsertime.preURL, --preURL A URL that will be accessed first by the browser before the URL that you wanna analyze. Use it to fill the
|
||||
cache.
|
||||
--browsertime.userTimingWhitelist, --userTimingWhitelist This option takes a regex that will whitelist which userTimings to capture in the results. All userTimings are
|
||||
captured by default. T
|
||||
--browsertime.firefox.preference Extra command line arguments to pass Firefox preferences by the format key:value To add multiple preferences,
|
||||
repeat --browsertime.firefox.preference once per argument.
|
||||
--browsertime.firefox.includeResponseBodies Include response bodies in HAR when using Firefox. [boolean]
|
||||
--browsertime.chrome.args Extra command line arguments to pass to the Chrome process (e.g. --no-sandbox). To add multiple arguments to
|
||||
Chrome, repeat --browsertime.chrome.args once per argument.
|
||||
--browsertime.chrome.collectTracingEvents Collect Chromes traceCategories [boolean]
|
||||
--browsertime.chrome.android.package Run Chrome on your Android device. Set to com.android.chrome for default Chrome version. You need to run adb
|
||||
start-server before you start.
|
||||
--browsertime.chrome.android.deviceSerial Choose which device to use. If you do not set it, the first found device will be used.
|
||||
--browsertime.chrome.collectNetLog Collect network log from Chrome and save to disk. [boolean]
|
||||
--browsertime.chrome.traceCategories Set the trace categories. [string]
|
||||
--browsertime.requestheader, -r Request header that will be added to the request. Add multiple instances to add multiple request headers. Only
|
||||
Chrome support for now.
|
||||
--browsertime.block Domain to block. Add multiple instances to add multiple domains that will be blocked. Only Chrome support for
|
||||
now.
|
||||
--browsertime.basicAuth, --basicAuth Use it if your server is behind Basic Auth. Format: username@password (Only Chrome at the moment).
|
||||
|
||||
proxy
|
||||
--browsertime.proxy.http Http proxy (host:port) [string]
|
||||
--browsertime.proxy.https Https proxy (host:port) [string]
|
||||
|
||||
Crawler
|
||||
--crawler.depth, -d How deep to crawl (1=only one page, 2=include links from first page, etc.)
|
||||
--crawler.maxPages, -m The max number of pages to test. Default is no limit.
|
||||
|
||||
Graphite
|
||||
--graphite.host The Graphite host used to store captured metrics.
|
||||
--graphite.port The Graphite port used to store captured metrics. [default: 2003]
|
||||
--graphite.auth The Graphite user and password used for authentication. Format: user:password
|
||||
--graphite.httpPort The Graphite port used to access the user interface and send annotations event [default: 8080]
|
||||
--graphite.webHost The graphite-web host. If not specified graphite.host will be used.
|
||||
--graphite.namespace The namespace key added to all captured metrics. [default: "sitespeed_io.default"]
|
||||
--graphite.includeQueryParams Whether to include query parameters from the URL in the Graphite keys or not [boolean] [default: false]
|
||||
--graphite.arrayTags Send the tags as array or a string. In Graphite 1.0 the tags is a array. [boolean] [default: false]
|
||||
|
||||
Plugins
|
||||
--plugins.list List all configured plugins in the log. [boolean]
|
||||
--plugins.disable Disable a plugin. Use it to disable generating html or screenshots. [array]
|
||||
--plugins.load Extra plugins that you want to run. Relative or absolute path to the plugin. [array]
|
||||
|
||||
Budget
|
||||
--budget.configPath Path to the JSON budget file.
|
||||
--budget.config The JSON budget config as a string.
|
||||
--budget.output The output format of the budget. [choices: "junit", "tap"]
|
||||
|
||||
InfluxDB
|
||||
--influxdb.protocol The protocol used to store connect to the InfluxDB host. [default: "http"]
|
||||
--influxdb.host The InfluxDB host used to store captured metrics.
|
||||
--influxdb.port The InfluxDB port used to store captured metrics. [default: 8086]
|
||||
--influxdb.username The InfluxDB username for your InfluxDB instance.
|
||||
--influxdb.password The InfluxDB password for your InfluxDB instance.
|
||||
--influxdb.database The database name used to store captured metrics. [default: "sitespeed"]
|
||||
--influxdb.tags A comma separated list of tags and values added to each metric [default: "category=default"]
|
||||
--influxdb.includeQueryParams Whether to include query parameters from the URL in the InfluxDB keys or not [boolean] [default: false]
|
||||
|
||||
Metrics
|
||||
--metrics.list List all possible metrics in the data folder (metrics.txt). [boolean] [default: false]
|
||||
--metrics.filterList List all configured filters for metrics in the data folder (configuredMetrics.txt) [boolean] [default: false]
|
||||
--metrics.filter Add/change/remove filters for metrics. If you want to send all metrics, use: *+ . If you want to remove all current metrics and send only the coach
|
||||
score: *- coach.summary.score.* [array]
|
||||
|
||||
WebPageTest
|
||||
--webpagetest.host The domain of your WebPageTest instance. [default: "https://www.webpagetest.org"]
|
||||
--webpagetest.key The API key for you WebPageTest instance.
|
||||
--webpagetest.location The location for the test [default: "Dulles:Chrome"]
|
||||
--webpagetest.connectivity The connectivity for the test. [default: "Cable"]
|
||||
--webpagetest.runs The number of runs per URL. [default: 3]
|
||||
--webpagetest.custom Execute arbitrary Javascript at the end of a test to collect custom metrics.
|
||||
--webpagetest.file Path to a script file
|
||||
--webpagetest.script The WebPageTest script as a string.
|
||||
--webpagetest.includeRepeatView Do repeat or single views [boolean] [default: false]
|
||||
--webpagetest.private Wanna keep the runs private or not [boolean] [default: true]
|
||||
|
||||
gpsi
|
||||
--gpsi.key The key to use Google Page Speed Insight
|
||||
|
||||
Slack
|
||||
--slack.hookUrl WebHook url for the Slack team (check https://<your team>.slack.com/apps/manage/custom-integrations).
|
||||
--slack.userName User name to use when posting status to Slack. [default: "Sitespeed.io"]
|
||||
--slack.channel The slack channel without the # (if something else than the default channel for your hook).
|
||||
--slack.type Send summary for a run, metrics from all URLs, only on errors or all to Slack. [choices: "summary", "url", "error", "all"] [default: "all"]
|
||||
--slack.limitWarning The limit to get a warning in Slack using the limitMetric [default: 90]
|
||||
--slack.limitError The limit to get a error in Slack using the limitMetric [default: 80]
|
||||
--slack.limitMetric The metric that will be used to set warning/error [choices: "coachScore", "speedIndex", "firstVisualChange"] [default: "coachScore"]
|
||||
|
||||
s3
|
||||
--s3.key The S3 key
|
||||
--s3.secret The S3 secret
|
||||
--s3.bucketname Name of the S3 bucket
|
||||
--s3.path Override the default folder path in the bucket where the results are uploaded. By default it's "DOMAIN_OR_FILENAME/TIMESTAMP", or the name of the
|
||||
folder if --outputFolder is specified.
|
||||
--s3.region The S3 region. Optional depending on your settings.
|
||||
--s3.removeLocalResult Remove all the local result files after they have been uploaded to S3 [boolean] [default: false]
|
||||
|
||||
HTML
|
||||
--html.showAllWaterfallSummary Set to true to show all waterfalls on page summary HTML report [boolean] [default: false]
|
||||
--html.fetchHARFiles Set to true to load HAR files using fetch instead of including them in the HTML. Turn this on if serve your pages using a server.
|
||||
[boolean] [default: false]
|
||||
--html.logDownloadLink Adds a link in the HTML so you easily can download the logs from the sitespeed.io run. If your server is public, be careful so you don't log
|
||||
passwords etc [boolean] [default: false]
|
||||
--html.topListSize Maximum number of assets to include in each toplist in the toplist tab [default: 10]
|
||||
|
||||
text
|
||||
--summary Show brief text summary to stdout [boolean] [default: false]
|
||||
--summary-detail Show longer text summary to stdout [boolean] [default: false]
|
||||
|
||||
Options:
|
||||
--version, -V Show version number [boolean]
|
||||
--debug Debug mode logs all internal messages to the console. [boolean] [default: false]
|
||||
--verbose, -v Verbose mode prints progress messages to the console. Enter up to three times (-vvv) to increase the level of detail. [count]
|
||||
--mobile Access pages as mobile a fake mobile device. Set UA and width/height. For Chrome it will use device Apple iPhone 6. [boolean] [default: false]
|
||||
--resultBaseURL The base URL to the server serving the HTML result. In the format of https://result.sitespeed.io
|
||||
--gzipHAR Compress the HAR files with GZIP. [boolean] [default: false]
|
||||
--outputFolder The folder where the result will be stored.
|
||||
--firstParty A regex running against each request and categorize it as first vs third party URL. (ex: ".*sitespeed.*")
|
||||
--utc Use Coordinated Universal Time for timestamps [boolean] [default: false]
|
||||
--config Path to JSON config file
|
||||
--help, -h Show help [boolean]
|
||||
|
||||
Read the docs at https://www.sitespeed.io/documentation/sitespeed.io/
|
||||
{% include_relative config.md %}
|
||||
~~~
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,8 @@ set -e
|
|||
# Remove the local sitespeed-result dir and node modules to start clean
|
||||
rm -fR sitespeed-result node_modules
|
||||
|
||||
bin/sitespeed.js --help >> docs/documentation/sitespeed.io/configuration/config.md
|
||||
|
||||
# login early
|
||||
docker login
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue