
####################
SupportDataCollector
####################


****
NAME
****


Kernel::System::SupportDataCollector - system data collector


***********
DESCRIPTION
***********


All stats functions.


****************
PUBLIC INTERFACE
****************


new()
=====


Don't use the constructor directly, use the ObjectManager instead:


.. code-block:: perl

     my $SupportDataCollectorObject = $Kernel::OM->Get('Kernel::System::SupportDataCollector');



Collect()
=========


collect system data


.. code-block:: perl

     my %Result = $SupportDataCollectorObject->Collect(
         UseCache   => 1,                    # (optional) to get data from cache if any
         WebTimeout => 60,                   # (optional)
         Debug      => 1,                    # (optional)
         Hostname   => 'my.test.host:8080'   # (optional, for testing purposes)
     );
 
     returns in case of error
 
     (
         Success      => 0,
         ErrorMessage => '...',
     )
 
     otherwise
 
     (
         Success => 1,
         Result  => [
             {
                 Identifier  => 'Kernel::System::SupportDataCollector::OTRS::Version',
                 DisplayPath => 'OTRS',
                 Status      => $StatusOK,
                 Label       => 'OTRS Version',
                 Value       => '3.3.2',
                 Message     => '',
             },
             {
                 Identifier  => 'Kernel::System::SupportDataCollector::Apache::mod_perl',
                 DisplayPath => 'OTRS',
                 Status      => $StatusProblem,
                 Label       => 'mod_perl usage',
                 Value       => '0',
                 Message     => 'Please enable mod_perl to speed up OTRS.',
             },
             {
                 Identifier       => 'Some::Identifier',
                 DisplayPath      => 'SomePath',
                 Status           => $StatusOK,
                 Label            => 'Some Label',
                 Value            => '0',
                 MessageFormatted => 'Some \n Formatted \n\t Text.',
             },
         ],
     )



CollectAsynchronous()
=====================


collect asynchronous data (the asynchronous plug-in decide at which place the data will be saved)


.. code-block:: perl

     my %Result = $SupportDataCollectorObject->CollectAsynchronous();


returns:


.. code-block:: perl

     %Result = (
         Success      => 1,                  # or 0 in case of an error
         ErrorMessage => 'some message'      # optional (only in case of an error)
     );


return


CleanupAsynchronous()
=====================


clean-up asynchronous data (the asynchronous plug-in decide for themselves)


.. code-block:: perl

     my $Success = $SupportDataCollectorObject->CleanupAsynchronous();



DeleteCache()
=============


Delete the cache of collected data to enable collecting anew.


.. code-block:: perl

     $SupportDataCollectorObject->DeleteCache();





