On occasion, concerns may arise regarding the use of maileater functionality, which may warrant an examination of extended logging for purposes of troubleshooting. This document describes several methods to examine such logging.
- This document is NOT an all-inclusive troubleshooting guide. While this document covers some of the more common issues that could arise in maileater, it is strongly advised that if you are experiencing an issue with maileater, to open a support ticket so that a more thorough examination of the log materials may take place, especially for more complex concerns.
- This document does include a command to turn up logging. Please be careful when running this command, especially in a production environment. If left active, extended logging may cause performance issues and a saturation of existing log files. We strongly advise that any such examination of the logging be tested in a non-production system for purposes of familiarity.
- While the logging presented here is largely in chronological order, some entries may not necessarily be in chronological order. Further, some logs are presented in an abbreviated form due to the significant amounts of content generated with the extended logging. The best way to approach this document is to examine for the presence of specified content that is written in italics in your logs.
To start, let us define certain functionalities in terms of their processes:
Pdm_Maileater_nxd: This process handles the examination of a given Mailbox. Any mail that may appear in a configured mailbox will be acquired by Maileater for examination of content to determine if the message warrants further activity, and the message will be deleted (eaten) at the end of the examination. This document’s focus is solely on this process and this process alone, and serves as a guide to how to troubleshoot concerns that may arise with regards to this process.
Pdm_Text_nxd: Once Maileater has received a given email message, and has determined that the message content is worth further processing, the content is then passed onto the pdm_text_nxd process. This process will parse the message content for specific components to add and either create or update a given ticket.
Pdm_mail_nxd: This is the process that will handle mail notifications. Once pdm_maileater_nxd has completed its examination of a message and (where applicable) passed the content along to pdm_text_nxd, the mail notification process (pdm_mail_nxd) is then invoked to transmit a Success or Fail message to the recipient.
IMPORTANT: Maileater (pdm_maileater_nxd) and mail notifications (pdm_mail_nxd) are separate processes. If one process were to somehow be disabled, the other process will continue to function and operate.
To turn on logging for pdm_maileater_nxd, one can run from an SDM Primary/Background server Administrative Command prompt:
Pdm_logstat -n pdm_maileater_nxd TRACE
To turn off logging for pdm_maileater_nxd, one can run from an SDM Primary/Background server Administrative Command prompt:
Pdm_logstat -n pdm_maileater_nxd
For most scenarios, a brief engagement of logging is generally sufficient to troubleshoot the case. An ideal approach is to prepare a given mail message for transmission and keep a close eye on the Inbox that maileater is monitoring. Once the message is ready to be sent, turn on the above maileater logging, then immediately send the message. Once the message has been removed (eaten) from the given Inbox, turn off the logging.
While there are many possible scenarios to consider in maileater functionality, the following log entries are of frequent interest. A log message will be displayed here, with content of interest italicized, and commentary offered to what the message means and under what conditions would the message be of interest:
01/01 12:00:37.42 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 4764 Scheduled Mail Poll has been signalled.
01/01 12:00:37.43 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 4958 Mailbox 100 (SDInbox@domain.com@SERVER13/Inbox) signalled for Mail Poll...
01/01 12:00:37.44 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 8275 Connecting to POP3 Server [SERVER13] on Port 110
01/01 12:00:38.47 SERVER1 pdm_maileater_nxd 5624 MILESTONE pdm_maileater_nxd.c 8280 Connection established to POP3 Server [SERVER13] on Port 110
Significance: The above is an abridged set of logs that would be present to indicate that the given mailbox, address “SDInbox@domain.com” on server with host name “SERVER13” has established a POP3 connection on port 110.
Of interest: The above should be consistent with the mailbox you are trying to connect to. In bold are the server name, port, mail protocol, and login credentials. Look for any inconsistencies in server name, mailbox id, port specification or connection protocols
01/01 12:00:38.72 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 8668 Querying messages from POP3 server.
01/01 12:00:38.73 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 8681 POP3 server reports 0 new messages.
01/01 12:00:38.73 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 8709 Done querying messages from POP3 server.
Significance: The above indicates that once the connection was made, the given mailbox was examined and there were no new messages received. Once this examination has been completed, the connection will be closed and a new connection will be made, time of connection depending on mailbox settings:
Of interest: If SDM is never processing items sent to maileater, despite all settings to suggest it is connecting, and the above is experienced consistently, consider the notion that another SDM server is interfacing with this mailbox, or there is a second mailbox defined in Service Desk with the exact same connection parameters in place. Other prospects: something else is intercepting the messages, like a spam blocker, or the mail server settings are incorrect; make sure you are monitoring the mailbox directly through a separate mail client like Outlook and are seeing messages "disappear" as they come in.
01/01 12:00:39.04 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 8668 Querying messages from POP3 server.
01/01 12:00:39.05 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 8681 POP3 server reports 1 new messages.
01/01 12:00:39.05 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 8699 Retrieving message 1...
01/01 12:00:39.05 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 8730 Downloading message from POP3 server.
01/01 12:00:39.07 SERVER1 pdm_maileater_nxd 5624 MILESTONE pdm_maileater_nxd.c 10053 Parsing Email From (firstname.lastname@example.org) Subject (TEST MAIL)
Significance: The above logging indicates the number of messages received and that a message from email@example.com was received, with Subject (TEST MAIL)
Of interest: If the above count is incorrect, consider the notion that a spam blocker or a mailbox rule/filter within your mail server or mail client has intercepted the message before it lands in the INBOX and before maileater can get at it.
01/01 12:00:39.21 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 5151 Searching for sender address <firstname.lastname@example.org> in Deny list.
01/01 12:00:39.25 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 5224 World domain <*> found in Allow list. Proceeding to Filters.
Significance: These entries confirm if the sender is permitted to send messages along to Maileater, that the user did pass the world domain test, and the mailbox filters are to be applied.
Of Interest: The World Domain functionality can be configured to allow or disallow incoming mail from certain parties.
01/01 12:00:39.25 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 6560 Checking message subject for filter pattern "[ \t\r\n]incident[ \t\r\n]".
01/01 12:00:39.49 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 7083 Filter match Not Found. Passing to next Filter.
Significance: The mailbox filter’s pattern given, [ \t\r\n]incident[ \t\r\n], was examined and tested against the message. The mail was not a match for this pattern and the next filter will be considered.
Of Interest: Comparing the filter patterns helps determine why a given message may not have been processed. Sometimes, it may boil down to a stray white space included in the filter pattern:
"[ \t\r\n]incident[ \t\r\n] " (extra space added at the end of the filter string)
"[ \t\r\n]incident[ \t\r\n]" (has no extra spaces)
"[ \t\r\n]incident [ \t\r\n]" (space at the end of the word “incident”)
01/01 12:00:39.85 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 6560 Checking message subject for filter pattern "[ \t\r\n]in[ \t\r\n]".
01/01 12:00:39.87 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 6898 Filter match Found. Passing to Text API.
Significance: A filter pattern was found to be a match. In this case, the string “in” was detected and as a result, the message can then be passed to pdm_text_nxd for further processing.
Of Interest: Inconsistent filter patterns would mean the patterns you are trying to compare against are on the wrong mailbox or are inactive.
01/01 12:00:39.91 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 8902 DELETE command sent to POP server.
01/01 12:00:39.92 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 8709 Done querying messages from POP3 server.
Significance: Once all mail messages have been exhausted, the mail messages are then deleted from the given mailbox and the connection is closed and a new connection will be made, time of connection depending on mailbox settings.
Of Interest: An issue that can arise is if the mailbox does not permit deletion of mail messages per mail server policy and permissions. Another is that some mail server configurations allow only a certain number of connections to be made in a given time frame. By default, SDM connects to its mail server every 30 seconds.
01/01 12:00:47.93 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 7088 Filter match Not Found. This is the last Filter. Message will not be applied.
01/01 12:00:47.93 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 8902 DELETE command sent to POP server.
01/01 12:00:47.94 SERVER1 pdm_maileater_nxd 5624 TRACE pdm_maileater_nxd.c 8709 Done querying messages from POP3 server.
Significance: Once all filters have been exhausted and no match found, the message is discarded and no further action is taken.
Of Interest: If the received mail was supposed to have matched to a given filter, examine the filter to see if there are any special characters or extra whitespace introduced.
Other log messages of interest that can show up related to maileater usage (no additional logging/tracing required)
09/09 14:05:49.70 SERVER1 spelsrvr 4176 SIGNIFICANT text_api.spl 2412 Text_API: Unable to find user (email@example.com). Tried (firstname.lastname@example.org) and (jryan)
Significance: This message, which is NOT from maileater (it is from spelsrvr and invoked by pdm_text_nxd through text_api.spl) indicates the sender is not a match for any existing contacts.
Of Interest: If this message is appearing in error, you will need to check your contact list to see if the above contact is present. Alternatively, the mailbox likely does not have “Allow Anonymous” turned on. Another possibility that is rare: there is an access type or data partition in play that is preventing the given user from being seen (on the System_Anonymous account)
09/09 14:07:28.94 SERVER1 pdm_maileater_nxd 5624 SIGNIFICANT pdm_maileater_nxd.c 10993 First-Time Mailbox Policy Violation from e-mail address <email@example.com>: Sender Address, Sender Domain, and World Domain are all not in the Inclusion List.
Significance: This entry means that the sender’s domain settings were not included in the Mailbox’s World Domain List.
Of Interest: There are two mailbox settings to be considered:
World Domain: This setting controls which senders are permitted to send a message that maileater will then accept for processing, based on domain specification. If the sender fails this test, there is no further processing performed (including mail filter placement).
Allow Anonymous: This setting controls if the received message may be created with an Anonymous user listed in the Customer field, in the case that the sender is not a match to any active contacts in Service Desk. This setting is applied well after maileater has completed its operations and performed during ticket creation in the text_api process.