Implementing Cross-cutting Concerns for ASP.NET Microservice
What you'll learn
- 3rd Course of Getting Started with Microservices using Clean Architecture
- Learn how to implement Logging
- Learn how to implement Serilog
- Learn how to use Serilog Sink
- Learn how to implement co-relation id across microservices
- Learn how to implement Microsoft Logging Abstractions
- Learn how to centralize logging using ELK Stack
- Learn how to implement Tracing
- Learn how to implement enrich log data
- Learn how to implement health checks
Requirements
- Basics of C#
Description
Microservices are a design pattern in which applications are composed of independent modules that communicate with each other within well defined boundaries. This makes it easier to develop, test, and deploy isolated parts of your application. If you are coming on this course directly, I suggest follow the Learning path as mentioned below to understand the entire picture.
1. Getting Started with Microservices using Clean Architecture
2. Securing Microservices using Identity Server 4
3. Implementing Cross Cutting Concerns (Current Course)
4. Versioning Microservices
5. Building Angular Application for MicroServices
6. Deploying Microservices to Kubernetes and AKS
/p>
In the earlier section, you would have already learnt plethora of technologies while designing Microservices and implementing Identity Server. During that learning journey you must have designed Microservices module using clean architecture. In this course, you will learn how to implement cross cutting concerns like Logging. While doing so, you will first understand what is logging and how to get started with it. Once, you are comfortable with that, then you will learn advance concepts like Logs filtering at different levels and understand what to log and what not.
During that journey, you will also learn how to implement structured logging using Serilog and then centralised implementation using ELK stack. During this you will also learn how to enrich the logging experience. Then, you will be implementing your own Coorelation Id generator to coorelate between microservices.
This course is part of Microservices series where in you will learn all minute details related to Microservices. During this learning path, you will learn how to connect the dots using different technologies and tooling. This course "Implementing Cross Cutting Concerns" is the third edition of the series. In this course, you will be implementing following things:
Introduction
Introduction
Architecture Overview
Branching Strategy
Adding Logging to Console
EShopping Project Structure
ASPNet Core Logging Concepts
Understanding LogLevel
Filtering Log Messages
Implementing ILogger in Catalog Controller
Filtering Microsoft.Hosting.Lifetime Messages
Logging Messages from Application
Logging Application Exception
Adding Common Logging Project
Implementing Logging Class
Adding Serilogger to all Microservices
Elastic Implementation
Understanding Logging
Understanding ELK Stack
ELK Installation using Docker
Elastic Search Integration
Elastic Configuration Changes in application and Docker Compose
Creating Index Pattern
Visualizing Logs in Kibana
Refreshing Index Pattern
Tracing field missing
Creating Correlation Id Generator
Creating Correlation Id Middleware
Adding Middleware in Gateway
Adding Correlation Id in all the Microservices
Adding Correlation Dependency
Inspecting Correlation Context
Enriching Serilog Data
Formatting Exception Details
Publishing Correlation ID in Service Bus
Health Check Test
Who this course is for:
- Beginners, Intermediate or even Advanced level candidates who wanted to refine their Microservices knowledge using .Net core and other tons of different technologies
Instructor
Hi, I am Rahul Sahay. I'm specialist in Web technologies. You can often find me speaking and training at various events around. I am Software Architect. I have been working in various aspects of the software development life cycle for 15+ years, focusing on System Design, Problem Solving, Low Level Design and many more like web stack development. I have been part of software development in different applications, ranging from client applications to web services to websites. As a code junkie, I love to craft software, not only I enjoy writing software, I love sharing my knowledge via my blog.
I also speak at conferences, web camps, and code camps.