One small comment on the `Processor` class: the helper functions take in a `dict` and modify it internally. Their signature (and also the usage in `process_event`) suggest that they return a copy of the dict however, they in fact modify the original dict passed in (`_add_timestamp` adds the timestamp to `event` as well). Depending on the use case, this might lead to accidental modification of the input data and subtle bugs.
As a side note, in order to get the deployment up and running, first I had to point my shell to minikube's docker-deamon (so that it had access to the collector image). I used "eval $(minikube docker-env)" in order to do that.
Also, had to use "minikube tunnel" to port the loadbalancer to my localhost and access FastAPI's UI.
(Leaving these ^ in case someone else is facing those issues)
Thanks for sharing this content, really eye opening to see how all the parts come together.
Thanks for this! Looking forward to the next episode!
Thanks for sharing this detailed walk-through!
One small comment on the `Processor` class: the helper functions take in a `dict` and modify it internally. Their signature (and also the usage in `process_event`) suggest that they return a copy of the dict however, they in fact modify the original dict passed in (`_add_timestamp` adds the timestamp to `event` as well). Depending on the use case, this might lead to accidental modification of the input data and subtle bugs.
You are right, something to point out in the part 2 of the series.
Hi Aurimas! I have been learning a lot from your newsletter! :) Are you planning on doing a Master Project Template for MLOps???
Kind regards,
Fred
Yes, there will be one for MLOps for sure.
Awesome post!
As a side note, in order to get the deployment up and running, first I had to point my shell to minikube's docker-deamon (so that it had access to the collector image). I used "eval $(minikube docker-env)" in order to do that.
Also, had to use "minikube tunnel" to port the loadbalancer to my localhost and access FastAPI's UI.
(Leaving these ^ in case someone else is facing those issues)
Thanks for sharing this content, really eye opening to see how all the parts come together.