Problem Description:
During the 7 Jun 24 (#162) and 18 Jun 24 (#181) performance tests, we observed over 1,100 failed searchEstimate requests. The logs do not have enough information to investigate. This is the pattern:
2024-06-07 17:35:41.880 Notice: XDMP-JSONDOC: Document is not JSON
2024-06-07 17:35:41.880 Notice:+in /ds/lux/searchEstimate.mjs [1.0-ml]
2024-06-07 17:35:41.884 Warning: {"errorResponse":{"statusCode":400,"status":"Bad Request","messageCode":"XDMP-JSONDOC","message":"Document is not JSON"}}
[x] Pick an existing or new trace event, such as LuxSearch or LuxSearchEstimate. Selected LuxSearch.
[x] If a new trace event, add to default-group.json. No new trace event.
[x] Add a try/catch block in getSearchEstimate. In the catch block, when the selected trace event is enabled, log the request's search criteria and exception.
[x] Update mineBackendLogs.sh to surface failed searchEstimate requests.
Requirements:
See above.
Needed for promotion:
If an item on the list is not needed, it should be crossed off but not removed.
~- [ ] Wireframe/Mockup - Mike~
[x] Committee discussions - Sarah
[x] Feasibility/Team discussion - Sarah
[x] Backend requirements
~- [ ] Frontend requirements~
~- [ ] Are new regression tests required for QA - Amy~
[x] Compels a performance test? No.
[x] Questions
List of questions for discussions. Answers should be documented within the issue.
UAT/LUX Examples:
Developer will be able to force an error and ensure the log entries are created and picked up by the log mining script.
Problem Description: During the 7 Jun 24 (#162) and 18 Jun 24 (#181) performance tests, we observed over 1,100 failed
searchEstimate
requests. The logs do not have enough information to investigate. This is the pattern:Grep commands and exact counts:
Expected Behavior/Solution: Similar as #177:
LuxSearch
orLuxSearchEstimate
. Selected LuxSearch.getSearchEstimate
. In the catch block, when the selected trace event is enabled, log the request's search criteria and exception.searchEstimate
requests.Requirements: See above.
Needed for promotion: If an item on the list is not needed, it should be crossed off but not removed.
~- [ ] Wireframe/Mockup - Mike~
UAT/LUX Examples: Developer will be able to force an error and ensure the log entries are created and picked up by the log mining script.
Dependencies/Blocks: This ticket blocks https://git.yale.edu/lux-its/ml-cluster-formation/issues/24.
Related Github Issues:
177 could be implemented at the same time.
Related links: None
Wireframe/Mockup: Not needed