Skip to content
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

Implemented cross-cluster monitors. #871

Merged
merged 22 commits into from
Feb 6, 2024

Conversation

AWSHurneyt
Copy link
Collaborator

@AWSHurneyt AWSHurneyt commented Feb 2, 2024

Description

Added support for configuring query, bucket, and cluster metrics monitors to execute against remote clusters.

Documentation PR for reference opensearch-project/documentation-website#6350

Issues Resolved

#796

Check List

  • New functionality includes testing.
    • All tests pass
  • New functionality has been documented.
    • New functionality has javadoc added
  • Commits are signed per the DCO using --signoff

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.

Copy link

codecov bot commented Feb 2, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (30b3b71) 49.85% compared to head (0b232d3) 48.69%.
Report is 11 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #871      +/-   ##
==========================================
- Coverage   49.85%   48.69%   -1.17%     
==========================================
  Files         233      236       +3     
  Lines        6561     6845     +284     
  Branches      939      996      +57     
==========================================
+ Hits         3271     3333      +62     
- Misses       3287     3509     +222     
  Partials        3        3              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

lezzago and others added 19 commits February 5, 2024 12:45
* Support any channel types from Notification

Signed-off-by: Ashish Agrawal <ashisagr@amazon.com>

* Remove unused CHANNEL_TYPES constant

Signed-off-by: Ashish Agrawal <ashisagr@amazon.com>

* Return empty array if failed to get features

Signed-off-by: Ashish Agrawal <ashisagr@amazon.com>

---------

Signed-off-by: Ashish Agrawal <ashisagr@amazon.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
* Drafted 2.11 release notes.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Drafted 2.11 release notes.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

---------

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
* Removed "last updated by" section from the UI as the SearchMonitor API can no longer return that info.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Updated cypress workflow.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

---------

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
…ct#789)

* Onboard Jenkins prod docker image to github actions

Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>

* Small typos

Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>

* Add back workflows

Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>

* Restore macos/windows

Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>

---------

Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
* Bumped babel version. Adjusted babel config. Refactored unit test that started failing after bump.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Updated yarn file.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

---------

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
* fixed incorrect use of this.props

Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>

* resolved dependency conflict

Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>

* updated babel config

Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>

---------

Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
* Amended 2.11.0 release notes.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Added 2.11.1 release notes.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Added 2.11.1 release notes.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Added 2.11.1 release notes.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Added 2.11.1 release notes.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

---------

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
…ject#827)

* Fixed a bug that was causing groupBy/aggregation fields from displaying in various areas of the UI. Related issues: 816, 817, 818.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Fixed trigger context object bug in issue 791.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Capitalized bucket column titles, and moved bucket columns to the end of the column array.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Added wait steps to reduce test flakiness.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Added wait step to reduce test flakiness. Adjusted test monitor trigger condition to always triggers on a healthy clusters.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Removed unused imports.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* fixed bucket level monitor flaky cypress test

Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>

---------

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>
Co-authored-by: Amardeepsingh Siglani <amardeep7194@gmail.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
…project#794)


Signed-off-by: Chenxi Wang <wangchenxi.us@gmail.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
Signed-off-by: Derek Ho <dxho@amazon.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
…ect#854)

Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
…, and cluster metrics monitors.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
…in value.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
…itor details page to show data sources.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
@AWSHurneyt
Copy link
Collaborator Author

This PR depends on the backend changes.
opensearch-project/alerting#1404

…monitors when remote monitoring is disabled.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
@AWSHurneyt AWSHurneyt marked this pull request as ready for review February 5, 2024 23:42
@AWSHurneyt
Copy link
Collaborator Author

Only the cluster_metrics_monitor_spec cypress tests are failing; however, they're passing locally. Troubleshooting what could be causing the discrepancy.
Screenshot 2024-02-05 at 4 35 41 PM

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
@@ -150,6 +156,12 @@ export default class AlertsDashboardFlyoutComponent extends Component {
}
};

