RFC: dashboards, visualization and analytics for test results


Kevin Hilman
 

Hello folks interested in kernel testing/automation,

The KernelCI project is starting to look at what's next for dashboards,
visualization and analytics for the various Linux focused testing
projects.

At Linux Plumbers, we launched some discussions[1] around common ways to
collect test results, logs and metadata into a public, shared dataset,
and we've already started collecting data from several different
sources.

So the next question is... how do we best use all of this data?

We're beginning to brainstorm how to visualize, analyze and learn from
this data in useful ways.

To that end, we're starting to collect a set of user stories to help us
brainstorm a new design for web based dashboard and analytics, and we'd
like to hear from you.

Below is the start of a list of user stories[2], but we want to grow
this list with your ideas, so please share them on this thread.

We're also very interested in talking with any big data people and data
scientists who might be willing to look at this growing set of data and
help us better plan for the future full of lots of test data.

We appreciate your ideas and feedback,

Kevin (on behalf of the KernelCI team)


[1] c.f. Unifying Test Reporting with KernelCI from the testing/fuzzing
micro-conference:
https://linuxplumbersconf.org/event/7/sessions/80/#20200826



[2] Example user stories

A kernel developer has sent a patch which caused a regression
- Find the details, how to reproduce, check when it’s fixed

A maintainer is getting a branch ready for the next merge window
- Compare results against mainline, ensure all tests were run correctly

An OEM or SoC vendor needs to upgrade their kernel or move to upstream
- See all results for a particular platform on various stable releases

Regular visitors who want to know how the kernel is doing
- Highlight new regressions, show trends for pass/fail and performance
- Does kernel X work on my hardware?

Distro vendor wants to know
- Is the latest kernel stable enough for my distro?
- Why does this test fail on my distro kernel but not stable kernel?

Stable kernel maintainer wants to know
- Is this kernel stable enough to release?

Kernel / subsystem maintainer wants to know
- Is my code/subsystem being tested? How much coverage?
- Is the kernel size growing? Why? Which subsystems
- Is boot time / test execution time increasing/decreasing? What are the historical trends?


Nick Desaulniers
 

On Wed, Oct 7, 2020 at 10:47 AM Kevin Hilman <khilman@baylibre.com> wrote:

Hello folks interested in kernel testing/automation,

The KernelCI project is starting to look at what's next for dashboards,
visualization and analytics for the various Linux focused testing
projects.

At Linux Plumbers, we launched some discussions[1] around common ways to
collect test results, logs and metadata into a public, shared dataset,
and we've already started collecting data from several different
sources.

So the next question is... how do we best use all of this data?

We're beginning to brainstorm how to visualize, analyze and learn from
this data in useful ways.

To that end, we're starting to collect a set of user stories to help us
brainstorm a new design for web based dashboard and analytics, and we'd
like to hear from you.

Below is the start of a list of user stories[2], but we want to grow
this list with your ideas, so please share them on this thread.

We're also very interested in talking with any big data people and data
scientists who might be willing to look at this growing set of data and
help us better plan for the future full of lots of test data.

We appreciate your ideas and feedback,

Kevin (on behalf of the KernelCI team)


[1] c.f. Unifying Test Reporting with KernelCI from the testing/fuzzing
micro-conference:
https://linuxplumbersconf.org/event/7/sessions/80/#20200826



[2] Example user stories
additional user story:

A developer wants to slice and dice warnings by toolchain and
toolchain version to see what errors or warnings are compiler
specific/need to be fixed.


A kernel developer has sent a patch which caused a regression
- Find the details, how to reproduce, check when it’s fixed

A maintainer is getting a branch ready for the next merge window
- Compare results against mainline, ensure all tests were run correctly

An OEM or SoC vendor needs to upgrade their kernel or move to upstream
- See all results for a particular platform on various stable releases

Regular visitors who want to know how the kernel is doing
- Highlight new regressions, show trends for pass/fail and performance
- Does kernel X work on my hardware?

Distro vendor wants to know
- Is the latest kernel stable enough for my distro?
- Why does this test fail on my distro kernel but not stable kernel?

Stable kernel maintainer wants to know
- Is this kernel stable enough to release?

Kernel / subsystem maintainer wants to know
- Is my code/subsystem being tested? How much coverage?
- Is the kernel size growing? Why? Which subsystems
- Is boot time / test execution time increasing/decreasing? What are the historical trends?







--
Thanks,
~Nick Desaulniers


Kevin Hilman
 

Nick Desaulniers <ndesaulniers@google.com> writes:

On Wed, Oct 7, 2020 at 10:47 AM Kevin Hilman <khilman@baylibre.com> wrote:

Hello folks interested in kernel testing/automation,

The KernelCI project is starting to look at what's next for dashboards,
visualization and analytics for the various Linux focused testing
projects.

