SVC Manage

Overview

The svcmanage binary program allows users to execute all actions that would otherwise be performed via the N2SVCD management GUI. In situations where a user may not have browser access or the ability to connect to a remote machine this tool allows all management tasks to be performed via a command line environment. The default installation location for this binary is /usr/share/n2svcd/bin/n2svcd.

Running svcmanage --help will show the program usage.

usage:

    # Simple list of all applications.
    svcmanage [common-options]
    svcmanage [common-options] [--list]

    # Summary for all applications or a single application.
    svcmanage [common-options] --summary [<App-Name>]

    # Statistics for all applications or a single application.
    svcmanage [common-options] --statistics [<App-Name>]

    # Resource Drilldown for a specific configuration vector details.
    svcmanage [common-options] --configuration <App-Name> <Configuration-Key>

    # Resource Drilldown for a specific resource vector details.
    svcmanage [common-options] --resource <App-Name> <Resource-Key>

    # Configuration change an editable configuration value.
    svcmanage [common-options] [--set] <App-Name> <Configuration-Key> <New-Value>

    # Configuration create a new configuration vector.
    svcmanage [common-options] [--create-vector] <App-Name> <Configuration-Key> <New-Value-JSON>

    # Configuration update an editable configuration vector.
    svcmanage [common-options] [--update-vector] <App-Name> <Configuration-Key> <Vector-IDX> <New-Value-JSON>

    # Configuration remove an editable configuration vector.
    svcmanage [common-options] [--remove-vector] <App-Name> <Configuration-Key> <Vector-IDX>

    # [common-options]
        --date                          # Include Y-M-D for time/date fields.
        --host <rest-rpc-host>          Default = 'localhost'.
        --port <rest-rpc-port>          Default = 8088.
        --secure
        --user <username>
        --pass <password>

Common Options

The following common options may be specified with all svcmanage options.

Option Type Description
--date Switch By default all timestamps will only include time information. Specifying --date will format all timestamps to include date information.
--host String Specifying --host allows for the specification of a non standard REST RPC interface host.
Defaults to localhost
--port String Specifying --port allows for the specification of a non standard REST RPC interface port.
Defaults to 8088
--secure Flag Specifying --secure indicates that the REST RPC interface host should be contacted over HTTPS.
Defaults to not specified, i.e. HTTP is used.
--user String By default the N2SVCD management GUI does not require a username or password. If the application is running in a secure mode --user can be provided to specify a login username. If --user is specified `--pass` is required.
--pass String By default the N2SVCD management GUI does not require a username or password. If the application is running in a secure mode --pass can be provided to specify a login password. If --pass is specified `--user` is required.

Flag: --list

By default, svcmanage with no options will list all the available applications and their current status. This can be explicitly be invoked by passing the --list flag.

Example Usage

./svcmanage --list

====================================================================================================================================
MULTI-PROCESS[/n2svcd]: CONFIG = /etc/n2svcd/n2svcd.xml
====================================================================================================================================
IDX [PID  ] App-Name             Status       ADMIN IPC      USER IPC
 0: [30066] Watchdog             AVAILABLE    AQ 0/128k 0%   UQ 0/1m 0%
 1: [30067] Manage               AVAILABLE    AQ 0/1m 0%     UQ 0/1m 0%
 2: [30068] SOAP-SERVER          AVAILABLE    AQ 0/128k 0%   UQ 0/1m 0%
 3: [30069] REST-CLIENT          AVAILABLE    AQ 0/128k 0%   UQ 0/1m 0%
 4: [30070] DB-N2QD-MONGO        AVAILABLE    AQ 0/128k 0%   UQ 0/1m 0%
 5: [30071] DIAMETER-01          AVAILABLE    AQ 0/128k 0%   UQ 0/0g 0%
 6: [30072] DIAMETER-02          AVAILABLE    AQ 0/128k 0%   UQ 0/0g 0%
 7: [30073] Logic                AVAILABLE    AQ 0/128k 0%   UQ 0/1m 0%
====================================================================================================================================

Parameter: --summary

The --summary parameter will return a summary of all available applications, their current status, configuration scalars, vectors and resources.

By default, --summary will return a summary of all applications. If an argument is provided to it, then output is limited to the single named application that matches the provided application name.

Example Usage

./svcmanage --summary Watchdog

====================================================================================================================================
MULTI-PROCESS[/n2svcd]: CONFIG = /etc/n2svcd/n2svcd.xml
====================================================================================================================================
IDX [PID  ] App-Name             Status       ADMIN IPC      USER IPC       CPU
 0: [30066] Watchdog             AVAILABLE    AQ 0/128k 0%   UQ 0/1m 0%     LOAD 0%
    
          <Config-Scalar>   <Value> <Set-Key|Type(|Hints)>
   Statistics Slice Count = 60 [stats_slice_count|integer|1-1000]
 Statistics Slice Seconds = 5 [stats_slice_secs|integer|1-600]
     Shutdown Notice Secs = 1 [shutdown_notice_secs|integer|1-60]
    Termination Notice MS = 500 [termination_notice_ms|integer|100-5000]
        Heartbeat Seconds = 30 [heartbeat_interval_secs|integer|0-600]
    Heartbeat Response MS = 1000 [heartbeat_response_ms|integer|100-5000]

 <Resource-Vector>   <Count> <Drilldown-Key>
   Queued Timeouts = 2

        Statistic           00:46:20          00:46:15          00:46:10
   heartbeat.check                  1                  -                  -
 heartbeat.success                  1                  -                  -
