I’m getting a crazy high number of User Profile Views lately - and I’m wondering what it means. It used to be down in the low hundreds - but the past few weeks its been up around 10,000 per day. It seems like someone is hitting them way too hard - is there any easy way to see who it is, or block them?
@tgxworld we should cross correlate with kibana to see if this looks legit, in particular confirm we can count it all and that we are not counting user card expands
My first thought was “bot crawls”.
If you look at your dashboard stats for Traffic are the numbers for logged in, anon, and crawler similarly disproportionate?
Do you have a lot of accounts under Users - Suspect?
We’re also seeing about 50 account registration/day on our wordpress site, but they’re spread out irregularly over time, mostly msn, gmail and yoohoo accounts.
It looks as if the high profile views are coming from anywhere it would be the anon users. I can get that some would be interested in checking out Profiles, but for numbers like you’re seeing l can’t help but think it would need to be script doing it.
My interest has been sparked, I’ll do some digging ASAP to see if there’s any way to get more data.
I agree about the script driven. Even if we had a huge number of users with ADHD who couldn’t be bothered to login and were just looking at the site to see if something has happened we wouldn’t be getting those kinds of numbers.
There is a table that stores all these information
In data explorer, you can run the following query to see which users are getting the most profile views:
SELECT
user_profile_views.user_profile_id AS user_id,
COUNT(user_profile_views.user_profile_id)
FROM user_profile_views
GROUP BY user_profile_views.user_profile_id
ORDER BY COUNT(user_profile_views.user_profile_id) DESC
Another query that might be helpful is to see which IP address is generating the most views:
SELECT
user_profile_views.ip_address,
COUNT(user_profile_views.ip_address)
FROM user_profile_views
GROUP BY user_profile_views.ip_address
ORDER BY COUNT(user_profile_views.ip_address) DESC
I work with Andrew Waugh on the same Discourse site. I finally had some time to start digging into this, and soon discovered that a whole bunch of the requests came from one IP, 104.236.201.204, and that they all included our API key.
That IP belongs to Digital Ocean, and since the requests included our API key, I’m assuming this is coming from Discourse Metrics. We’ve turned Metrics off now, but here’s a redacted sample from our “outer” nginx log: