Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Distributor Node Quality Checks - 2 #745

Open
bwhm opened this issue Apr 6, 2022 · 2 comments
Open

Distributor Node Quality Checks - 2 #745

bwhm opened this issue Apr 6, 2022 · 2 comments

Comments

@bwhm
Copy link
Member

bwhm commented Apr 6, 2022

Workflow

Dev points: 15
JSG Reviewer: @DzhideX

Notes

PR to be made to this repo
Feel free to ask questions, but ask them publicly in the issue, and ping me on discord bwhm#6514 so I'll see it :)

Scope

Use puppeteer, or a similar free and open source tool, to create a script that mimics a user playing a video on play.joystream.org.

Each time the script runs, make the query:

curl 'https://query.joystream.org/graphql' -H 'Accept-Encoding: gzip, deflate, br' -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'DNT: 1' -H 'Origin: https://query.joystream.org' --data-binary '{"query":"query {\n\tvideos  (limit:1000000) {\n    id\n    duration\n    media {\n      id\n      size\n      isAccepted\n    }\n  }\n}"}' --compressed

and filtering out files where "isAccepted": false. Then, select 5 videos randomly to play, and log:

  • when the test was run
  • which videos were requested, and for each of these:
    • from which distributor (URL) it's played from
    • how long it took to get a response from the server
    • duration/file size, and the time/speed it took to start playing

Play 20 sec or so, and measure how much of the video was buffered at 5, 10 and 20 sec.

As with images, get the latency to each of the distributors used and provide a summary of the test run.

Tool for Fetching Assets from the Player

Measuring the quality of service by the Distributors without proper tools is a very manual (and error prone) job.

First, we create a tool that fetches thumbnails from the front page. The tool has to be somewhat customizable, as in reality, users don't need to get every single asset at the same time.

@bwhm bwhm added this to Open issues in Joystream Builders Apr 6, 2022
@adovrodion
Copy link
Contributor

adovrodion commented Jun 14, 2022

Bounty link: https://dao.joystream.org/#/bounty/preview/75
Bounty was not fulfilled

@singulart singulart moved this from Open issues to Dev in progress in Joystream Builders Jun 17, 2022
@singulart
Copy link
Contributor

Moving back to ToDo due to assignee inactivity. Please consider this vacant and ready to be picked up.

@singulart singulart moved this from Dev in progress to Open issues in Joystream Builders Jun 23, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

No branches or pull requests

3 participants