コード例 #1
0
        /// <summary>
        /// Performs one-time setup for NLog configuration.
        /// This configuration is shared by all VSI components.
        /// </summary>
        /// <param name="appName">Log file name prefix</param>
        /// <param name="logDateTime">Timestamp used as log file name suffix</param>
        /// <exception cref="InvalidOperationException">
        /// Thrown when this has already been initialized.
        /// </exception>
        public static void Initialize(string appName, DateTime logDateTime)
        {
            if (string.IsNullOrEmpty(appName))
            {
                throw new ArgumentException("null or empty", nameof(appName));
            }
            if (appName.IndexOfAny(System.IO.Path.GetInvalidFileNameChars()) >= 0)
            {
                throw new ArgumentException("contains invalid file name chars", nameof(appName));
            }
            if (logFactory != null)
            {
                throw new InvalidOperationException(
                          nameof(YetiLog) + " has already been initialized.");
            }

            // Setup NLog configuration.
            var    config = new LoggingConfiguration();
            string time   = ToLogFileDateTime(DateTime.Now);

            SetupGeneralLogging(appName, time, ref config);
            SetupCallSequenceLogging(appName, time, ref config);
            SetupTraceLogging(appName, time, ref config);

            logFactory = new LogFactory(config);

            // Send System.Diagnotics.Debug and System.Diagnostics.Trace to NLog.
            nlogTracelistener              = new NLogTraceListener();
            nlogTracelistener.LogFactory   = logFactory;
            nlogTracelistener.DisableFlush = true;
            Trace.Listeners.Add(nlogTracelistener);
        }
コード例 #2
0
        private static void EnableVerboseOutput()
        {
            InitLogging();

            LogManager.GetLogger("GrooveCaster").Info("Starting GrooveCaster at {0}.", DateTime.UtcNow);

            var s_Listener = new NLogTraceListener();

            Trace.Listeners.Add(s_Listener);
        }
コード例 #3
0
        protected override ITableDependency <Product> CreateSqlTableDependency(IModelToTableMapper <Product> modelToTableMapper)
        {
            var sqlTableDependency = base.CreateSqlTableDependency(modelToTableMapper);

            traceListener?.Dispose();

            sqlTableDependency.TraceListener = traceListener = new NLogTraceListener();
            sqlTableDependency.TraceLevel    = TraceLevel.Verbose;

            return(sqlTableDependency);
        }
コード例 #4
0
        public void TraceConfiguration()
        {
            var listener = new NLogTraceListener();

            listener.Attributes.Add("defaultLogLevel", "Warn");
            listener.Attributes.Add("forceLogLevel", "Error");
            listener.Attributes.Add("autoLoggerName", "1");

            Assert.Equal(LogLevel.Warn, listener.DefaultLogLevel);
            Assert.Equal(LogLevel.Error, listener.ForceLogLevel);
            Assert.True(listener.AutoLoggerName);
        }
コード例 #5
0
        public void Test2( )
        {
            PresentationTraceSources.Refresh();
            var x1 = new NLogTraceListener {
                ForceLogLevel = LogLevel.Debug
            };

            PresentationTraceSources.MarkupSource.Listeners.Add(x1);
            PresentationTraceSources.MarkupSource.Switch.Level = SourceLevels.All;
            var x    = new ProxyUtils(WriteOut, ProxyUtilsBase.CreateInterceptor(WriteOut));
            var @out = x.TransformXaml2(@"files/test.xaml");

            Logger.Debug("{out}", @out);
        }
