-
Notifications
You must be signed in to change notification settings - Fork 108
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
Add a cluster health endpoint to monitor #2353
Conversation
Signed-off-by: Steven Sheehy <steven.sheehy@hedera.com>
Codecov Report
@@ Coverage Diff @@
## main #2353 +/- ##
============================================
+ Coverage 83.59% 84.38% +0.78%
- Complexity 2258 2313 +55
============================================
Files 437 440 +3
Lines 11961 12002 +41
Branches 1018 1020 +2
============================================
+ Hits 9999 10128 +129
+ Misses 1647 1556 -91
- Partials 315 318 +3
Continue to review full report at Codecov.
|
Signed-off-by: Steven Sheehy <steven.sheehy@hedera.com>
Signed-off-by: Steven Sheehy <steven.sheehy@hedera.com>
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
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.
Looks good, requesting some further comments to capture intents for easier code management
hedera-mirror-monitor/src/main/java/com/hedera/mirror/monitor/ClusterHealthIndicator.java
Show resolved
Hide resolved
hedera-mirror-monitor/src/main/java/com/hedera/mirror/monitor/ClusterHealthIndicator.java
Show resolved
Hide resolved
hedera-mirror-monitor/src/main/java/com/hedera/mirror/monitor/NodeProperties.java
Show resolved
Hide resolved
@Validated | ||
public static class RetryProperties { | ||
|
||
@Min(0) |
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.
Minimum should be 1, setting to 0 will never attempt.
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.
True, but Flux retry spec uses this as the "retry attempts" not total attempts like the SDK so it needs to remain 0 here. I can add an assertion in ConfigurableTransactionGenerator
that validates it.
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.
That's fair.
Signed-off-by: Steven Sheehy <steven.sheehy@hedera.com>
Signed-off-by: Steven Sheehy <steven.sheehy@hedera.com>
Kudos, SonarCloud Quality Gate passed! 0 Bugs No Coverage information |
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
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.
SLGTM
Adds a cluster health endpoint to monitor and fixes various bugs with the monitor encountered during testing. * Add an /actuator/health/cluster endpoint that returns unknown when publishing inactive * Add transaction memo with hostname & scenario to track publish source * Add new previewnet node 0.0.7 * Add support for in-process testing of TransactionPublisher * Change mainnet network configuration to use mainnet-public * Fix MonitorPublishErrors alert not calculating percentage properly and triggering repeatedly * Fix node validation succeeding when network is frozen by switching from a query to a transaction * Fix not printing status logs or sampling when scenario is idle * Fix rate calculation sometimes returning 0.0 at low TPS * Fix publish properties failing on unknown properties (this allows camelcase properties to be supplied via env variables) * Fix transaction record lookup doing 3 separate queries * Refactor publish flow to store scenario state in new PublishScenario * Refactor publish & subscribe flows to use common scenario and scenario properties classes * Refactor publish client setup to use Flux Signed-off-by: Steven Sheehy <steven.sheehy@hedera.com>
Description:
Adds a cluster health endpoint to monitor and fixes various bugs with the monitor encountered during testing.
/actuator/health/cluster
endpoint that returns unknown when publishing inactive0.0.7
TransactionPublisher
MonitorPublishErrors
alert not calculating percentage properly and triggering repeatedlyPublishScenario
Related issue(s):
Fixes #2313
Notes for reviewer:
Waiting on access to perfnet to test changes at 10K.
Will keep subscriber REST API for now to ease rollout. May delete it later.
Checklist