====================================================================================================================================

Parameter: --statistics

The --statistic parameter will return time sliced statistics for all available applications.

By default, --statistic will return a summary of all applications. If an argument is provided to it, then output is limited to the single named application that matches the provided application name.

Example Usage

./svcmanage --statistics Watchdog

====================================================================================================================================
MULTI-PROCESS[/n2svcd]: CONFIG = /etc/n2svcd/n2svcd.xml
====================================================================================================================================
====================================================================================================================================
                                                               Watchdog
====================================================================================================================================
        Time    heartbeat    heartbeat
                  success        check
    00:47:55            1            1
    00:47:50            -            -
    00:47:45            -            -
    00:47:40            -            -
    00:47:35            -            -
    00:47:30            -            -
    00:47:25            1            1
    00:47:20            -            -
    00:47:15            -            -
    00:47:10            -            -
    00:47:05            -            -
    00:47:00            -            -
    00:46:55            1            1

    ...

====================================================================================================================================

Parameter: --configuration

The --configuration parameter is used to view all of the configured vectors for a named application and configuration key. Information on available configuration vector keys can be obtained via the <Drilldown-Key> information block provided by the application --summary parameter.

Parameters

Parameter Type Description
App-Name String [Required] The named application to retrieve configuration information for.
Configuration-Key String [Required] The named configuration vector to retrieve configuration information for.

Example Usage

./svcmanage --configuration SOAP-SERVER trace_traps

====================================================================================================================================
APPLICATION [SOAP-SERVER], CONFIGURATION [trace_traps], 1 ITEM(S)

EXAMPLE VECTOR JSON: {"arg_name":"<value>","trace_level":"<value>","soap_action":"<value>","arg_re":"<value>"}

IDX SOAP Action    Arg Name        Arg RE trace
0   do_soap_action unique_id_field 1234   1
====================================================================================================================================

Parameter: --resource

The --resource parameter is used to view all of the resources associated with a named application and resource key. Information on the available resource keys can be obtained via the information block provided by the application --summary parameter.

Parameters

Parameter Type Description
App-Name String [Required] The named application to retrieve resource vector information for.
Resource-Key String [Required] The named resource vector to retrieve information for.

Example Usage

./svcmanage --resource DIAMETER-01 client_connections

====================================================================================================================================
APPLICATION [DIAMETER-01], RESOURCE [client_connections], 1 ITEM(S)

Name          Local Host Local Port Remote Host Remote Port FD FD Ready Login OK Send Req? Recv Req? #Jobs Active Connect Attempt@ Ping-IN
DIAMETER-01-1 127.0.0.1  42756      127.0.0.1   3868        4  1        1        1         0         0            00:54:02.26      21/21
====================================================================================================================================

Parameter: --set

–set is used to set the value of a single editable configuration scalar. Information on the available configurable scalars can be obtained via the information block provided by the application --summary parameter.

When updating a configuration scalar, values are checked against constraints set by the item being updated. If these constraints are not satisfied, the update will fail.

Parameters

Parameter Type Description
App-Name String [Required] The named application to set a single configuration scalar on.
Configuration-Key String [Required] The named configuration scalar to set.
New-Value (various)) [Required] The value to update the configuration scalar with.

Example Usage

./svcmanage --summary SOAP-SERVER

    ...
    <Config-Scalar>   <Value> <Set-Key|Type>
    Trace Level (Max) = 1
    Trace Level = 0 [trace_level|0,1]
    ...
./svcmanage --set SOAP-SERVER trace_level 1

UPDATE SUCCESSFUL
./svcmanage --summary SOAP-SERVER

    ...
    <Config-Scalar>   <Value> <Set-Key|Type>
    Trace Level (Max) = 1
    Trace Level = 1 [trace_level|0,1]
    ...

Parameter: --create-vector

The --create-vector parameter is used to create a new configuration vector. Information on the available configurable vectors can be obtained via the information block provided by the application --summary parameter.

Additional information on vector creation is provided by the --configuration parameter.

When creating a configuration vector, values are checked against constraints set by the vector. If these constraints are not satisfied, the creation will fail.

Parameters

Parameter Type Description
App-Name String [Required] The named application to create a configuration vector on.
Configuration-Key String [Required] The named configuration vector for which an entry will be created.
New-Value JSON [Required] The JSON definition of the values that will be created for the configuration vector. See `--configuration` for information.

