- Home
- About
- Testimonials
- Demos
- Download
- Documentation
- Blogs
- Forum
- Support

Packages: default System System.Caching System.Collections System.Data System.Data.ActiveRecord System.Data.ActiveRecord.Relations System.Data.ActiveRecord.Scaffold System.Data.ActiveReecord.Scaffold.InputBuilder System.Data.Commom.Sqlite System.Data.Common System.Data.Common.Mssql System.Data.Common.Mysql System.Data.Common.Oracle System.Data.Common.Pgsql System.Data.Common.Sqlite System.Data.DataGateway System.Data.SqlMap System.Data.SqlMap.Configuration System.Data.SqlMap.Statements System.Exceptions System.I18N System.IO System.Security System.Util System.Web System.Web.Services System.Web.UI System.Web.UI.ActiveControls System.Web.UI.WebControls System.Web.UI.WebControls.assets System.Xml Classes: TBrowserLogRoute TDataFieldAccessor TDateTimeStamp TDbLogRoute TEmailLogRoute TFileLogRoute TFirebugLogRoute TFirePhpLogRoute TLogger TLogRoute TLogRouter TParameterModule TSimpleDateFormatter TVarDumper |
Keyword
# Class TDbLogRoute
    TComponent
       |
       --TApplicationComponent
          |
          --TLogRoute
             |
             --TDbLogRoute
TDbLogRoute class TDbLogRoute stores log messages in a database table. To specify the database table, set ConnectionID to be the ID of a TDataSourceConfig module and LogTableName. If they are not setting, an SQLite3 database named 'sqlite3.log' will be created and used under the runtime directory. By default, the database table name is 'pradolog'. It has the following structure:

        CREATE TABLE pradolog
      (
            log_id INTEGER NOT NULL PRIMARY KEY,
            level INTEGER,
            category VARCHAR(128),
            logtime VARCHAR(20),
            message VARCHAR(255)
       );
Since: 3.1.2 Author: Qiang Xue <qiang.xue@gmail.com>
Method Summary
protected TDbConnection | createDbConnection ( string 0) Creates the DB connection.
protected void | createDbTable () Creates the DB table for storing log messages.
boolean | getAutoCreateLogTable ()
string | getConnectionID ()
TDbConnection | getDbConnection ()
string | getLogTableName ()
void | init ( TXmlElement $config) Initializes this module.
protected void | processLogs ( array $logs) Stores log messages into database.
void | setAutoCreateLogTable ( boolean $value)
void | setConnectionID ( string $value) Sets the ID of a TDataSourceConfig module.
void | setLogTableName ( string $value) Sets the name of the DB table to store log content.
Methods Inherited From TLogRoute
TLogRoute::collectLogs(), TLogRoute::formatLogMessage(), TLogRoute::getCategories(), TLogRoute::getLevelName(), TLogRoute::getLevels(), TLogRoute::getLevelValue(), TLogRoute::init(), TLogRoute::setCategories(), TLogRoute::setLevels()
Methods Inherited From TApplicationComponent
TApplicationComponent::getApplication(), TApplicationComponent::getRequest(), TApplicationComponent::getResponse(), TApplicationComponent::getService(), TApplicationComponent::getSession(), TApplicationComponent::getUser(), TApplicationComponent::publishAsset(), TApplicationComponent::publishFilePath()
Methods Inherited From TComponent
TComponent::addParsedObject(), TComponent::attachEventHandler(), TComponent::canGetProperty(), TComponent::canSetProperty(), TComponent::createdOnTemplate(), TComponent::detachEventHandler(), TComponent::evaluateExpression(), TComponent::evaluateStatements(), TComponent::getEventHandlers(), TComponent::getSubProperty(), TComponent::hasEvent(), TComponent::hasEventHandler(), TComponent::hasProperty(), TComponent::raiseEvent(), TComponent::setSubProperty(), TComponent::__get(), TComponent::__set()
Method Details
## createDbConnection
protected TDbConnection createDbConnection | (string 0 )
Creates the DB connection.
Input
string | 0 | the module ID for TDataSourceConfig
Output
TDbConnection | the created DB connection
Exception
throws | TConfigurationException if module ID is invalid or empty
## createDbTable
protected void createDbTable | ()
Creates the DB table for storing log messages.
Output
Exception
## getAutoCreateLogTable
public boolean getAutoCreateLogTable | ()
Output
boolean | whether the log DB table should be automatically created if not exists. Defaults to true.
Exception
## getConnectionID
public string getConnectionID | ()
Output
string | the ID of a TDataSourceConfig module. Defaults to empty string, meaning not set.
Exception
## getDbConnection
public TDbConnection getDbConnection | ()
Output
TDbConnection | the DB connection instance
Exception
## getLogTableName
public string getLogTableName | ()
Output
string | the name of the DB table to store log content. Defaults to 'pradolog'.
Exception
## init
public void init | (TXmlElement $config )
Initializes this module. This method is required by the IModule interface. It initializes the database for logging purpose.
Input
TXmlElement | $config | configuration for this module, can be null
Output
Exception
throws | TConfigurationException if the DB table does not exist.
## processLogs
protected void processLogs | (array $logs )
Stores log messages into database.
Input
array | $logs | list of log messages
Output
Exception
## setAutoCreateLogTable
public void setAutoCreateLogTable | (boolean $value )
Input
boolean | $value | whether the log DB table should be automatically created if not exists.
Output
Exception
## setConnectionID
public void setConnectionID | (string $value )
Sets the ID of a TDataSourceConfig module. The datasource module will be used to establish the DB connection for this log route.
Input
string | $value | ID of the TDataSourceConfig module
Output
Exception
## setLogTableName
public void setLogTableName | (string $value )
Sets the name of the DB table to store log content. Note, if AutoCreateLogTable is false and you want to create the DB table manually by yourself, you need to make sure the DB table is of the following structure: (key CHAR(128) PRIMARY KEY, value BLOB, expire INT)
Input
string | $value | the name of the DB table to store log content
Output
Exception