Explanation of Parameters in an IniFile of Capitalware Products

I have a new customer who is having a problem understanding parameters and relations of parameters in the IniFile (initialization file aka configuration file).

By no means am I taking a shot or putting down or marking fun of the customer. When English is not your first language and a new user is trying to read and understand English documentation, it is a difficult task for them.

I’ll use MQ Auditor on Linux as the example since that is the product they are having issues with but most of the following can be applied to any other back-end Capitalware product.

The customer was trying to setup MQ Auditor for use with the MQ MI (aka MQ HA) setup. They were trying to use the same path for everything.

For all Capitalware back-end products (i.e. exits), I have created and used defaults paths and filenames, so that the end-user can install and get up and running in 12-15 minutes. Once they get a feel for the product, they then can tailor it to fit into their MQ environment.

Things to remember:

  1. The location of the shared-library (Unix/Linux), Exit Module (IBM i) or DLL (Windows) has absolutely no bearing on any other parameter but the 32-bit and 64-bit libraries must be in separate directories (folders).
  2. The location of the IniFile has absolutely no bearing on any other parameter.
  3. The name of the IniFile (I did not say ‘mqa.ini’) has absolutely no bearing on any other parameter.
  4. The location of the Audit directory has absolutely no bearing on any other parameter.
  5. The location of the Archive directory has absolutely no bearing on any other parameter.
  6. The location of the LogFile has absolutely no bearing on any other parameter.
  7. The name of the LogFile (I did not say ‘mqa.log’) has absolutely no bearing on any other parameter.
  8. The location of the ExitPath has absolutely no bearing on any other parameter

The following is a valid setup for MQ Auditor on Linux:

(1) MQ Auditor can be installed in: /opt/Capitalware/MQA/exits/ and /opt/Capitalware/MQA/exits64/ rather than the default directories of /var/mqm/exits/ and /var/mqm/exits64/.

i.e. the queue manager’s qmi.ini file:

ExitPath:
   ExitsDefaultPath=/opt/Capitalware/MQA/exits:/var/mqm/exits
   ExitsDefaultPath64=/opt/Capitalware/MQA/exits64:/var/mqm/exits64

(2 & 3) The IniFile name will be ‘mqlt1.ini‘ (rather than ‘mqa.ini’, the default name) because the queue manager is called MQLT1 and I want to associate the filename with the queue manager name. The location of the IniFile will be /roger/loves/lasagna/ directory rather than the default directory of /var/mqm/exits64/.
i.e. the queue manager’s qmi.ini file:

ApiExitLocal:
   Sequence=1
   Name=MQA
   Function=EntryPoint
   Module=mqa
   Data=/roger/loves/lasagna/mqlt1.ini

As I have documented in the MQ Auditor Installation and Operation manual, the value for the Data parameter cannot exceed a length of 32 characters. This is an explicit IBM MQ requirement. I get emails all the time asking me to increase the length but I cannot because IBM is responsible for this feature/restriction.

The same restriction applies to Exit Data fields for channels. i.e. SecurityUserData, MsgUserData, SendUserData, ReceiveUserData, etc. Now, if I had a bone to pick with IBM, it would be, why did you make the Exit fields a length of 128 characters but limit the corresponding Exit Data field to only 32 characters. Why didn’t you make them both the same length? It is just one of those quirks in IBM MQ that you need to remember.

(4) The Audit directory can be /some/file/system/with/lots/of/room/ rather than the default directory of /var/mqm/audit/.
i.e. in the IniFile aka mqlt1.ini

AuditPath=/some/file/system/with/lots/of/room/

(5) The Archive directory can be /holy/cow/this/is/really/really/huge/ rather than the default directory of /var/mqm/audit/archive/.
i.e. in the IniFile aka mqlt1.ini

AuditArchivePath=/holy/cow/this/is/really/really/huge/

(6 & 7) The LogFile name will be ‘mqlt1.log‘ because the queue manager is called MQLT1 and I want to associate the log file with the queue manger rather than use the default filename of ‘mqa.log’. Hence, the location will be /roger/hates/liver/and/bloodpudding/ rather than the default directory of /var/mqm/audit/.
i.e. in the IniFile aka mqlt1.ini

LogFile=/roger/hates/liver/and/bloodpudding/mqlt1.log

(8) The ExitPath directory will be where the 64-bit shared-library files are stored. i.e. from above in # 1: /opt/Capitalware/MQA/exits64/ rather than the default directory of /var/mqm/exits64/.
i.e. in the IniFile aka mqlt1.ini

ExitPath=/opt/Capitalware/MQA/exits64/

The ExitPath parameter will be used by MQ Auditor as the default “home directory“. What do I mean by that? Lets say you don’t want to explicitly set the LogFile’s path and filename. You just want to specify the filename.
i.e. in the IniFile aka mqlt1.ini

LogFile=mqlt1.log

So, MQ Auditor will prefix the value for ExitPath to the LogFile value to create a fully qualified path and filename.

Hopefully, this will help new and existing customers who are using Capitalware’s back-end products to feel more confident in their usage.

Regards,
Roger Lacroix
Capitalware Inc.

This entry was posted in Capitalware, IBM i (OS/400), IBM MQ, MQ Auditor, MQ Authenticate User Security Exit, MQ Channel Connection Inspector, MQ Channel Encryption, MQ Channel Throttler, MQ Enterprise Security Suite, MQ Message Compression, MQ Message Encryption, MQ Message Replication, MQ Standard Security Exit, Unix, Windows, z/OS.

Comments are closed.