NAME
Kernel::System::GenericInterface::DebugLog – log interface for generic interface
DESCRIPTION
All log functions.
PUBLIC INTERFACE
new()
create a debug log object. Do not use it directly, instead use:
my $DebugLogObject = $Kernel::OM->Get('Kernel::System::GenericInterface::DebugLog');
LogAdd()
add a communication bit to database if we don't already have a communication chain, create it
returns 1 on success or undef on error
my $Success = $DebugLogObject->LogAdd(
CommunicationID => '6f1ed002ab5595859014ebf0951522d9',
CommunicationType => 'Provider', # 'Provider' or 'Requester'
Data => 'additional data' # optional
DebugLevel => 'info', # 'debug', 'info', 'notice', 'error'
RemoteIP => '192.168.0.1', # optional, must be valid IPv4 or IPv6 address
Summary => 'description of log entry',
WebserviceID => 1,
);
LogGet()
get communication chain data
my $LogData = $DebugLogObject->LogGet(
CommunicationID => '6f1ed002ab5595859014ebf0951522d9',
);
$LogData = {
CommunicationID => '6f1ed002ab5595859014ebf0951522d9',
CommunicationType => 'Provider',
Created => '2011-02-15 16:47:28',
LogID => 1,
RemoteIP => '192.168.0.1', # optional
WebserviceID => 1,
};
LogGetWithData()
get all individual entries for a communication chain
my $LogData = $DebugLogObject->LogGetWithData(
CommunicationID => '6f1ed002ab5595859014ebf0951522d9',
);
$LogData = {
CommunicationID => '6f1ed002ab5595859014ebf0951522d9',
CommunicationType => 'Provider',
Created => '2011-02-15 16:47:28',
LogID => 1,
RemoteIP => '192.168.0.1', # optional
WebserviceID => 1,
Data => [
{
Created => '2011-02-15 17:00:06',
Data => 'some logging specific data or structure', # optional
DebugLevel => 'info',
Summary => 'a log bit',
},
...
],
};
LogDelete()
delete a complete communication chain
returns 1 if successful or undef otherwise
my $Success = $DebugLogObject->LogDelete(
NoErrorIfEmpty => 1, # optional
CommunicationID => '6f1ed002ab5595859014ebf0951522d9', # optional
WebserviceID => 1, # optional
# exactly one id parameter required
);
LogSearch()
search for log chains based on several criteria when the parameter 'WithData' is set, the complete communication chains will be returned
my $LogData = $DebugLogObject->LogSearch(
CommunicationID => '6f1ed002ab5595859014ebf0951522d9', # optional
CommunicationType => 'Provider', # optional, 'Provider' or 'Requester'
CreatedAtOrAfter => '2011-01-01 00:00:00', # optional
CreatedAtOrBefore => '2011-12-31 23:59:59', # optional
Limit => 1000, # optional, default 100
RemoteIP => '192.168.0.1', # optional, must be valid IPv4 or IPv6 address
WebserviceID => 1, # optional
WithData => 0, # optional
Sort => 'ASC', # optional. 'ASC' (default) or 'DESC'
);
$LogData = [
{
CommunicationID => '6f1ed002ab5595859014ebf0951522d9',
CommunicationType => 'Provider',
Created => '2011-02-15 16:47:28',
LogID => 1,
RemoteIP => '192.168.0.1', # optional
WebserviceID => 1,
Data => [ # only when 'WithData' is set
{
Created => '2011-02-15 17:00:06',
Data => 'some logging specific data or structure', # optional
DebugLevel => 'info',
Summary => 'a log bit',
},
...
],
},
...
];
LogCleanup()
removes all log entries (including content) from a given time and before.
returns 1 if successful or undef otherwise
my $Success = $DebugLogObject->LogCleanup(
CreatedAtOrBefore => '2011-12-31 23:59:59',
);