Support utility (dbsupport)

Sends information about errors and software usage to iAnywhere Solutions.

Syntax
dbsupport [ options ] operation [ operation-specific-option ]
dbsupport configuration-options
Option Description
@data

Read in options from the specified environment variable or configuration file. See Using configuration files.

If you want to protect passwords or other information in the configuration file, you can use the File Hiding utility to obfuscate the contents of the configuration file. See File Hiding utility (dbfhide).

-o filename Send output to the specified file.
-q Display only critical messages.
Operation Description
-e configuration-option

Display the setting for the specified configuration option. For example, suppose you ran the following command to configure dbsupport to prompt when possible:

dbsupport -cc promptdefy

When you run the command dbsupport -ecc, the following setting is returned:

-cc "promptdefy"
-is submission-ID [ -rr N ]

Check the status of a crash report that has been submitted to iAnywhere Solutions.

For example, the following command inquires about the status of submission ID 66:

dbsupport -is 66
-iu [ -r N ]

Check for updates to your build of SQL Anywhere.

You can also check for updates using Interactive SQL and Sybase Central. See Checking for software updates.

-lc Generate a list of all crash reports that have not been submitted to iAnywhere Solutions. The report names listed can be used with the -sc option.
-ls

Generate a list of submission IDs for all reports that have been submitted to iAnywhere Solutions. For example:

dbsupport -ls

This returns information similar to the following:

Submission ID: 4
Minicore dump 20051220_133828_32116 reported: Wed Mar 15 16:31:56 2006
Submission ID: 98
Minicore dump 20051229_221211_3221 reported: Wed Mar 22 16:33:26 2006
-pc filename Display crash report information. You can use this option to view information before it is submitted to iAnywhere Solutions.
-pd Display the diagnostic information that has been collected. You can use this option to view information before it is submitted to iAnywhere Solutions.
-ps submission-ID

Display information about a specific report that has been submitted to iAnywhere Solutions. For example:

dbsupport -ps 4

This returns information about submission 4:

Minicore dump 20051220_133828_32116 reported: Wed Mar 15 16:31:56 2006
-sa [ -r number-of-submission-retries ] Submit all crash report and diagnostic information stored in the diagnostic directory to iAnywhere Solutions.
-sc reportname [ -r number-of-submission-retries ] [ -nr | -rr N ]

Submit a crash report and diagnostic information to iAnywhere Solutions. For example:

dbsupport -sc 20051220_133828_32116

Use the -lc option to see a list of reports that have not been submitted.

-sd [ -r number-of-submission-retries ]

Submit all crash report and diagnostic information to iAnywhere Solutions.

For more information about the diagnostic directory, see SADIAGDIR environment variable.

Configuration options
Configuration option Description
-cc [ autosubmit | no | promptDefY | promptDefN ]

Change the prompting behavior of dbsupport. You can specify one of the following options:

  • autosubmit   Submit reports automatically.

  • no   Do not prompt for permission to submit reports. Reports and feature statistics are not submitted.

  • promptDefY   If possible, prompt for permission to submit the report. If no answer is given, submit the report.

  • promptDefN   If possible, prompt for permission to submit the report. If no answer is given, do not submit the report. This is the default behavior.

    For example, if you are using embedded SQL Anywhere in an application, you may want to configure the Support utility to not submit reports to iAnywhere Solutions.

If you specify this option, its value becomes the default used by the Support utility. The setting is stored in the dbsupport.ini file in the diagnostic directory.

The following command configures the Support utility so that it does not submit reports and never prompts the user to submit reports:

dbsupport -cc no
-cd retry-delay

Specify the retry delay, in seconds, for submitting a report if the previous attempt is unsuccessful. The default delay is 30 seconds.

If you specify this option, its value becomes the default used by the Support utility. The setting is stored in the dbsupport.ini file in the diagnostic directory.

The following dbsupport command specifies that failed submissions should be retried every 3 seconds, up to a maximum of 4 times before giving up:

dbsupport -cr 4 -cd 3
-ce email-address;email-server[:port ][;user-id:password ]

Specify the address where an email is sent after a crash occurs. The email is sent using the email-server SMTP server. Optionally, you can specify the port that should be used, as well as the user-id and password used to authenticate with the SMTP server.

-cet Test the email settings specified by the -ce option.
-ch crash-handler-program

Specify a program that is called when a crash occurs.

If you specify this option, its value becomes the default used by the Support utility. The setting is stored in the dbsupport.ini file in the diagnostic directory.

The database server supports three substitution parameters that set up information that is passed to the crash-handler-program:

  • %F   This parameter is replaced with the full path to the location of the generated report file.

  • %P   This parameter is replaced with the name of the program that generated the report. For example, if a version 11 personal database server generates the report, dbeng11 is returned.

  • %S   This parameter is replaced with the name of the database server that was in use when the crash or fatal error occurred. For example, if a database server named Sample generated the report, Sample is returned.

