## 4.2.15.9.2.3  Classes and Interfaces of the Application Log API
The following classes and interfaces are available:
Access the Database
| Class Name                             | Public Interface         | Description                                                              |
|----------------------------------------|--------------------------|--------------------------------------------------------------------------|
| CL_BALI_LOG_DB                         | IF_BALI_LOG_DB           | Handles database access like reading or writing of logs in the database. |
| CL_BALI_LOG_FILTER                     | IF_BALI_LOG_FILTER       | Defines a filter for reading of logs from the database.                  |
| Access the Content of a Log Class Name | Public Interface         | Description                                                              |
| CL_BALI_LOG                            | IF_BALI_LOG              | Reads and writes the header and items of a log                           |
| Writing the Log Header Class Name      | Public Interface         | Description                                                              |
| CL_BALI_HEADER_SETTER                  | IF_BALI_HEADER_SETTER    | Log header which can be put into a log                                   |
| Reading the Log Header Class Name      | Public Interface         | Description                                                              |
|                                        | IF_BALI_HEADER_GETTER    | Log header which was read from the log                                   |
| Writing a Log Item                     |                          |                                                                          |
| Class Name                             | Public Interface         | Description                                                              |
|                                        | IF_BALI_ITEM_SETTER      | Each item contains this interface                                        |
| CL_BALI_MESSAGE_SETTER                 | IF_BALI_MESSAGE_SETTER   | Message which can be put into a log                                      |
| CL_BALI_FREE_TEXT_SETTER               | IF_BALI_FREE_TEXT_SETTER | Free text which can be put into a log                                    |
| CL_BALI_EXCEPTION_SETTER               | IF_BALI_EXCEPTION_SETTER | Exception which can be put into a log                                    |
## Reading a Log Item
Class Name
## Other Classes and Interfaces
Class Name
CL\_BALI\_ITEM\_FILTER
Public Interface
IF\_BALI\_ITEM\_GETTER
IF\_BALI\_MESSAGE\_GETTER
IF\_BALI\_FREE\_TEXT\_GETTER
IF\_BALI\_EXCEPTION\_GETTER
Public Interface
IF\_BALI\_CONSTANTS
IF\_BALI\_ITEM\_FILTER
Description
Each item contains this interface
Message which was read from the log
Free text which was read from the log
Exception which was read from the log
Description
Some constants, such as available item categories and severities
Define an item filter for adding items to a log
If one of the class methods can't be processed or can't return the requested results, an exception is raised. The following exceptions are possible, each of them inherit from exception class CX\_BALI\_RUNTIME :
## Exception Classes
| Class Name                | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|---------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| CX_BALI_INVALID_PARAMETER | An input parameter of the method is invalid (e.g. the log object doesn't exist).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| CX_BALI_NOT_FOUND         | The entry which shall be read or changed was not found.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| CX_BALI_NOT_POSSIBLE      | The requested processing is not possible. Possible values of class attribute ERROR_CODE : • CX_BALI_NOT_POSSIBLE=>NO_AUTHORIZATION : No authorization to access the log • CX_BALI_NOT_POSSIBLE=>OBJECT_NOT_ALLOWED : Access to the log object is not allowed • CX_BALI_NOT_POSSIBLE=>TOO_MANY_ITEMS : The maximum number 999999 of items was reached • CX_BALI_NOT_POSSIBLE=>SAVE_NOT_ALLOWED : Er- ror during saving to the database (e.g. database error or object is empty) • CX_BALI_NOT_POSSIBLE=>ENTRY_IS_LOCKED : The enqueue cannot be set, because the log is already locked |
| CX_BALI_INTERNAL_ERROR    | Internal error during processing                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
##  Note
Find more information about classes and interfaces of the Application Log API in the ABAP development tools for Eclipse (ADT).