Пример #1
0
        private void InitLogger()
        {
            var config = new LoggingConfiguration();

            var logfile = new FileTarget("logfile")
            {
                FileName     = Path.Combine(FileSystem.CacheDirectory, AppConstants.LogFileName),
                AutoFlush    = true,
                ArchiveEvery = FileArchivePeriod.Month
            };
            var debugTarget = new DebugTarget("console");

#if !DEBUG
            // Configure AppCenter
            var appCenterTarget = new AppCenterTarget("appcenter")
            {
                AppSecret = ConfigurationManager.AppSettings["IosAppcenterSecret"]
            };

            config.AddRule(LogLevel.Debug, LogLevel.Fatal, appCenterTarget);
#endif

            config.AddRule(LogLevel.Info, LogLevel.Fatal, debugTarget);
            config.AddRule(LogLevel.Debug, LogLevel.Fatal, logfile);

            LogManager.Configuration = config;
        }
        public AppCenterSink(AppCenterTarget target = default, string appSecret = null, IFormatProvider formatProvider = null)
        {
            Target          = target;
            _formatProvider = formatProvider;

            if (appSecret != null && !Microsoft.AppCenter.AppCenter.Configured)
            {
                Microsoft.AppCenter.AppCenter.Configure(appSecret);
            }

            Task.Run(EnableAppCenterTargets);
        }
        public static LoggerConfiguration AppCenterSink(this LoggerSinkConfiguration loggerConfiguration,
                                                        LoggingLevelSwitch levelSwitch = null, LogEventLevel logEventLevel = LogEventLevel.Verbose,
                                                        AppCenterTarget target         = default,
                                                        string appCenterSecret         = null,
                                                        IFormatProvider formatProvider = null)
        {
            if (loggerConfiguration == null)
            {
                throw new ArgumentNullException(nameof(loggerConfiguration));
            }

            return(loggerConfiguration.Sink(new AppCenterSink(target, appCenterSecret, formatProvider), logEventLevel, levelSwitch));
        }
 public TestableAppCenterSink(AppCenterTarget target = default, IFormatProvider formatProvider = null) : base(target, null, formatProvider)
 {
 }