You can use $F, $P, and $S as alternatives to %F, %P, and %S. Because different command shells interpret the characters % and $, both are provided. For example, on 4NT, %F is substituted with the value of the environment variable F; $F can be used to avoid this substitution.

Suppose you have a crash handler program in c:\test.bat that contains the following commands:

copy %1 c:\archives
echo %2

On Windows, the following command tells dbsupport to launch c:\test.bat with two parameters when a crash occurs. If the report is being submitted, this program is called before the report is submitted.

dbsupport -ch "c:\test.bat \"%F\" parm2"

The substituted path specified by %F is sent to c:\test.bat as the first parameter. The parameter parm2 is sent to c:\test.bat as the second parameter. Note that quotation marks must be used to specify a crash handler program that takes arguments.

In the example above, additional quotes were used around the full path to the generated report file. To avoid problems accessing the report file that dbsupport is using, the crash handler program should make its own copy of the report file.

-ch-

Remove the crash handler settings that are stored in the dbsupport.ini file. For example:

dbsupport -ch-
-cid customer-id

Specify a string that identifies you in the submission report. If you specify this option, its value becomes the default used by the Support utility. The configuration is stored in the dbsupport.ini file in the diagnostic directory.

The following examples specify a customer identification string for dbsupport:

dbsupport -cid myid@company.com

dbsupport -cid "MyClientApp 1.0"
-cid-

Remove the customer identification string from the dbsupport.ini file. For example:

dbsupport -cid-
-cp { email-server [ :port ] | autodetect }

Configure the HTTP proxy host and port used to submit error reports.

On Windows, the syntax -cp autodetect is also supported. If you specify this option, then if a proxy server and port have been set using Internet Explorer, and they are currently enabled, dbsupport configures its proxy server and port using the system setting. You can set the proxy server and port in Internet Explorer on Windows by choosing Tools » Options » Lan Settings.

-cp-

Remove HTTP proxy host and port settings from the dbsupport.ini file. For example:

dbsupport -cp-
-cr number-of-submission-retries

Specify the number of times a failed submission should be retried.

If you specify this option, its value becomes the default used by the Support utility. The setting is stored in the dbsupport.ini file in the diagnostic directory.

The following dbsupport command specifies that failed operations should be retried every 3 seconds, up to a maximum of 4 times before giving up:

dbsupport -cr 4 -cd 3
Operation-specific option Description
-nr

Specify that dbsupport does not check the server for the status of the submission. For example, the following command submits the report, but does not check for the status of the new submission:

dbsupport -nr -sc 20051220_133828_32116

By default, dbsupport checks whether there is already a fix for the problem being submitted.

-r number-of-submission-retries Specify the maximum number of times dbsupport should try to send the submission. Specifying 0 means retry indefinitely. The default value is 10. Specifying -r overrides the -cr value stored in the dbsupport.ini file, if one exists.
-rd retry-delay Specify the number of seconds dbsupport waits between attempts to resend the report. The default value is 30. Specifying -rd overrides the -cd value stored in the dbsupport.ini file, if one exists.
-rr number-of-submission-response-retries Specify the maximum number of times dbsupport should try to obtain a submission response. Specifying 0 means retry indefinitely. The default value is 10.
Remarks

The Support utility (dbsupport) can be used for any of the following tasks:

  • submit diagnostic information and crash reports to iAnywhere Solutions over the Internet
  • submit feature statistics
  • list information about submitted and unsubmitted crash reports
  • print information about submitted and unsubmitted crash reports
  • inquire about the status of a submission
  • inquire whether there are software updates available for your build of SQL Anywhere
  • configure what is to be done when a fatal error (assertion/crash) is detected by a database or MobiLink server

By default, dbsupport checks whether there is already a fix for the problem being submitted.

Information from any of the following applications can be sent as an error report if a fatal error occurs:

When a report is successfully submitted, it is assigned a unique submission ID. Reports are written to the diagnostic directory.

Platform Default diagnostic directory location
Windows (except Windows Mobile) %ALLUSERSPROFILE%\Application Data\SQL Anywhere 11\diagnostics
Windows Mobile Directory where the executable is running.
Unix $HOME/.sqlanywhere11/diagnostics

For information about the diagnostic directory, see SADIAGDIR environment variable.

For more information about error reports and how they are submitted, see Error reporting in SQL Anywhere.

The Support utility can also be configured to perform certain actions when a problem is detected. For example, it can be configured to execute a specified handler program each time the database server submits an error report. This feature is useful for adding your own custom actions to the error handling process.

As well, the Support utility can be configured to retry certain operations. For example, when submitting a report, it could be configured to retry the operation again in 30 seconds, up to a maximum of 10 times. This feature is useful for handling the case where the service may be temporarily unavailable.

Settings for the Support utility are stored in the dbsupport.ini file in the diagnostic directory.

The operation-specific options are useful for overriding default behavior, including those that have been saved in the dbsupport.ini file.

See also