You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Barrett Oglesby (Jira)" <ji...@apache.org> on 2021/02/03 19:17:00 UTC
[jira] [Created] (GEODE-8916) The gfsh export stack traces command
should include the locators
Barrett Oglesby created GEODE-8916:
--------------------------------------
Summary: The gfsh export stack traces command should include the locators
Key: GEODE-8916
URL: https://issues.apache.org/jira/browse/GEODE-8916
Project: Geode
Issue Type: Bug
Reporter: Barrett Oglesby
The gfsh export stack traces command should include the locators, but only includes the servers.
Here is an excerpt from a slack conversation showing the behavior:
{noformat}
Shelley Hughes-Godfrey 6:48 PM
I have a question about gfsh export stack-traces ...
"list members" shows me servers and locators ...
gfsh>list members
Member Count : 3
Name | Id
------------------------- | ----------------------------------------------------------------------------
gemfire-cluster-server-0 | xx.xx.x.xxx(gemfire-cluster-server-0:1)<v1>:41000
gemfire-cluster-locator-0 | xx.xx.x.xxx(gemfire-cluster-locator-0:1:locator)<ec><v0>:41000 [Coordinator]
gemfire-cluster-server-1 | xx.xx.x.xxx(gemfire-cluster-server-1:1)<v2>:41000
But, if I don't specify members on the export stack-traces command, I just get the stacks for the servers.
gfsh>export stack-traces
stack-trace(s) exported to file: /path/stacktrace_1612316330340
On host : ...
Specifying a locator returns "No Members found"
gfsh>export stack-traces --member=gemfire-cluster-locator-0
No Members Found
Barry Oglesby 2 hours ago
That command excludes the locators. It uses this method in ManagementUtils to get just the normal members:
public static Set<DistributedMember> getAllNormalMembers(InternalCache cache) {
return new HashSet<DistributedMember>(
cache.getDistributionManager().getNormalDistributionManagerIds());
}
Shelley Hughes-Godfrey 1 hour ago
So, I also ran "export logs" with --member=<locator>
And that works
gfsh>list members
Member Count : 3
Name | Id
------------------------- | ----------------------------------------------------------------------------
gemfire-cluster-server-0 | xx.xx.x.xxx(gemfire-cluster-server-0:1)<v2>:41000
gemfire-cluster-locator-0 | xx.xx.x.xxx(gemfire-cluster-locator-0:1:locator)<ec><v0>:41000 [Coordinator]
gemfire-cluster-server-1 | xx.xx.x.xxx(gemfire-cluster-server-1:1)<v1>:41000
gfsh>export logs --member=gemfire-cluster-locator-0
Logs exported to the connected member's file system: /path/exportedLogs_1612374651595.zip
Barry Oglesby 44 minutes ago
The ExportLogsCommand gets all the members including the locators:
Set<DistributedMember> targetMembers = getMembersIncludingLocators(groups, memberIds);
I tried a test by changing ExportStackTraceCommand.exportStackTrace:
From:
Set<DistributedMember> targetMembers = getMembers(group, memberNameOrId);
To:
Set<DistributedMember> targetMembers = getMembersIncludingLocators(group, memberNameOrId);
And the locator stack was exported:
*** Stack-trace for member locator at 2021/02/03 10:01:28.824 ***
{noformat}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)