Skip to main content
Version: 2.0 (Preview)

How-to Guides

For Docker, run the commands in the container.

Set Up a New Fleet of Probes​

  1. In the dashboard, create a measurement config and a schedule config, and publish them.
  2. Mark the schedule config as a template, and give it a client tag, such as fleet-a.
  3. Create a registration key that can be used multiple times.
  4. Install each probe with the setup script and register it with this tag, for example by running surfmeter auth tags set fleet-a after the installation.

Each new probe then gets its configuration from the template, within 15 minutes.

Measure the Quality of Netflix Streams​

Netflix requires an amd64 machine, since it needs DRM support.

  1. Add a study with "type": "VIDEO" and "subject": "netflix_trailer" to your measurement config. See the Public Config Reference for details.

    {
    "id": "STUDY_NETFLIX_TRAILER",
    "type": "VIDEO",
    "subject": "netflix_trailer",
    "params": {
    "duration": 120,
    "timeout": 60,
    "video": {
    "src": "https://www.netflix.com/tudum/videos/part-1-and-2-recap-money-heist",
    "contentType": "trailer"
    },
    "playMode": "normal"
    }
    }
  2. Run the study, or add it to a schedule:

    surfmeter config update
    surfmeter study start --studyId STUDY_NETFLIX_TRAILER

Run a Video Study and Speed Test in Parallel​

Provide --studyId multiple times:

surfmeter study start --studyId STUDY_YOUTUBE --studyId STUDY_FASTCOM

To schedule this, use a list in the schedule entry:

{
"id": "video-and-speedtest",
"studyId": ["STUDY_YOUTUBE", "STUDY_FASTCOM"],
"schedule": "0 * * * *"
}

Run Studies Repeatedly in Sequence​

Use a list of studies with sequential, and an interval. This starts the next round 10 minutes after the previous one has ended:

{
"id": "round",
"studyId": ["STUDY_DNS", "STUDY_YOUTUBE", "STUDY_FASTCOM"],
"interval": "10m",
"options": { "sequential": true }
}

See Scheduling Studies.

Run a Lighthouse Test for Multiple Websites​

Lighthouse is built into Automator and needs no installation. Add a study to your measurement config:

{
"id": "STUDY_TOP10_LIGHTHOUSE",
"type": "WEB",
"subject": "lighthouse",
"params": {
"urls": [
"https://www.google.com",
"https://www.youtube.com",
"https://www.wikipedia.org"
],
"timeout": 60
}
}

Then, run it:

surfmeter study start --studyId STUDY_TOP10_LIGHTHOUSE

See Available Studies for more details.

Record the Screen and Capture Network Packets​

surfmeter study start --studyId STUDY_YOUTUBE \
--enableScreenRecording \
--enableTcpDump

The files are stored in ~/.surfmeter/recordings/ and ~/.surfmeter/pcaps/. You can set different directories with --screenRecordingDir and --tcpDumpDir. See Screen Recording and Packet Captures.

Investigate a Failed Scheduled Run​

surfmeter daemon status
journalctl --user -u surfmeter-daemon --since "1 hour ago"
surfmeter daemon run <entryId> --wait

See Logging for how to filter the log for one run.