-
Notifications
You must be signed in to change notification settings - Fork 69
Refactor JSON Parsing to Use Boost.JSON #202
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
Conversation
2045e4c to
5c8401d
Compare
billywr
left a comment
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!
|
A bit late to the BootJSON migration party, firstly can you point me to any docs we have if any to support the move to use BoostJSON? How efficient is BoostJSON, does it impact Log Monitor in any way, i.e making a bit bulky? Secondly can you provide some sample JSON configuration I can use to test this on my end as I look at the code? I'm assuming the config file does not change much |
70fad1e to
4c619c0
Compare
Signed-off-by: Charity Kathure <ckathure@microsoft.com>
cda8a3b to
510d60b
Compare
Signed-off-by: Charity Kathure <ckathure@microsoft.com>
f414b60 to
548cfca
Compare
|
|
||
| #include "pch.h" | ||
|
|
||
| #include "../src/LogMonitor/ConfigFileParser.cpp" |
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.
Do we not need this anymore?
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.
We don't need it anymore since we are using the new file JsonProcessor.cpp
| <ClCompile Include="ConfigFileParserTests.cpp"> | ||
| <Filter>Source Files</Filter> | ||
| </ClCompile> |
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.
Same question, why are we getting rid of this?
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.
In favour of JsonProcessorTests.cpp
Signed-off-by: Charity Kathure <ckathure@microsoft.com>
TinaMor
left a comment
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
This pull request introduces significant changes to the
LogMonitorproject, primarily focusing on replacing theConfigFileParserandJsonFileParserwith a newJsonProcessormodule. This includes the addition of new functions for handling different log types and updating the project files accordingly.New
JsonProcessormodule:JsonProcessor.cppwith functions to load, parse, and process JSON configuration files, handling different log types such as EventLog, File, ETW, and Process logs.JsonProcessor.hwith declarations for the new functions inJsonProcessor.cpp.Project file updates:
LogMonitor.vcxprojto includeJsonProcessor.cppandJsonProcessor.h, and removed references toConfigFileParser.cppandJsonFileParser.cpp. [1] [2]LogMonitorTests.vcxprojto includeJsonProcessorTests.cppand removed references toConfigFileParserTests.cpp. [1] [2]Test updates:
JsonProcessorTestsinJsonProcessorTests.cppto test the newJsonProcessorfunctionalities.LogMonitorTests.cppto remove the inclusion ofConfigFileParser.cpp.Pipeline changes:
Codebase simplification:
Main.cppto useloadAndProcessJsoninstead ofOpenConfigFilefor reading the configuration file.These changes aim to enhance the functionality and maintainability of the
LogMonitorproject by introducing a more robust JSON processing module.