getLocalClusterName = async () => {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: Not a blocker but would rename this to something like setLocalClusterName since we are not returning anything in here

}
}
>
-
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: DAEFAULT_EMPTY_DATA here?
not a blocker

@amsiglan amsiglan merged commit fb82368 into opensearch-project:main Feb 6, 2024
8 of 10 checks passed
opensearch-trigger-bot bot pushed a commit that referenced this pull request Feb 6, 2024
* Support any channel types from Notification (#743)

* Support any channel types from Notification

Signed-off-by: Ashish Agrawal <ashisagr@amazon.com>

* Remove unused CHANNEL_TYPES constant

Signed-off-by: Ashish Agrawal <ashisagr@amazon.com>

* Return empty array if failed to get features

Signed-off-by: Ashish Agrawal <ashisagr@amazon.com>

---------

Signed-off-by: Ashish Agrawal <ashisagr@amazon.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Drafted 2.11 release notes. (#764)

* Drafted 2.11 release notes.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Drafted 2.11 release notes.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

---------

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Removed "last updated by" sections from the UI. (#767)

* Removed "last updated by" section from the UI as the SearchMonitor API can no longer return that info.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Updated cypress workflow.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

---------

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Onboard Jenkins prod docker image to github actions (#789)

* Onboard Jenkins prod docker image to github actions

Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>

* Small typos

Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>

* Add back workflows

Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>

* Restore macos/windows

Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>

---------

Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Bumped babel version. (#821)

* Bumped babel version. Adjusted babel config. Refactored unit test that started failing after bump.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Updated yarn file.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

---------

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Fix fetching of channels for composite monitors (#820)

* fixed incorrect use of this.props

Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>

* resolved dependency conflict

Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>

* updated babel config

Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>

---------

Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Added 2.11.1 release notes. (#828)

* Amended 2.11.0 release notes.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Added 2.11.1 release notes.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Added 2.11.1 release notes.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Added 2.11.1 release notes.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Added 2.11.1 release notes.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

---------

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Fixed bucket monitor groupBy/aggregation display bug. (#827)

* Fixed a bug that was causing groupBy/aggregation fields from displaying in various areas of the UI. Related issues: 816, 817, 818.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Fixed trigger context object bug in issue 791.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Capitalized bucket column titles, and moved bucket columns to the end of the column array.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Added wait steps to reduce test flakiness.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Added wait step to reduce test flakiness. Adjusted test monitor trigger condition to always triggers on a healthy clusters.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Removed unused imports.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* fixed bucket level monitor flaky cypress test

Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>

---------

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>
Co-authored-by: Amardeepsingh Siglani <amardeep7194@gmail.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Issue #671 fix trigger name validation (#794)

Signed-off-by: Chenxi Wang <wangchenxi.us@gmail.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Remove integtest.sh since it is not being used (#849)

Signed-off-by: Derek Ho <dxho@amazon.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* do not create Message component on every text change (#854)

Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Implemented server API call to feature backend API.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Implemented remote cluster support for creating/editing query, bucket, and cluster metrics monitors.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Implemented warning model when monitor execution time exceeds a certain value.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Updated alert details flyout to show remote cluster info. Updated monitor details page to show data sources.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Updated unit tests.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Added experimental banner.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Updated snapshots.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Edited text on the experimental banner.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Moved getSettings call to hide Data source panel for cluster metrics monitors when remote monitoring is disabled.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Updated snapshots.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

* Increased cypress test timeout.

Signed-off-by: AWSHurneyt <hurneyt@amazon.com>

---------

Signed-off-by: Ashish Agrawal <ashisagr@amazon.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>
Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>
Signed-off-by: Chenxi Wang <wangchenxi.us@gmail.com>
Signed-off-by: Derek Ho <dxho@amazon.com>
Co-authored-by: Ashish Agrawal <ashisagr@amazon.com>
Co-authored-by: Peter Zhu <zhujiaxi@amazon.com>
Co-authored-by: Amardeepsingh Siglani <amardeep7194@gmail.com>
Co-authored-by: Chenxi Wang <56898616+wang-chenxi@users.noreply.github.com>
Co-authored-by: Derek Ho <derek01778@gmail.com>
(cherry picked from commit fb82368)
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AWSHurneyt pushed a commit that referenced this pull request Feb 6, 2024
* Support any channel types from Notification (#743)

* Support any channel types from Notification



* Remove unused CHANNEL_TYPES constant



* Return empty array if failed to get features



---------




* Drafted 2.11 release notes. (#764)

* Drafted 2.11 release notes.



* Drafted 2.11 release notes.



---------



* Removed "last updated by" sections from the UI. (#767)

* Removed "last updated by" section from the UI as the SearchMonitor API can no longer return that info.



* Updated cypress workflow.



---------



* Onboard Jenkins prod docker image to github actions (#789)

* Onboard Jenkins prod docker image to github actions



* Small typos



* Add back workflows



* Restore macos/windows



---------




* Bumped babel version. (#821)

* Bumped babel version. Adjusted babel config. Refactored unit test that started failing after bump.



* Updated yarn file.



---------



* Fix fetching of channels for composite monitors (#820)

* fixed incorrect use of this.props



* resolved dependency conflict



* updated babel config



---------




* Added 2.11.1 release notes. (#828)

* Amended 2.11.0 release notes.



* Added 2.11.1 release notes.



* Added 2.11.1 release notes.



* Added 2.11.1 release notes.



* Added 2.11.1 release notes.



---------



* Fixed bucket monitor groupBy/aggregation display bug. (#827)

* Fixed a bug that was causing groupBy/aggregation fields from displaying in various areas of the UI. Related issues: 816, 817, 818.



* Fixed trigger context object bug in issue 791.



* Capitalized bucket column titles, and moved bucket columns to the end of the column array.



* Added wait steps to reduce test flakiness.



* Added wait step to reduce test flakiness. Adjusted test monitor trigger condition to always triggers on a healthy clusters.



* Removed unused imports.



* fixed bucket level monitor flaky cypress test



---------






* Issue #671 fix trigger name validation (#794)




* Remove integtest.sh since it is not being used (#849)




* do not create Message component on every text change (#854)




* Implemented server API call to feature backend API.



* Implemented remote cluster support for creating/editing query, bucket, and cluster metrics monitors.



* Implemented warning model when monitor execution time exceeds a certain value.



* Updated alert details flyout to show remote cluster info. Updated monitor details page to show data sources.



* Updated unit tests.



* Added experimental banner.



* Updated snapshots.



* Edited text on the experimental banner.



* Moved getSettings call to hide Data source panel for cluster metrics monitors when remote monitoring is disabled.



* Updated snapshots.



* Increased cypress test timeout.



---------












(cherry picked from commit fb82368)

Signed-off-by: Ashish Agrawal <ashisagr@amazon.com>
Signed-off-by: AWSHurneyt <hurneyt@amazon.com>
Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>
Signed-off-by: Amardeepsingh Siglani <amardeep7194@gmail.com>
Signed-off-by: Chenxi Wang <wangchenxi.us@gmail.com>
Signed-off-by: Derek Ho <dxho@amazon.com>
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Ashish Agrawal <ashisagr@amazon.com>
Co-authored-by: Peter Zhu <zhujiaxi@amazon.com>
Co-authored-by: Amardeepsingh Siglani <amardeep7194@gmail.com>
Co-authored-by: Chenxi Wang <56898616+wang-chenxi@users.noreply.github.com>
Co-authored-by: Derek Ho <derek01778@gmail.com>
@AWSHurneyt AWSHurneyt deleted the 3.0-cross-cluster-dev branch April 12, 2024 18:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants