added methods to statistics rake task
This commit is contained in:
parent
4eb31f1fd2
commit
0dc0af015f
1 changed files with 23 additions and 0 deletions
|
|
@ -18,6 +18,20 @@ namespace :statistics do
|
||||||
notification_off_per = notification_off.to_f / users
|
notification_off_per = notification_off.to_f / users
|
||||||
no_invites = User.where(:invites => 0).count
|
no_invites = User.where(:invites => 0).count
|
||||||
|
|
||||||
|
@sql = ActiveRecord::Base.connection();
|
||||||
|
|
||||||
|
def users_with_x_posts(count)
|
||||||
|
@sql.execute(
|
||||||
|
"SELECT COUNT(*) FROM (SELECT `people`.guid, COUNT(*) AS posts_sum FROM `people` LEFT JOIN `posts` ON `people`.id = `posts`.person_id GROUP BY `people`.guid) AS t1 WHERE t1.posts_sum > #{count};"
|
||||||
|
).first[0]
|
||||||
|
end
|
||||||
|
|
||||||
|
def users_with_x_contacts(count)
|
||||||
|
@sql.execute(
|
||||||
|
"SELECT COUNT(*) FROM (SELECT `users`.id, COUNT(*) AS contact_sum FROM `users` LEFT JOIN `contacts` ON `users`.id = `contacts`.person_id AND `contacts`.pending = 0 GROUP BY `users`.id) AS t1 WHERE t1.contact_sum > #{count};"
|
||||||
|
).first[0]
|
||||||
|
end
|
||||||
|
|
||||||
task :human => :environment do
|
task :human => :environment do
|
||||||
puts "Users: %i and %i incomplete" % [users, incomplete]
|
puts "Users: %i and %i incomplete" % [users, incomplete]
|
||||||
puts "Invitations sent: %i" % invitations
|
puts "Invitations sent: %i" % invitations
|
||||||
|
|
@ -25,6 +39,14 @@ namespace :statistics do
|
||||||
puts "Aspects: %i" % aspects
|
puts "Aspects: %i" % aspects
|
||||||
puts "Users signed in in last 24h: %i" % last_24_hrs
|
puts "Users signed in in last 24h: %i" % last_24_hrs
|
||||||
puts "Users signed in in last 7d: %i" % last_7_d
|
puts "Users signed in in last 7d: %i" % last_7_d
|
||||||
|
|
||||||
|
puts "Users with more than one post: %i" % users_with_x_posts(1)
|
||||||
|
puts "Users with more than five post: %i" % users_with_x_posts(5)
|
||||||
|
puts "Users with more than ten post: %i" % users_with_x_posts(10)
|
||||||
|
|
||||||
|
puts "Users with 1 or more contacts: %i" % users_with_x_contacts(0)
|
||||||
|
puts "Users with 5 or more contacts: %i" % users_with_x_contacts(4)
|
||||||
|
puts "Users with 10 or more contacts: %i" % users_with_x_contacts(9)
|
||||||
end
|
end
|
||||||
|
|
||||||
task :splunk => :environment do
|
task :splunk => :environment do
|
||||||
|
|
@ -35,6 +57,7 @@ namespace :statistics do
|
||||||
"notification_off=#{notification_off}, "+
|
"notification_off=#{notification_off}, "+
|
||||||
"notification_off_%=#{notification_off_per}, "+
|
"notification_off_%=#{notification_off_per}, "+
|
||||||
"no_invites=#{no_invites}"
|
"no_invites=#{no_invites}"
|
||||||
|
|
||||||
|
|
||||||
puts "event=statistic, type=invitations, count=#{invitations}"
|
puts "event=statistic, type=invitations, count=#{invitations}"
|
||||||
puts "event=statistic, type=contacts, active_count=#{contacts_active}"
|
puts "event=statistic, type=contacts, active_count=#{contacts_active}"
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue