For the question of "Who is running those queries", we use the "Query Logs" feature of SSAS.
Once you setup a bunch of properties in the SSAS Server, it would start to log to the configured SQL Server table.
To enable the query log, follow these steps:
(1) Create a SQL Server relational database to store the query log.
(2) Grant the Analysis Services service account sufficient permissions on the database. The account needs permission to create a table, write to the table, and read from the table.
(3) In SQL Server Management Studio, right-click Analysis Services | Properties | General, set CreateQueryLogTable to true.
(4) Optionally, change QueryLogSampling or QueryLogTableName if you want to sample queries at a different rate, or use a different name for the table.
Un-fortunately, the Query Logs, does NOT log the queries ! But, it does help in finding who / when the queries are running.
Once you have enabled logging, you can query the table for stats.
SELECT CAST(starttime AS DATE) 'Date'
, MSOLAP_User 'User'
, COUNT(1) 'No. of queries'
FROM [dbo].[OlapQueryLog]
GROUP BY MSOLAP_User
, CAST(starttime AS DATE)
ORDER BY 1 DESC, 3 DESC
There is also the AsTrace tool
For constant monitoring and logging, the ASTrace tool will capture a Profiler trace and write it to a SQL Server table without requiring a GUI. ASTrace also runs as a Windows service allowing it to restart automatically when the server reboots.