-
Notifications
You must be signed in to change notification settings - Fork 5.7k
feat: Add the RDS performance and generic metrics option #17745
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
base: master
Are you sure you want to change the base?
feat: Add the RDS performance and generic metrics option #17745
Conversation
9487de2 to
3f2f6ab
Compare
|
@srebhan Can you please check the PR? |
|
Hi @srebhan, should I write more unit tests before the review can start? |
srebhan
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.
Thanks for your contribution @ZPascal! I have some small comments in the code from skimming over the PR.
However, I wonder if RDS and CMS are not two different services!? Wouldn't it be hard for a user to find the RDS part as you probably won't expect it to be in CMS, would you?
Should we add a aliyunrds plugin?
Furthermore, please reduce the amount of changes, especially in the gatherMetric function! No unnecessary renames or restructuring please as this makes it hard to review this PR!
|
@ZPascal any chance you work on this PR? |
3f2f6ab to
a45260e
Compare
|
If you find some time @ZPascal, please comment on my question about a separate |
You're right that RDS and CMS are technically two separate Alibaba Cloud services. However, from a user experience perspective, introducing a dedicated Users generally prefer to work with a smaller, more predictable set of integrations instead of managing many narrowly scoped plugins. Since CMS already acts as the unified monitoring layer across Alibaba Cloud products—including RDS—it is the most natural place for users to expect monitoring, metrics, and alarms to appear. Splitting RDS monitoring into a separate plugin would require users to understand internal service boundaries within Alibaba Cloud, which is something most users shouldn’t need to worry about. Keeping everything within the CMS plugin avoids fragmentation, reduces cognitive load, and makes the system easier to navigate. It also aligns with Alibaba Cloud’s own model, where CMS is positioned as the central service for metrics collection and monitoring across resources. For these reasons, adding a dedicated aliyunrds plugin would ultimately be less intuitive and more cumbersome for users. |
|
@srebhan Do you want me to continue with the current adjustments in the CMS plugin, or should I pause and explore handling RDS differently? |
191a7ad to
d47bcff
Compare
|
Download PR build artifacts for linux_amd64.tar.gz, darwin_arm64.tar.gz, and windows_amd64.zip. 📦 Click here to get additional PR build artifactsArtifact URLs |
|
Hi @srebhan, I've adapted the code and added new tests. Can you please restart the integration test? The requested Markdown changes are not related to this pull request and the result of the GH action version update. |
Description
This PR extends the
aliyuncmsinput plugin to support additional metric data sources beyond Cloud Monitor Service (CMS). Specifically, it adds support for collecting performance metrics directly from Alibaba Cloud's Relational Database Service (RDS) API.Changes
metric_servicesconfiguration option to specify which metric services to query (defaults to["cms"])DescribeDBInstancePerformanceAPIKey Features
metric_services = ["cms", "rds"]to enable RDS metricsmetric_servicesis not configuredCPUUsage&IOPS) and normalizes them into separate datapointsConfiguration Example
Testing
Related Issues
Checklist
Breaking Changes
None. The change is fully backward compatible with existing configurations.
Notes:
&) are automatically split into individual datapoints