app.loshadki

CloudAnalytics for AWS Amplify

macOS and iOS dashboards for AWS Amplify Access Logs

Table of content

Screenshots

Available on all platforms

Available on all platforms

Documentation

CloudAnalytics for AWS Amplify (CloudAnalytics for short) is an application built for iOS and macOS, that allows you to export Access Logs from you AWS Amplify applications and do analytics locally on your personal device. We include User-Agent parser and GeoLite database, that allows us to identify log entries and build useful dashboards.

Obviously if you have 100k users a day, this application is not for you. But if you are using AWS Amplify to host static blogs like Hugo or pretty simple websites, you can easily use this application to track the referrals and users. One of the website that we use with AWS Amplify has 10,000 access logs per day.

How to use it?

In AWS create a User with Programmatic access and role as defined below (as you can see the application only needs a read-only access)

{
   "Version": "2012-10-17",
   "Statement": [
     {
       "Effect": "Allow",
       "Action": [
         "amplify:ListDomainAssociations",
         "amplify:GenerateAccessLogs"
       ],
       "Resource": "arn:aws:amplify:*:*:apps/*"
     },
     {
       "Effect": "Allow",
       "Action": "amplify:ListApps",
       "Resource": "*"
     }
   ]
 }

In the application add a new account. Choose the region, input access key and secret key and give any random name to your account.

Save this account. On the next screen you can choose which applications and domains you want to monitor, and click download access logs. Later on every application start, CloudAnalytics will download the access logs automatically.

Navigate to one of the domains in the navigation bar to see the dashboards.

FAQ

Is there are any differences between the application available for free on web-site or in Apple Store?

The application is exactly the same. If you purchase the application from iOS or macOS Apple Store you will get it on all your devices (iPad, iPhone and Mac), but if you want to try how it works, and test if application will be useful for you, feel free to use the free to download version from our website. If you decide that you like the application, please purchase it from Apple Store, so you will get automatic updates and be able to use this application everywhere.

How much data this application will take on my device?

We use SQLite3 as a data storage for the access logs. It works perfectly for the access logs, as a lot of columns will have the same values, that allows to compress the data. And we store only 14 days of data. Currently, we use this application with 4 websites, in total having 200,000 access log records, and the database uses 200MB.

How long does it take to download the access logs?

AWS Amplify provides an API GenerateAccessLogs, that might be slow, that is probably the slowest operation in the importing of the logs. It also limits how many logs can be included in the single file. If you have more unique users, you will have to make the intervals shorter (available in Preferences).

How fast are the searches?

You will have access to the dashboards instantly after downloading the logs. We optimized the indexes in SQLite3 to provide the best performance for our searches. The only dashboard that can take longer is Geo Location, as it needs to do matching of IP addresses with GeoLite database (that we also import in SQLite3).

Can I run custom searches?

Not from the application, but on macOS you can find the database under ~/Library/Containers/app.loshadki.cloudanalytics/Data/Library/Application Support/db/db.sqlite. Feel free to run any custom SQL on the tables. If you have some great idea of the dashboard, feel free to send us a suggestion.

Known issues

  • Available only in Dark Mode (No Light Mode support at this time).
  • If you catch an error while downloading logs on iOS, you will have to restart the application.

Privacy Policy

We believe very strongly in our customers right to privacy. Our customer records are not for sale or trade, and we will not disclose our customer data to any third party except as may be required by law.

Any information that you provide to us in the course of interacting with our sales or technical support departments is held in strict confidence. This includes your contact information (including, but not limited to your email address and phone number), as well as any data that you supply to us in the course of a technical support interaction.

Support

Please email us any suggestions, ideas, questions or discovered bugs to support@loshadki.app