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

SOLR-17547: Collect ZK Metrics via Curator #2850

Draft
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

HoustonPutman
Copy link
Contributor

https://issues.apache.org/jira/browse/SOLR-17547

So there are two ways we can do this. AdvancedTracerDriver and CuratorListener. The CuratorListener gives us much better information on what is being done, and we can easily do what needs to be done. All metrics we have currently can be collected given the information passed to the CuratorListener interface. Unfortunately, the CuratorListener interface only works for Async actions, such as the curator Async API and Watch events. all other events need to go through the AdvancedTracerDriver to be collected.

The AdvancedTracerDriver gives us most of the information we need. There are a few issues:

  • The matching of events is done based on Strings hardcoded in Curator. These could change at any time. (Minor annoyance)
  • The "Get Children" command trace does not give the information needed for the number of Children fetched.
  • The "Multi Transaction" command trace:
    • The trace does not give the number of commands that are in the transaction, which is something we track currently.
    • The MultiTransaction trace is not an AdvancedTrace, it's a normal Trace for some reason. AdvancedTracerDrivers cannot read regular traces, so we can't even see these. We need to update Curator to use an AdvancedTrace for this command.

So this is close to good to go, but we need some Curator fixes before we move forward.

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.

1 participant