Opened 4 weeks ago

Last modified 2 weeks ago

#29835 new enhancement

Include Android as a Tor Browser platform

Reported by: sysrqb Owned by: metrics-team
Priority: Medium Milestone:
Component: Metrics/Website Version:
Severity: Normal Keywords: tbb-mobile
Cc: tbb-team, gk Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

There should be some web server log entries now for the tor-browser*.apk files (over the past ~6 months). It'd be nice seeing these included in the graphs. Tor Browser on Android does not automatically execute update pings or download mar files, so initial downloads and updates likely look identical.

Child Tickets

Attachments (1)

android-requests-2019-04-04.png (56.8 KB) - added by karsten 2 weeks ago.

Download all attachments as: .zip

Change History (6)

comment:1 Changed 4 weeks ago by sysrqb

Cc: tbb-team added

comment:2 Changed 4 weeks ago by gk

Cc: gk added

comment:3 Changed 2 weeks ago by karsten

Here are requests matching the tor-browser*.apk pattern over the past six months:

webstats=> SELECT resource_string, SUM(count) AS count
webstats-> FROM files NATURAL JOIN requests NATURAL JOIN resources
webstats-> WHERE resource_string LIKE '%tor-browser%.apk'
webstats-> AND log_date >= '2018-10-01'
webstats-> GROUP BY 1
webstats-> ORDER BY 2 DESC
webstats-> LIMIT 25;
                          resource_string                           | count  
--------------------------------------------------------------------+--------
 /torbrowser/8.5a6/tor-browser-8.5a6-android-armv7-multi.apk        | 427580
 /torbrowser/8.5a8/tor-browser-8.5a8-android-armv7-multi.apk        | 321918
 /torbrowser/mobile/1.0a3/tor-browser-android-arm-1.0a3.apk         | 241827
 /torbrowser/8.5a7/tor-browser-8.5a7-android-armv7-multi.apk        | 215911
 /torbrowser/mobile/1.0a2/tor-browser-android-arm-1.0a2.apk         | 137609
 /dist/torbrowser/8.5a6/tor-browser-8.5a6-android-armv7-multi.apk   | 107272
 /dist/torbrowser/8.5a8/tor-browser-8.5a8-android-armv7-multi.apk   |  80339
 /torbrowser/mobile/1.0a1/tor-browser-android-arm-1.0a1.apk         |  69912
 /dist/torbrowser/mobile/1.0a3/tor-browser-android-arm-1.0a3.apk    |  65513
 /torbrowser/8.5a5/tor-browser-8.5a5-android-armv7.apk              |  55549
 /dist/torbrowser/8.5a7/tor-browser-8.5a7-android-armv7-multi.apk   |  52822
 /torbrowser/8.5a9/tor-browser-8.5a9-android-armv7-multi.apk        |  39996
 /dist/torbrowser/mobile/1.0a2/tor-browser-android-arm-1.0a2.apk    |  38649
 /torbrowser/8.5a10/tor-browser-8.5a10-android-armv7-multi.apk      |  22130
 /dist/torbrowser/mobile/1.0a1/tor-browser-android-arm-1.0a1.apk    |  18698
 /dist/torbrowser/8.5a5/tor-browser-8.5a5-android-armv7.apk         |  14744
 /torbrowser/8.5a9/tor-browser-8.5a9-android-x86-multi.apk          |   9744
 /dist/torbrowser/8.5a9/tor-browser-8.5a9-android-armv7-multi.apk   |   9328
 /torbrowser/8.5a10/tor-browser-8.5a10-android-x86-multi.apk        |   3136
 /dist/torbrowser/8.5a10/tor-browser-8.5a10-android-armv7-multi.apk |   3034
 /dist/torbrowser/8.5a6/tor-browser-8.5a6-android-armv7.apk         |   2736
 /dist/torbrowser/8.5a9/tor-browser-8.5a9-android-x86-multi.apk     |   2560
 /dist/torbrowser/mobile/8.0.6/tor-browser-android-arm-8.0.6.apk    |    955
 /dist/torbrowser/8.5a10/tor-browser-8.5a10-android-x86-multi.apk   |    796
 /dist/torbrowser/mobile/8.0.5/tor-browser-android-arm-8.0.5.apk    |    425
(25 rows)

Which of these would you want to have included in a graph?

Assuming we're making a new graph for Tor on Android, what would you want to have included in that graph? More specifically:

  • What's the difference between the 1.0, the 8.0, and the 8.5 series? Are these the major versions you'd like to distinguish?
  • Do you care about the armv7 and x86 distinction? What about -multi?
  • Why do some resource strings start with /torbrowser/, others with /dist/torbrowser/, and even others with /dist/torbrowser/mobile/? Are these all basically the same?
  • I didn't look at response codes yet. Are there any redirects in place?

comment:4 in reply to:  3 Changed 2 weeks ago by gk

Replying to karsten:

Here are requests matching the tor-browser*.apk pattern over the past six months:

webstats=> SELECT resource_string, SUM(count) AS count
webstats-> FROM files NATURAL JOIN requests NATURAL JOIN resources
webstats-> WHERE resource_string LIKE '%tor-browser%.apk'
webstats-> AND log_date >= '2018-10-01'
webstats-> GROUP BY 1
webstats-> ORDER BY 2 DESC
webstats-> LIMIT 25;
                          resource_string                           | count  
