Archive for the ‘ITM6.x’ Category

Increasing the TEPS Navigator “more” limit

May 9th, 2010

In some cases the TEPS navigator will hang on the “more” nodes, I haven’t bothered trying to run down the how and why, I just want to see all child-nodes when I select a parent-node.

Here’s how you do it…

Add the following lines to the teps.jnlpt, then rebuild the teps.jnlp

<property name=”cnp.http.url.host” value=”$HOST$”/>
<property name=”cnp.navigator.branch.pagesize” value=”1000″/>
<property name=”cnp.navigator.branch.threshold” value=”500″/>

  • Share/Bookmark

Tags: , , , , , , , , ,
Posted in ITM6.x | Comments (0)

ITM6 : Take Action : Remount Stale remote filesystems

July 8th, 2009

 

Situation

An ITM6 Unix (UX) or Linux (LZ) agent detects that its remote filesystems are unavailable, a “stale” connection.

Automate an action to remount it if possible

Methodology

Two (2) ITM situations are created where

  1. detects the mount point has become stale
  2. the other is triggered by the “correlated situation” condition of #1 being tr

Situation #1 : Detect “Stale” remote FS

Simple enough – if “Space Available” fails collection, there is an issue


 

Situation #2 : Remount Situation

Formula Conditions

Use the “Situation Comparison” for a condition against the situation above

Take Action

Note: the lines are strung together on one line in the Take Action field, to make it more legible here, newlines are after the semicolons

f=”&{Linux_Disk.Mount_Point}” ;
u=`umount -f $f 2>&1 && echo $f`;
m=`mount $f 2>&1 && echo $f`;
echo -e “umount: $u\nmount:$m” | mail -s “ITM ACTION: Remount $f” junkmail@JdsMedia.net

 

  • Share/Bookmark

Tags: , , , , , , , , , , , ,
Posted in ITM6.x | Comments (0)

ITM Logs Timestamp Conversion

July 8th, 2009

ITM v6 log files use a hexadecimal timestamp (to save space? who the hell knows), which adds unnecessary effort when the reason you’re looking at the logs is to determine an issue in the first place. In any case… Here’s the script I wrote when I first encountered the nonsense in ITM v6 logs a few years ago:

#!/bin/perl
foreach (<STDIN>) {
if (/^[^\s\d\w]+([\w\d]*)/) {
@t=localtime(hex($1));
$time=sprintf(“%02d:%02d:%02d %02d/%02d/%04d”,
$t[2],$t[1],$t[0],$t[4]+1,$t[3],$t[5]+1900);s/^[^\s\w\d]+[\w\d]*/$time/;}print $_;}

Here’s a one-liner that Venkat.Saranathan at Gulfsoft.com cranked out, rendering my script pretty much obsolete

perl -lane ‘if ($_ =\ /^(.)([\dA-F]+)(\..*)/) { printf “%s%s%s”, $1, scalar(localtime(oct(“0x$2″))),$3; }’

  • Share/Bookmark

Tags: , , , , , , , , , ,
Posted in ITM6.x | Comments (0)

ITM : Testing Windows Event Logs

July 7th, 2009

In a nutshell: use theeventcreate

I had an issue with ITM Windows Agent creating events which I was then sending out email alerts via a UNIX script.

The simple problem was backslashes in windows paths where the “Take Action” notification script was literalizing characters which might be part of the EventLog Description

For example:

"c:\Damned these\nagging\slashes\argh"

became

c:\Damned these
agging\slashesrgh

Yes, simply quoting my string would have solved most of my problem, IT DID HOWEVER lead me to a handy windows command for testing, calledeventcreateid

Example : eventcreate /ID 101 /SO FooBar /D “Test Message for ITM” /T ERROR /L Application

  • Share/Bookmark

Tags: , , , , , , , , , , , , , ,
Posted in ITM6.x, WindozeMiscellaneous | Comments (0)

ITMv6 Process string length limitation

July 1st, 2009

My PMR to IBM Tivoli support

I’d be surprised if there wasn’t already an ER for this, but if you
don’t mind, please submit one.

Do you know if anybody else has asked or criticized this major
limitation.

Its hard to believe that there isn’t something that emulate what a
simple one line script would accomplish.

In the ER, I would expect support for perl regex pattern, where patterns
can be indexed to return the matching index as a displayable value.

match process string against /opt/IBM*\s+(\S+java*\)s+server1 pattern and return pattern matching (\S+java*\)

IBM’s Response

Yes, we already have an ER opened for this case, please note down the
request number: MR0108092213

****

ITM 6 has limitations when monitoring processes.

Customer needs to monitor processes with very long names, in this case
the WebSphere NodeAgent process with 4999 characters. The unique string
“nodeagent” is at the very end of the process name and the Unix OS agent
cannot find this process: The attribute command_name is limited to 100
characters and for command_name_U to 768 Bytes.
Cust needs a possibility to monitor such long process names using the
standard ITM 6 OS agent.

****

It is already a recognized request. You can follow up on the progress of
the request with your IBM Rep. Please let me know if you have any other
questions.

  • Share/Bookmark

Tags: , , , , , , , , , , , ,
Posted in ITM6.x | Comments (0)

IBM Tivoli Monitoring Product Codes

June 29th, 2009

Obtaining Product Codes for IBM Tivoli Monitoring (ITM v6)

Local method:

Parse the proddsc.tbl file on a UNIX/Linux system to get the list by doing this:

