2017-03-24 1 views
1

Ich benutze Serilog Sink Serilog.Sinks.Email. Ich bekomme die E-Mail. Leider auch mit der "Information". Ich möchte zuerst E-Mails erhalten, wenn es sich um einen Warnfehler oder einen schwerwiegenden Fehler handelt.C# Serilog erhalten nur eine E-Mail nach einem Fehler

Gibt es eine Möglichkeit, dies zu setzen? Die "Information" sollte nicht mehr in der E-Mail gesendet werden. ABER die Informationen sollten in die TXT-Datei neu geschrieben werden. Ich möchte E-Mails erhalten, wenn es sich um eine Warnung, einen Fehler oder einen schwerwiegenden Fehler handelt.

Log.Logger = new LoggerConfiguration() 
          .WriteTo.RollingFile("logs\\log.txt") 
          .WriteTo.Email(
          fromEmail: "LOG", 
          toEmail: "[email protected]", 
          mailServer: "exchange") 
          .CreateLogger(); 

    Log.Information("++ I'm starting logging ++"); 
    Log.Error("Only that should arrive in the e-mail"); 

Antwort

1

restrictedToMinimumLevel wird dies tun:

Log.Logger = new LoggerConfiguration() 
    .WriteTo.RollingFile("logs\\log.txt") 
    .WriteTo.Email(
     restrictedToMinimumLevel: LogEventLevel.Warning, 
     fromEmail: "LOG", 
     toEmail: "[email protected]", 
     mailServer: "exchange") 
    .CreateLogger(); 
Verwandte Themen