Twiddle

    Twiddle

     

    (From http://docs.jboss.org/jbossas/jboss4guide/r1/html/ch2.chapter.html )

     

    JBoss provides a simple command line tool that allows for interaction with a remote JMX server instance. This tool is called twiddle (for twiddling bits via JMX) and is located in the bin directory of the distribution. Twiddle is a command execution tool, not a general command shell.

     

    Starting in AS 6 M3, twiddle is based on JSR-160 for connecting to the AS.  The rest of this page includes both pre/post AS 6 usage.

     

    Twiddle is run using either the twiddle.sh  or twiddle.bat scripts, and passing in a -h(--help) argument provides the basic syntax, and --help-commands shows what you can do with the tool (pre AS 6 M3):

     

    $ ./twiddle.sh -h
    A JMX client to 'twiddle' with a remote JBoss server.
    
    usage: twiddle.sh [options] <command> [command_arguments]
    
    options:
        -h, --help                Show this help message
            --help-commands       Show a list of commands
        -H<command>               Show command specific help
        -c=command.properties     Specify the command.properties file to use
        -D<name>[=<value>]        Set a system property
        --                        Stop processing options
        -s, --server=<url>        The JNDI URL of the remote server
        -a, --adapter=<name>      The JNDI name of the RMI adapter to use
        -u, --user=<name>         Specify the username for authentication
        -p, --password=<name>     Specify the password for authentication
        -q, --quiet               Be somewhat more quiet

     

    For AS 6 M3 and later:

     

    $ ./twiddle.sh -h

     

    A JMX client to 'twiddle' with a remote JBoss server.

    usage: twiddle.sh [options] <command> [command_arguments]

    options:
        -h, --help                Show this help message
            --help-commands       Show a list of commands
        -H<command>               Show command specific help
        -c=command.properties     Specify the command.properties file to use
        -D<name>[=<value>]        Set a system property
        --                        Stop processing options
        -s, --server=<url>        The JMX service URL of the remote server (e.g. service:jmx:rmi:///jndi/rmi://localhost:1090/jmxrmi)
        -o, --host=<HOSTNAME>     The name of the remote server (e.g. localhost)
        -r, --port=<PORTNUMBER>   The rmiRegistryPort of the remote server (e.g. 1090)
        -u, --user=<name>         Specify the username for authentication
        -p, --password=<name>     Specify the password for authentication
        -q, --quiet               Be somewhat more quiet
        -v, --verbose             Be noisy

    for convenience, you can specify --host and --port but not with the --server=<url> which overrides host + port.

     

    Connecting twiddle to a Remote Server

     

    By default (pre AS 6 M3) the twiddle command will connect to the localhost at port 1099 to lookup the default jmx/rmi/RMIAdaptor binding of the RMIAdaptor service as the connector for communicating with the JMX server. To connect to a different server/port combination you can use the -s (--server) option:

     

    $ ./twiddle.sh -s toki serverinfo -d
     jboss
    $ ./twiddle.sh -s toki:1099 serverinfo -d
     jboss
    

     

    In AS 6 M3 or later, by default, the twiddle command will connect to the localhost at port 1090 (using JSR-160 support).  To connect to a different server/port combination, use the --host= and --port= options:

     

    $  ./twiddle.sh --host=morpheus serverinfo -d

     

     

    $ ./twiddle.sh --host=morpheus --port=1090 serverinfo -d

     

    $ ./twiddle.sh -s service:jmx:rmi:///jndi/rmi://morpheus:1090/jmxrmi

     

    To connect (pre AS 6 M3) using a different RMIAdaptor binding use the -a (--adapter) option:

    $ ./twiddle.sh -s toki -a jmx/rmi/RMIAdaptor serverinfo -d
     jboss

     

    Sample twiddle Command Usage

     

    (See the documentation above)