Refactor field iterators to return `OwnedTargetPath`s
These functions live here:
- https://github.com/vectordotdev/vector/blob/master/lib/vector-core/src/event/log_event.rs#L441
- https://github.com/vectordotdev/vector/blob/master/lib/vector-core/src/event/util/log/all_fields.rs
This should eliminate unnecessary path editing like this.
@pront I would like to work on this issue. I am new to Rust and the Vector project, but I am eager to learn and contribute. Could you please provide some guidance or point me to relevant resources to help me get started?
Hi @pramud, thank you for your interest!
You can start by reading the https://github.com/vectordotdev/vector/blob/master/CONTRIBUTING.md guide.
Then you can look at the iterator functions here: https://github.com/vectordotdev/vector/blob/master/lib/vector-core/src/event/log_event.rs#L441.
Notice how they all define Item = (KeyString, &Value). This issue is about changing that KeyString type with an OwnedTargetPath type. The compiler should be able to guide you to all the places that need updating.
The low level implementation is here: https://github.com/vectordotdev/vector/blob/master/lib/vector-core/src/event/util/log/all_fields.rs
After all the code is updated, we need to ensure the changes didn't break code that is relying on these iterators.
Note: I will be away for a couple of weeks so I might not be responsive but feel free to ask more questions here.
Hi @pramud, I am back. If you are still interesting in tackling this issue, I am happy to help.
Hi, can i take on this issue ?
Hi, can i take on this issue ?
Sure, you are welcome.