Condividi tramite


Scrittura di informazioni nel registro eventi

È possibile monitorare lo stato dei diversi processi aziendali all'interno dell'applicazione BizTalk scrivendo informazioni nel registro applicazioni predefinito o in un registro eventi personalizzato. La scrittura nel registro eventi può essere utile negli scenari seguenti:

  • Si vuole accedere ai messaggi dell'applicazione in modo standard usando gli strumenti forniti da Windows.

  • Si desidera archiviare informazioni con altri messaggi dall'ambiente server per una cronologia più completa.

  • Si vuole poter monitorare l'applicazione usando strumenti che interagiscono con il registro eventi.

Annotazioni

Il metodo System.Diagnostics.EventLog.WriteEntry presenta una limitazione delle dimensioni nella stringa del messaggio. Se la stringa del messaggio supera i 32766 byte, si riceverà un'eccezione.

Scrittura nel log delle applicazioni

È possibile scrivere nel log delle applicazioni o in qualsiasi altro log dal codice usando System.Diagnostics.EventLog, come illustrato di seguito:

System.Diagnostics.EventLog.WriteEntry("Orchestration Debug", System.String.Format("The Value = {0}", iResult));  

Analogamente, è anche possibile fare,

EventLog appLog = new EventLog();   
appLog.Source = "This Application's Name";  
appLog.WriteEntry("An entry to the Application event log.");  

Se si usa un log personalizzato, è consigliabile usare il metodo SourceExists per assicurarsi che esista prima di scrivervi.

Scrittura in un log personalizzato

La scrittura in un log personalizzato è simile alla scrittura nel log applicazioni con l'eccezione che è necessario creare prima di tutto il log personalizzato. Il codice per creare un log personalizzato è semplice:

// Create the source, if it does not already exist. if(!EventLog.SourceExists("MySource"))   
{   
  //An event log source should not be created and immediately used.  
  //There is a latency time to enable the source, it should be created  
  //prior to executing the application that uses the source.  
  EventLog.CreateEventSource("MySource", "MyNewLog");  
}  

Tuttavia, non è consigliabile presupporre che il codice venga eseguito con un account con privilegi di sicurezza per creare un nuovo registro eventi. La creazione di un registro eventi accetta privilegi di amministratore e deve essere eseguita in un programma di utilità separato o, idealmente, come parte di un'installazione di .msi. Per altre informazioni sull'uso di script personalizzati con un'installazione .msi esportata, vedere Uso di script di pre-elaborazione e post-elaborazione per personalizzare la distribuzione dell'applicazione.