Download & Extend

D7UX Microproject - Dashboard Widget for Traffic Data

Project:Drupal core
Version:8.x-dev
Component:statistics.module
Category:task
Priority:normal
Assigned:Jan Krummrey
Status:postponed
Issue tags:D7UX, d7ux-microprojects, dashboard

Issue Summary

UX miniprojects are here to encourage more User Experience people to participate in the Drupal Project.

Objective of this microproject:
To consider the design and functionality of a widget for the dashboard that would show recent traffic data statistics for your website

There is a corresponding Project Framework page for this element on D7UX.org here

Next steps:

  • Post any information that's helpful for a newcomer to Drupal who will be addressing the UX aspects of this issue. Sceenshots are probably best, a demo site would be great.
  • Leave a comment if you would like to volunteer as a DEVELOPER or USABILITY mentor for this issue.
  • The UX Volunteer for this project is free to choose the channels and media to work in, but will use this issue to report their findings for review and feedback.
  • Drop by in #drupal-usability in IRC and talk to Leisa or yoroy if you have questions or feedback on this process, this is a trial so any input on how to improve is appreciated.

Note that we do not expect the output of every microproject to be implemented or implementable. Any usability gains from this process are a boon to D7, but getting more UX people into the Drupal community and finding ways for them to work more effectively with developers are our core goals.

And please, play nice. The issue queue can be quite intimidating for newcomers so let's try to be extra welcoming here.

Go!

Comments

#1

UX Volunteer: Jan Krummrey (pending acceptance)

UX Mentor(s): TBC

Developer Mentor(s): TBC

#2

Count me on that.

Just a few questions to clear up what the scope of this project is.

It's ONE widget for site traffic.
Not the set of dashboards proposed in http://www.d7ux.org/dashboard/ , right?

#3

So who can help me out. What data does D7 core offer?

Page views (total) YES/NO
Page views (by date) YES/NO

Visits (total) YES/NO
Visits (by date) YES/NO

Referrer YES/NO

Anything else, that drupal might be tracking related to traffic?

There is a Google analytics API . I assume that other tracking services have something similar.

So for the long run or contrib that is a data-source that a widget could tap into.

Is there a weblog parser that a widget could get it's data from?

#4

Jan: we have Statistics module in core. it has this config screen:

Statistics | d7

it provides (some of) these links in the reports section:

Statistics Reports | d7

which link to pages with tables like this:

Recent hits | d7

catch pointed out http://drupal.org/node/142668 as maybe relevant to this.

#5

from Statistics: tracking referrers, page hits, etc.:

Statistics module features

  1. Logs show statistics for how many times the site and specific content on the site has been accessed.
  2. Referrers tells you from where visitors came from (referrer URL).
  3. Top pages shows you what's hot, what is the most popular content on your site.
  4. Top visitors shows you the most active visitors for your site and allows you to ban abusive visitors.
  5. Recent hits displays information about the latest activity on the site.
  6. Node count displays the number of times a node has been accessed in the node's link section next to # comments.

Here are my thoughts on that (trying to be verbose on what is going on in my head):

  1. So currently drupal is tracking
    • total page views
    • pageviews within the last 24 hours
    • the the time a page was last visited.

    That doesn't give us the data to graph out traffic over time, right?

  2. Need more info.

    One could create a map of where the most recent visitors came from.
    Or a list of top referring sites.
    Does the data have a timestamp?
    Or is it aggregated over the lifetime of the site?
  3. Probably more related to user-management and not traffic.
  4. Need more info.
    Is this just the last visited pages as mentioned in 1.) ?
  5. Unrelated for this project.

Will continue to dig into what's avaiable.Seems to be quite basic compared to what Google-Analytics or Mint have to offer…

Jan

#6

Assume anything can be made be available, what would be good to have? It's good to know what's there, now let that go and start sketching what you think should be in there in the 'ideal' situation.

#7

We should probably also compare the statistics that are available from Hall of Fame module (www.drupal.org/project/hof).

#8

Assigned to:Anonymous» Jan Krummrey
Status:active» needs review

So here are my first sketches:

