gnats is the gnu problem report management system. Problem report management systems are also known as "bug-tracking systems", though the entries need not be bugs (e.g., think of change requests). The acronym stands for "GNats: A Tracking System".
gnats stores all information about the problem reports at a central site, and enables users to access this site by various means, including e-mail, WWW, and a network daemon. New problem reports can be created, and existing reports can be queried and updated, by most of these means.
gnats is widely customizable: Of course you can define report categories (is the report about tool A or service B?), responsibles (who takes care of this report?), and submitters (is it from customer1 or from the sales department?). You can also define possible states of a report (open, analyzed, closed, etc.) and classes (software bug, documentation bug, change request, ...).
Starting with gnats 4.0, you can define your own custom fields, and customize many of the built-in fields; you can have fields automatically set to a certain value when another field changes its contents (e.g., set a "Closed-Date" field to the current date when the report goes to state "closed", and unset it when it goes back from "closed" to something else), or when the report is changed at all (e.g., to maintain a "Last-Modified" field).