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 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.
Thanks for this! Looking forward to the next episode!
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.