analytics: Change messages_sent:client stat to daily frequency.

A few reasons:
* Our two other subgroup'd message stats in UserCount are at CountStat.DAY
  frequency (messages_sent:is_bot and messages_sent:message_type).
* Keeping this stat at hourly frequency would likely double the size of our
  analytics table, given the current stats. (Counterpoint: if there are
  roughly as many active streams as active users, and we keep
  messages_sent_to_stream:is_bot at hourly frequency, then maybe this stat
  is only a 30% or 50% increase).
* We're currently only showing this on the frontend as a pie chart anyway.
This commit is contained in:
Rishi Gupta
2017-01-16 12:13:46 -08:00
committed by Tim Abbott
parent 690002aef8
commit 12d277d4f4
2 changed files with 5 additions and 4 deletions

View File

@@ -350,7 +350,7 @@ COUNT_STATS = {
zerver_count_message_type_by_user, {},
None, CountStat.DAY, False),
'messages_sent:client': CountStat('messages_sent:client', zerver_count_message_by_user, {},
(Message, 'sending_client_id'), CountStat.HOUR, False),
(Message, 'sending_client_id'), CountStat.DAY, False),
'messages_sent_to_stream:is_bot': CountStat('messages_sent_to_stream:is_bot',
zerver_count_message_by_stream, {},
(UserProfile, 'is_bot'), CountStat.HOUR, False)

View File

@@ -421,12 +421,13 @@ class TestCountStats(AnalyticsTestCase):
self.assertTableState(UserCount, ['value', 'subgroup', 'user'],
[[2, website_client_id, user1],
[1, client2_id, user1], [2, client2_id, user2],
[1, website_client_id, self.hourly_user]])
[1, website_client_id, self.hourly_user],
[1, website_client_id, self.daily_user]])
self.assertTableState(RealmCount, ['value', 'subgroup', 'realm'],
[[2, website_client_id], [3, client2_id],
[1, website_client_id, self.second_realm]])
[2, website_client_id, self.second_realm]])
self.assertTableState(InstallationCount, ['value', 'subgroup'],
[[3, website_client_id], [3, client2_id]])
[[4, website_client_id], [3, client2_id]])
self.assertTableState(StreamCount, [], [])
def test_messages_sent_to_stream_by_is_bot(self):