コード例 #6
0
ファイル: App.xaml.cs プロジェクト: kaymccormick/WpfApp
        private void SetupTracing()
        {
            PresentationTraceSources.Refresh();
            if (DoTracing)
            {
                var nLogTraceListener = new NLogTraceListener();
                var routedEventSource = PresentationTraceSources.RoutedEventSource;
                nLogTraceListener.DefaultLogLevel = LogLevel.Debug;
                nLogTraceListener.ForceLogLevel   = LogLevel.Warn;
                //nLogTraceListener.LogFactory      = AppContainer.Resolve < LogFactory > ( ) ;
                nLogTraceListener.AutoLoggerName = false;
                //nLogTraceListener.
                routedEventSource.Switch.Level = SourceLevels.All;
                var foo = AppContainer.Resolve <IEnumerable <TraceListener> >();
                foreach (var tl in foo)
                {
                    routedEventSource.Listeners.Add(tl);
                }

                //routedEventSource.Listeners.Add ( new AppTraceListener ( ) ) ;
                routedEventSource.Listeners.Add(nLogTraceListener);
            }
        }
コード例 #7
0
ファイル: NLogTraceListenerTests.cs プロジェクト: NLog/NLog
        public void TraceConfiguration()
        {
            var listener = new NLogTraceListener();
            listener.Attributes.Add("defaultLogLevel", "Warn");
            listener.Attributes.Add("forceLogLevel", "Error");
            listener.Attributes.Add("autoLoggerName", "1");
            listener.Attributes.Add("DISABLEFLUSH", "true"); 

            Assert.Equal(LogLevel.Warn, listener.DefaultLogLevel);
            Assert.Equal(LogLevel.Error, listener.ForceLogLevel);
            Assert.True(listener.AutoLoggerName);
            Assert.True(listener.DisableFlush);
        }
コード例 #8
0
ファイル: NLogTraceListenerTests.cs プロジェクト: ExM/NLog
		public void TraceConfiguration()
		{
			var listener = new NLogTraceListener();
			listener.Attributes.Add("defaultLogLevel", "Warn");
			listener.Attributes.Add("forceLogLevel", "Error");
			listener.Attributes.Add("autoLoggerName", "1");

			Assert.AreEqual(LogLevel.Warn, listener.DefaultLogLevel);
			Assert.AreEqual(LogLevel.Error, listener.ForceLogLevel);
			Assert.IsTrue(listener.AutoLoggerName);
		}
コード例 #9
0
        static void Main(string[] args)
        {
            if (_captureGlobalUnhandledExceptionAndRestartProgram)
            {
                AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
            }

            #region Redirect Trace messages to NLogTraceListen
            NLogTraceListener nLogTraceListener = new NLogTraceListener(true);
            Trace.Listeners.Add(nLogTraceListener);
            Trace.AutoFlush = true;
            #endregion

            //Display Program name and version while starts
            AssemblyName assemblyName = Assembly.GetExecutingAssembly().GetName();
            Trace.WriteLine($"{assemblyName.Name} {assemblyName.Version} Starts");

            //Disable close button in control box.
            Utility.ConsoleWindow.DisableCloseButton();

            //Start self-host Web API
            string           _listenUri = $"http://+:{Properties.Settings.Default.ListenPort}/";
            HttpServerConfig hsc        = new HttpServerConfig(_listenUri);

            if (hsc.IsEnable)
            {
                Trace.WriteLine($"Start selfhost web api. {_listenUri}");
                WebApp.Start <Startup>(_listenUri);
            }
            else
            {
                if (hsc.AddUrlAcl())
                {
                    Trace.WriteLine($"Add new urlacl {_listenUri} successfuly");
                    WebApp.Start <Startup>(_listenUri);
                }
                else
                {
                    throw new Exception("Http listen can not be started.");
                }
            }

            //Accept user console input and response
            List <char> commandInputBuufer = new List <char>();
            while (true)
            {
                if (Console.KeyAvailable)
                {
                    ConsoleKeyInfo cunKey = Console.ReadKey();
                    if (cunKey.Key == ConsoleKey.Enter)
                    {
                        string cmd = new string(commandInputBuufer.ToArray());
                        commandInputBuufer.Clear();
                        if (cmd == "q")
                        {
                            Console.WriteLine("Terminating...");
                            break;
                        }
                        else
                        {
                            CommandHandler(cmd);
                        }
                    }
                    else
                    {
                        commandInputBuufer.Add(cunKey.KeyChar);
                    }
                }
            }

            #region Dispose resouces

            //Add dispose resouce here before leave

            #endregion
        }