Комментарии:
please tell the model domain.shared =Result .which fields inside in it
ОтветитьIs Logging the same as having auditing to keep information about which user performed an operation?
ОтветитьIs it just about log in application layer? How can we use this approach to log infrastructure layer, such as repository? Or what is the best way to log them?
ОтветитьWhere the connection string is stored?
I like your videos! ❤
I'm using NLog and I'm confused, It's already in the API project, should I do the same in Application layer?
Also, how can this affect the flow if I have validatorsbehavior too. I hope u can respond thanks a lot!
I was expecting to see structure logs as a result and than how to use it and what the benefits of having Structured Logs vs plain logs.
ОтветитьI tested this and the content of class LogginPipelineBehavior is not triggered. I really don't know what happened. Of course I've set up DI and the packages installed. (NET 7)
ОтветитьThanks code is on github?
ОтветитьHi Milan,
Thanks for this.
Small clarification. The implementation you did is only covering all the inbound request/response. How about logging outbound request/response.
E.g
Assume we calling a 3rd party application. Want to record what we send and receive in our logs.
Any thought on this?
Can you cover Microsoft App insights logging
ОтветитьHello Milan great video, thank you for sharing :)
I was expecting to see something about MediatR, is it coming in a next video or did I miss something in this video ?
Your video helped me a lot I'm studying cqrs with mediator and I intend to use this example log in my project
Thanks for sharing knowledge
Nice one. For me the biggest problem is always splitting LogEvent ID between different application layers (e.g: new EventId(100, "Unhandled"), new EventId(1001, "Payments"))
ОтветитьI really enjoy your videos! Short, to the point, with great value. It would be great to see the repository. I'd like to learn more on the Result implementation and how the other MediatR classes looks like. Like for example the UpdateProductCommand. Btw, get also some free time, so that you don't burn out. Working on Christmas day is not a good idea ;-)
ОтветитьIt's perfect how you go right to the point and make it easy to understand. Good job Milan!
ОтветитьAmazing video sir, i really enjoy your videos , very concise and and concrete, keep it up!
ОтветитьGreat tutorial. can you please share with us the code in github? Thanks!
ОтветитьWhy do you add an @ in front of your placeholders?
One thing to mention for logging in general: Even if the logs are disabled by config, the cost is still there.
If we assume that DateTime.UtcNow will take 1 second to execute, it will also take one second when the log level is disabled.
There are some workarounds to avoid this. One is a delegate that only executes if the log level is enabled. Another one is to nest your log into a if that checks the log level and only executes if log level is enabled.
Wanted to mention that because some traces can be cost intensive. That traces are mostly not required in production mode.
Thanks. But how to read logs in production environment during certain period of time?
ОтветитьGreat video. Similar approach to making exception handling.
ОтветитьI see cqrs and mediatR even when I want to learn another subject. I hate this situation.
ОтветитьExcellent video, as usual. I really like the format, succinctness and detail. Keep up the good work Milan!
ОтветитьMuch respect for what you do, keep going!
ОтветитьIt would be nice to see you make a video on other ways to manage cross cutting concerns like aspect oriented programming with postsharp(or new metalama) or other similar tools.
ОтветитьGreat video again! Could you please make one on logging with ELK stack (Elastic search, LogStash and Kibana) ?
ОтветитьPrecise info
Ответить