lib/bridges/sumologic.js
function delegate(method, _args) {

  var callPosition = metalogger.callposition()
    , file
    , line;

  if (!metalogger.shouldLog(method, _level)) {
    return;
  }


  var args = Array.prototype.slice.call(_args);

  var message = ''
    , inspect = null;

  message = util.inspect(args.shift(), { showHidden: true, depth: null }).replace(/\n/g, ' ');

  inspect = args[0];

  if (args.length > 2) {
    inspect = util.format.apply(null, args);
  }

  try{
    file = callPosition.split(':')[0].replace(' [','');
    line = callPosition.split(':')[1].replace('] ','');
  } catch(e) {
    // something went wrong with stack trace
  }

  var jsonFormat = {
    timestamp: (new Date()).toISOString(),
    hostname: os.hostname(),
    level: method,
    file: file,
    line: line,
    debug: inspect
  };

  if(bucketDetails.bucket.length !== 0 && bucketDetails.access_key_id.length !== 0 && bucketDetails.secret_access_key.length !== 0) {
    client.write(util.format("%s %s [host=%s] [message=%s] [message.stream] %s\n", jsonFormat.timestamp, method.toUpperCase(), jsonFormat.hostname, message, JSON.stringify(jsonFormat)));
  } else {
    console.error('Configuration: Sumologic is not configured correctly, please provide `NODE_LOGGER_S3_BUCKET`, `NODE_LOGGER_S3_KEY_ID`, and `NODE_LOGGER_S3_KEY_SECRET` environment variables.');
  }
}
function delegate(method, _args) {

  var callPosition = metalogger.callposition()
    , file
    , line;

  if (!metalogger.shouldLog(method, _level)) {
    return;
  }


  var args = Array.prototype.slice.call(_args);

  var message = ''
    , inspect = null;

  message = util.inspect(args.shift(), { showHidden: true, depth: null }).replace(/\n/g, ' ');

  inspect = args[0];

  if (args.length > 2) {
    inspect = util.format.apply(null, args);
  }

  try{
    file = callPosition.split(':')[0].replace(' [','');
    line = callPosition.split(':')[1].replace('] ','');
  } catch(e) {
    // something went wrong with stack trace
  }

  var jsonFormat = {
    timestamp: (new Date()).toISOString(),
    hostname: os.hostname(),
    level: method,
    file: file,
    line: line,
    debug: inspect
  };

  if(bucketDetails.bucket.length !== 0 && bucketDetails.access_key_id.length !== 0 && bucketDetails.secret_access_key.length !== 0) {
    client.write(util.format("%s %s [host=%s] [message=%s] [message.stream] %s\n", jsonFormat.timestamp, method.toUpperCase(), jsonFormat.hostname, message, JSON.stringify(jsonFormat)));
  } else {
    console.error('Configuration: Sumologic is not configured correctly, please provide `NODE_LOGGER_S3_BUCKET`, `NODE_LOGGER_S3_KEY_ID`, and `NODE_LOGGER_S3_KEY_SECRET` environment variables.');
  }
}
function delegate ( method , _args ) { var callPosition = metalogger . callposition ( ) , file , line ; if ( ! metalogger . shouldLog ( method , _level ) ) { return ; } var args = Array . prototype . slice . call ( _args ) ; var message = '' , inspect = null ; message = util . inspect ( args . shift ( ) , { showHidden : true , depth : null } ) . replace ( / \n / g , ' ' ) ; inspect = args [ 0 ] ; if ( args . length > 2 ) { inspect = util . format . apply ( null , args ) ; } try { file = callPosition . split ( ':' ) [ 0 ] . replace ( ' [' , '' ) ; line = callPosition . split ( ':' ) [ 1 ] . replace ( '] ' , '' ) ; } catch ( e ) { // something went wrong with stack trace } var jsonFormat = { timestamp : ( new Date ( ) ) . toISOString ( ) , hostname : os . hostname ( ) , level : method , file : file , line : line , debug : inspect } ; if ( bucketDetails . bucket . length !== 0 && bucketDetails . access_key_id . length !== 0 && bucketDetails . secret_access_key . length !== 0 ) { client . write ( util . format ( "%s %s [host=%s] [message=%s] [message.stream] %s\n" , jsonFormat . timestamp , method . toUpperCase ( ) , jsonFormat . hostname , message , JSON . stringify ( jsonFormat ) ) ) ; } else { console . error ( 'Configuration: Sumologic is not configured correctly, please provide `NODE_LOGGER_S3_BUCKET`, `NODE_LOGGER_S3_KEY_ID`, and `NODE_LOGGER_S3_KEY_SECRET` environment variables.' ) ; } }
Delegate function for each log level

@param method
@param _args
Delegate function for each log level