com.neolao.log.Logger

Créer des logs. Pour voir les logs pendant qu'un flash se joue, j'utilise Logs FP8 ou SOS.

Classes recquises:

Exemple

// Connexion à l'affichage
Logger.handler = new NeolaoLogHandler();
 
// Log général
Logger.generalInfo = "coucou"; // Le niveau par défaut est 1
Logger.setGeneralInfo("coucou", 3); // Une info générale de niveau 3
 
// Pour une instance
mesLogs = new Logger("monNom");
mesLogs.action = "Attention, ca va chauffer !";
 
// Niveau 1 : Haut
// Niveau 2 : Normal
// Niveau 3 : Bas

Constructeur

Initialisation

  • pName:String Defini un identifiant d'instance

Propriétés

Visibilité Type Nom Status Description
static public ILoghandler handler Ecriture seule Gestionnaire d'affichage des logs
static public String generalInfo Ecriture seule Enregistre une info générale dans les logs
static public String generalAction Ecriture seule Enregistre une action générale dans les logs
static public String generalError Ecriture seule Enregistre une erreur générale dans les logs
public String name Lecture et écriture Défini un identifiant à l'instance du LogManager
public String info Ecriture seule Enregistre une info dans les logs de l'instance
public String action Ecriture seule Enregistre une action dans les logs de l'instance
public String error Ecriture seule Enregistre une erreur dans les logs de l'instance

Méthodes

Visibilité Return Nom Param 1 Param 2 Description
static public Void setGeneralError pMessage:String pLevel:Number Enregistre une erreur générale dans les logs
static public Void setGeneralAction pMessage:String pLevel:Number Enregistre une action générale dans les logs
static public Void setGeneralInfo pMessage:String pLevel:Number Enregistre une info générale dans les logs
static public Void setError pMessage:String pLevel:Number Enregistre une erreur dans les logs
static public Void setAction pMessage:String pLevel:Number Enregistre une action dans les logs
static public Void setInfo pMessage:String pLevel:Number Enregistre une info dans les logs

Source

import com.neolao.log.ILogHandler;
/**
 * ATTENTION : UTF-8 (éàöù)
 * 
 * [22/10/2004]
 * Un ptit check up !
 * 
 * [06/01/2005] Version 1.4
 * Ajout des propriétés 
 * - enabled
 * - enabledLocal
 * 
 * [09/03/2005] Version 1.5
 * Ajout du système de visualisation des logs
 * - showLogs
 * - get include
 * Ajout des niveaux de logs
 * => Ca permet le debug à plusieurs niveaux
 * 
 * [14/03/2005] Version 1.6
 * Ajout des propriétés static :
 * - level
 * 
 * [23/03/2005] Version 1.7
 * Maintenant, il y a différentes couleurs pour les levels de log
 * 
 * [01/12/2005] Version 2.0
 * - LogManager renommé en Logger
 * - Déplacé dans log
 * 
 * [12/12/2005] Version 2.1
 * Ajout de la méthode statique details.
 * 
 * [02/01/2006] Version 2.2
 * Correction pour compiler en strict mode mtasc
 * 
 * [06/01/2006] Version 2.3
 * L'affichage n'est plus géré ici mais dans un handler maintenant
 * @ignore
 * 
 * Créer des logs
 * @author 			neolao <neo@neolao.com>
 * @version 		2.3 (06/01/2006)
 * @link			http://resources.neolao.com/flash_fp8/classes/log/Logger
 * @license			http://creativecommons.org/licenses/by-sa/2.5/
 */
class com.neolao.log.Logger{
	public static var className:String = "Logger";
	public static var version:String = "2.3";
 
	// ----------------------------- CONSTANTES --------------------------------
 
	// ----------------------------- VARIABLES ---------------------------------
	/**
	 * Celui qui s'occupe d'envoyer les logs vers l'affichage
	 */
	private static var _handler:ILogHandler;
	/**
	 * La liste des instances de logs
	 */
	private static var _logInstance:Array;
	/**
	 * LocalConnection
	 */
	private static var _localConnection:LocalConnection;
	/**
	 * L'identifiant de l'instance du LogManager
	 */
	public var name:String;
 
	// ----------------------------- EVENEMENTS --------------------------------
 
	/*============================= CONSTRUCTEUR =============================*/
	/*========================================================================*/
	/**
	 * Initialisation de l'instance LogManager
	 * @param pName Defini un identifiant d'instance du LogManager
	 */
	public function Logger(pName:String){
		name = (pName != undefined)?pName:"";
		_logInstance.push(this);
	}
	/*======================= FIN = CONSTRUCTEUR = FIN =======================*/
	/*========================================================================*/
 
