This project is implementation of test task
I didn't know how I could use filters and middleware in this project, because it's quite simple, therefore I created logger and exception handler. I know that for exception handling there are embedded tools.
There was not written in requirements anything about performance and what amount of data would be handled, therefore I didn't pay attention on performance and choosing best algorithms.