-
Notifications
You must be signed in to change notification settings - Fork 831
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
WIP: initial EFK setup #610
Conversation
Cool. I think by feature might be difficult but we do have a "names" field in the "default_data" which can give columns names. The core would be to get the request back and be able to load it as a SeldonMessage for retransimisison |
Initial attempt at request-response logging logs first SeldonMessage.toString and then full request body. Comes out like:
Doesn't look great in kibana presently as it's multi-line and each line of logging is a separate entry. I think I need to figure out how to format it as single line and then figure out how to search for something more specific. |
It seems it is possible to get the logging to be parsed as structured, I think for that the log line might need to be entirely json and single-line. We could do the logging in a general way in the java engine using a contextHandler but we might be better doing it explicitly as then we can deserialize the grpc. |
Now able to filter on particular values from the request/response. Next step is to enrich the messages to indicate which is a request and which is a response. Going to do this in the PredictionService as there the request is enriched with puid and if we log that version then we'll be able to search for Note for the future - should we parse out the |
Now have puid in request and response. Not sure about how we could log data in a nicely queryable way without running up against array querying limitations. We could look at doing some custom parsing/transformation with fluentbit but this might be more complex than it's intended for. Other options might be if there's a simple way to just serialize the message differently or send the request to another agent to transform (e.g. through a message broker). |
Considering alternative idea of transforming data under #616 |
Closing this in favour of #616 |
failed to trigger Pull Request pipeline
|
Part of #545
Able to run EFK and find log entries in kibana such as:
But need to consider how we'd (optionally) log the full request and how the content of the request would appear in kibana. Clearly we see full log and search by timestamp already. Would we need to be able to search by a feature value?