Page MenuHomePhabricator

Create dashboard for upload wizard
Closed, DeclinedPublic

Description

@matthiasmullie and I will set up a way to track upload wizard exceptions. He's working on querying the data to get back (date, exception, count) and I'll work on making a visualization in Dashiki. The visualization will be usable from the tabs layout and will just pivot on the exception column the same way hierarchy visualizations do, but render as probably an area graph with toggling for percent / absolute maybe.

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald TranscriptFeb 28 2017, 3:17 PM

Change 340720 had a related patch set uploaded (by Matthias Mullie):
[analytics/limn-multimedia-data] Query the most common UploadWizard exceptions & errors

https://gerrit.wikimedia.org/r/340720

Nuria moved this task from Incoming to Wikistats on the Analytics board.Mar 2 2017, 5:09 PM
Nuria moved this task from Wikistats to Deprioritized on the Analytics board.Mar 20 2017, 4:15 PM
Nuria added a subscriber: Nuria.

what is the priority of this work? Does it fall under editing? reading?

Nuria moved this task from Deprioritized to Radar on the Analytics board.Mar 20 2017, 4:16 PM

Not too urgent, but preferably before July, when most of Multimedia's focus will be shifting towards stuctured data.
I guess this falls under reading now.

Milimetric moved this task from Radar to Wikistats on the Analytics board.Mar 24 2017, 3:47 PM
Nuria triaged this task as Medium priority.Mar 27 2017, 3:56 PM

Ping matthiasmullie, will you be able to continue this work? seems that it is half way there

matthiasmullie added a comment.EditedMar 30 2017, 2:41 PM

Yes and no.
I do have time to work on this, but no experience with Dashiki.
So far, I've not had much luck getting anywhere myself, so some pointers would be greatly appreciated!

I have data like this:

day    message total
2017-02-26      TypeError: invalid 'in' operand obj     20
2017-02-26      Uncaught TypeError: Cannot read property 'getPrefixedText' of null      5
2017-02-26      TypeError: null is not an object (evaluating 'elt.parentNode')  5
2017-02-26      Uncaught TypeError: Cannot read property '0' of undefined       1
2017-02-26      Uncaught Error: module already implemented: ext.gadget.UTCLiveClock     1
2017-02-26      Uncaught URIError: URI malformed        1
2017-02-27      TypeError: invalid 'in' operand obj     11
2017-02-27      allocation size overflow        1
2017-02-27      Uncaught Error: Invalid LatLng object: (NaN, 50)        1
...

What I would like to get from this is a line chart with days on the x axis, and amount of errors (3rd row in data) on y axis. There would be multiple lines, one for each distinct error/exception message (2nd row in data).

I've found "similar" data for Dashiki:VisualEditorAndWikitext (e.g. failure_types_by_user_type), where there are multiple entries per day in the tsv.

However:

  • those are "compare" layouts, and this is no A/B testing (although I could probably use this, without a B to compare to?)
  • the examples I found with similar date-based grouping are sunburst & stacked-bars, no timeseries (maybe we could live with stacked-bars, if it's not supported for timeseries)
  • my data has no recurring data in 2nd column; error messages could be different each day
  • so far, I couldn't even get it to work with "compare" layout & "stacked-bars" type :)

Is there more documentation on the options in "Config:Dashiki:" configs and what they do, and/or is there an example more similar to what I want to accomplish?

Nuria added a comment.Mar 30 2017, 4:44 PM

Mathias:
Let's backtrack a little here: seems to me that your case has little do do with analytics but rather error logging, I understand that mediawiki doesn't provide client side error logging but to be clear, neither does eventlogging which is designed for events, it is no sentry (https://sentry.io/welcome/) so it does not process/works welll with free flow text.

This is been discussed several times and I can look for tickets if needed.

Suggestions to help you gather error data:

  • do not send free flow text, For two reasons:
  1. there is no guarantee text will make it through as there are length limits on eventlogging events size and database fields.
  1. a dashboard (dashiki or other) that is not specifically designed for error logging would not work, send error codes that on your end map to certain errors. Later we can send (error_code/count) to graphana and use graphana to graph things.

I think what you are looking for is something similar to this: https://grafana.wikimedia.org/dashboard/db/varnish-http-errors?refresh=5m&orgId=1 let me know if that will fit your use case

@Nuria: let's not make @matthiasmullie repeat himself too much, I had already started working with him and this use case seems fine to me. You and I can talk offline and I can explain if you're curious. @matthiasmullie I was just waiting on data from you, I'm happy to help with the dashiki config. Our documentation on the config options is not good yet, we'll work on that separately.

For now, where is your data? Let's get it somewhere public and I'll start off a dashboard with one graph. To make your data public from stat1002 or stat1003, make sure it's ok to share (no private stuff) and put it in /a/published-datasets or /srv/published-datasets. It will be synced publicly. As you do that, please try to build your directory structure for easy discovery and clarity.

@Milimetric: The patch for the data is https://gerrit.wikimedia.org/r/#/c/340720/
I can have it merged, but I want to be sure it's in a format/config you'll be able to work with!

oh great, I didn't see this change until today, apologies if it was in my incoming. Reviewing now.

Change 340720 merged by Milimetric:
[analytics/limn-multimedia-data@master] Query the most common UploadWizard exceptions & errors

https://gerrit.wikimedia.org/r/340720

Nuria added a comment.Jun 26 2017, 4:10 PM

I believe we abadoned patches right? Closing but please reopen if that is not the case.

Nuria closed this task as Declined.Jun 26 2017, 4:11 PM
matthiasmullie reopened this task as Open.Jun 30 2017, 1:10 PM

I'm not aware of any patches, open or abandoned?
The data patch was merged awhile ago. But this is still something that we're interested in.

Nuria moved this task from Wikistats to Dashiki on the Analytics board.Jul 3 2017, 3:36 PM
Nuria edited projects, added Analytics-Kanban; removed Analytics.Jul 3 2017, 4:45 PM

I leave this up to @Milimetric but see my comments above. Eventlogging is not well suited (at all) to capture error logging or free text. I understand we do not have a client side logging solution and that in unfortunate but eventlogging is no sentry

Nuria moved this task from Next Up to Paused on the Analytics-Kanban board.Jul 3 2017, 4:47 PM

Yeah, let's work on it when we have time. Unfortunately we have too many things on our plate so this has to get pushed back.

Nuria edited projects, added Analytics; removed Analytics-Kanban.Sep 14 2017, 4:04 PM
Nuria moved this task from Dashiki to Deprioritized on the Analytics board.Sep 14 2017, 6:17 PM
Milimetric closed this task as Declined.Aug 31 2020, 5:30 PM

Do follow-up if somehow this is still relevant