Example Usage

./svcmanage --summary SOAP-SERVER

    ...
    <Config-Vector>   <Count> <Drilldown-Key>
    Handlers = 1 [handlers]
    Trace Traps = 1 [trace_traps]
    ...
./svcmanage --configuration SOAP-SERVER trace_traps

====================================================================================================================================
APPLICATION [SOAP-SERVER], CONFIGURATION [trace_traps], 1 ITEM(S)

EXAMPLE VECTOR JSON: {"soap_action":"<value>","arg_name":"<value>","arg_re":"<value>","trace_level":"<value>"}

IDX SOAP Action    Arg Name        Arg RE trace
0   do_soap_action unique_id_field 1234   1
====================================================================================================================================
./svcmanage --create-vector SOAP-SERVER trace_traps '{"soap_action":"create","arg_name":"vector","arg_re":"1234","trace_level":"1"}'

VECTOR CREATION SUCCESSFUL
./svcmanage --configuration SOAP-SERVER trace_traps

====================================================================================================================================
APPLICATION [SOAP-SERVER], CONFIGURATION [trace_traps], 2 ITEM(S)

EXAMPLE VECTOR JSON: {"arg_name":"<value>","soap_action":"<value>","arg_re":"<value>","trace_level":"<value>"}

IDX SOAP Action    Arg Name        Arg RE trace
0   do_soap_action unique_id_field 1234   1
1   create         vector          1234   1
====================================================================================================================================

Parameter: --update-vector

The --update-vector parameter is used to update an existing editable configuration vector. Information on the available vectors is provided by the --configuration parameter.

When updating a configuration vector, values are checked against constraints set by the vector. If these constraints are not satisfied, the update will fail.

Parameters

Parameter Type Description
App-Name String [Required] The named application to update a configuration vector on.
Configuration-Key String [Required] The named configuration vector for which an entry will be update.
Vector-IDX Number [Required] The index of the vector within the list of configured vectors to update. See `--configuration` for information.
New-Value JSON [Required] The JSON definition of the values that will be updated for the configuration vector. See `--configuration` for information.

Example Usage

./svcmanage --configuration SOAP-SERVER trace_traps

====================================================================================================================================
APPLICATION [SOAP-SERVER], CONFIGURATION [trace_traps], 2 ITEM(S)

EXAMPLE VECTOR JSON: {"arg_name":"<value>","soap_action":"<value>","arg_re":"<value>","trace_level":"<value>"}

IDX SOAP Action    Arg Name        Arg RE trace
0   do_soap_action unique_id_field 1234   1
1   create         vector          1234   1
====================================================================================================================================
./svcmanage --update-vector SOAP-SERVER trace_traps 1 '{"soap_action":"updated","arg_name":"vector","arg_re":"1234","trace_level":"1"}'

VECTOR UPDATE SUCCESSFUL
./svcmanage --configuration SOAP-SERVER trace_traps

====================================================================================================================================
APPLICATION [SOAP-SERVER], CONFIGURATION [trace_traps], 2 ITEM(S)

EXAMPLE VECTOR JSON: {"arg_name":"<value>","arg_re":"<value>","soap_action":"<value>","trace_level":"<value>"}

IDX SOAP Action    Arg Name        Arg RE trace
0   do_soap_action unique_id_field 1234   1
1   updated        vector          1234   1
====================================================================================================================================

Parameter: --remove-vector

The --remove-vector parameter is used to remove an existing editable configuration vector. Information on the available vectors is provided by the --configuration flag.

Parameters

Parameter Type Description
App-Name String [Required] The named application to remove a configuration vector on.
Configuration-Key String [Required] The named configuration vector for which an entry will be removed.
Vector-IDX Number [Required] The index of the vector within the list of configured vectors to remove. See `--configuration` for information.

Example Usage

./svcmanage --configuration SOAP-SERVER trace_traps

====================================================================================================================================
APPLICATION [SOAP-SERVER], CONFIGURATION [trace_traps], 2 ITEM(S)

EXAMPLE VECTOR JSON: {"arg_name":"<value>","soap_action":"<value>","arg_re":"<value>","trace_level":"<value>"}

IDX SOAP Action    Arg Name        Arg RE trace
0   do_soap_action unique_id_field 1234   1
1   updated         vector          1234   1
====================================================================================================================================
./svcmanage --remove-vector SOAP-SERVER trace_traps 1

VECTOR REMOVAL SUCCESSFUL
./svcmanage --configuration SOAP-SERVER trace_traps

====================================================================================================================================
APPLICATION [SOAP-SERVER], CONFIGURATION [trace_traps], 2 ITEM(S)

EXAMPLE VECTOR JSON: {"arg_name":"<value>","arg_re":"<value>","soap_action":"<value>","trace_level":"<value>"}

IDX SOAP Action    Arg Name        Arg RE trace
0   do_soap_action unique_id_field 1234   1
====================================================================================================================================