streamtool getlog

Usage

getlog [-d,--domain-id <did>] [[--log] | [[-i,--instance-id <instance>] [--includeapps] [--services <service>,...]]] [[--resources <resourceId>,...] | [--tags <tag>,...]] [-f,--file <file-name>] [--collection-directory <collection-directory>] [--appendtimestamp] [-U,--User <user>] [-h,--help] [--trace <level>] [-v,--verbose <level>] [--zkconnect {<host>:<port>},... | --embeddedzk]

The streamtool getlog command saves log and trace files for an Streams instance.

Authority

To get log or trace data for a domain, you must have read authority for the system-log domain object.

To get log or trace data for an instance, you must also have read authority for the system-log domain object and the system-log instance object.

To get log or trace data for jobs, you must also have read authority for the system-log domain object, the system-log instance object, and the application-log instance object.

By default, the DomainAdministrator role has this authority.

For more information, see streamtool getacl and streamtool getdomainacl.

Description

To collect log and trace data, you must:

  • Have SSH access or a controller (system service controller) running on the host.
  • Be authorized to the logs via Streams object security.

By default, the streamtool getlog command saves log and trace data in the StreamsLogs.tgz file. To specify a different file name, use the --file option.

By default, Streams collects the log and trace data for every host in the instance. Use the following options to restrict the amount of log and trace data:

  • Log data: For log data only, use the --log option.
  • Trace data: To include application trace data, use the --includeapps option.

If you do not specify the --log or --includeapps option, the streamtool getlog command collects the following data by default:

  • If you are collecting data for the instance or a set of hosts, both trace and log data.
  • If you are collecting data for a runtime service, application job, or PE, trace data only.

When data collection is performed by a user who is not the instance owner, Streams does not collect the instance security configuration data in the security-config.xml file. If this situation occurs, a warning message is displayed which states that the user does not have the correct permission to access the security configuration. Streams collects all other log and trace data.

To view log and trace files in your specified editor, use the streamtool viewlog command.

Options

--appendtimestamp
Specifies to append a time stamp to the file name.
--collection-directory <collection-directory>
Specifies the directory that is used for storing temporary copies of intermediate log collection results. If you do not specify this command option, the domain log path is used for temporary storage.
-d,--domain-id <did>
Specifies the domain identifier.

If you do not specify this option, Streams uses the domain name that is set in the STREAMS_DOMAIN_ID environment variable. By default, that domain name is StreamsDomain. If you are using the interactive streamtool interface, it uses the name of the active domain for the current streamtool session or else it prompts you for the domain name.

The active domain for the current streamtool session is set every time that you successfully run a streamtool command with a -d or --domain-id option. Alternatively, you can run the streamtool domain command in the interactive interface.

--embeddedzk

Specifies to use the embedded copy of ZooKeeper. This option is not supported within the interactive streamtool interface.

If you are not using the interactive streamtool interface and you do not specify either this option or the --zkconnect option, Streams uses the ZooKeeper connection that is associated with the active domain or the domain that is specified in the --domain-id option. Streams determines which connection maps to the domain by using cached information about the domains. In this scenario, if the domain identifier is not unique in the Streams configuration cache, the command fails.

-f,--file <file-name>
Specifies the file path that the command uses to store the compressed tar file output. By default, the following file is created in the current working directory: StreamsLogs.tgz.
-h,--help
Specifies to show the command syntax.
-i,--instance-id <instance>
Specifies the instance identifier.

If you do not specify this option, Streams uses the instance identifier that is set in the STREAMS_INSTANCE_ID environment variable. By default, that instance identifier is StreamsInstance. If you are using the interactive streamtool interface, it tries to use an instance ID that you specified in a previous command. If no such value is found, the command uses the STREAMS_INSTANCE_ID environment variable. Alternatively, you can run the streamtool instance command in the interactive interface.

--includeapps
Specifies to include the application trace data in the log file.
--log
Specifies to collect only the domain log file. The domain log file contains the log data for the applications that are running in the domain. It also contains log data for the domain and instance services.
--resources <resourceId>
Specifies a list of resource identifiers, which vary depending on the resource manager. For example, they might be host names or IP addresses. The resource identifiers are delimited by commas.
--services <service>
Specifies to retrieve logs for the specified services. The following domain service names are valid:
  • aas
  • auditlog
  • controller
  • jmx
  • sws

The following instance service names are valid:

  • app
  • sam
  • srm
  • view
--tags <tag>
Specifies to retrieve logs only from resources that are configured with the specified tags.
--trace <level>
Specifies the trace setting. The following valid levels are listed in order of increasing verbosity, which is to say that the first level in the list generates the least amount of information:
  • off
  • error
  • warn
  • info
  • debug
  • trace
The default value is off.
-U,--User <user>
Specifies an Streams user ID that has authority to run the command.
-v,--verbose <level>
Specifies to provide more detailed command output. The verbosity level can be 0-3, where 0 disables detailed reporting and each increment provides more detailed output.
--zkconnect <{<host>:<port>},...>

The name of one or more host and port pairs that specify the configured ZooKeeper servers. This option is not supported within the interactive streamtool interface.

If you are not using the interactive streamtool interface and you do not specify this option, Streams tries to use:

  1. The --embeddedzk option
  2. The value from the STREAMS_ZKCONNECT environment variable
  3. A ZooKeeper connection string that is derived from cached information about the current domain.