--------------------------------------------------------------------+--------
 /torbrowser/8.5a6/tor-browser-8.5a6-android-armv7-multi.apk        | 427580
 /torbrowser/8.5a8/tor-browser-8.5a8-android-armv7-multi.apk        | 321918
 /torbrowser/mobile/1.0a3/tor-browser-android-arm-1.0a3.apk         | 241827
 /torbrowser/8.5a7/tor-browser-8.5a7-android-armv7-multi.apk        | 215911
 /torbrowser/mobile/1.0a2/tor-browser-android-arm-1.0a2.apk         | 137609
 /dist/torbrowser/8.5a6/tor-browser-8.5a6-android-armv7-multi.apk   | 107272
 /dist/torbrowser/8.5a8/tor-browser-8.5a8-android-armv7-multi.apk   |  80339
 /torbrowser/mobile/1.0a1/tor-browser-android-arm-1.0a1.apk         |  69912
 /dist/torbrowser/mobile/1.0a3/tor-browser-android-arm-1.0a3.apk    |  65513
 /torbrowser/8.5a5/tor-browser-8.5a5-android-armv7.apk              |  55549
 /dist/torbrowser/8.5a7/tor-browser-8.5a7-android-armv7-multi.apk   |  52822
 /torbrowser/8.5a9/tor-browser-8.5a9-android-armv7-multi.apk        |  39996
 /dist/torbrowser/mobile/1.0a2/tor-browser-android-arm-1.0a2.apk    |  38649
 /torbrowser/8.5a10/tor-browser-8.5a10-android-armv7-multi.apk      |  22130
 /dist/torbrowser/mobile/1.0a1/tor-browser-android-arm-1.0a1.apk    |  18698
 /dist/torbrowser/8.5a5/tor-browser-8.5a5-android-armv7.apk         |  14744
 /torbrowser/8.5a9/tor-browser-8.5a9-android-x86-multi.apk          |   9744
 /dist/torbrowser/8.5a9/tor-browser-8.5a9-android-armv7-multi.apk   |   9328
 /torbrowser/8.5a10/tor-browser-8.5a10-android-x86-multi.apk        |   3136
 /dist/torbrowser/8.5a10/tor-browser-8.5a10-android-armv7-multi.apk |   3034
 /dist/torbrowser/8.5a6/tor-browser-8.5a6-android-armv7.apk         |   2736
 /dist/torbrowser/8.5a9/tor-browser-8.5a9-android-x86-multi.apk     |   2560
 /dist/torbrowser/mobile/8.0.6/tor-browser-android-arm-8.0.6.apk    |    955
 /dist/torbrowser/8.5a10/tor-browser-8.5a10-android-x86-multi.apk   |    796
 /dist/torbrowser/mobile/8.0.5/tor-browser-android-arm-8.0.5.apk    |    425
(25 rows)

Which of these would you want to have included in a graph?

Not the 8.0.x ones as there was never a 8.0.x to begin with. That makes me wonder how many of those requests got actually a .apk back. Do we know that? For instance, we only keep the last two Tor Browser versions on dist for both the alpha and the stable series. It's not clear from your data above which of those requests to dist missed that "2 releases-window" and which not. Obviously, we only want to have the latter in our graph.

Assuming we're making a new graph for Tor on Android, what would you want to have included in that graph? More specifically:

  • What's the difference between the 1.0, the 8.0, and the 8.5 series? Are these the major versions you'd like to distinguish?

There was never a 8.0.x release and all releases so far were alpha releases. Thus, there is no major version to distinguish yet. We switched at some point to the 8.5 scheme as we a) wanted to do that anyway at some point as we plan to ship bundles for Android with Tor Browser 8.5 as well and b) when reaching the reproducible builds milestone the bundle resembled the 8.5 alpha enough that we thought we can now switch to the regular alpha naming scheme.

  • Do you care about the armv7 and x86 distinction? What about -multi?

Yes, to the former. Android bundles were at some point in the past only en-US bundles. That changed with the advent of -multi which now contains all locales we support. I don't expect that to go away again. Thus, we don't need to differentiate between -multi and en-US for now at least.

  • Why do some resource strings start with /torbrowser/, others with /dist/torbrowser/, and even others with /dist/torbrowser/mobile/? Are these all basically the same?

I suspect some folks are downloading the bundles from our homepage and some are getting it from dist (see the dist caveat above). Before we switched to the 8.5 alpha naming scheme for mobile we put the bundles into /dist/torbrowser/mobile/ to have them somewhere we could link to from our website but at a place that was separate from the regular alphas. This is gone now and won't used again. I.e. all .apks on dist will show up in either the alpha related directories or the stable ones. So, yes, they essentially give you THE .apk you want.

  • I didn't look at response codes yet. Are there any redirects in place?

Good question. As far as I know there should not be any redirects in place (modulo the ones we currently need for the new website).

Changed 2 weeks ago by karsten

comment:5 Changed 2 weeks ago by karsten

Good point about unsuccessful requests. Let's only look at requests resulting in a 200 response code. There are also requests with response code 206, but those partial requests are harder to count/compare than the initial/full requests. And of course there are other response codes, but we probably don't care about those.

I made a quick graph with successful requests (response code 200) by architecture to get us started here:


Note: See TracTickets for help on using tickets.