Other Tools

This section describes the tools you can use to quickly manage a PATROL Agent configuration or troubleshoot your monitored environment.

Shell

Monitoring Studio X provides you with a terminal and a shell in the system where the PATROL Agent is running. This allows you to interact with the monitoring system very easily.

Example of colored vi running in Monitoring Studio X Shell

There are 2 types of terminals: dumb and xterm.

dumb

This is the only terminal available for Windows systems and it’s the preferred option when connected through TrueSight Presentation Server.

The dumb terminal does not support colored output and ANSI escape sequences (up, down, esc, etc.).

More importantly, the dumb terminal does not support job control, typically like interrupting a process with Ctrl + C. If a process doesn’t return to the shell (either frozen or stuck in a loop), you will need to Restart Session with the corresponding menu entry. This will kill the previous shell and its child processes.

Also, on Linux and UNIX systems, there is no pty associated to the shell, which means that some commands will not work properly. Most notably, the su command will not work as it requires an interactive terminal. If you need to use the su command (or other commands that require an interactive terminal), you can run the script command and simply switch to the xterm terminal with the corresponding menu.

xterm on Linux

This is a full-featured terminal available for Linux and UNIX systems only. It supports colored output, ANSI escape sequences, which allows you to interact with the shell like in traditional (and well configured) xterm.

All commands will work with bells and whistles: man, vi, more, top, emacs, etc.

However, the xterm terminal requires a lot of interaction between your browser and the shell in the backend on the PATROL Agent: when you type a character, it is sent to the shell which returns the character to display in the terminal. On slow networks, this can cause noticeable lags in the terminal. This is also typically the case when connected to an agent through TrueSight Presentation Server, inducing a delay of 1 to 5 seconds. That’s why it is recommended to use the dumb terminal in TrueSight Presentation Server.

Limitations on Solaris, IBM AIX and HP-UX

On Solaris, IBM AIX and HP-UX, there is no proper way to associate a TTY with the shell we’re interacting with. As a consequence, some commands will not behave properly and this will depend widely (and wildly) on the type and version of the operating system, the default shell, etc.

Notably, these limitations are expected:

  • No job control (no Ctrl - C)
  • The more command does not paginate
  • The man command does not paginate
  • The su command refuses to impersonate as another user
  • Spawning a new shell (sh, ksh, bash, etc.) requires the -i option to make sure it’s interactive

Some commands may however work surprisingly well:

  • On IBM AIX: smitty -f
  • On HP-UX: top

PSL Playground

The PSL Playground allows you to write PSL scripts and execute them on the PATROL Agent.

PSL (PATROL Scripting Language) is the internal programming language of the PATROL Agent. It bears some resemblance with PERL in its syntax. It allows the programmer to interact with the various pieces of the PATROL Agent: events, namespace, configuration, etc. More information on PSL

In the PSL Playground, you can either use simple statements that will be evaluated, or full PSL scripts that use the print() and printf() functions to output some results.

Examples:

  • Simple statement get("/appType") will return the platform the of system of the agent
  • Script that counts the total number of instances on the agent:
count = 0;
foreach class (get_vars("/", "subnodes")) {
  count = count + get("/".class."/numInstances");
}
printf("%d instances\n", count);

The editor (on the left) is an advanced PSL editor with syntax highlighting, auto-completion and linting.

The results (on the right) are stored in the user’s browser. Every PSL script that has been used to generate the results can be reloaded in the editor.

You can download and upload PSL scripts. It is also possible to load and save PSL scripts on the agent itself, in which case they will be shared among all users that connect to this agent. On the agent, the PSL scripts are stored in $PATROL_HOME/lib/X_psl.

Configuration Tools

Config Hacker

The Config Hacker allows experienced users to bypass the standard configuration options to download, modify, add, export, import or delete PATROL Agent configuration variables. Modifications are automatically applied to the PATROL Agent and immediately impact your monitoring environment.

Note that some variables cannot be deleted as they are defined in the config.default file. In this case, you can only reset their values to their definition in config.default.

The DOWNLOAD.CFG button allows you to download the currently selected configuration “folder” as a .CFG file, that can be re-used with pconfig, imported into a CMA policy or imported via the IMPORT .CFG button. Select the root of the configuration and click the DOWNLOAD .CFG button to download the entire Agent’s configuration.

If you wish to export the configuration of Monitoring Studio X only, you need to use the download button from the Studio Settings page. To download a single Template configuration, you need to use the DOWNLOAD button in the Template’s interface.

The PURGE button deletes all customized variables and restores the configuration of the PATROL Agent with the variables defined in the config.default file. The configuration is automatically backed up before being purged.

Once its configuration is purged, an Agent is likely to be unusable and will not start correctly if you try a restart. It is strongly advised to purge the configuration, and then restore or re-import a proper configuration immediately.

Encryption Tool

Some Agent configuration variables need to be set with encrypted passwords (such as the defaultAccount variable, for example). The encryption tool lets you encrypt a password using different algorithms. You will typically use Agent’s default encryption for PATROL Agent’s and BMC KMs password variables, and Sentry’s encryption for Sentry KMs password variables.

Troubleshooting Tools

Debug

When you encounter an issue and wish to report it to Sentry Software, you will be asked to enable the Debug mode and provide the debug log to the Sentry Software support team.

When the debug mode is set to ON, Monitoring Studio X creates 3 log files that record all the KM actions until the date and time you have set:

  • X_debug_km_{port-and-timestamp}.log: log file of the discovery and collect operations of the KM
  • X_CollectionHub_debug_psl_{port-and-timestamp}.log: log file of the Collection Hub, the interface between PSL and the Java engine
  • X_CollectionHub_debug_java_{port-and-timestamp}.log: log file of the Java engine of the Collection Hub

These files are saved to the $PATROL_HOME/log directory.

PSL Process List

The PSL Process List provides an exhaustive list of currently scheduled or active PSL processes on the monitored PATROL Agent. The information displayed includes the unique numerical process id (PID), the PSL process name and type, and its status.

KM list

The PATROL KM List provides an exhaustive list of all the KMs currently loaded on the monitored PATROL Agent, along with their version, static (“yes” if the KM always remains loaded by the Agent, “no” if the Knowledge Module is only loaded on request), and the number of consoles currently connected and using the KM.

Keywords:
studio km patrol develop web