FullStack DDD/CQRS with GraphQL workshop including distributed tracing and monitoring. This shows the configuration from React frontend to .Net backend.
MIT License
WebHook backend setup Configure Logging Configure Tracing Configure Identity Configure Monitoring Handle GraphQL Errors Build Automation API testing Postman/Newman
OpenId Connect
and OAuth2.0
Please follow these steps if you want to understand it because of the connection between the parts:
Frontend to Backend distributed tracing example
On this monitoring graphical visualization, you can see entire request sended from Client Frontend (Creating a webhook)
Net6.0 is 🚀 (Net5.0 vs Net6.0 measurement)
Based on your system download and install docker. This is required!
There are two options:
.\build.cmd E2E_RunAs_Local
from project root. (This will take time since restore)NOTE Restore scripts use
npm
. In case you wanna useyarn
you need to use manual instalation process..
From root directory run tye run
(Make sure Docker is running before)
Set this configurtaion settings (for localhost) from your cmd
:
#For Linux
sysctl -w vm.max_map_count=262144
echo "vm.max_map_count=262144" >> /etc/sysctl.conf
#For Windows WSL
wsl -d docker-desktop
sysctl -w vm.max_map_count=262144
Continue with images:
In the /Docker
folder you will find prepared images for:
cd
to Docker/ElasticSearch
and run docker-compose up
cd
to Docker/Beats
and run docker-compose up
In each folder you will find docker-compose.yml
and you need to run the command docker-compose up
in your terminal. The setup has been tested on WSL Docker Desktop.
Note: Folder
/Docker
also contains other images for aditional lessons. (For this demo ignor it)
Start the elasticsearch container group and then beats. Please stick to this order to avoid exception logging due to a missing connection. You can also put everything into a Docker image and wait until the previous section is complete.
Note: Running beats for demo is optional. This require additional RAM and CPU allocation..
In case you have problem to start elastic due to memory issues adjust max_map_count
#For Linux
sysctl -w vm.max_map_count=262144
echo "vm.max_map_count=262144" >> /etc/sysctl.conf
#For Windows WSL
wsl -d docker-desktop
sysctl -w vm.max_map_count=262144
To run all containers, please make sure you have enough RAM and a good computer - this is not for kids :P Have fun :)