Using Desole.io events
Desole publishers make it easy to get alerts and notifications about your application errors, search and query data or turn event trends into alerts.
The Desole S3 Publisher (built into the standard CloudFormation template) saves all event information to an S3 bucket, in a directory structure that allows you to easily filter and aggregate by application name and stage, year, month and day of the event, as well as severity and category. You can use any S3 access tool to get detailed information about an individual event, or use tools such as AWS Athena to query the data using SQL.
The optional Desole ElasticSearch publisher sends event data directly into an AWS ElasticSearch cluster, where you can easily search and query the data.
The CloudWatch publisher records CloudWatch metrics and it is built into the standard CloudFormation template. It allows you to monitor the application in realtime for error trends and set up alarms to send you e-mails or page you.
CloudWatch charges per unique combination of all dimensions, so to keep costs low the standard CloudWatch publisher aggregates everything up into two categories. One is combining app name, stage and severity level (For example, all fatal errors on the production version of the app show as a single count). The other combines app name, stage and error category (For example, all network errors on the production version of the app show as a single count). If you would like to get more detailed dashboards in Cloudwatch, modify the CloudWatch publisher source code and set up another copy using the instructions for custom integrations below.
The optional Pinpoint publisher saves all the events into Amazon Pinpoint mobile analytics. You can then easily look at user demographics, drill down into various event dimensions, and inspect graphs and charts in nice dashboards. If you use Pinpoint for your user engagement, just make sure to supply the device ID when initialising the collector client, and Desole will associate the events with customer devices. You can then set up automated user engagement campaigns (for example, sending people an e-mail or a push notification if they experience a particular error).
Desole is designed so that you can easily add more publishers or data sources. There are three possible integration points, all available as outputs of the standard Desole CloudFormation template.
Check out the Desole Event Format for more information on the structure of the data published to SNS and saved to S3.