The term 'Microservices' cover an architectural style of building applications, that has gained a lot of focus the last years. A lot of the thoughts behind microservices were born from experiences with Service Oriented Architecture (SOA), which were the next big thing a decade ago.
The idea with microservices is to split an application into multiple independent deployable services, each with a single concern. Rather than building, maintaining and deploying an application as a monolith, microservices with a predefined interface can evolve or be easily replaced, without affecting the remaining parts of the application. A microservice can communicate with other microservices over the network. Communication is often based on REST and/or through a queue/service bus.
An microservice architecture introduces both advantages and disadvantages. Some of the advantages of using microservices are:
Get an overview of all of your microservices in the same dashboard
Notifications through email, Slack, Microsoft Teams, and more
Pay the same low price no matter how many servers and CPUs you use
Visualize a message traveling through multiple services with Correlations
One of many challenges when switching to a microservice architecture is the need to monitor multiple services. While a system built using microservices should be able to survive one or more services being offline, your application won't work 100% when it happens. Keeping an eye on a lot of services can be difficult without an error management system, developed especially for microservice architectures.
With elmah.io, you will receive a great set of tools to help you ensure the stability of your microservices. With an unlimited number of logs and individual access control, you have the flexibility you need to monitor and react when errors start happening in one or more services. Want to send Slack notifications to the core team and mails to third-party vendors? No problem. The elmah.io App Store contains an app for a lot of popular protocols and instant messaging apps. Want to correlate log messages across multiple services running on a cluster of virtual machines or Docker containers? The Correlation feature will show log ingestion from multiple services in a single view making it possible to trace a message through the entire pipeline.
Most parts of elmah.io are built on top of a microservices architecture. Since we eat our own dog food, the main focus of ours is to develop elmah.io to be able to monitor elmah.io. By using our own product for error management on elmah.io, we feel pretty confident recommending you elmah.io as the Cloud logging and error management platform for your microservice architecture.