Domanda

Mi chiedo se qualcuno capita di avere una certa esperienza con Log4js ? Sembra la sua normale ConsoleAppender non è sempre pronto per l'uso subito dopo che è aggiunto a un oggetto logger ... Se ho due tag script sequenziali in un documento come:

//Initialize logger
<script type="text/javascript">                   
      var logger = new Log4js.getLogger("JSLOG");
      logger.addAppender(new Log4js.ConsoleAppender(logger, false));
      logger.setLevel(Log4js.Level.INFO);         
</script>


//Use logger
<script type="text/javascript">
     logger.info('Test test');
</script>

... Essa provoca la console pop-up (finestra pop-up) di apparire un messaggio di errore al caricamento della pagina:

12:58:23 PM WARN Log4js - Could not run the listener function () {
    return fn.apply(object, arguments);
}. 
TypeError: this.outputElement is null

La console è ancora inizializzato, è lì in seguito, ma per solo che prima chiamata logger non sembra esserci pienamente. Se faccio la prima chiamata setTimeout logger ( "logger.info ( 'test test')", 1000), non ha l'errore. Quindi è come non è pronta immediatamente. Chiunque vedere questo prima o sapere quale potrebbe essere una soluzione?

Saluti

È stato utile?

Soluzione

Mi permetto di suggerire utilizzando log4javascript invece? Ha un'API molto simile e una console superiore, ed è attivamente sviluppato. L'equivalente in log4javascript potrebbe essere:

<script type="text/javascript" src="log4javascript.js"></script>

<script type="text/javascript">                   
      //Initialize logger
      var logger = log4javascript.getDefaultLogger();
      logger.setLevel(log4javascript.Level.INFO);         
</script>


<script type="text/javascript">
     //Use logger
     logger.info('Test test');
</script>

Vorrei sottolineare che io sono l'autore di log4javascript.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top