Using the CCDT URL

MQGem recently delivered new versions of MO71 and MQSCX that support the new IBM MQ V9 release. As well as support for the new command level, they support other new IBM MQ V9 features. One such feature is the ability to have your Client Channel Definition Table (CCDT) hosted somewhere centralised, such as on an FTP server or web server. Prior to IBM MQ V9, this was only available to Java clients due to the fact that the language gave you the capability whenever you needed to specify a file name URI. Now in IBM MQ V9, ‘C’ clients (and unmanaged .NET clients) also have this feature.

Jon Rumsey has a great write-up of this feature on the MQDev Blog, MQ V9 Client Channel Table Enhancements – URL retrieval.

MO71

You can either set the MQCCDTURL environment variable and the whole MO71 application will take note of it, or you can set it individually for specific locations by providing the CCDT URL in the location dialog. Open the Location, ensure the Client checkbox is ticked which enables two things, the Configure button – which is for defining your channel definition manually through the MQCNO, and the CCDT URL entry field, which is where you can put the URL of your hosted CCDT file. You don’t need both of course, and MQ defines a precedence order of which is used if you do specify both.

MO71 Location Dialog showing CCDT URL field in use

Specify your CCDT URL in the MO71 Location Dialog.
Please note, the URL shown is for demonstration purposes only. There is no CCDT at the shown URL!

MQSCX

As with MO71, you can either set the MQCCDTURL environment variable and the whole MQSCX application will take note of it, or you can set it individually for specific locations by providing the ccdturl() on the =conn command.

MQSCX Extended MQSC Program – Version 9.0.0

Licenced to Paul Clarke

Licence Location: Head Quarters