At Linux Plumbers, we launched some discussions[1] around common ways to
collect test results, logs and metadata into a public, shared dataset,
and we've already started collecting data from several different
sources.

So the next question is... how do we best use all of this data?

We're beginning to brainstorm how to visualize, analyze and learn from
this data in useful ways.

To that end, we're starting to collect a set of user stories to help us
brainstorm a new design for web based dashboard and analytics, and we'd
like to hear from you.

Below is the start of a list of user stories[2], but we want to grow
this list with your ideas, so please share them on this thread.

We're also very interested in talking with any big data people and data
scientists who might be willing to look at this growing set of data and
help us better plan for the future full of lots of test data.

We appreciate your ideas and feedback,

Kevin (on behalf of the KernelCI team)


[1] c.f. Unifying Test Reporting with KernelCI from the testing/fuzzing
micro-conference:
https://linuxplumbersconf.org/event/7/sessions/80/#20200826



[2] Example user stories
additional user story:

A developer wants to slice and dice warnings by toolchain and
toolchain version to see what errors or warnings are compiler
specific/need to be fixed.
Excellent, thanks!

Kevin


Corentin Labbe
 

On Wed, Oct 07, 2020 at 10:47:32AM -0700, Kevin Hilman wrote:
Hello folks interested in kernel testing/automation,

The KernelCI project is starting to look at what's next for dashboards,
visualization and analytics for the various Linux focused testing
projects.

At Linux Plumbers, we launched some discussions[1] around common ways to
collect test results, logs and metadata into a public, shared dataset,
and we've already started collecting data from several different
sources.

So the next question is... how do we best use all of this data?

We're beginning to brainstorm how to visualize, analyze and learn from
this data in useful ways.

To that end, we're starting to collect a set of user stories to help us
brainstorm a new design for web based dashboard and analytics, and we'd
like to hear from you.

Below is the start of a list of user stories[2], but we want to grow
this list with your ideas, so please share them on this thread.

We're also very interested in talking with any big data people and data
scientists who might be willing to look at this growing set of data and
help us better plan for the future full of lots of test data.

We appreciate your ideas and feedback,

Kevin (on behalf of the KernelCI team)


[1] c.f. Unifying Test Reporting with KernelCI from the testing/fuzzing
micro-conference:
https://linuxplumbersconf.org/event/7/sessions/80/#20200826



[2] Example user stories

A kernel developer has sent a patch which caused a regression
- Find the details, how to reproduce, check when it’s fixed

A maintainer is getting a branch ready for the next merge window
- Compare results against mainline, ensure all tests were run correctly

An OEM or SoC vendor needs to upgrade their kernel or move to upstream
- See all results for a particular platform on various stable releases

Regular visitors who want to know how the kernel is doing
- Highlight new regressions, show trends for pass/fail and performance
- Does kernel X work on my hardware?

Distro vendor wants to know
- Is the latest kernel stable enough for my distro?
- Why does this test fail on my distro kernel but not stable kernel?

Stable kernel maintainer wants to know
- Is this kernel stable enough to release?

Kernel / subsystem maintainer wants to know
- Is my code/subsystem being tested? How much coverage?
- Is the kernel size growing? Why? Which subsystems
- Is boot time / test execution time increasing/decreasing? What are the historical trends?
Hello

As a maintainer, viewing all boot including a specific hardware/driver.
Does my xxxx driver works everywhere ?

Recent example:
- I have added support for PRNG/hash on sun8i-ce, I want to check all boots with this driver.
More complex recent example:
- since commit bbc4d71d6354 ("net: phy: realtek: fix rtl8211e rx/tx delay config") many board could loose network, I want to see all boots including this patch with this PHY.

Regards


Chris Fiege
 

Hey Kevin,

On Wed, Oct 7, 2020 at 10:47 AM, Kevin Hilman wrote:


The KernelCI project is starting to look at what's next for dashboards,
visualization and analytics for the various Linux focused testing
projects.

(...)

So the next question is... how do we best use all of this data?

To that end, we're starting to collect a set of user stories to help us
brainstorm a new design for web based dashboard and analytics, and we'd
like to hear from you.
for us at Pengutronix Kernel-CI has always been a good way to present our
Kernel maintenance / development activities to our customers.

We are currently missing a few of the old views. I'll try to describe our
use-cases in some short user stories. Feel free to ask for more details.

A customer tries to evaluate whether to use mainline Linux or a vendor kernel:
- View of list of all hardware / SoC currently tested in all labs
- View job history on all devices with a specific hardware / SoC
- View statistics of failing / passing Tests over time for a specific hardware / SoC.

A member of sales department uses the contribution to Kernel-CI as an indication
for our effort to maintain systems for a long time.
- View a list of hardware / SoC in a specific lab.
- Send a link to said list to a costumer.
- View the status of hardware in a specific lab:
Are jobs scheduled for a specific hardware?
- View the history of jobs for a specific lab.


Regards,
Chris