Bearloga has uploaded a new change for review.
https://gerrit.wikimedia.org/r/273509
Change subject: Add external referral traffic
......................................................................
Add external referral traffic
Bug: T127868
Change-Id: I61da25f48a6af81005eb0b7f3a7d95cb4ea18f4e
---
M functions.R
M server.R
M tab_documentation/breakdown.md
M tab_documentation/browsers.md
M tab_documentation/dwelltime.md
M tab_documentation/geography.md
M tab_documentation/pageviews.md
A tab_documentation/referers_byengine.md
A tab_documentation/referers_summary.md
M ui.R
10 files changed, 129 insertions(+), 10 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/wikimedia/discovery/prince
refs/changes/09/273509/1
diff --git a/functions.R b/functions.R
index a429dc6..7d7e379 100644
--- a/functions.R
+++ b/functions.R
@@ -53,6 +53,35 @@
pageview_data <<- polloi::read_dataset(path = "portal/portal_pageviews.tsv")
}
+read_referrals <- function(){
+
+ # Read in the initial data
+ data <- as.data.table(polloi::read_dataset(path =
"portal/portal_referer_data.tsv"))
+
+ # Format
+ data$is_search <- ifelse(data$is_search, "Referred by search", "Not referred
by search")
+ data$search_engine[data$search_engine %in% c("none","None")] <- "Not
referred by search"
+
+ # Write out the overall values for traffic
+ interim <- data[, j = list(pageviews = sum(pageviews)),
+ by = c("date", "is_search")] %>%
+ reshape2::dcast(formula = date ~ is_search, fun.aggregate = sum)
+ interim$Total <- interim$`Not referred by search` + interim$`Referred by
search`
+ interim$`Not referred by search` <- round(100*interim$`Not referred by
search`/interim$Total, 2)
+ interim$`Referred by search` <- round(100*interim$`Referred by
search`/interim$Total, 2)
+ summary_traffic_data <<- interim[, 1:3]
+
+ # Generate per-engine values
+ interim <- data[data$search_engine != "Not referred by search",
+ j = list(pageviews = sum(pageviews)),
+ by = c("date", "search_engine")] %>%
+ reshape2::dcast(formula = date ~ search_engine, fun.aggregate = sum)
+ bysearch_traffic_data <<- cbind(date = interim$date,
data.frame(round(100*t(apply(interim[, -1], 1, function(x) { x/sum(x) })), 2)))
+
+ return(invisible())
+
+}
+
# Fits an exponential model to the data and returns the rate of growth (or
decay!)
get_exp_rate <- function(dates, y) {
time_frame <- range(dates)
diff --git a/server.R b/server.R
index 59a1ae2..d656782 100644
--- a/server.R
+++ b/server.R
@@ -11,6 +11,7 @@
read_country()
read_useragents()
read_pageviews()
+ read_referrals()
existing_date <<- Sys.Date()
}
@@ -138,4 +139,27 @@
dyCSS(css = "www/inverse.css") %>%
dyAxis("x", axisLabelFormatter = polloi::custom_axis_formatter,
axisLabelWidth = 70)
})
+
+ output$referer_summary_dygraph <- renderDygraph({
+ summary_traffic_data %>%
+ polloi::smoother(smooth_level =
polloi::smooth_switch(input$smoothing_global, input$smoothing_referer_summary))
%>%
+ polloi::make_dygraph(xlab = "Date", ylab = "% of Pageviews",
+ title = "Pageviews to Wikipedia Portal from
external search engines") %>%
+ dyCSS(css = "www/inverse.css") %>%
+ dyAxis("x", axisLabelFormatter = polloi::custom_axis_formatter,
axisLabelWidth = 70) %>%
+ dyAxis("y", valueFormatter = 'function(x) { return x + "%"; }') %>%
+ dyLegend(labelsDiv = "referer_summary_legend", show = "always", width =
400)
+ })
+
+ output$search_engines_dygraph <- renderDygraph({
+ bysearch_traffic_data %>%
+ polloi::smoother(smooth_level =
polloi::smooth_switch(input$smoothing_global, input$smoothing_search_engines))
%>%
+ polloi::make_dygraph(xlab = "Date", ylab = "% of Pageviews",
+ title = "Search engine-referred pageviews to
Wikipedia Portal, broken down by engine") %>%
+ dyCSS(css = "www/inverse.css") %>%
+ dyAxis("x", axisLabelFormatter = polloi::custom_axis_formatter,
axisLabelWidth = 70) %>%
+ dyAxis("y", valueFormatter = 'function(x) { return x + "%"; }') %>%
+ dyLegend(labelsDiv = "search_engines_legend", show = "always", width =
400)
+ })
+
})
diff --git a/tab_documentation/breakdown.md b/tab_documentation/breakdown.md
index beb3b10..ad2a190 100644
--- a/tab_documentation/breakdown.md
+++ b/tab_documentation/breakdown.md
@@ -32,7 +32,7 @@
<hr style="border-color: gray;">
<p style="font-size: small; color: gray;">
<strong>Link to this dashboard:</strong>
- <a href="http://discovery.wmflabs.org/portal/#clickthrough_breakdown">
- http://discovery.wmflabs.org/portal/#clickthrough_breakdown
+ <a href="http://discovery.wmflabs.org/portal/#action_breakdown">
+ http://discovery.wmflabs.org/portal/#action_breakdown
</a>
</p>
diff --git a/tab_documentation/browsers.md b/tab_documentation/browsers.md
index 14aa0a9..22f50eb 100644
--- a/tab_documentation/browsers.md
+++ b/tab_documentation/browsers.md
@@ -20,7 +20,7 @@
<hr style="border-color: gray;">
<p style="font-size: small; color: gray;">
<strong>Link to this dashboard:</strong>
- <a href="http://discovery.wmflabs.org/portal/#geographic">
- http://discovery.wmflabs.org/portal/#geographic
+ <a href="http://discovery.wmflabs.org/portal/#browser_breakdown">
+ http://discovery.wmflabs.org/portal/#browser_breakdown
</a>
</p>
diff --git a/tab_documentation/dwelltime.md b/tab_documentation/dwelltime.md
index b2e12de..acb7659 100644
--- a/tab_documentation/dwelltime.md
+++ b/tab_documentation/dwelltime.md
@@ -21,7 +21,7 @@
<hr style="border-color: gray;">
<p style="font-size: small; color: gray;">
<strong>Link to this dashboard:</strong>
- <a href="http://discovery.wmflabs.org/portal/#dwelltime">
- http://discovery.wmflabs.org/portal/#dwelltime
+ <a href="http://discovery.wmflabs.org/portal/#dwell_data">
+ http://discovery.wmflabs.org/portal/#dwell_data
</a>
</p>
diff --git a/tab_documentation/geography.md b/tab_documentation/geography.md
index 2399d40..b094281 100644
--- a/tab_documentation/geography.md
+++ b/tab_documentation/geography.md
@@ -18,7 +18,7 @@
<hr style="border-color: gray;">
<p style="font-size: small; color: gray;">
<strong>Link to this dashboard:</strong>
- <a href="http://discovery.wmflabs.org/portal/#geographic">
- http://discovery.wmflabs.org/portal/#geographic
+ <a href="http://discovery.wmflabs.org/portal/#country_breakdown">
+ http://discovery.wmflabs.org/portal/#country_breakdown
</a>
</p>
diff --git a/tab_documentation/pageviews.md b/tab_documentation/pageviews.md
index e1d680c..5158a5e 100644
--- a/tab_documentation/pageviews.md
+++ b/tab_documentation/pageviews.md
@@ -19,7 +19,7 @@
<hr style="border-color: gray;">
<p style="font-size: small; color: gray;">
<strong>Link to this dashboard:</strong>
- <a href="http://discovery.wmflabs.org/portal/#pageviews">
- http://discovery.wmflabs.org/portal/#pageviews
+ <a href="http://discovery.wmflabs.org/portal/#pageview_tab">
+ http://discovery.wmflabs.org/portal/#pageview_tab
</a>
</p>
diff --git a/tab_documentation/referers_byengine.md
b/tab_documentation/referers_byengine.md
new file mode 100644
index 0000000..6ac79cb
--- /dev/null
+++ b/tab_documentation/referers_byengine.md
@@ -0,0 +1,25 @@
+Traffic to Wikipedia Portal from external search engines, broken down
+=======
+
+This dashboard simply breaks down the [summary
data](http://discovery.wmflabs.org/portal/#referrals_summary) to investigate
how much of search engine traffic is coming from each engine individually.
+
+General trends
+------
+
+On average, Google (the largest engine in our dataset) accounts for 80-81% of
the search-engine-referred traffic. Since search-engine-referred traffic
accounts for 1.42% of the overall Portal traffic, Google referrals accounts for
approximately 1.14% of the overall traffic.
+
+Outages and inaccuracies
+------
+None so far!
+
+Questions, bug reports, and feature suggestions
+------
+For technical, non-bug questions, [email
Mikhail](mailto:[email protected]?subject=Dashboard%20Question). If you
experience a bug or notice something wrong or have a suggestion, [open a ticket
in
Phabricator](https://phabricator.wikimedia.org/maniphest/task/create/?projects=Discovery)
in the Discovery board or [email
Dan](mailto:[email protected]?subject=Dashboard%20Question).
+
+<hr style="border-color: gray;">
+<p style="font-size: small; color: gray;">
+ <strong>Link to this dashboard:</strong>
+ <a href="http://discovery.wmflabs.org/portal/#search_engines">
+ http://discovery.wmflabs.org/portal/#search_engines
+ </a>
+</p>
diff --git a/tab_documentation/referers_summary.md
b/tab_documentation/referers_summary.md
new file mode 100644
index 0000000..f83d389
--- /dev/null
+++ b/tab_documentation/referers_summary.md
@@ -0,0 +1,25 @@
+Traffic to Wikipedia Portal from external search engines
+=======
+
+This dashboard simply looks at, very broadly, where our pageviews are coming
from.
+
+General trends
+------
+
+On average (or "average" because we use medians), traffic from search engines
accounts for 1.42% of overall traffic to the Portal.
+
+Outages and inaccuracies
+------
+None so far!
+
+Questions, bug reports, and feature suggestions
+------
+For technical, non-bug questions, [email
Mikhail](mailto:[email protected]?subject=Dashboard%20Question). If you
experience a bug or notice something wrong or have a suggestion, [open a ticket
in
Phabricator](https://phabricator.wikimedia.org/maniphest/task/create/?projects=Discovery)
in the Discovery board or [email
Dan](mailto:[email protected]?subject=Dashboard%20Question).
+
+<hr style="border-color: gray;">
+<p style="font-size: small; color: gray;">
+ <strong>Link to this dashboard:</strong>
+ <a href="http://discovery.wmflabs.org/portal/#referrals_summary">
+ http://discovery.wmflabs.org/portal/#referrals_summary
+ </a>
+</p>
diff --git a/ui.R b/ui.R
index 692e0e1..701b375 100644
--- a/ui.R
+++ b/ui.R
@@ -20,6 +20,10 @@
menuSubItem(text = "Browser breakdown", tabName =
"browser_breakdown"),
menuSubItem(text = "Pageviews", tabName =
"pageview_tab"),
icon = icon("line-chart")),
+ menuItem("External Referrals",
+ menuSubItem(text = "Overall Referral Traffic", tabName
= "referrals_summary"),
+ menuSubItem(text = "Breakdown by Search Engine",
tabName = "search_engines"),
+ icon = icon("external-link")),
menuItem(text = "Global Settings",
selectInput(inputId = "smoothing_global", label =
"Smoothing", selectize = TRUE, selected = "day",
choices = c("No Smoothing" = "day", "Weekly
Median" = "week", "Monthly Median" = "month")),
@@ -81,6 +85,18 @@
polloi::smooth_select("smoothing_pageviews"),
dygraphOutput("pageview_dygraph"),
includeMarkdown("./tab_documentation/pageviews.md")
+ ),
+ tabItem(tabName = "referrals_summary",
+
fluidRow(column(polloi::smooth_select("smoothing_referer_summary"), width = 3),
+ column(div(id= "referer_summary_legend"), width = 8)),
+ dygraphOutput("referer_summary_dygraph"),
+ includeMarkdown("./tab_documentation/referers_summary.md")
+ ),
+ tabItem(tabName = "search_engines",
+ fluidRow(column(polloi::smooth_select("smoothing_search_engines"),
width = 3),
+ column(div(id= "search_engines_legend"), width = 8)),
+ dygraphOutput("search_engines_dygraph"),
+ includeMarkdown("./tab_documentation/referers_byengine.md")
)
)
)
--
To view, visit https://gerrit.wikimedia.org/r/273509
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I61da25f48a6af81005eb0b7f3a7d95cb4ea18f4e
Gerrit-PatchSet: 1
Gerrit-Project: wikimedia/discovery/prince
Gerrit-Branch: master
Gerrit-Owner: Bearloga <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits