public static J4JLoggerConfiguration AddTwilio(this J4JLoggerConfiguration loggerConfig, TwilioConfiguration configValues, LogEventLevel restrictedToMinimumLevel = LogEventLevel.Verbose, string?outputTemplate = null) { if (!configValues.IsValid) { throw new ArgumentException("Twilio configuration values are invalid"); } var sink = new TwilioSink(configValues.FromNumber !, configValues.Recipients !, outputTemplate ?? loggerConfig.GetOutputTemplate()); try { TwilioClient.Init(configValues.AccountSID !, configValues.AccountToken !); sink.IsConfigured = true; loggerConfig.AddSmsSink(sink, restrictedToMinimumLevel); } catch { sink.IsConfigured = false; } return(loggerConfig); }
//public static LoggerConfiguration NetEvent( // this LoggerSinkConfiguration loggerConfig, // out NetEventSink sink, // string outputTemplate = NetEventSink.DefaultTemplate, // LogEventLevel restrictedToMinimumLevel = LogEventLevel.Verbose // ) //{ // sink = new NetEventSink( outputTemplate ); // return loggerConfig.Sink( sink, restrictedToMinimumLevel ); //} public static LoggerConfiguration NetEvent(this J4JLoggerConfiguration loggerConfig, string outputTemplate = NetEventSink.DefaultTemplate, LogEventLevel restrictedToMinimumLevel = LogEventLevel.Verbose) { var sink = new NetEventSink(outputTemplate); loggerConfig.NetEventSink = sink; return(loggerConfig.SerilogConfiguration .WriteTo .Sink(sink, restrictedToMinimumLevel)); }