PMDF has facilities to collect and monitor channel counters based upon the Mail Monitoring MIB, RFC 1566. These counters tabulate on a per channel basis the twelve items described in Channel Counters. Table 1 Channel Counters Field name Description RECEIVED_MESSAGES The number of messages enqueued to the channel SUBMITTED_ The number of messages enqueued by the channel MESSAGES STORED_MESSAGES The total number of messages currently stored for the channel DELIVERED_ The number of messages dequeued by the channel MESSAGES RECEIVED_VOLUME The volume of messages enqueued to the channel as measured in PMDF blocks SUBMITTED_VOLUME The volume of messages enqueued by the channel as measured in PMDF blocks STORED_VOLUME The volume of messages currently stored for the channel as measured in PMDF blocks DELIVERED_VOLUME The volume of messages dequeued by the channel as measured in PMDF blocks RECEIVED_ The total number of recipients specified in RECIPIENTS all messages enqueued to the channel SUBMITTED_ The total number of recipients specified in RECIPIENTS all messages enqueued by the channel STORED_RECIPIENTS The total number of recipients specified in all messages currently stored for the channel DELIVERED_ The total number of recipients specified in RECIPIENTS all messages dequeued by the channel __________________________________________________________________ A PMDF block is, by default, 1024 bytes. However, this size may vary from system to system. The size of a PMDF block is controlled with the BLOCK_SIZE PMDF option. It is important to note that these counters generally need to be looked at over time noting the minimum values seen. The minimums may actually be negative for some channels. Such a negative value merely means that there were messages queued for a channel at the time that its counters were zeroed (e.g., the cluster-wide database of counters created). When those messages were dequeued, the associated counters for the channel were decremented therefore leading to a negative minimum. For such a counter, the correct "absolute" value is the current value less the minimum value that counter has ever held since being initialized.
1 /CLEAR
Clear the node-specific, in-memory cache of counters. Syntax COUNTERS/CLEAR Command Qualifiers Defaults /ASSOCIATIONS /ASSOCIATIONS /CHANNELS /CHANNELS
1.1 – Restrictions
WORLD privilege is required to in order to use this utility. If the in-memory section did not already exist (so that a new one must be created), then SYSGBL and PRMGBL privileges are also required. If a new cluster-wide, on-disk database must be created, then privileges sufficient to create a file in the PMDF_ TABLE: directory are required.
1.2 – Parameters
None.
1.3 – Description
The PMDF COUNTERS/CLEAR command is used to clear the values in the node-specific, in-memory section of counters. The command creates the node-specific, in-memory section of association and channel counters if it does not already exist. Then it zeros all fields in the in-memory section. Note that the counters will be zeroed without first merging their values into the cluster-wide database of channel counters. If a cluster-wide, on-disk database does not already exist, a new one will be created. Finally, the fields in the on-disk database for numbers of stored messages, message recipients, and message volumes are set based on the entries in the PMDF queue cache database. Either the association counters, or channel counters, or both, may be cleared. The default is to clear both association and channel counters. If you want to update the on-disk database with the old in-memory values before clearing them, then you should issue a $ PMDF COUNTERS/SYNCHRONIZE command before issuing the PMDF COUNTERS/CLEAR command. You may also want to issue a $ PMDF CACHE/SYNCHRONIZE command before issuing the PMDF COUNTERS/CLEAR command, to ensure that the queue cache database values (which will be used to set some of the on-disk database values) are themselves current.
1.4 – Command Qualifiers
1.4.1 /ASSOCIATIONS
/ASSOCIATIONS (default) /NOASSOCIATIONS This qualifier specifies whether to clear the in-memory cache of association counters.
1.4.2 /CHANNELS
/CHANNELS (default) /NOCHANNELS This qualifier specifies whether to clear the in-memory cache of channel counters.
2 /CRDB
Create a cluster-wide, on-disk database of association and channel counters. Syntax COUNTERS/CRDB Command Qualifiers Defaults None. None.
2.1 – Restrictions
Requires sufficient privileges to create a file in the PMDF_ TABLE: directory; if a in-memory section must also be created, SYSGBL and PRMGBL privileges are required.
2.2 – Parameters
None.
2.3 – Description
A new, cluster-wide database of channel counters is created with the PMDF COUNTERS/CRDB command. The new database will have all counters zeroed except for the counts of stored messages, recipients, and message volumes for each channel. Those counts will be determined by the entries in the PMDF queue cache database. In addition, if an in-memory section for association and channel counters on this node does not already exist, it will be created as well. Once an on-disk database exists, its values may be updated from the node-specific, in-memory sections by using the PMDF COUNTERS/SYNCRONIZE command. Note that since some initial database values will be set based on entries in the PMDF queue cache database, you may want to issue a $ PMDF CACHE/SYNCHRONIZE command before issuing the PMDF COUNTERS/CRDB command, to ensure that the queue cache database values are themselves current.
3 /SHOW
Display the contents of the cluster-wide database of counters. Syntax COUNTERS/SHOW Command Qualifiers Defaults /ASSOCIATIONS /ASSOCIATIONS /CHANNELS /CHANNELS /HEADERS /HEADERS /OUTPUT=file-spec None /TODAY /TODAY
3.1 – Restrictions
Normally WORLD privilege is all that is required. But if the cluster-wide, on-disk database must be created, then privileges sufficient to create a file in the PMDF_TABLE: directory are required; or if the node-specific, in-memory section must be created, then SYSGBL and PRMGBL privileges are required.
3.2 – Description
The contents of the cluster-wide association and channel counters database may be displayed with the PMDF COUNTERS/SHOW command. A PMDF COUNTER/SYNCHRONIZE command is implicitly performed by this command; the database contents are synchronized with the in-memory section(s) before being displayed. Note that as part of the implicit PMDFCOUNTERS/SYNCHRONIZE operation, if the cluster-wide, on-disk database does not already exist, the PMDF COUNTERS/SHOW command will create it. And if the node-specific, in-memory cache of counters does not already exist, the PMDF COUNTERS/SHOW command will create it too.
3.3 – Command Qualifiers
3.3.1 /ASSOCIATIONS
/ASSOCIATIONS (default) /NOASSOCIATIONS This qualifier specifies whether to show the in-memory cache of association counters.
3.3.2 /CHANNELS
/CHANNELS (default) /NOCHANNELS This qualifier specifies whether to show the in-memory cache of channel counters.
3.3.3 /HEADERS
/HEADERS (default) /NOHEADERS Controls whether or not a header line describing each column in the table of counters is output.
3.3.4 /OUTPUT
/OUTPUT=file-spec Direct the output to the specified file. By default the output appears on your display.
3.3.5 /TODAY
/TODAY (default) /NOTODAY This qualifier specifies whether to show PMDF's count for the number of messages processed this day. Note that as discussed in the PMDF System Manager's Guide, PMDF counters are intentionally designed to be lightweight and as such by design, the value shown becomes increasingly likely to be an undercount as message volume increases. So high volume sites (sites with an unlimited volume PMDF license) in particular should not place too much credence in the reported number.
3.4 – Examples
To display the counters for all channels and associations, issue the command $ PMDF COUNTERS/SHOW 4263 messages processed so far today 30000 messages per day are permitted by your license Channel Messages Recipients Blocks ------------------------ ---------- ---------- ---------- l Received 3863 3881 25786 Stored 89 89 460 Delivered 3876 3894 26018 (3859 first time) Submitted 99 114 1611 Attempted 17 17 25 Rejected 0 0 0 Failed 1 1 6 Queue time/count 29794837/3877 = 7.68502E3 Queue first time/count 18904343/3860 = 4.8975E3 tcp_local Received 208 217 4153 Stored 3 3 9 Delivered 200 212 2461 (197 first time) Submitted 4053 4078 25919 Attempted 7 7 0 Rejected 46 68 0 Failed 14 14 1695 Queue time/count 1106266/211 = 5.24297E3 Queue first time/count 455897/208 = 2.19181E3 Current In Assocs 127 Total In Assocs 1056 Total Out Assocs 132 Rejected Out Assocs 11 Failed Out Assocs 1 Channel Timestamp Association ------------ ------------ ------------------------------------------------- tcp_local 01-Feb 00:27 TCP|192.160.253.70|25|192.160.253.66|3465 tcp_local 25-Jan 00:31 TCP|192.160.253.70|25|192.160.253.66|3496 tcp_local 26-Jan 14:50 TCP|192.160.253.70|25|192.160.253.66|2086 tcp_local 05-Feb 12:23 TCP|192.160.253.70|25|192.160.253.66|3593 tcp_local 01-Feb 00:34 TCP|192.160.253.70|25|192.160.253.66|3581 ... $
4 /SYNCHRONIZE
Synchronize each of the node-specific, in-memory caches of channel counters with the cluster-wide database. Syntax COUNTERS/SYNCHRONIZE Command Qualifiers Defaults None. None.
4.1 – Restrictions
Normally, just WORLD privilege is required to use this utility. However, if the node-specific, in-memory section must be created, then SYSGBL and PRMGBL are required; or if the cluster-wide, on-disk database must be created, then privileges sufficient to create a file in the PMDF_TABLE: directory are required.
4.2 – Parameters
None.
4.3 – Description
To synchronize each of the node-specific, in-memory caches of channel counters with the cluster-wide database, issue a PMDF COUNTERS/SYNCHRONIZE command. The command will not return control back to you until all the caches have been synchronized. The PMDF COUNTERS/SYNCHRONIZE command signals each PMDF counters synchronization process in the cluster-there should be one such process on each node running PMDF. Note that on each node, the synchronization can only be performed if the PMDF counters synchronization process is running on that node. Assuming that the PMDF counters synchronization process is running on each node, then for each node the node-specific, in- memory cache will be created, if it does not already exist. If the cluster-wide, on-disk database does not exist, it will be created. The in-memory cache values will be used to update the on-disk database, and then the on-disk database values for stored messages, recipients, and volume will be set by scanning the PMDF queue cache database.
5 /TODAY
Display PMDF's count of the number of messages processed so far today. Syntax COUNTERS/TODAY Command Qualifiers Defaults None. None.
5.1 – Restrictions
WORLD privilege is required.
5.2 – Description
PMDF's count of the number of messages processed so far today may be displayed with the PMDF COUNTERS/TODAY command. Note that as discussed in the PMDF System Manager's Guide, PMDF counters are intentionally designed to be lightweight and as such by design, the value shown becomes increasingly likely to be an undercount as message volume increases. So high volume sites (sites with an unlimited volume PMDF license) in particular should not place too much credence in the reported number.
5.3 – Examples
To display PMDF's count of the number of messages processed today, issue the command $ PMDF COUNTERS/TODAY 4263 messages processed so far today 30000 messages per day are permitted by your license $