Audit logs of CSV downloads and email

Auditing of actions performed by users within the application is critical in some use-cases, for example to ensure users are not download large chunks of data on to their computers or sharing them leading to data breach.

The Arcadia activity logs is a good place to check for such activity. In our latest GA release, all CSV downloads are tracked. Here are two types of actions that lead to CSV download and how to check for them in the logs:

1) Adhoc CSV download from browser

Any browser initiated download from the Arcadia UI console is captured in the webserver logs. You can go to Activity Log -> WebServer Log.

CSV downloads will appear as log entries similar to this:

13:40,038 INFO P1 3807 CP Server Thread-19 127.0.0.1 admin “POST /arc/sqlrun/csvdownloadStore HTTP/1.1” 200 2 0.038 “http://10.0.0.221:38888/arc/apps/app/12571” …
2019-03-20 17:13:40,147 INFO P2 3808 CP Server Thread-19 127.0.0.1 admin "GET /arc/sqlrun/jsonselect?csvdownload=true

2) Email CSV attachments

Emails are also tracked within the logs as shown here:

Every email will have a set of “run_parameters” that defines who created the email job, recipients, and what content (snapshot, pdf, csv) was included.

In our example, we can see 4 CSV files were emailed by “admin” user to one recipient with email address "shaun@arcadia.net":

2019-03-20 17:21:42,950 INFO P1 3807 Thread-57 {“run_parameters”: {“skip_next_targets”: false, “force_run”: null, “creator_id”: 1, “creator_username”: “admin”, “image”: “/tmp/tmpj39hbcsn”, “csv_names_to_filepath”: {“Chart 1 title &lt&ltdummy_date:>>12921”: “/tmp/tmpthtjkjkz.csv”, “Combo chart title &lt&ltdummy_date:>>13074”: “/tmp/tmphx3hrwqy.csv”, “Only to download 1 row13132”: “/tmp/tmpel09bx4u.csv”, “Trellis bar chart 12570”: “/tmp/tmp0tt2a_bl.csv”}, “error”: null, “email_subject”: “[ArcadiaData] Trellis”, “message”: “”, “app_id”: 12571, “url_params”: “embed=true&sheet=1&param.Province.data=‘Manitoba’%2C%20’New%20Brunswick’&param.Province.exclude=in&param.singledate=2019-02-03&scope=%5B%7B%22filterId%22%3A13133%2C%22datasetId%22%3A864%2C%22filterName%22%3A%22Province%22%7D%5D”, “to_addresses”: [“shaun@arcadia.net”], “cc_addresses”: [], “image_type”: “E,C”, “visual_url”: “http://10.0.0.221:38888/arc/apps/app/12571”, “location_pathname”: “/arc/apps/app/12571”, “email_template”: “”, “from_address”: “admin &ltno-reply@arcadiadata.com>”, “name”: “Trellis.png”, “start_time”: “03/21/19 00:21:34 UTC”, “run_time”: “0:00:06.983552”}, “1”: {“email_subject”: “[ArcadiaData] Trellis”, “message”: “”, “app_id”: 12571, “url_params”: “embed=true&sheet=1&param.Province.data=‘Manitoba’%2C%20’New%20Brunswick’&param.Province.exclude=in&param.singledate=2019-02-03&scope=%5B%7B%22filterId%22%3A13133%2C%22datasetId%22%3A864%2C%22filterName%22%3A%22Province%22%7D%5D”, “to_addresses”: [“shaun@arcadia.net”], “cc_addresses”: [], “image_type”: “E,C”, “visual_url”: “http://10.0.0.221:38888/arc/apps/app/12571”, “location_pathname”: “/arc/apps/app/12571”, “email_template”: “”}}