The log that OS/400 (or i5/OS) keeps for email is neither comprehensive nor complete. It won't tell you where your distribution went, it won't tell you who sent a distribution to you, and if your email failed, it won't tell you why it failed. Nonetheless, it is there, and you can view it by using the Display Distribution Log (DSPDSTLOG) command.
If you do not prompt DSPDSTLOG and merely press the Enter key, you will see today's log entries. If you didn't know any better, you would think that that is all that the system is holding. After all, there is no system value that controls the size of the system log. You will not be able to find a parameter in the SMTP configuration that controls the number of days that a log entry is kept. The Change Distribution Attributes (CHGDSTA) command does not offer an indication that there are any limits. But limits there are.
No individual is entitled to more than 9,999 distributions. This may seem like a lot, but if you have programmed applications that use the Send Distribution (SNDDST) command for regular automated business requirements, you might end up in a whole heap of trouble...as I did.
I learned three things by reaching this limitation:
- There is a limitation.
- Distribution log entries consume an awful lot of disk space.
- The Delete Distribution (DLTDST) command (shown in Figure 1) is pretty worthless when used on its own.
Figure 1: The Delete Distribution (DLTDST) command is pretty worthless on its own. (Click image to enlarge.)
The problem starts with what is not there. No *ALL option is allowed. Neither can you specify *ALL even if you specify a user. This is compounded by the nature of the Distribution Identifier (DSTID) parameter. Three parts are strung together:
- The directory entry address of the user
- The directory user ID of the user
- A unique number
Each part starts at a specific location within the string, so there may be embedded blanks. If you specify the string on the DLTDST command, you had better have every byte where it belongs. Otherwise, nothing will happen.
To top it off, each distribution must be deleted individually. There is no alternative. Typing in distribution IDs for nearly 10,000 log entries per user may be a form of job security, but it is not a generally recommended technique. Instead, the Query Distribution (QRYDST) command is used. Using this command to display entries is a disappointment. The only display is the numbers of log entries for a user, and that's it. In order to obtain the actual distribution identification, you must specify an *OUTFILE. Then, the file may be read, and the distribution IDs may be fed to the DLTDST command.
Enter the CLEANMAIL program. This program establishes a file of all non-IBM users, and spawns three submitted jobs that perform the QRYDST command for each user. Program MAILIN is for log entries showing incoming mail, program MAILOUT is for outgoing mail, and program MAILERR is for mail errors.
IBM should really have a single command that performs the delete function in a simpler, more comprehensive fashion, but until then, these programs will do the job.
David G. Abramowitz is an independent consultant and may be reached at
LATEST COMMENTS
MC Press Online