GSoC/GCI Archive
Google Summer of Code 2012 OpenMRS

Logging Errors to the Database

by Dmitry Krivenko for OpenMRS

The more application the more potential errors in it can be. That's why any big project has many tests. The role of testing is to determine the presence and location of errors remaining in a well-designed program. But tests still can not anticipate all possible errors and bugs in the application. So developers began to use logging. Log messages that tell what the application is doing can help locate any defects that are present is application. Without logging in an application, maintenance can become an intricate problem for the developers. But even with a system of logging in the application programmer is still hard to keep track of all the errors, because the application can use several different organizations. And end-users have to somehow report to the administrator of application about error, and he in turn to developers. The administrator must to find detail information about error in the server logs and send this information to the developers. This is a laborious and lengthy work. So the developers of OpenMRS solved this problem by using default error handler. They provide information about error to users in the default error handler so that they can provide a specific error log id along with their bug report. So end-users can report bugs directly to the developers. Currently user can press button "Report Problem" to report about error and afret then create a new ticket on bugtracker. But it is still far from ideal mechanism for fixing bugs. So, the main goal of my project is to create tools to improve and systematize the error detection mechanism.