> =conn qm(MQ900) client ccdturl(http://www.mqgem.com/MQGEM.TAB)

MQSCX Extended MQSC Program – Version 9.0.0

Licenced to Paul Clarke

Licence Location: Head Quarters

[14:05:31] =conn qm(MQ900) client ccdturl(http://www.mqgem.com/MQ

Connected to ‘MQ900’

MQ900>


If this feature interests you and you’d like to try it out for yourself on either of these products, and you are not currently a licence holder, you may email support@mqgem.com to request a trial licence.

MO71 – AMS Policy Commands

MQGem recently delivered a new version of MO71 that supports the new IBM MQ V9 release. As well as support for the new command level, there were a number of other features in this new version of MO71. One of those new features was the inclusion of the Advanced Message Security (AMS) policy commands.

AMS policy commands allow you to create policies for the protection of messages on your MQ queues. You can define the following types of policies:-

  • Integrity Policy
    To quote Knowledge Center,

    Integrity protection is provided by digital signing, which provides assurance on who created the message, and that the message has not been altered or tampered with.

    An integrity policy has a signature algorithm, but no encryption algorithm.

  • Privacy Policy
    To quote Knowledge Center,

    Privacy protection is provided by a combination of digital signing and encryption.

    A privacy policy has both a signature algorithm and an encryption algorithm.

  • Confidentiality Policy
    New in IBM MQ V9, to quote Knowledge Center,

    Confidentiality protection is provided by encryption only.

    A confidentiality policy has no signature algorithm, but does have a encryption algorithm. The Key Reuse feature is applicable to this type of policy. Jon Rumsey has a great write-up of this new IBM MQ V9 features on the MQDev blog, MQ V9 Fast encrypted messages with MQ – Introducing AMS Confidentiality Policies.

MO71 Protection Policies Menu

Work with AMS Protection Policies in MO71

If your queue manager is not yet at V9, you can use this latest version of MO71 to manage your Integrity and Privacy policies on your pre-V9 Distributed Queue Manager.

You’ll find the Protection Policy dialogs along with your other security commands.

You can list your policies, amend and delete them, and create new ones through the familiar MO71 dialogs. You can also export them as you can any other queue manager configuration, and filter them using MO71’s powerful filter capabilities.

MO71 Protection Policies Dialog

Use MO71 to display and manage your Integrity, Privacy and Confidentiality Policies


If this feature interests you and you’d like to try it out for yourself, you can download MO71 from the MQGem website and if you don’t currently have a licence, you may email support@mqgem.com to request a trial licence.

Changing multiple objects at once

MQGem recently delivered a new version of MO71 that supports the new IBM MQ V9 release. As well as support for the new command level, there were a number of other features in this new version of MO71. One of those new features was a customer request for a way to alter multiple objects at once when those objects reside on different queue managers.

For a long time, MO71 has been able to let you alter a number of objects at once when those objects were hosted on the same queue manager. For example, imagine you have an application that uses a number of queues, and recently that application has made a change so that the messages it uses have got larger than the original MAXMSGL defined on its queues. You can bring up a list dialog in MO71 and select all the queues that need to be changed:-

MO71 Queue List Selection

Select the queues you wish to change from the list dialog

Then open the definition with the context menu Open…, and you will see that MO71 presents you with a single dialog that shows all your selected queue names.

MO71 Queue Dialog Multiple Names

When changing multiple objects, MO71 object dialog shows all the names like this

Find the attribute you want to change, in this example the Max Msg Length, and provide the new value and then click on Update. MO71 always only sends up the values that you change. It doesn’t send up all the attributes on an ALTER command. So if you only change the Max Msg Length to 60000, then an alter command will be sent to each queue thus:-

ALTER QLOCAL(q-name) MAXMSGL(60000)

and all other attributes will remain as they were. For example, all the descriptions of my queues were different and they stay as they were.

Objects on Multiple Queue Managers

In recent versions of MO71, a feature was added that allows you to view multiple queue managers’ objects in one list dialog. In this most recent version of MO71, selecting and changing multiple objects from this dialog where those objects are owned by multiple queue managers, now brings up the same dialog as shown above – just one dialog – and lists all the queue names. There is one important difference in this mode – the queue names are fully qualified with their queue manager name as you can see in the screenshot below.

Imagine you needed to make a change to all your dead-letter queues around your estate. Now you can select them all in a Multi QMgr list and make the change in a matter of a few clicks and keystrokes.

MO71 Queue List DLQ

A Multi-QMgr queue list from where you can launch a change to objects

In this case, when you Open… the definition dialog up, you can see that the queue names are fully qualified with their owning queue manager.

MO71 Multiple DLQ Change

Multiple Objects on Multiple QMgrs – names fully qualified

Imagine how easy it can now be to make wide-reaching changes to attributes on your MQ object definitions.


If this feature interests you and you’d like to try it out for yourself, you can download MO71 from the MQGem website and if you don’t currently have a licence, you may email support@mqgem.com to request a trial licence.

View Buffer Pool and Pageset Usage via MO71

MQGem recently delivered a new version of MO71 that supports the new IBM MQ V9 release. As well as support for the new command level, there were a number of other features in this new version of MO71. One of those new features was a customer request for a way to view Buffer Pool and Pageset Usage.

Pageset Usage

You’ve always been able to see this through the MQSC window (which is your fallback for any command that MO71 doesn’t have a specific menu or dialog for), which would show you a display something like this:-

CSQI010I M901 Page set usage ...                                      
  Page Buffer     Total    Unused  Persistent  NonPersist Expansion   
   set   pool     pages     pages  data pages  data pages        count
_    0      0      1078      1042          36           0 USER       0
_    1      0      1078      1059          19           0 USER       0
_    2      1      1078       897         181           0 USER       0
_    3      2      1078       976           0         102 USER       0
_    4      3      1078      1056          17           5 USER       0
_   25      3      1078      1078           0           0 USER       0
 End of page set report

In the latest version of MO71 you can now view this same data in a standard MO71 dialog.

MO71 Pageset List

View Pageset Usage in an MO71 List dialog

This means that you have all the usual manipulation capabilities at your fingertips. For example, you can sort any of the columns simply by clicking on the title; you can rearrange the order of the columns, or exclude columns that you are not interested in; you can export the data in CSV format to import into your favourite spreadsheet or graphing program; and you can write filters to work with the data and colour rows that meet a certain criteria.

Here’s one such example of how you might want to manipulate this data just to give you an idea. You can write filters in MO71 to make a new column with a calculation of your own based on the other data available.

Here’s a filter that adds a new column (the ‘#’ character causes the new column) containing a floating point variable (the ‘@@’ makes the variable a floating point number, where a single ‘@’ would be an integer) which is the percentage of the ‘Total Pages’ that are ‘Persistent Pages’. You can call the variable anything you like and it’s name will become the column heading. N.B. The filter is a boolean expression, so to ensure every row is still shown, we finish the expression with “1”.

@@PercentPsist# := PSISTPG*100/TOTALPG; 1

You can sort your new column from within the filter (or by clicking on the heading just as with any other column).

sortd(@@PercentPsist# := PSISTPG*100/TOTALPG); 1

You can go further still and colour the rows that meet a certain criteria, for example, any Pageset with more than 10% of persistent pages.

sortd(@@PercentPsist# := PSISTPG*100/TOTALPG); bg(@@PercentPsist# >10,red); 1
MO71 Pageset List Filtered

MO71 Pageset List manipulated with a Filter

Buffer Pool Usage

As with Pageset Usage, the same MQSC command DISPLAY USAGE also shows you the Buffer pool attributes. While issuing the command through MQSC would report both tables to you, in MO71, each set of information is in a separate table, since the columns are of course different for each set of information.

CSQI065I M901 Buffer pool attributes ...                              
  Buffer  Available  Stealable   Stealable  Page      Location        
    pool    buffers    buffers  percentage  class                     
_      0       1000        963          96  4KB       BELOW           
_      1       1000        821          82  4KB       BELOW           
_      2       1000        894          89  4KB       BELOW           
_      3       1000        782          78  4KB       BELOW           
 End of buffer pool attributes

So the above information can also be seen, and manipulated, in an MO71 list dialog.

MO71 Buffer Pool List

Viewing the Buffer Pool usage in MO71

Note that this feature is available for any version of Queue Manager – it is not a IBM MQ V9 feature. If you are a current MO71 licence holder, you can simply download the new version of MO71 and start using it. If you’re not a current licence holder, and you’d like to try out MO71, please email support@mqgem.com to request a trial licence.

MO71 version 9.0.0 is released

MQGem Software is pleased to announce that a new version of MO71, our GUI Administrative tool for IBM MQ, is now available.

The main features of the release are as follows:-

Support for MQ Command Level 900

As normal with a new release of IBM MQ, there is a new command level. MO71 now supports this new command level and its contents.

Work with Advanced Message Security (AMS) Protection Policies

You can now define, update and delete AMS Protection Policies. Other aspects of MO71 have also been updated accordingly to deal with these policies, for example updates to Default Lists and Usage Tailoring. Read more about this feature in MO71 – AMS Policy Commands.

Support of CCDT URL

MQ V9 allows a connecting application to specify the URL location of the CCDT file to use. This field can be specified in the location dialog. Read more about this feature in Using the CCDT URL

MO71 Monitor Time

Add monitor times to your main window display

Show last monitor time on main window

If you wish you can display the last time (or elapsed time) that a response was received from a Queue Manager that is monitored.

Changing multiple objects can now belong to different Queue Managers

If multiple objects are selected from a list and those objects belong to different Queue Managers then the resulting dialog will qualify each object with their owning Queue Manager. It is now possible, for example, to change the maximum depth of multiple queues on multiple Queue Managers with a single click. Or alternatively you can stop/start multiple channels on different Queue Managers with a single press of a button. Read more about this feature in Changing multiple objects at once.

Changing multiple objects is reflected in the dialog title bar

The text [Multiple Objects] will be shown in the title bar in this case.

Exporting lists now has a new ‘All Fields’ checkbox

MO71 Export All Fields

Quick way to export all fields

Previously, when exporting from a list of objects, only the fields which were actually in the list would be exported. This is useful for certain types of displays, such as text and CSV. However, for MQSC this can mean that you would get an incomplete object definition. A new ‘All fields’ checkbox now allows you to request that all the object fields are exported.

New Buffer Pool and Page Set dialogs displayable

MO71 now supports the display of z/OS Buffer Pool and Page Set objects. Read more about this feature in View Buffer Pool and Pageset Usage via MO71.


The new version can be downloaded from the MO71 Download Page. Any current licensed users of MO71 can run the new version on their existing licence. If you don’t have a licence and would like to try out MO71 then send an email to support@mqgem.com and a 1-month trial licence will be sent to you.