PHP Class Phergie_Plugin_Logging, phergie
CONFIGURATION:
The following configuration items are required, only 'retry' is optional:
'logging.dsn' = A PDO DSN string to connect to your database
'logging.user' = Username for your database access
'logging.pass' = Password for the same:
'logging.table' = Table name to store data in
'logging.dsn' => 'mysql:host=127.0.0.1;port=3306;dbname=test;charset=utf8',
'logging.user' => 'MyUser',
'logging.pass' => 'UserPassword',
'logging.table' => 'phergie',
DATA SCHEMA:
You will need to have created an appropriate database table to store these log entries.
At a minimum it needs to include host, channel, type, nick, and message fields. Beyond that
you can get creative. The following is an example table structure you might use:
CREATE TABLE
phergie_log (
id int(11) unsigned NOT NULL AUTO_INCREMENT,
host varchar(265) NOT NULL,
channel varchar(50) NOT NULL,
type varchar(10) NOT NULL,
nick varchar(50) NOT NULL,
message varchar(1024) NULL,
created_on timestamp DEFAULT current_timestamp NOT NULL,
PRIMARY KEY (
id),
INDEX
idx_phergie_chan (
channel)
) ENGINE = innodb DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
显示文件
Open project: phergie/phergie
Protected Properties
Property |
Type |
Description |
|
$db |
PDO |
Database connection |
|
$failed |
|
Remembers if we've failed our database connection and given up. |
|
Public Methods
Protected Methods
Method |
Description |
|
log ( Phergie_Event_Request $event, string $nick, string $message = NULL ) : void |
log |
|
Private Methods
Method Details
Wrapper method on the logging that adds in additional features, such as error handling
and retrying the long living database connection in case it dropped.
protected log ( Phergie_Event_Request $event, string $nick, string $message = NULL ) : void |
$event |
Phergie_Event_Request |
The event we are operating on |
$nick |
string |
Who did this? |
$message |
string |
What was said? |
return |
void |
|
Handler for when the bot receives a CTCP ACTION request.
Handler for when a user joins a channel.
Handler for when a user leaves a channel.
onPrivmsg()
public method
Watches for & logs any incoming messages from the channel
preDispatch()
public method
Processes events before they are dispatched and logs appropriate ones.
Property Details
$db protected_oe property
protected PDO $db |
return |
PDO |
|
$failed protected_oe property
Remembers if we've failed our database connection and given up.