Example #1
0
        public void LmsGetLoggedApplicationStop()
        {
            Assembly a        = Assembly.GetExecutingAssembly();
            string   fullPath = a.CodeBase;

            fullPath = Path.GetDirectoryName(fullPath);
            fullPath = Path.GetDirectoryName(fullPath);
            fullPath = Path.GetDirectoryName(fullPath);
            fullPath = Path.GetDirectoryName(fullPath);
            fullPath = Path.Combine(fullPath, "IUDICO.LMS", "log.xml");
            ILmsService service = new LmsService(new WindsorContainer());

            fullPath = fullPath.Remove(0, 6);
            XmlConfigurator.Configure(new FileInfo(fullPath));
            ILog log = LogManager.GetLogger(typeof(ILmsService));

            service.Inform(LMSNotifications.ApplicationStop);
            FileAppender rootAppender = (FileAppender)((Hierarchy)LogManager.GetRepository()).Root.Appenders[0];

            fullPath = rootAppender.File;
            rootAppender.Close();
            StreamReader reader = new StreamReader(fullPath);
            string       toRead = reader.ReadToEnd();

            Assert.IsTrue(toRead.IndexOf("Notification:application/stop") != -1);
        }
Example #2
0
 /// <summary>
 /// Closes session logger
 /// </summary>
 public void CloseSessionLogger()
 {
     if (connectionAppender != null && fileAppender != null)
     {
         connectionAppender.RemoveAppender(fileAppender);
         fileAppender.Close();
     }
 }
Example #3
0
        static void Main(string[] args)
        {
            var    simpleFormatter = new SimpleFormatter();
            var    xmlFormatter    = new XmlFormatter();
            var    jsonFormatter   = new JSONFormatter();
            var    consoleAppender = new ConsoleAppender(xmlFormatter);
            var    fileAppender    = new FileAppender(xmlFormatter, "log.txt");
            Logger logger          = new Logger(consoleAppender, fileAppender);

            logger.Critical("Out of memory!");
            logger.Info("Unused local variable 'name'");

            fileAppender.Close();
        }
Example #4
0
        private void CreateAndConfigureFileAppender(string solutionName)
        {
            var logPath = OptionsFacade.DefaultLogPath;

            _fileAppender?.Close();
            _fileAppender = new FileAppender
            {
                Threshold    = Level.Debug,
                AppendToFile = true,
                File         = Path.Combine(logPath, $"LicenseHeaderManager_{solutionName}_{DateTime.Now:yyyy-MM-dd_HH-mm-ss}.log"),
                Layout       = new PatternLayout("%date [%-5level] %logger: %message%newline")
            };

            _fileAppender.ActivateOptions();
            BasicConfigurator.Configure(_fileAppender);
        }
Example #5
0
        public static void Main()
        {
            var simpleFormat    = new SimpleFormatter();
            var xmlFormat       = new XmlFormatter();
            var consoleAppender = new ConsoleAppender(xmlFormat);
            var fileAppender    = new FileAppender(xmlFormat, "log.txt");
            var logger          = new Logger(consoleAppender);

            try
            {
                logger.Critical("Out of Memory");
                logger.Info("Unused local variable 'name'");
            }
            finally
            {
                fileAppender.Close();
            }
        }
Example #6
0
        public static void Main()
        {
            var simpleFormatter = new SimpleFormatter();
            var xmlFormatter    = new XmlFormatter();
            // Create own formatter
            var jsonFormatter = new JsonFormatter();

            var fileAppender    = new FileAppender(jsonFormatter, "log.txt");
            var consoleAppender = new ConsoleAppender(xmlFormatter);
            // Create own appender
            var sqlAppender = new SqlAppender(jsonFormatter);

            Logger logger = new Logger(consoleAppender, fileAppender);

            logger.Critical("Out of memory");
            logger.Info("Unused local variable 'name'");

            fileAppender.Close();
        }
Example #7
0
        static void Main()
        {
            // Introduce custom formatter
            IFormatter formatter = new CrazyFormatter();

            FileAppender appender = new FileAppender("file.txt", formatter);
            Logger       logger   = new Logger(appender);

            try
            {
                logger.Critical("a cannot be 5");
                logger.Critical("Out of memory");
                // CauseException();
                logger.Info("Unused local variable 'name'");
            }
            finally
            {
                appender.Close();
            }
        }
Example #8
0
        public static void Append(string message, LogTypes logTypes)
        {
            ILog      log       = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
            Hierarchy hierarchy = (Hierarchy)LogManager.GetRepository();

            PatternLayout patternLayout = new PatternLayout();

            patternLayout.ConversionPattern = "%date/ %level/ %logger/ %message%newline";
            patternLayout.ActivateOptions();

            FileAppender fileAppender = new FileAppender();

            fileAppender.AppendToFile = true;
            fileAppender.File         = "KayseriLog.txt";
            fileAppender.Layout       = patternLayout;
            fileAppender.ActivateOptions();
            hierarchy.Root.AddAppender(fileAppender);

            hierarchy.Root.Level = Level.Info;
            hierarchy.Configured = true;

            switch (logTypes)
            {
            case LogTypes.INFO:
                log.Info(message);

                break;

            case LogTypes.WARN:
                log.Warn(message);

                break;

            case LogTypes.ERROR:
                log.Error(message);

                break;
            }

            fileAppender.Close();
        }
Example #9
0
        /// <summary>
        /// Clears the log file from any entries
        /// </summary>
        public void Clear()
        {
            try
            {
                FileAppender fAppender = (FileAppender)((Hierarchy)LogManager.GetRepository()).Root.Appenders[0];
                FileInfo     logFile   = new FileInfo(fAppender.File);

                // Close our output and delete the log file
                fAppender.Close();
                logFile.Delete();

                // Initialize the logger again
                InitializeLogger();

                LogStartMarker();
            }
            catch (Exception ex)
            {
                throw new Exception("Error while attempting to access the zeroth appender to Clear() the log file.", ex);
            }
        }
        private static void FlushLogFile(FileAppender file)
        {
            string fle = file.File;

            if (!string.IsNullOrEmpty(fle))
            {
                lock (LockObject)
                {
                    //log4net.Layout.ILayout layout = file.Layout;
                    file.Close();
                    //file = null;
                    LastLogFile = fle + "_" + DateTime.Now.ToString("yyyyMMdd") + ".log";

                    try
                    {
                        if (System.IO.File.Exists(LastLogFile))
                        {
                            System.IO.File.Delete(LastLogFile);
                        }
                        System.Threading.Thread.Sleep(100);

                        System.IO.File.Move(fle, LastLogFile);

                        string configFile = Assembly.GetEntryAssembly().Location + ".config";

                        FileInfo f = new FileInfo(configFile);

                        log4net.Config.XmlConfigurator.ConfigureAndWatch(f);
                    }
                    catch (Exception ex)
                    {
                        if (_log.IsWarnEnabled)
                        {
                            _log.Warn("Exception trying to flush log file:", ex);
                        }
                    }
                }
            }
            System.Threading.ThreadPool.QueueUserWorkItem(new System.Threading.WaitCallback(PurgeOldLogFiles), file);
        }