Compaq ACMS for OpenVMS
Remote Systems Management
Guide
8.45 ACMSMGMT_START_TRACE_MONITOR_1
This procedure requests that the Remote Manager start the
ACMS$TRACE_MONITOR process. The ACMS$TRACE_MONITOR process is an
intermediate process used by the Remote Manager to communicate with
ACMS run-time processes to enable and disable collections.
Format
int *acmsmgmt_start_trace_monitor_1(sub_id_struct *sub_rec,CLIENT
*cl)
Parameters
sub_rec
Type:
|
Sub_id_struct
|
Access:
|
Read
|
|
Mechanism:
|
By reference
|
|
Usage:
|
Structure that contains the following client authorization information.
|
|
|
|
|
client_id
|
|
Type:
|
Integer
|
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
If explicit authentication is being used, a valid client ID must be
provided. If the value for client_id is 0, proxy access is used.
Client_id is obtained by calling the acms$mgmt_get_creds procedure.
|
cl
Type:
|
CLIENT *
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
Pointer to an RPC client handle previously obtained by calling the RPC
routine CLNT_CREATE.
|
Return Value
Type:
|
Integer
|
Access:
|
Write
|
Mechanism:
|
By reference
|
Usage:
|
Pointer to status value returned. If the value is NULL or MGMT_SUCCESS,
the RPC has succeeded. If the value is neither NULL nor MGMT_SUCCESS,
the call failed and the value pointed to is the reason for failure.
|
Description
This procedure requests that the Remote Manager start the
ACMS$TRACE_MONITOR process on the target node. The ACMS$TRACE_MONITOR
process is an intermediate process used by the Remote Manager to
communicate with ACMS run-time processes to enable and disable
collections.
In general, external entities do not require a startup and shutdown
request of the trace monitor process. The Remote Manager starts the
trace monitor during process initialization and stops it during process
shutdown. Additionally, the Remote Manager starts the trace monitor
anytime it is needed (if it is not already started). Once started, the
trace monitor continues to run until the Remote Manager shuts down.
After issuing the start command to the trace monitor, the Remote
Manager waits for a period of up to trace_start_wait_time (a Parameter
table parameter that is dynamic and expressed in seconds). If the trace
monitor fails to start during that period, the Remote Manager returns
an error to the caller.
Example
|
int start_trace(int client_id,CLIENT *cl)
{
int *status;
static struct sub_id_struct sub_rec;
sub_rec.client_id = client_id;
status = acmsmgmt_start_trace_monitor_1(&sub_rec,cl);
if (!status) {
printf("\nStartup of Trace Monitor has failed");
return(MGMT_FAIL);
}
if (*status != MGMT_SUCCESS) {
printf("\nStartup of Trace Monitor has failed with return code %d",
*status);
return(*status);
}
printf("\nTrace Monitor has been started ");
free(status);
return(MGMT_SUCCESS);
}
|
In the preceding example, the ACMSMGMT_START_TRACE_MONITOR_1 procedure
is called to start the ACMS$TRACE_MON process on the target node. If
the call succeeds, the process is started. Otherwise, any error
messages associated with the failure are displayed. The example in
Section 6.4.1 shows how to declare and initialize the input arguments
to this procedure.
8.46 ACMSMGMT_START_TSC_1
This procedure requests that the Remote Manager start a Terminal
Subsystem Controller (TSC) on the same node on which it is running.
Format
cmd_output_rec *acmsmgmt_start_tsc_1(sub_id_struct *sub_rec,CLIENT
*cl)
Parameters
sub_rec
Type:
|
Sub_id_struct
|
Access:
|
Read
|
|
Mechanism:
|
By reference
|
|
Usage:
|
Structure that contains the following client authorization information.
|
|
|
|
|
client_id
|
|
Type:
|
Integer
|
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
If explicit authentication is being used, a valid client ID must be
provided. If the value for client_id is 0, proxy access is used.
Client_id is obtained by calling the acms$mgmt_get_creds procedure.
|
cl
Type:
|
CLIENT *
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
Pointer to an RPC client handle previously obtained by calling the RPC
routine CLNT_CREATE.
|
Return Value
Type:
|
Cmd_output_rec
|
Access:
|
Write
|
Mechanism:
|
By reference
|
Usage:
|
Pointer to a record that contains a union consisting of either a
failure code or a structure of type cmd_rec, which points to a linked
list containing status messages. The following are the contents of this
union:
|
|
|
|
|
|
|
status
|
|
Type:
|
Integer
|
|
Access:
|
Write
|
|
Mechanism:
|
By value
|
|
Usage:
|
Failure return code.
|
|
|
|
|
|
|
rc
|
|
Type:
|
Integer
|
|
Access:
|
Write
|
|
Mechanism:
|
By value
|
|
Usage:
|
Failure return code.
|
|
|
|
|
|
|
data, data_warn
|
|
Type:
|
Cmd_rec
|
|
Access:
|
Write
|
|
Mechanism:
|
By value
|
|
Usage:
|
Structure containing the first node in a linked list of status messages
(type dcl_list). The following are the contents of this structure:
|
|
|
|
|
|
|
|
cmd_output
|
|
|
Type:
|
Dcl_list
|
|
|
Access:
|
Write
|
|
|
Mechanism:
|
By reference
|
|
|
Usage:
|
Pointer to a linked list of records containing status messages related
to the failure of any updates. This structure contains the following
fields:
|
|
|
|
|
|
|
|
|
dcl_msg
|
|
|
|
Type:
|
Null-terminated string
|
|
|
|
Access:
|
Write
|
|
|
|
Mechanism:
|
By reference
|
|
|
|
Usage:
|
The status message.
|
|
|
|
|
|
|
|
|
pNext
|
|
|
|
Type:
|
Dcl_list
|
|
|
|
Access:
|
Write
|
|
|
|
Mechanism:
|
By reference
|
|
|
|
Usage:
|
Pointer to the next node in the linked list.
|
Description
This procedure requests that an ACMS TSC be started on the same node on
which the Remote Manager is running.
This call executes synchronously. It does not return to the caller
until the attempt to start the TSC is complete. Any messages associated
with an unsuccessful start of the TSC are returned in the cmd_output
linked list.
The data and data_warn structures contain identical data. If the
operation fails, the status field of both structures will be MGMT_WARN;
in this case, use the data_warn structure to fetch the status messages
from the cmd_output linked list.
If the operation is successful, the status field of both structures
will be MGMT_SUCCESS. No status messages are associated with a
successful call.
If the status field contains MGMT_FAIL, the call failed. No status
messages are returned; instead, the reason for the failure is contained
in the rc field.
Example
|
int start_tsc(int client_id,CLIENT *cl)
{
dcl_link *nl;
static struct sub_id_struct sub_rec;
cmd_output_rec *ret_struct;
sub_rec.client_id = client_id;
ret_struct = acmsmgmt_start_tsc_1(&sub_rec,cl);
if (!ret_struct) {
printf("\n Call to start TSC failed");
return(MGMT_FAIL);
}
if (ret_struct->status != MGMT_SUCCESS) {
if (ret_struct->status != MGMT_WARN) {
printf("\nCall to start ACMS TSC failed with status %d",
ret_struct->status);
xdr_free(xdr_cmd_output_rec, ret_struct);
free(ret_struct);
return(MGMT_FAIL);
}
printf("\n Call to start ACMS TSC completed with warnings or errors");
for (nl = ret_struct->cmd_output_rec_u.data.cmd_output; nl != NULL;
nl = nl->pNext)
printf("\n %s",nl->dcl_msg);
xdr_free(xdr_cmd_output_rec, ret_struct);
free(ret_struct);
return(MGMT_FAIL);
}
else {
printf("\nCall to start ACMS TSC was executed");
for (nl = ret_struct->cmd_output_rec_u.data.cmd_output; nl != NULL;
nl = nl->pNext)
printf("\n %s",nl->dcl_msg);
}
xdr_free(xdr_cmd_output_rec, ret_struct);
free(ret_struct);
return(0);
}
|
In the preceding example, the ACMSMGMT_START_TSC_1 procedure is called
to start the terminal subsystem on the target node. If the call
succeeds, the terminal subsystem is started on the target node.
Otherwise, any error messages associated with the failure are
displayed. The example in Section 6.4.1 shows how to declare and
initialize the input arguments to this procedure.
8.47 ACMSMGMT_STOP_1
This procedure initiates shutdown of the Remote Manager server on a
particular node.
Format
int *acmsmgmt_stop_1(sub_id_struct *sub_rec,CLIENT *cl)
Parameters
sub_rec
Type:
|
Sub_id_struct
|
Access:
|
Read
|
|
Mechanism:
|
By reference
|
|
Usage:
|
Structure that contains the following client authorization information.
|
|
|
|
|
client_id
|
|
Type:
|
Integer
|
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
If explicit authentication is being used, a valid client ID must be
provided. If the value for client_id is 0, proxy access is used.
Client_id is obtained by calling the acms$mgmt_get_creds procedure.
|
cl
Type:
|
CLIENT *
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
Pointer to an RPC client handle previously obtained by calling the RPC
routine CLNT_CREATE.
|
Return Value
Type:
|
Integer
|
Access:
|
Write
|
Mechanism:
|
By reference
|
Usage:
|
Pointer to status value returned. If the value is NULL or MGMT_SUCCESS,
the RPC has succeeded. If the value is neither null nor MGMT_SUCCESS,
the call failed and the value pointed to is the reason for failure.
|
Description
This procedure shuts down the Remote Manager server on the target node.
As part of shutdown, the RPC interface is stopped, which may result in
a NULL pointer being returned to the caller. A NULL pointer in this
case signals success of the shutdown request.
Note that the success of this procedure does not guarantee that the
Remote Manager server has actually shut down. It guarantees only that
the shutdown has been requested.
Example
|
int stop_manager(int client_id,CLIENT *cl)
{
static int *status;
static struct sub_id_struct sub_rec;
sub_rec.client_id = client_id;
status = acmsmgmt_stop_1(&sub_rec,cl);
if (!status) {
printf("\nServer shutdown has been requested");
return(0);
}
if (*status != MGMT_SUCCESS) {
printf("\n Call to stop server failed with status %d",*status);
return(MGMT_FAIL);
}
printf("\n Server shutdown has been requested");
return(0);
}
|
In the preceding example, the ACMSMGMT_STOP_1 procedure is called to
request shutdown of the ACMS Remote Manager. A message is displayed
indicating the success or failure of the operation. The example in
Section 6.4.1 shows how to declare and initialize the input arguments
to this procedure.
8.48 ACMSMGMT_STOP_ACC_1
This procedure requests that the Remote Manager stop the ACMS system.
Format
cmd_output_rec *acmsmgmt_stop_acc_1(acc_shutdown_rec
*stop_struct,CLIENT *cl)
Parameters
stop_struct
Type:
|
Acc_shutdown_rec
|
Access:
|
Read
|
|
Mechanism:
|
By reference
|
|
Usage:
|
Structure that contains the following client identification and ACC
control fields.
|
|
|
|
|
client_id
|
|
Type:
|
Integer
|
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
If explicit authentication is being used, a valid client ID must be
provided. If the value for client_id is 0, proxy access is used.
Client_id is obtained by calling the acms$mgmt_get_creds procedure.
|
|
|
|
|
cancel_sw
|
|
Type:
|
Integer
|
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
Indicates whether the system should be stopped immediately (cancel_sw =
1), or whether currently executing tasks should be allowed to complete
first (cancel_sw = 0).
|
cl
Type:
|
CLIENT *
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
Pointer to an RPC client handle previously obtained by calling the RPC
routine CLNT_CREATE.
|
Return Value
Type:
|
Cmd_output_rec
|
Access:
|
Write
|
Mechanism:
|
By reference
|
Usage:
|
Pointer to a record that contains a union consisting of either a
failure code or a structure of type cmd_rec, which points to a linked
list containing status messages. The following are the contents of this
union:
|
|
|
|
|
|
|
status
|
|
Type:
|
Integer
|
|
Access:
|
Write
|
|
Mechanism:
|
By value
|
|
Usage:
|
Failure return code.
|
|
|
|
|
|
|
rc
|
|
Type:
|
Integer
|
|
Access:
|
Write
|
|
Mechanism:
|
By value
|
|
Usage:
|
Failure return code.
|
|
|
|
|
|
|
data, data_warn
|
|
Type:
|
Cmd_rec
|
|
Access:
|
Write
|
|
Mechanism:
|
By value
|
|
Usage:
|
Structure containing the first node in a linked list of status messages
(type dcl_list). The following are the contents of this structure:
|
|
|
|
|
|
|
|
cmd_output
|
|
|
Type:
|
Dcl_list
|
|
|
Access:
|
Write
|
|
|
Mechanism:
|
By reference
|
|
|
Usage:
|
Pointer to a linked list of records containing status messages related
to the failure of any updates. This structure contains the following
fields:
|
|
|
|
|
|
|
|
|
dcl_msg
|
|
|
|
Type:
|
Null-terminated string
|
|
|
|
Access:
|
Write
|
|
|
|
Mechanism:
|
By reference
|
|
|
|
Usage:
|
The status message.
|
|
|
|
|
|
|
|
|
pNext
|
|
|
|
Type:
|
Dcl_list
|
|
|
|
Access:
|
Write
|
|
|
|
Mechanism:
|
By reference
|
|
|
|
Usage:
|
Pointer to the next node in the linked list.
|
Description
This procedure shuts down the ACMS run-time system on the same node on
which the Remote Manager is running. Fields in the input argument
determine how the ACMS system will be stopped. If the value for
cancel_sw is 1, currently executing tasks are cancelled, and the system
is stopped. If the value for cancel_sw is 0, currently executing tasks
are allowed to complete before the system is shut down.