UNIX
awk -F\| '/^[^*#]/ {print $1,$2}' ${CANDLEHOME}/registry/proddsc.tbl | sort | uniq

Or, IBM’s site http://www-01.ibm.com/support/docview.wss?rs=2366&context=SSZ8F3&dc=DB520&dc=DB560&uid=swg21265222&loc=en_US&cs=UTF-8&lang=en&rss=ct2366tivoli

  • Share/Bookmark

Tags: , , , , , , , , , , , , , ,
Posted in ITM6.x | Comments (0)

ITM Logs Timestamp Conversion

June 29th, 2009

ITM v6 log files use a hexadecimal timestamp (to save space? who the hell knows), which adds unnecessary effort when the reason you’re looking at the logs is to determine an issue in the first place. In any case…

Here’s the script I wrote when I first encountered the nonsense in ITM v6 logs a few years ago:

#!/bin/perl

foreach (<STDIN>) {
 if (/^[^\s\d\w]+([\w\d]*)/) {
  @t=localtime(hex($1));
  $time=sprintf("%02d:%02d:%02d %02d/%02d/%04d",
  $t[2],$t[1],$t[0],$t[4]+1,$t[3],$t[5]+1900);
  s/^[^\s\w\d]+[\w\d]*/$time/;
 }
  print $_;
}

Here’s a one-liner that Venkat.Saranathan at Gulfsoft.com cranked out, rending my script pretty much obsolete

perl -lane 'if ($_ =\ /^(.)([\dA-F]+)(\..*)/) { printf "%s%s%s", $1, scalar(localtime(oct("0x$2"))),$3; }'
  • Share/Bookmark

Tags: , , , , , , , , , , , , ,
Posted in ITM6.x | Comments (0)

ITM Host Availability (ping attribute)

June 28th, 2009

Synopsis

A nice feature which isn’t publicized too much in ITM for Linux and Unix agents is the ping capability.

They’re refrerred to as “Host Availability” for Linux and “Ping Attributes” for Unix

Both will accept an input file containing a list of servers to “ping”, and both will return status and response time.

Enabling the ping hosts file

Linux

$CANDLEHOME/config/lz.ini: KLZ_PINGHOSTLIST=<path_to_list>
# e.g. KLZ_PINGHOSTLIST=$CANDLEHOME/config/my_hostlist
# Add this to the lz.config if you want to avoid having to reconfig the agent

Unix

$CANDLEHOME/config/ux.ini: KUX_PINGHOSTLIST=<path_to_list>
# e.g. KUX_PINGHOSTLIST=$CANDLEHOME/config/my_hostlist
# Add this to the lz.config if you want to avoid having to reconfig the agent

Extra feature difference

One minor, but important, difference is that the Linux component will only ping servers in the list, while the Unix component has the additional feature using a situation to ping any target host from any managed system.

This makes every managed system (agent) a ping source to target critical servers.

Attribute Group: UNIX Ping
Situation Definitions: System_Name == $NODE$, Target_Host == webserver1
  • Share/Bookmark

Tags: , , , , , , , , , , ,
Posted in ITM6.x | Comments (0)

ITM v6 Gripes (Missing functionality)

June 26th, 2009

As a Tivoli consultant, I’ve had to tweak, torque and tune ITM v6 to fulfill requirements not met out of the box. Several of my clients have felt ripped off by IBM for having paid for a product billed as covering best practices out of the box, only to discover, there is significant development costs involved.

I’m going to itemize and update the shortcomings as I think or run across them, and in all fairness, update if ITM fills the void.

Situations

  1. Attributes, values and situation specific data is not passed to the ‘Take Action” command
    • Typically this is passed in the shell’s environment
    • However, these important pieces of info ARE passed to the EIF
  2. Inability to determine what situations are running on which systems, or reversed, inability to derive which situations are running on any particular system

Windows Agent

  1. No regular expressions for directory/file matching

Unix Agent

  1. No regular expressions for directory/file matching (Unix and Linux)

Oracle Agent (ITMfDatabases)

  1. (<= v6.2.0) Does not detect listeners if dynamically configured
  • Share/Bookmark

Tags: , , , , , , , , , , , , , , ,
Posted in ITM6.x | Comments (0)

ITM TDW Schema

June 3rd, 2009

Not that there is a lot to the TDW layout, but knowing the schema assists in the documentation process and developing queries and procedures of the TDW (Tivoli Data Warehouse).

Make short work of this by using the opensource tools of SchemaSpy and Graphviz

SchemaSpy is a jar file that supports over 21 DBs, including the 3 supported by ITM TDW (Oracle, Sybase, MSSQL) and is run from the command line to generate a html directory of content about the interrogated schema.

jdsmedia@deant61p /usr/local/bin
$ java -jar ./schemaspy.jar -t ora -db testtdw -s ITMUSR -dp c:\\OraClient11g\\jdbc\\lib\\ojdbc5_g.jar -u XXX -p XXX -o c:/cygwin/tmp/tdw

Using database properties:
[./schemaspy.jar]/net/sourceforge/schemaspy/dbTypes/ora.properties

Connected to Oracle – Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 – 64bit Production

With the Partitioning, OLAP and Data Mining options

Gathering schema details………………………………………………..
……………………………….

  • Share/Bookmark

Tags: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
Posted in ITM, TDW2.x | Comments (0)

  • LinkedIn

    If you want to see my LinkedIn profile, click on this button:

    Jim Sander
  • Save MySQL

JDS Media is Digg proof thanks to caching by WP Super Cache