My thoghts on these. I didn't try to build a full traffic analysis such as google analytics. That would be a dashboard module for contrib.
What the module in core should do is keep you updated on a quick glance. So I came up with a module that tracks pageviews as seen by drupal. Most administrators will look at that rather frequently so I assumed a one week timeframe that will be graphed. The timeframe is changable in the edit-screen.
The bars will not start a zero views since the scale would quickly grow so fast, that the differences would hardly be noticable. So the min and max will be taken from another selectable timeframe. Default would be the min and max from the last month (4weeks). That too could be changed on the edit-screen.

The bar for "today" would be a composite of the last 24 hours as an estimate for the current day, and the actual number of served pages since midnight.
Image 1

There is not much to be set on the settings screen, except for the two timeframes that the widget relies on.
Image 2

Issues:
• on "todays" bar the bar for the actually served pages might not show up for quite a while since the number would be below the minimum number of pageviews per day for the relating timeframe.

Hope to hear your thoughts on this.

Will try to come up with a version that's smaller in size.
I assumed to be this about half the width avaiable on the dashboard.

Jan

P.S. can't use IMG Tags, if someone with the right permissions could change the input format for this post. [Edit: done. -cwgordon7]

AttachmentSizeStatusTest resultOperations
Traffic-1.png11.64 KBIgnored: Check issue status.NoneNone
Traffic-2.png4.42 KBIgnored: Check issue status.NoneNone

#9

There's a patch for tracking statistics over time here #142668: Retain historical node_counter information.

#10

So here's the "mini-widget"

Only local images are allowed.

It can be very small and provides just the most basic information.

The widget displays the the numer of pages served over the last 24 hours and relates them to the most and least amount of pages served ever.
Since these values are relative and do change, the absolute values are also printed out.

P.S. Can't use IMG Tags, if someone with the right permissions could change the input format for this post.

AttachmentSizeStatusTest resultOperations
Bild 102.png18.68 KBIgnored: Check issue status.NoneNone

#11

I like how simple and effective Edicy does it http://www.edicy.com/blog/see-your-site-traffic-in-edicy

#12

Two thoughts on that

  • Bar graphs vs line graphs. Linegraphs connect sampeled points. Think of fever-curves or stock-prices. You connect single values that were measured at different times. Site traffic is different from that. Here you aggregate events over time. Pages per day for example. An other example would be the number of stocks sold per day. Those aren't drawn in a line because you want to reflect the amount of time it took to come up with the value ie. a day/week/month.
  • Starting a graph from zero. Just imagine the widget has to differentiate todays traffic of 13407 pages from yesterday with 12521 from today. Even though there is a difference of about 7%, the widget wouldn't be able to show that. The two values would both be drawn on the same pixel (if you have 100 pixels in height).
    That's why I tried to have relative min/max values for the graphs. So that they would show the current state in relation to something more meaningfull, like last months traffic.
    For the simple version I chose lifetime, but that is debatable. For that one I didn't want to have an extra options page.

It looks great though. The images above are like blueprints of an architect. I kept them simple so that we could first argue about what's in it before we get to the point where we argue about dropshadows and colors.

#13

I'm not sure, but as far as I know this also is a new feature because as it current state, drupal does not count site traffic at all. Right?
And if it is going to do that, what would it count? (unique visits, incl. or excl. search bots, the administrator(s)???)

#14

I think it would count the pages drupal rendered/served. That is something drupal already knows something about. A patch that would retain historical data is in the works.

My intention was to keep it reasonably simple. A contrib widget that would integrate with Google-Analytics for example, would be able to offer some more accurate data.

#15

Issue tags:+dashboard

tag

#16

@Jan Krummrey In regards to a Contrib module, the Google Analytics API Module is a reasonably new project created for Google Summer of Code. It allows stats from Google Analytics to be pulled back into Drupal.

#17

Sub.

#18

Status:needs review» postponed

I think the main problem for this is core statistics module does not provide 'historical' traffic data. Until #142668: Retain historical node_counter information is fixed (not likely for D7 at this point), this is not going to be possible from core. As such, I'm marking this as postponed.

#19

Version:7.x-dev» 8.x-dev
nobody click here