What is Desole?
Desole is an error-tracking system you can install in your AWS account, with just a few clicks. It enables organisations to track application exceptions and errors without having to choose between the convenience of software-as-a-service and the security of a self-hosted solution. You fully control the data, so it is easy to enforce compliance, encryption and data security requirements. At the same time, Desole uses highly-scalable AWS resources that can easily handle massive traffic, and auto-size on demand, so you do not have to worry about operating costs or administration.
Desole is free and released under a permissive open-source license (MIT), so you can easily inspect the source code and modify it to fit your needs. It’s also designed to be easily extensible with additional modules and triggers, so you can build additional services or error automation logic on top of it.
How does Desole work?
Desole works with three key components:
- Collector clients work in your software (typically a browser, or your server code), capturing error and exception information and sending it to the API
- The Collector API works as a HTTPS REST API, powered by AWS API Gateway and AWS Lambda, to receive events from collector clients, format and enrich them with metadata, and push to an AWS SNS topic for publishers
- Publishers are AWS Lambda functions that listen to the AWS SNS topic, and publish the received events to various storage systems. The standard Desole back-end application bundle comes with publishers to save event data to S3 and publish summary metrics to CloudWatch. You can easily add optional publishers, such as the one sending detailed event information to Pinpoint and ElasticSearch, or build your own publishers for other services.
How much does Desole cost to run?
There are no start-up costs associated with Desole. The software is free and opensource, and the AWS services run in your account. The standard Desole application bundle uses only AWS resources that are billed directly for usage, so there are no up-front financial commitments or recurring subscription costs for using it. The basic AWS services used by Desole also come with a generous free tier, meaning that for most small to medium sites, Desole is effectively free or the costs will be negligible.
Is Desole GDPR compliant?
Compliance with a particular legislation is something your regulators and auditors have to decide on, and we are not in a position to offer legal advice. Having said that, Desole is designed to make it easy to achieve compliance with GDPR and similar privacy-focused regulations:
- AWS claims that all their services are ready for GDPR (see the press announcement “All AWS Services GDPR ready”)
- Desole CloudFormation templates make it easy to set up all the processors in a particular region, so you can easily enforce data residency. The standard templates include
eu-central-1, which is physically located in Frankfurt, so you can keep all the data in Europe.
- Desole Collector API does not collect IP addresses or any personally identifiable information by default. It uses use automatically generated random device and session IDs to anonymise users but still provide you a good overview of overall demographics.
- Desole S3 Publisher, used for storing data, uses server-side encryption to protect the event information at rest. By default, the standard CloudFormation templates use S3-managed keys, but you can easily configure even a stronger protection with KMS.
- The standard CloudFormation template for Desole also enables you to easily configure data retention, and remove all event information older than a set number of days.