-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve logging #41
Improve logging #41
Conversation
As already discussed, for |
I'm looking into the diff idea. |
0572183
to
1d28c06
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems good so far haven't tested it though.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM overall
* Remove all object prints from the debug logs. * Add metatada to the logger before running the transformation * Ability to print whole functionIO to the events If the GRPC server is in devmode, it will save the funcIOs of each function to configMaps in the `default` namespace. It will always keep two configMaps per composite and function. One contains the previous and one the current state. For example for VSHNPostgreSQL this could result in up to four configMaps; two for the postgresql function and two for the miniodev function (which provides the local S3 bucket). These configMaps can be used to see the state of the whole FuncIO and should help with local debugging. Additionally the GRPC server now prints a diff of those configMaps on each reconcile. The configMaps and the diffs will only rotate on `.spec` changes on the claim/composite, it uses the generation to track current and previous states. This way we can track the "logical" diff of a change, even if it needs multiple reconcile loops to be applied fully.
Summary
If the GRPC server is in devmode, it will save the funcIOs of each function to configMaps in the
default
namespace. It will always keep two configMaps per composite and function. One contains the previous and one the current state. For example for VSHNPostgreSQL this could result in up to four configMaps; two for the postgresql function and two for the miniodev function (which provides the local S3 bucket).These configMaps can be used to see the state of the whole FuncIO and should help with local debugging. Additionally the GRPC server now prints a diff of those configMaps on each reconcile.
The configMaps and the diffs will only rotate on
.spec
changes on the claim/composite, it uses the generation to track current and previous states. This way we can track the "logical" diff of a change, even if it needs multiple reconcile loops to be applied fully.Checklist
bug
,enhancement
,documentation
,change
,breaking
,dependency
as they show up in the changelog