Kernel::System::GenericInterface::DebugLog - log interface for generic interface
All log functions.
create a debug log object. Do not use it directly, instead use:
my $DebugLogObject = $Kernel::OM->Get('Kernel::System::GenericInterface::DebugLog');
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, );
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, };
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', }, ... ], };
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 );
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', }, ... ], }, ... ];
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', );
This software is part of the OTRS project (https://otrs.org/).
This software comes with ABSOLUTELY NO WARRANTY. For details, see the enclosed file COPYING for license information (GPL). If you did not receive this file, see https://www.gnu.org/licenses/gpl-3.0.txt.