The Wayback Machine - https://web.archive.org/web/20200704220223/https://github.com/elastic/elasticsearch/issues/48672
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

Allow debugging clusters started by testclusters #48672

Open
pgomulka opened this issue Oct 30, 2019 · 3 comments
Open

Allow debugging clusters started by testclusters #48672

pgomulka opened this issue Oct 30, 2019 · 3 comments

Comments

@pgomulka
Copy link
Contributor

@pgomulka pgomulka commented Oct 30, 2019

yml tests are inconvenient to investigate and it would be great to add a possibility to debug them.
These often run on a cluster of nodes, so we could pick which node we want to debug? Or we could enable them all with debug mode (probably even better)
It might be even more useful if we could have another debugging process to the yml class as per #48568 but not a must have.

relates #47793

@elasticmachine
Copy link
Collaborator

@elasticmachine elasticmachine commented Oct 30, 2019

Pinging @elastic/es-core-infra (:Core/Infra/Build)

@alpar-t alpar-t changed the title Allow debugging yml tests Allow debugging clusters started by testclusters Oct 30, 2019
@alpar-t
Copy link
Contributor

@alpar-t alpar-t commented Oct 30, 2019

Debugging the tests themselves is already possible regardless of #48568 using the Gradle --debug-jvm option.

I think the actual ask here is for allowing testclusters to be debugged in a similar way to how we can debug when starting with the Run task.

I don't think IDEs will allow multiple debug connections from different JVMs, so we would need to configure different ports for different nodes and then users would pick where to connect, but definitely worth looking at the IDE support first.

@pgomulka
Copy link
Contributor Author

@pgomulka pgomulka commented Nov 14, 2019

another great improvement would be if we could pass properties to testcluster similarly to what we do with tests.es being passed to a run task.
This would for instance allow chaning the logging configuration when running a test. So for example if you want to run a test with trace logger level you need to modify a testCluster.integTest task in a module where testcluster is run from.

testClusters.integTest {
  setting 'logger.org', 'trace'
}

So it would be great if we could run it in this way for instance

./gradlew ':distribution:archives:integ-test-zip:integTestRunner' -
-tests "org.elasticsearch.test.rest.IntegTestZipClientYamlTestSuiteIT" 
-Dtests.method="test {p0=indices.get_field_mapping/20_missing_field/*}" 
-Dtests.seed=9C8E94BC31BDDC8B 
-Dtests.security.manager=true 
-Dtests.locale=fi 
-Dtests.timezone=Europe/Minsk 
-Dtestsclusters.es="logger.org=trace"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.