Analytics/Dashiki

From Wikitech

Dashiki is a dashboarding tool that tries to help you think about information architecture first, plots second. It is very light and performant and requires no setup other than a webserver to host files. Dashiki is not a tool to do data analysis, its goal is to provide a overall view of a system. See, for example, how you can browse pageviews for ALL mediawiki projects on this dashiki installation: Pageviews for all mediawiki projects


Quickstart

1. Download dashiki

 git CLONE https://gerrit.wikimedia.org/r/analytics/dashiki 

2. Follow README instructions to get a local webserver through which to serve the files.

3. You are set, you should be seeing some data on: http://localhost:<your port>/dist/


Background

Dashiki's history and technical stack: File:The Dashboarding Problem.compressed.pdf

Intro

Dashiki has multiple "layouts" which are configured into dashboards via wiki pages

Here are two examples of dashiki dashboards layouts: https://vital-signs.wmflabs.org/ and https://edit-analysis.wmflabs.org/compare/ by "layouts" we mean a certain way to combine metrics and "parameters" like wikis, dates, etc. to present some data

The "layouts" we support right now are:

  1. metrics-by-projects (example is vital signs, good for wiki centric projects)
  2. compare (dashiki, example is the comparison of Visual Editor to Wikitext data, good for things like A/B testing)


FAQ

Where is the code?

You can browse code on github here. We use gerrit to manage changes. Setting dashiki is real simple and you should do that before you read further.

How to get your data available via http

As long as you're sure they're OK to be shared publicly, from stat1002 you can put files into /a/aggregate-datasets and those will end up on http://datasets.wikimedia.org/aggregate-datasets after an rsync.

It's up to you to organize the cron that gets them there and make a nice folder hierarchy rsync is hourly.

If you want to store your data in a database you can use the staging db available of analytics store, if you have permits to analytics store you should be able to create tables on that database.

Can I implement a new layout?

You can implement new layouts but the main idea is that we do not want to have just plots and plots but rather we want information architecture around a set of plots that lets users infer what is the data available.

What about limn?

The analytics team is not actively developing limn anymore.