I'm looking for a part-time remote job.

Hire me


I'm the author of:

Mastering Redmine is a comprehensive guide with tips, tricks and best practices, and an easy-to-learn structure.

Check the book's project or

Buy the book

Social pages of the book:

By buying this book you also donate to Redmine (see this page).


Follow me:

Redmine plugin showing logs for outgoing emails

Sometimes it’s important to know, if the user should have received the email notification generated by Redmine. Especially, if usage of Redmine in your organization relies on email integration (for example, if it’s configured to receive user comments, such as issue notes and message replies, via email). In such cases, some users may use Redmine user interface very rarely as all the communication can be made through emails.

Until now it was impossible to determine using Redmine, if the particular email notification was sent to the particular user. For this, you would need to dig into the logs of the message transfer agent (MTA) (if you had access to those logs, of course). Even so, it was not easy to link records in such logs to certain email notifications.

that-companyMy client Ty Roden from That Company asked me to develop a plugin, that would allow to check, which email notification was sent to which Redmine users. He also wanted it to display information about sent emails (if any) in issue notes, messages and so on, so an administrator could easily say, which users should have received email notification about particular Redmine object. Ty also wanted this plugin to be shared with the community. Therefore, don’t forget to thank Ty Roden and That Company for this Redmine plugin.

That Email Log plugin (it’s named after That Company) catches all the emails, that are sent by Redmine, and saves some their data to a table in the database. These data include:

  • The emission email address (From).
  • Recipients’ email addresses (To, CC and BCC).
  • Subject of the email message.
  • Number of files, that were attached to the email.
    Note, that normally attachments are not included into emails, that are sent by Redmine. So, you will always have zero here, unless such plugin as Issue Mail With Attachments is installed.
  • Project, to which the email notification is related (if any).
  • Class name and ID of the object, for which the email notification was generated (e.g., Issue #123).
  • Date and time, when the email was sent.
  • Unique Message ID of the email.
    This ID can be used to find records related to the email in logs of MTA (e.g., Postfix).

So, the plugin not only saves logs to a database table, but also makes it possible to track, what happened with the email after it left Redmine. Thus, one can use the Message ID to check in the MTAs’ log files, whether the email was successfully delivered to the user.

All the collected email data can be viewed on the Email logs page, which is added to the Administration menu (so the email logs can be seen only by administrators). There you can filter emails by date (range is supported) and/or search in their subjects, email addresses (emission and recipient ones) and message IDs (for example, to find emails related to journal #123 you can enter redmine.journal-123. into the Search field):

Index

In this list the plugin displays only the subject, names of recipients (or just email addresses, if they are not associated with any users) and the date (also the number of attachments, if any). More details, such as email addresses in From, To, CC and BCC email fields, project, object and message ID, become available, when you click on the arrow in front of the subject. By the way, the plugin attempts to find project and object names in the subject and convert them to links, that will point to the corresponding Redmine objects (so you don’t need to check details to get links to these objects).

To make it easier to determine, whether an email notification was sent for the particular Redmine object, the plugin attempts to show the email icon in the contextual menu of the objects, for which email logs are available (so no icon means, that no email notifications were caught). Currently, such icons are displayed for issues, issue journals (history entries), topics and their replies. Clicking on this icon will show a box with some details about the email notifications, that were generated for the object. These details include recipient names, subject, date and message ID.

Issue

Here, the Message ID is a link, that will open the email log on the Email logs page, where more details can be checked. As the Email logs page these icons in the contextual menu are shown only to administrators.

 

Comments

Also available in: Atom

Add a comment