	/*=========================== METHODES PRIVEES ===========================*/
	/*========================================================================*/
	/**
	 * Enregistre un message dans les logs de l'instance
	 * @param pMessage Le message à enregistrer
	 * @param pType Le type du message
	 * @param pLevel Le level du message
	 */
	private function setMessage(pMessage:String, pType:String, pLevel:Number):Void{
		var o:Boolean = Logger.include;
		if(_handler){
			_handler.send(name, pMessage, pType, pLevel);
		}
	}
	// ------------------------------- STATIC ----------------------------------
	/**
	 * Enregistre un message dans les logs
	 * @param pMessage Le message à enregistrer
	 * @param pType Le type du message
	 * @param pLevel Le level du message
	 */
	private static function setGeneralMessage(pMessage:String, pType:String, pLevel:Number):Void{
		var o:Boolean = Logger.include;
		if(_handler){
			_handler.send(null, pMessage, pType, pLevel);
		}
	}	
	/*===================== FIN = METHODES PRIVEES = FIN =====================*/
	/*========================================================================*/
 
	/*============================ GETTER  SETTER ============================*/
	/*========================================================================*/
	/**
	 * Enregistre une erreur dans les logs de l'instance
	 * @param pMessage Le message d'erreur
	 */
	public function set error(pMessage:String):Void{
		setMessage(pMessage, "error", 1);
	}
	/**
	 * Enregistre une action dans les logs de l'instance
	 * @param pMessage Le message d'action
	 */
	public function set action(pMessage:String):Void{
		setMessage(pMessage, "action", 1);
	}
	/**
	 * Enregistre une info dans les logs de l'instance
	 * @param pMessage Le message d'information
	 */
	public function set info(pMessage:String):Void{
		setMessage(pMessage, "info", 1);
	}
	// ------------------------------- STATIC ----------------------------------
	/**
	 * Enregistre une erreur générale dans les logs
	 * @param pMessage Le message d'erreur
	 */
	public static function set generalError(pMessage:String):Void{
		setGeneralMessage(pMessage, "error", 1);
	}
	/**
	 * Enregistre une action générale dans les logs
	 * @param pMessage Le message d'action
	 */
	public static function set generalAction(pMessage:String):Void{
		setGeneralMessage(pMessage, "action", 1);
	}
	/**
	 * Enregistre une info générale dans les logs
	 * @param pMessage Le message d'information
	 */
	public static function set generalInfo(pMessage:String):Void{
		setGeneralMessage(pMessage, "info", 1);
	}
	/**
	 * Initialisation
	 * @return true
	 */
	public static function get include():Boolean{
		if(_logInstance == undefined){
			_logInstance = new Array();	
		}
		return true;
	}
	/**
	 * Indique le type d'affichage des logs
	 * @param pHandler L'instance de l'afficheur de logs
	 */
	public static function set handler(pHandler:ILogHandler):Void{
		_handler = pHandler;
	}
	/*====================== FIN = GETTER  SETTER = FIN ======================*/
	/*========================================================================*/
 
	/*========================== METHODES PUBLIQUES ==========================*/
	/*========================================================================*/
	/**
	 * Enregistre une erreur dans les logs
	 * @param pMessage Le message d'erreur
	 * @param pLevel Le niveau du message
	 */
	public function setError(pMessage:String, pLevel:Number):Void{
		setMessage(pMessage, "error", pLevel);
	}
	/**
	 * Enregistre une action dans les logs
	 * @param pMessage Le message d'action
	 * @param pLevel Le niveau du message
	 */
	public function setAction(pMessage:String, pLevel:Number):Void{
		setMessage(pMessage, "action", pLevel);
	}
	/**
	 * Enregistre une info dans les logs
	 * @param pMessage Le message d'information
	 * @param pLevel Le niveau du message
	 */
	public function setInfo(pMessage:String, pLevel:Number):Void{
		setMessage(pMessage, "info", pLevel);
	}
	// ------------------------------- STATIC ----------------------------------
	/**
	 * Enregistre une erreur générale dans les logs
	 * @param pMessage Le message d'erreur
	 * @param pLevel Le niveau du message
	 */
	public static function setGeneralError(pMessage:String, pLevel:Number):Void{
		setGeneralMessage(pMessage, "error", pLevel);
	}
	/**
	 * Enregistre une action générale dans les logs
	 * @param pMessage Le message d'action
	 * @param pLevel Le niveau du message
	 */
	public static function setGeneralAction(pMessage:String, pLevel:Number):Void{
		setGeneralMessage(pMessage, "action", pLevel);
	}
	/**
	 * Enregistre une info générale dans les logs
	 * @param pMessage Le message d'information
	 * @param pLevel Le niveau du message
	 */
	public static function setGeneralInfo(pMessage:String, pLevel:Number):Void{
		setGeneralMessage(pMessage, "info", pLevel);
	}
	/**
	 * Récupérer dans une chaîne le détail d'une variable
	 * @param pObject La variable
	 * @return Le détail
	 */
	public static function details(pObject:Object):String{
		var o:String = "";
		var separator:String = "";
 
		for(var i:String in pObject){
			o += separator;
			o += i+":";
 
			if(typeof(pObject[i]) == "string"){
				o += "\"";
			}
			o += pObject[i];
			if(typeof(pObject[i]) == "string"){
				o += "\"";
			}
 
			separator = ", ";
		}
 
		return o;
	}
	/*==================== FIN = METHODES PUBLIQUES = FIN ====================*/
	/*========================================================================*/
}