get all findings as part of findings API enhancement#803
Conversation
Signed-off-by: Riya Saxena <riysaxen@amazon.com>
src/main/java/org/opensearch/securityanalytics/action/GetFindingsRequest.java
Outdated
Show resolved
Hide resolved
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #803 +/- ##
============================================
- Coverage 24.97% 24.76% -0.22%
+ Complexity 1043 1027 -16
============================================
Files 277 277
Lines 12771 12722 -49
Branches 1391 1402 +11
============================================
- Hits 3190 3150 -40
Misses 9307 9307
+ Partials 274 265 -9 ☔ View full report in Codecov by Sentry. |
src/main/java/org/opensearch/securityanalytics/transport/TransportGetFindingsAction.java
Outdated
Show resolved
Hide resolved
|
i am not sure this design is correct or maybe i have grossly misunderstood the approach. Can you add a detailed approach of how findings from detectors of all log types are being fetched? |
eirsep
left a comment
There was a problem hiding this comment.
i am not sure this design is correct or maybe i have grossly misunderstood the approach.
Can you add a detailed approach of how findings from detectors of all log types are being fetched?
So, the idea is first to get all the detectors using |
src/main/java/org/opensearch/securityanalytics/transport/TransportGetFindingsAction.java
Outdated
Show resolved
Hide resolved
src/main/java/org/opensearch/securityanalytics/transport/TransportGetFindingsAction.java
Outdated
Show resolved
Hide resolved
src/main/java/org/opensearch/securityanalytics/transport/TransportGetFindingsAction.java
Outdated
Show resolved
Hide resolved
src/main/java/org/opensearch/securityanalytics/transport/TransportGetFindingsAction.java
Outdated
Show resolved
Hide resolved
| public void onFailure(Exception e) { | ||
| findingsService.getFindings( | ||
| detectors, | ||
| request.getLogType() == null ? "*" : request.getLogType(), |
There was a problem hiding this comment.
how is findings service already handling "*"? I don't see a change in FIndingsService class in this PR
Gotcha! thank you. I wasn't aware that we already are searching on the "all finding indices pattern" Can you create 2 detectors for different log types and test fetching findings for only one of the log types and verify that behaviour is correct? |
this test is creating detectors of two different logTypes and verifying the behavior -> https://github.com/opensearch-project/security-analytics/pull/803/files#diff-d37f0c96e5ab58c9a80449652179f36f9696044aa275fc7c7f33ce2677fa6793 |
Signed-off-by: Riya Saxena <riysaxen@amazon.com>
Signed-off-by: Riya Saxena <riysaxen@amazon.com>
Signed-off-by: Riya Saxena <riysaxen@amazon.com>
Signed-off-by: Riya Saxena <riysaxen@amazon.com>
| if (startTimeParam != null && !startTimeParam.isEmpty()) { | ||
| try { | ||
| startTime = Instant.ofEpochMilli(Long.parseLong(startTimeParam)); | ||
| } catch (NumberFormatException | NullPointerException | DateTimeException e) { | ||
| // Handle the parsing error | ||
| // For example, log the error or provide a default value | ||
| startTime = Instant.now(); // Default value or fallback | ||
| } | ||
| } |
There was a problem hiding this comment.
Minor - could create a private method for this to avoid the duplication with the endTime parsing
|
Fix merge conflicts + make sure CI's pass |
Signed-off-by: Riya <69919272+riysaxen-amzn@users.noreply.github.com>
8a7c3d8
Signed-off-by: Subhobrata Dey <sbcd90@gmail.com>
fix integ tests for findings
|
The backport to To backport manually, run these commands in your terminal: # Fetch latest updates from GitHub
git fetch
# Create a new working tree
git worktree add .worktrees/backport-2.x 2.x
# Navigate to the new working tree
cd .worktrees/backport-2.x
# Create a new branch
git switch --create backport/backport-803-to-2.x
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 0d1d599fea536ee2afe088f70ee1980a0ec572fe
# Push it to GitHub
git push --set-upstream origin backport/backport-803-to-2.x
# Go back to the original working tree
cd ../..
# Delete the working tree
git worktree remove .worktrees/backport-2.xThen, create a pull request where the |
…ect#803) * get all findings as part of findings API enhancement Signed-off-by: Riya Saxena <riysaxen@amazon.com> * findingsAPI feature enhancements (address comments to prev PR) Signed-off-by: Riya Saxena <riysaxen@amazon.com> * findingsAPI feature enhancements (address comments to prev PR) Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added support for param in Finding API Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added detectionType as param for Findings API enhancements Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added few tests to validate findings by params Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added test for searchString param in FindingsAPI Signed-off-by: Riya Saxena <riysaxen@amazon.com> * adding addiional params findingIds, startTime and endTime as findings API enhancement Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added params in getFindingsByDetectorId func * changed the startTime and endTime req input format * fix merge conflixt * fix integ test failures in findings API * fix integ tests * fix integ tests for findings Signed-off-by: Subhobrata Dey <sbcd90@gmail.com> --------- Signed-off-by: Riya Saxena <riysaxen@amazon.com> Signed-off-by: Riya <69919272+riysaxen-amzn@users.noreply.github.com> Signed-off-by: Subhobrata Dey <sbcd90@gmail.com> Co-authored-by: Subhobrata Dey <sbcd90@gmail.com>
* get all findings as part of findings API enhancement (#803) * get all findings as part of findings API enhancement Signed-off-by: Riya Saxena <riysaxen@amazon.com> * findingsAPI feature enhancements (address comments to prev PR) Signed-off-by: Riya Saxena <riysaxen@amazon.com> * findingsAPI feature enhancements (address comments to prev PR) Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added support for param in Finding API Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added detectionType as param for Findings API enhancements Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added few tests to validate findings by params Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added test for searchString param in FindingsAPI Signed-off-by: Riya Saxena <riysaxen@amazon.com> * adding addiional params findingIds, startTime and endTime as findings API enhancement Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added params in getFindingsByDetectorId func * changed the startTime and endTime req input format * fix merge conflixt * fix integ test failures in findings API * fix integ tests * fix integ tests for findings Signed-off-by: Subhobrata Dey <sbcd90@gmail.com> --------- Signed-off-by: Riya Saxena <riysaxen@amazon.com> Signed-off-by: Riya <69919272+riysaxen-amzn@users.noreply.github.com> Signed-off-by: Subhobrata Dey <sbcd90@gmail.com> Co-authored-by: Subhobrata Dey <sbcd90@gmail.com> * fix integ test (#918) Signed-off-by: Joanne Wang <jowg@amazon.com> * Feature findings api enhancements (#914) * get all findings as part of findings API enhancement Signed-off-by: Riya Saxena <riysaxen@amazon.com> * findingsAPI feature enhancements (address comments to prev PR) Signed-off-by: Riya Saxena <riysaxen@amazon.com> * findingsAPI feature enhancements (address comments to prev PR) Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added support for param in Finding API Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added detectionType as param for Findings API enhancements Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added few tests to validate findings by params Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added test for searchString param in FindingsAPI Signed-off-by: Riya Saxena <riysaxen@amazon.com> * adding addiional params findingIds, startTime and endTime as findings API enhancement Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added params in getFindingsByDetectorId func * changed the startTime and endTime req input format * fix merge conflixt * fix integ test failures in findings API * fix integ tests * refactored the logic Signed-off-by: Riya Saxena <riysaxen@amazon.com> * remove unused imports * address the pr comments Signed-off-by: Riya Saxena <riysaxen@amazon.com> * address pr comments Signed-off-by: Riya Saxena <riysaxen@amazon.com> * SA integ tests fix * SA integ tests fix * fix integ tests for findings Signed-off-by: Subhobrata Dey <sbcd90@gmail.com> * fix conflixt errors Signed-off-by: Riya Saxena <riysaxen@amazon.com> * fix conflixt errors Signed-off-by: Riya Saxena <riysaxen@amazon.com> * fix conflixt errors Signed-off-by: Riya Saxena <riysaxen@amazon.com> * fix conflixt errors Signed-off-by: Riya Saxena <riysaxen@amazon.com> * fix integ tests Signed-off-by: Riya Saxena <riysaxen@amazon.com> * fix integ tests Signed-off-by: Riya Saxena <riysaxen@amazon.com> * fix integ tests Signed-off-by: Riya Saxena <riysaxen@amazon.com> * fix flaky integ tests Signed-off-by: Riya Saxena <riysaxen@amazon.com> * address pr comments Signed-off-by: Riya Saxena <riysaxen@amazon.com> --------- Signed-off-by: Riya Saxena <riysaxen@amazon.com> Signed-off-by: Riya <69919272+riysaxen-amzn@users.noreply.github.com> Signed-off-by: Subhobrata Dey <sbcd90@gmail.com> Co-authored-by: Subhobrata Dey <sbcd90@gmail.com> --------- Signed-off-by: Riya Saxena <riysaxen@amazon.com> Signed-off-by: Riya <69919272+riysaxen-amzn@users.noreply.github.com> Signed-off-by: Subhobrata Dey <sbcd90@gmail.com> Signed-off-by: Joanne Wang <jowg@amazon.com> Co-authored-by: Riya <69919272+riysaxen-amzn@users.noreply.github.com> Co-authored-by: Subhobrata Dey <sbcd90@gmail.com>
…ect#803) * get all findings as part of findings API enhancement Signed-off-by: Riya Saxena <riysaxen@amazon.com> * findingsAPI feature enhancements (address comments to prev PR) Signed-off-by: Riya Saxena <riysaxen@amazon.com> * findingsAPI feature enhancements (address comments to prev PR) Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added support for param in Finding API Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added detectionType as param for Findings API enhancements Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added few tests to validate findings by params Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added test for searchString param in FindingsAPI Signed-off-by: Riya Saxena <riysaxen@amazon.com> * adding addiional params findingIds, startTime and endTime as findings API enhancement Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added params in getFindingsByDetectorId func * changed the startTime and endTime req input format * fix merge conflixt * fix integ test failures in findings API * fix integ tests * fix integ tests for findings Signed-off-by: Subhobrata Dey <sbcd90@gmail.com> --------- Signed-off-by: Riya Saxena <riysaxen@amazon.com> Signed-off-by: Riya <69919272+riysaxen-amzn@users.noreply.github.com> Signed-off-by: Subhobrata Dey <sbcd90@gmail.com> Co-authored-by: Subhobrata Dey <sbcd90@gmail.com>
* support object fields in aggregation based sigma rules (#789) Signed-off-by: Subhobrata Dey <sbcd90@gmail.com> * Fix duplicate ecs mappings which returns incorrect log index field in mapping view API (#786) (#788) * field mapping changes Signed-off-by: Joanne Wang <jowg@amazon.com> * add integ test Signed-off-by: Joanne Wang <jowg@amazon.com> * turn unmappedfieldaliases as set and add integ test Signed-off-by: Joanne Wang <jowg@amazon.com> * add comments Signed-off-by: Joanne Wang <jowg@amazon.com> * fix integ tests Signed-off-by: Joanne Wang <jowg@amazon.com> * moved logic to method for better readability Signed-off-by: Joanne Wang <jowg@amazon.com> --------- Signed-off-by: Joanne Wang <jowg@amazon.com> * Fix get mappings view API incorrectly returning ecs path (#867) * add logic and integ tests to not add duplicate to log-types-config index Signed-off-by: Joanne Wang <jowg@amazon.com> * change naming for existingFieldMapping and change contains to equals Signed-off-by: Joanne Wang <jowg@amazon.com> --------- Signed-off-by: Joanne Wang <jowg@amazon.com> * fix integ test (#918) Signed-off-by: Joanne Wang <jowg@amazon.com> * get all findings as part of findings API enhancement (#803) * get all findings as part of findings API enhancement Signed-off-by: Riya Saxena <riysaxen@amazon.com> * findingsAPI feature enhancements (address comments to prev PR) Signed-off-by: Riya Saxena <riysaxen@amazon.com> * findingsAPI feature enhancements (address comments to prev PR) Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added support for param in Finding API Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added detectionType as param for Findings API enhancements Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added few tests to validate findings by params Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added test for searchString param in FindingsAPI Signed-off-by: Riya Saxena <riysaxen@amazon.com> * adding addiional params findingIds, startTime and endTime as findings API enhancement Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added params in getFindingsByDetectorId func * changed the startTime and endTime req input format * fix merge conflixt * fix integ test failures in findings API * fix integ tests * fix integ tests for findings Signed-off-by: Subhobrata Dey <sbcd90@gmail.com> --------- Signed-off-by: Riya Saxena <riysaxen@amazon.com> Signed-off-by: Riya <69919272+riysaxen-amzn@users.noreply.github.com> Signed-off-by: Subhobrata Dey <sbcd90@gmail.com> Co-authored-by: Subhobrata Dey <sbcd90@gmail.com> * Feature findings api enhancements (#914) * get all findings as part of findings API enhancement Signed-off-by: Riya Saxena <riysaxen@amazon.com> * findingsAPI feature enhancements (address comments to prev PR) Signed-off-by: Riya Saxena <riysaxen@amazon.com> * findingsAPI feature enhancements (address comments to prev PR) Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added support for param in Finding API Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added detectionType as param for Findings API enhancements Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added few tests to validate findings by params Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added test for searchString param in FindingsAPI Signed-off-by: Riya Saxena <riysaxen@amazon.com> * adding addiional params findingIds, startTime and endTime as findings API enhancement Signed-off-by: Riya Saxena <riysaxen@amazon.com> * added params in getFindingsByDetectorId func * changed the startTime and endTime req input format * fix merge conflixt * fix integ test failures in findings API * fix integ tests * refactored the logic Signed-off-by: Riya Saxena <riysaxen@amazon.com> * remove unused imports * address the pr comments Signed-off-by: Riya Saxena <riysaxen@amazon.com> * address pr comments Signed-off-by: Riya Saxena <riysaxen@amazon.com> * SA integ tests fix * SA integ tests fix * fix integ tests for findings Signed-off-by: Subhobrata Dey <sbcd90@gmail.com> * fix conflixt errors Signed-off-by: Riya Saxena <riysaxen@amazon.com> * fix conflixt errors Signed-off-by: Riya Saxena <riysaxen@amazon.com> * fix conflixt errors Signed-off-by: Riya Saxena <riysaxen@amazon.com> * fix conflixt errors Signed-off-by: Riya Saxena <riysaxen@amazon.com> * fix integ tests Signed-off-by: Riya Saxena <riysaxen@amazon.com> * fix integ tests Signed-off-by: Riya Saxena <riysaxen@amazon.com> * fix integ tests Signed-off-by: Riya Saxena <riysaxen@amazon.com> * fix flaky integ tests Signed-off-by: Riya Saxena <riysaxen@amazon.com> * address pr comments Signed-off-by: Riya Saxena <riysaxen@amazon.com> --------- Signed-off-by: Riya Saxena <riysaxen@amazon.com> Signed-off-by: Riya <69919272+riysaxen-amzn@users.noreply.github.com> Signed-off-by: Subhobrata Dey <sbcd90@gmail.com> Co-authored-by: Subhobrata Dey <sbcd90@gmail.com> * fix findings api integ tests Signed-off-by: Joanne Wang <jowg@amazon.com> --------- Signed-off-by: Subhobrata Dey <sbcd90@gmail.com> Signed-off-by: Joanne Wang <jowg@amazon.com> Signed-off-by: Riya Saxena <riysaxen@amazon.com> Signed-off-by: Riya <69919272+riysaxen-amzn@users.noreply.github.com> Co-authored-by: Subhobrata Dey <sbcd90@gmail.com> Co-authored-by: Riya <69919272+riysaxen-amzn@users.noreply.github.com>
Description
findings/_searchAPI. As part of the enhancement, the API can now return all the findings for all the detectors.severityanddetectionTypein findings APICorresponding Alerting and Common-Utils PRs
Issues Resolved
#795
Check List
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.