Name

global.ApplicationsFingerprintLogger

Description

Logger class for AFP Logging.

Script

var ApplicationsFingerprintLogger = Class.create();
ApplicationsFingerprintLogger.DEFAULT_LOG_LEVEL = 1;

ApplicationsFingerprintLogger.DEBUG = 0;
ApplicationsFingerprintLogger.INFO = 1;
ApplicationsFingerprintLogger.WARNING = 2;
ApplicationsFingerprintLogger.ERROR = 3;

ApplicationsFingerprintLogger.prototype = {

  initialize: function(className) {
      this.level = gs.getProperty('sa_ml.log.verbosity', ApplicationsFingerprintLogger.DEFAULT_LOG_LEVEL);
  	this.clazz = className;
  },
  
  buildLog : function(solutionName, solutionSysID, solutionState, message) {
  	var json = {};
  	json['class'] = this.clazz;
  	json['time'] = gs.nowDateTime();
  	json['instance'] = gs.getProperty('instance_name');
  	json['solution'] = solutionName;
  	json['solution_id'] = solutionSysID;
  	json['solution_state'] = solutionState;
  	json['message'] = message;
  	return json;
  },

  debug: function(json) {
      if (this.level <= ApplicationsFingerprintLogger.DEBUG)
          gs.info(this.getFormattedString(json));
  },

  info: function(json) {
      if (this.level <= ApplicationsFingerprintLogger.INFO)
          gs.info(this.getFormattedString(json));
  },

  warn: function(json) {
      if (this.level <= ApplicationsFingerprintLogger.WARNING)
          gs.warn(this.getFormattedString(json));
  },

  error: function(json) {
      if (this.level <= ApplicationsFingerprintLogger.ERROR)
          gs.error(this.getFormattedString(json));
  },

  getFormattedString: function(json) {
      return JSON.stringify(json);
  },

  type: 'ApplicationsFingerprintLogger'
};

Sys ID

cfa88ebceb7111101a443e82b85228ee

Offical Documentation

Official Docs: