Request Tracker

Requirements | Queues | Debugging | Upgrading

Request Tracker (RT) is an “enterprise-grade issue tracking system. It allows organizations to keep track of their to-do lists, who is working on which tasks, what’s already been done, and when tasks were completed. It is available under the terms of version 2 of the GNU General Public License (GPL)”. Every system administrator should read The Practice of System and Network Administration, which outlines the need for request tracking. Never hire and promptly fire any system administrator unwilling to use the trouble ticket system.

RT supports approvals, so can be used to implement Sarbanes-Oxley (SOX) change control requirements.


RT requires a database, a web server, and e-mail support. Some operating systems, such as Debian Linux or FreeBSD, can install RT via their ports system. This greatly simplifies installation.


Queue setup depends on the site. For educational departments, consider a different queue for each lab group, so the lead faculty can have oversight rights on all activity related to the lab. For systems administrators, create groups with rights to at minimum see what goes on between the different queues, to help share knowledge. The following shows example aliases(5) entries for RT.

rt-admin: "/etc/smrsh/rt-mailgate --queue Admin --action correspond
rt-admin-comment: "/etc/smrsh/rt-mailgate --queue Admin --action comment

rt-test: "/etc/smrsh/rt-mailgate --queue TEST --action correspond
rt-test-comment: "/etc/smrsh/rt-mailgate --queue TEST --action comment

For finer control over what gets to RT, feed incoming requests through procmail.


The rt-mailgate script can be tested from the command line. Also be sure to review the logfiles for the webserver for errors. RT logging options are detailed in the file, though should be set in the file.

$ (echo Subject: test; echo; echo test) | \
rt-mailgate --queue TEST --url --action correspond

More information on debugging Unix systems is available.


The RT documentation covers this, though an often missed step is the upgrade of the database schema using the rt-setup-database command. Once the database from the old server is available, run the rt-setup-database command with the --action schema, --action acl, and --action insert options in turn, for every directory under etc/upgrade under the RT sources.