/// <summary> /// Configure Log4Net /// </summary> public void Log4NetConfig(bool isConsoleEnabled, string traceFilePath) { if (isConsoleEnabled) { // Add console output log4net.Appender.ConsoleAppender ca = new log4net.Appender.ConsoleAppender(); ca.Layout = new log4net.Layout.PatternLayout("%-5level %message%newline"); ca.Threshold = log4net.Core.Level.All; log4net.Config.BasicConfigurator.Configure(ca); ca.ActivateOptions(); } if (traceFilePath != "") { // Add file output log4net.Appender.RollingFileAppender rfa = new log4net.Appender.RollingFileAppender(); rfa.AppendToFile = true; rfa.File = traceFilePath; rfa.MaxFileSize = 4096000; rfa.MaxSizeRollBackups = 2; rfa.Threshold = log4net.Core.Level.All; rfa.Layout = new log4net.Layout.PatternLayout("%-5level %date{HH:mm:ss,fff} " + "[%thread] %logger (%file:%line) " + "%newline%message%newline%newline"); log4net.Config.BasicConfigurator.Configure(rfa); rfa.ActivateOptions(); } // Set Root level log4net.Repository.Hierarchy.Hierarchy h = (log4net.Repository.Hierarchy.Hierarchy)log4net.LogManager.GetRepository (); log4net.Repository.Hierarchy.Logger rootLogger = h.Root; rootLogger.Level = log4net.Core.Level.All; }
static void Main(string[] args) { var props = new NameValueCollection(); props["configType"] = "EXTERNAL"; LogManager.Adapter = new Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter(props); var layout = new log4net.Layout.PatternLayout("%d [%t] %-5p %c [%x] <%X{auth}> - %m%n"); var level = log4net.Core.Level.Debug; var appender = new log4net.Appender.ConsoleAppender { Layout = layout, Threshold = level }; log4net.Config.BasicConfigurator.Configure(appender); if(!MsmqInstallation.IsInstallationGood()) { Console.WriteLine("MSMQ is not configured correctly for use with NServiceBus"); if(!args.ToList().Contains("/i")) { Console.WriteLine("Please run with /i to reconfigure MSMQ"); return; } } MsmqInstallation.StartMsmqIfNecessary(); DtcUtil.StartDtcIfNecessary(); PerformanceCounterInstallation.InstallCounters(); }
static void Main(string[] args) { var props = new NameValueCollection(); props["configType"] = "EXTERNAL"; LogManager.Adapter = new Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter(props); var layout = new log4net.Layout.PatternLayout("%d [%t] %-5p %c [%x] <%X{auth}> - %m%n"); var level = log4net.Core.Level.Debug; var appender = new log4net.Appender.ConsoleAppender { Layout = layout, Threshold = level }; log4net.Config.BasicConfigurator.Configure(appender); if (!MsmqInstallation.IsInstallationGood()) { Console.WriteLine("MSMQ is not configured correctly for use with NServiceBus"); if (!args.ToList().Contains("/i")) { Console.WriteLine("Please run with /i to reconfigure MSMQ"); return; } } MsmqInstallation.StartMsmqIfNecessary(); DtcUtil.StartDtcIfNecessary(); PerformanceCounterInstallation.InstallCounters(); }
private static void EnableConsoleDebugLog() { log4net.Appender.IAppender appender; var consoleAppender = new log4net.Appender.ColoredConsoleAppender { Layout = new SimpleLayout(), Threshold = Level.All }; try { consoleAppender.ActivateOptions(); appender = consoleAppender; } catch (EntryPointNotFoundException) { var fallbackAppender = new log4net.Appender.ConsoleAppender { Layout = new SimpleLayout(), Threshold = Level.All }; fallbackAppender.ActivateOptions(); appender = fallbackAppender; } var repo = (Hierarchy)log4net.LogManager.GetRepository(); var root = repo.Root; root.AddAppender(appender); repo.Configured = true; log.Info("Verbose logging to console enabled."); }
/// <summary> /// Initializes the logger /// </summary> private static void SetupLogging() { log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); appender.Name = "ConsoleAppender"; appender.Layout = new log4net.Layout.PatternLayout("[%date{dd.MM.yyyy HH:mm:ss,fff}]-%-5level-[%c]: %message%newline"); log4net.Config.BasicConfigurator.Configure(appender); }
public void Init() { // Add a Console appender so logger messages will show up in the NUnit Console.Out tab. log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); log4net.Layout.ILayout fallbackLayout = new log4net.Layout.PatternLayout("%m%n"); appender.Layout = fallbackLayout; log4net.Config.BasicConfigurator.Configure(appender); }
/// <summary> /// Configures the logging object to use a console logger. This would normally be used /// as a fallback when either the application does not have any logging configuration /// or there is an error in it. /// </summary> public static void ConfigureConsoleLogger() { log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); log4net.Layout.ILayout fallbackLayout = new log4net.Layout.PatternLayout("%m%n"); appender.Layout = fallbackLayout; log4net.Config.BasicConfigurator.Configure(appender); }
public void GetLinkingMetadata_CalledOnceForEachEvent() { // Arrange LogManager.ShutdownRepository(Assembly.GetEntryAssembly()); var testAgent = Mock.Create <IAgent>(); Mock.Arrange(() => testAgent.GetLinkingMetadata()).Returns(new Dictionary <string, string>() { { "key", "value" } }); var testAppender = new NewRelicAppender(() => testAgent); //Set the the NewRelicAppender at the root logger var logRepository = LogManager.GetRepository(Assembly.GetEntryAssembly()); BasicConfigurator.Configure(logRepository, testAppender); var layout = Mock.Create <log4net.Layout.SimpleLayout>(); layout.ActivateOptions(); var childAppender = new log4net.Appender.ConsoleAppender { Layout = layout }; testAppender.AddAppender(childAppender); var testLoggingEvents = new List <LoggingEvent>(); Mock.Arrange(() => layout.Format(Arg.IsAny <TextWriter>(), Arg.IsAny <LoggingEvent>())).DoInstead((TextWriter textWriter, LoggingEvent loggingEvent) => { testLoggingEvents.Add(loggingEvent); }); var testLogger = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); //// Act var rnd = new Random(); var countLogAttempts = rnd.Next(2, 25); for (var i = 0; i < countLogAttempts; i++) { testLogger.Info("This is a log message"); } // Assert Mock.Assert(() => testAgent.GetLinkingMetadata(), Occurs.Exactly(countLogAttempts)); Assert.That(testLoggingEvents.Count, Is.EqualTo(countLogAttempts)); testLoggingEvents.ForEach(loggingEvent => { Assert.That(loggingEvent.Properties.Contains("newrelic.linkingmetadata"), "newrelic.linkingmetadata not property found. This test expects newrelic.linkingmetadata property in log event"); }); }
static Log() { NativeMethods.AllocConsole(); log4net.Layout.PatternLayout pl = new log4net.Layout.PatternLayout("[MySite] %level %date{HH:mm:ss,fff} - %message%n"); log4net.Appender.ConsoleAppender ca = new log4net.Appender.ConsoleAppender(); ca.Layout = pl; ca.Target = "Console.Out"; ca.ActivateOptions(); log4net.Config.BasicConfigurator.Configure(ca); log = LogManager.GetLogger("Debug"); }
public void Init() { appender = new log4net.Appender.ConsoleAppender(); appender.Layout = new log4net.Layout.SimpleLayout(); appender.Threshold = log4net.Core.Level.All; log4net.Config.BasicConfigurator.Configure(appender); // TODO: dat do konfigurace aby to nebylo natvrdo //System.Configuration.ConfigurationManager.AppSettings["databaseConn"] = "Data Source=CC_TEST;User ID=crmws;Password=crmws;"; Console.WriteLine("acctId"); }
static void SetupConsoleLogging() { var rootLogger = ((log4net.Repository.Hierarchy.Hierarchy)log4net.LogManager.GetRepository()).Root; var consoleAppender = new log4net.Appender.ConsoleAppender { Threshold = log4net.Core.Level.Debug, Layout = new log4net.Layout.PatternLayout("%date [%thread] %-5level %logger [%property{NDC}] - %message%newline") }; consoleAppender.ActivateOptions(); rootLogger.AddAppender(consoleAppender); }
private static log4net.Appender.ConsoleAppender GetConsoleAppender( log4net.Core.Level consoleLogLevel) { log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); appender.Name = "Console"; appender.Layout = new log4net.Layout.PatternLayout( "%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c - %m%n"); appender.Threshold = consoleLogLevel; appender.ActivateOptions(); return(appender); }
/// <summary> /// add console appender /// </summary> /// <param name="patternStr"></param> public static void AddConsoleLogger(String patternStr) { if (String.IsNullOrEmpty(patternStr)) { patternStr = "%message%newline"; } log4net.Layout.PatternLayout layout = new log4net.Layout.PatternLayout(patternStr); log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); appender.Layout = layout; m_Appenders.Add(appender); }
private static void ConfigureLog4Net() { var hierarchy = (Hierarchy)log4net.LogManager.GetRepository(typeof(TestsContext).Assembly); var consoleAppender = new log4net.Appender.ConsoleAppender { Layout = new log4net.Layout.PatternLayout("%d{ABSOLUTE} %-5p %c{1}:%L - %m%n"), }; hierarchy.Root.Level = log4net.Core.Level.Info; hierarchy.Root.AddAppender(consoleAppender); hierarchy.Configured = true; }
/// <summary> /// 初始化日志 /// </summary> /// <param name="file">日志文件</param> /// <param name="datePattern">日期格式</param> /// <param name="fileLevelStr">文件日志等级,有debug、info、warn、error和fatal</param> /// <param name="consoleLevelStr">Console日志等级</param> /// <returns>返回是否成功</returns> public bool Initialize(string file, string datePattern, string fileLevelStr, string consoleLevelStr) { log4net.Core.Level fileLevel = ConvertLog4NetLevel(fileLevelStr); log4net.Core.Level consoleLevel = ConvertLog4NetLevel(consoleLevelStr); const string DefaultPattern = "%d [%t]%-5p %c - %m%n"; try { log4net.Layout.PatternLayout layout = new log4net.Layout.PatternLayout(DefaultPattern); if (file != string.Empty) { log4net.Appender.RollingFileAppender rfileAppender = new log4net.Appender.RollingFileAppender(); rfileAppender.Layout = layout; rfileAppender.File = file; if (datePattern == string.Empty) { rfileAppender.DatePattern = "yyyyMMdd-HH"; } else { rfileAppender.DatePattern = datePattern; } rfileAppender.RollingStyle = log4net.Appender.RollingFileAppender.RollingMode.Date; //.Composite; rfileAppender.Threshold = fileLevel; rfileAppender.ActivateOptions(); log4net.Config.BasicConfigurator.Configure(rfileAppender); } log4net.Appender.ConsoleAppender consoleAppender = new log4net.Appender.ConsoleAppender(layout); consoleAppender.Threshold = consoleLevel; consoleAppender.ActivateOptions(); log4net.Config.BasicConfigurator.Configure(consoleAppender); return(true); } catch (Exception err) { Console.WriteLine("Error:{0} StackTrace:{1}", err.Message, err.StackTrace); try { HTEventLog.InitFileLog(@"ServerEvents.log"); HTEventLog.SaveLog(HTEventLog.LogTypeEnum.错误, string.Format("Error : {0}\r\nStackTrace : \r\n{1}", err.Message, err.StackTrace), System.Windows.Forms.Application.ProductName); } catch { } return(false); } }
static Logger() { Log = LogManager.GetLogger(System.Reflection.Assembly.GetExecutingAssembly().FullName); // If error level reporting isn't enabled we assume no logger is configured and initialize a default // ConsoleAppender if (!Log.Logger.IsEnabledFor(log4net.Core.Level.Error)) { log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); appender.Layout = new log4net.Layout.PatternLayout("%timestamp [%thread] %-5level - %message%newline"); BasicConfigurator.Configure(appender); Log.Info("No log configuration found, defaulting to console logging"); } }
/// <summary> /// Initializes the logger /// </summary> private void SetupLogging() { if (ConfigurationManager.GetSection("log4net") == null) { log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); appender.Name = "ConsoleAppender"; appender.Layout = new log4net.Layout.PatternLayout("[%date{dd.MM.yyyy HH:mm:ss,fff}]-%-5level-%t-[%c]: %message%newline"); log4net.Config.BasicConfigurator.Configure(appender); } else { log4net.Config.XmlConfigurator.Configure((XmlElement)ConfigurationManager.GetSection("log4net")); } _logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); }
static void ConfigureLogging(bool verbose) { var consoleAppender = new log4net.Appender.ConsoleAppender(); consoleAppender.Layout = new log4net.Layout.PatternLayout("[%date{yyyy-MM-dd HH:mm:ss}] %-5p %c{1} - %m%n"); if (!verbose) { var filter = new LoggerMatchFilter(); filter.AcceptOnMatch = true; filter.LoggerToMatch = typeof(Program).ToString(); consoleAppender.AddFilter(filter); consoleAppender.AddFilter(new DenyAllFilter()); } log4net.Config.BasicConfigurator.Configure(consoleAppender); }
protected virtual void Application_Start(Object sender, EventArgs e) { // perform automapper configuration Banking.ConfigureAutomapper (); // setup loggin log4net.Appender.ConsoleAppender appender; appender = new log4net.Appender.ConsoleAppender (); appender.Layout = new log4net.Layout.PatternLayout ("%-4timestamp %-5level %logger %M %ndc - %message%newline"); log4net.Config.BasicConfigurator.Configure (appender); if (ConfigurationManager.AppSettings ["Debug"] != null && ConfigurationManager.AppSettings ["Debug"] == "true") appender.Threshold = log4net.Core.Level.Debug; else appender.Threshold = log4net.Core.Level.Warn; }
/// <summary> /// Default constructor /// </summary> static Logger() { LogInstance = LogManager.GetLogger("libsecondlife"); // If error level reporting isn't enabled we assume no logger is configured and initialize a default // ConsoleAppender if (!LogInstance.Logger.IsEnabledFor(log4net.Core.Level.Error)) { log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); appender.Layout = new log4net.Layout.PatternLayout("%timestamp [%thread] %-5level - %message%newline"); BasicConfigurator.Configure(appender); if(Settings.LOG_LEVEL != Helpers.LogLevel.None) LogInstance.Info("No log configuration found, defaulting to console logging"); } }
/// <summary> /// Executes the report generation. /// </summary> /// <param name="configuration">The configuration.</param> /// <returns><c>true</c> if report was generated successfully; otherwise <c>false</c>.</returns> public static bool Execute(ReportConfiguration configuration) { if (configuration == null) { throw new ArgumentNullException("configuration"); } var appender = new log4net.Appender.ConsoleAppender(); appender.Layout = new log4net.Layout.PatternLayout("%message%newline"); log4net.Config.BasicConfigurator.Configure(appender); if (!configuration.Validate()) { return(false); } if (configuration.VerbosityLevel == VerbosityLevel.Info) { appender.Threshold = log4net.Core.Level.Info; } else if (configuration.VerbosityLevel == VerbosityLevel.Error) { appender.Threshold = log4net.Core.Level.Error; } var stopWatch = new System.Diagnostics.Stopwatch(); stopWatch.Start(); var parser = ParserFactory.CreateParser(configuration.ReportFiles, configuration.SourceDirectories); using (var rendererFactory = new RendererFactory(configuration.ReportType)) { new ReportBuilder( parser, rendererFactory, configuration.TargetDirectory, new DefaultAssemblyFilter(configuration.Filters)) .CreateReport(); } stopWatch.Stop(); Logger.InfoFormat(Resources.ReportGenerationTook, stopWatch.ElapsedMilliseconds / 1000); return(true); }
public static void AddLogToConsole(bool basicConfig) { AllocConsole(); var appender = new log4net.Appender.ConsoleAppender(); var layout = new log4net.Layout.PatternLayout { ConversionPattern = DefaultConversionPatern, Header = "Time;Level;Description;" }; layout.ActivateOptions(); appender.Layout = layout; appender.ActivateOptions(); if (basicConfig) log4net.Config.BasicConfigurator.Configure(appender); else ((log4net.Repository.Hierarchy.Hierarchy)LogManager.GetRepository()).Root.AddAppender(appender); }
private static void ConfigureLog4Net() { var hierarchy = (Hierarchy)log4net.LogManager.GetRepository(typeof(TestsContext).Assembly); var consoleAppender = new log4net.Appender.ConsoleAppender { Layout = new log4net.Layout.PatternLayout("%d{ABSOLUTE} %-5p %c{1}:%L - %m%n"), }; ((Logger)hierarchy.GetLogger("NHibernate.Hql.Ast.ANTLR")).Level = log4net.Core.Level.Off; ((Logger)hierarchy.GetLogger("NHibernate.SQL")).Level = log4net.Core.Level.Off; ((Logger)hierarchy.GetLogger("NHibernate.AdoNet.AbstractBatcher")).Level = log4net.Core.Level.Off; ((Logger)hierarchy.GetLogger("NHibernate.Tool.hbm2ddl.SchemaExport")).Level = log4net.Core.Level.Error; hierarchy.Root.Level = log4net.Core.Level.Warn; hierarchy.Root.AddAppender(consoleAppender); hierarchy.Configured = true; }
private static void EnableLogging() { // DEBUG < INFO < WARN < ERROR < FATAL log4net.Appender.ConsoleAppender consoleAppender = FindAppender("ConsoleAppender") as log4net.Appender.ConsoleAppender; #if DEBUG consoleAppender.Threshold = log4net.Core.Level.All; #else consoleAppender.Threshold = log4net.Core.Level.Off; #endif log4net.Appender.FileAppender fileAppender = FindAppender("LogFileAppender") as log4net.Appender.FileAppender; #if TRACE fileAppender.Threshold = log4net.Core.Level.All; #else fileAppender.Threshold = log4net.Core.Level.Off; #endif }
public void GetLinkingMetadata_IsHandled_Exception() { // Arrange LogManager.ShutdownRepository(Assembly.GetEntryAssembly()); var testAgent = Mock.Create <IAgent>(); Mock.Arrange(() => testAgent.GetLinkingMetadata()).DoInstead(() => { throw new Exception("Exception - GetLinkingMetadata"); }); var testAppender = new NewRelicAppender(() => testAgent); //Set the the NewRelicAppender at the root logger var logRepository = LogManager.GetRepository(Assembly.GetEntryAssembly()); BasicConfigurator.Configure(logRepository, testAppender); var testLogger = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); var layout = Mock.Create <log4net.Layout.SimpleLayout>(); var childAppender = new log4net.Appender.ConsoleAppender { Layout = layout }; testAppender.AddAppender(childAppender); var testLoggingEvents = new List <LoggingEvent>(); Mock.Arrange(() => layout.Format(Arg.IsAny <TextWriter>(), Arg.IsAny <LoggingEvent>())).DoInstead((TextWriter textWriter, LoggingEvent loggingEvent) => { testLoggingEvents.Add(loggingEvent); }); // Act testLogger.Info("This is log message "); // Assert Assert.That(testLoggingEvents.Count, Is.EqualTo(1)); Assert.That(!testLoggingEvents[0].Properties.Contains("newrelic.linkingmetadata"), "newrelic.linkingmetadata property found. This test does not expect newrelic.linkingmetadata property in log event"); }
/// <summary> /// Executes the report generation. /// </summary> /// <param name="configuration">The configuration.</param> /// <returns><c>true</c> if report was generated successfully; otherwise <c>false</c>.</returns> public static bool Execute(ReportConfiguration configuration) { if (configuration == null) { throw new ArgumentNullException("configuration"); } var appender = new log4net.Appender.ConsoleAppender(); appender.Layout = new log4net.Layout.PatternLayout("%message%newline"); log4net.Config.BasicConfigurator.Configure(appender); if (!configuration.Validate()) { return false; } if (configuration.VerbosityLevel == VerbosityLevel.Info) { appender.Threshold = log4net.Core.Level.Info; } else if (configuration.VerbosityLevel == VerbosityLevel.Error) { appender.Threshold = log4net.Core.Level.Error; } var stopWatch = new System.Diagnostics.Stopwatch(); stopWatch.Start(); var parser = ParserFactory.CreateParser(configuration.ReportFiles, configuration.SourceDirectories); using (var rendererFactory = new RendererFactory(configuration.ReportType)) { new ReportBuilder( parser, rendererFactory, configuration.TargetDirectory, new DefaultAssemblyFilter(configuration.Filters)) .CreateReport(); } stopWatch.Stop(); Logger.InfoFormat(Resources.ReportGenerationTook, stopWatch.ElapsedMilliseconds / 1000); return true; }
/// <summary> /// Default constructor /// </summary> static Logger() { LogInstance = LogManager.GetLogger("OpenMetaverse"); // If error level reporting isn't enabled we assume no logger is configured and initialize a default // ConsoleAppender if (!LogInstance.Logger.IsEnabledFor(log4net.Core.Level.Error)) { log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); appender.Layout = new log4net.Layout.PatternLayout("%timestamp [%thread] %-5level - %message%newline"); BasicConfigurator.Configure(appender); if (Settings.LOG_LEVEL != Helpers.LogLevel.None) { LogInstance.Info("No log configuration found, defaulting to console logging"); } } }
private static void ConfigureLogging() { var repository = LogManager.GetRepository(Assembly.GetEntryAssembly()); var consoleAppender = new log4net.Appender.ConsoleAppender() { Layout = new log4net.Layout.SimpleLayout(), }; var enablingFilter = new log4net.Filter.LoggerMatchFilter() { LoggerToMatch = nameof(Muwesome), AcceptOnMatch = true, }; consoleAppender.AddFilter(enablingFilter); consoleAppender.AddFilter(new log4net.Filter.DenyAllFilter()); log4net.Config.BasicConfigurator.Configure(repository, consoleAppender); }
/// <summary> /// Configure log4net object /// </summary> private static void ConfigLog4Net() { // set log filename string logfilename = Environment.GetFolderPath(System.Environment.SpecialFolder.Personal); logfilename += System.IO.Path.DirectorySeparatorChar; logfilename += System.Reflection.Assembly.GetExecutingAssembly().GetName().Name + ".log"; LogFilePath = logfilename; // attach to repository hierarchy log4net.Repository.Hierarchy.Hierarchy repository = LogManager.GetRepository() as log4net.Repository.Hierarchy.Hierarchy; // check for logging into file if (LogToFile) { // add log file appender log4net.Appender.RollingFileAppender fileappender = new log4net.Appender.RollingFileAppender(); fileappender.Layout = new log4net.Layout.PatternLayout("%-5level %date{yyyy-MM-dd HH:mm:ss,fff} [%thread] %message (%file:%line)%newline"); fileappender.File = logfilename; fileappender.MaxSizeRollBackups = 10; fileappender.MaximumFileSize = "10MB"; fileappender.AppendToFile = true; fileappender.ActivateOptions(); repository.Root.AddAppender(fileappender); } // check for logging into console if (LogToConsole) { // add console appender log4net.Appender.ConsoleAppender consoleappender = new log4net.Appender.ConsoleAppender(); consoleappender.Layout = new log4net.Layout.PatternLayout("%-5level %date{HH:mm:ss} %message%newline"); consoleappender.ActivateOptions(); repository.Root.AddAppender(consoleappender); } // set to log all events repository.Root.Level = log4net.Core.Level.All; repository.Configured = true; repository.RaiseConfigurationChanged(EventArgs.Empty); }
protected virtual void Application_Start(Object sender, EventArgs e) { // perform automapper configuration Banking.ConfigureAutomapper(); // setup loggin log4net.Appender.ConsoleAppender appender; appender = new log4net.Appender.ConsoleAppender(); appender.Layout = new log4net.Layout.PatternLayout("%-4timestamp %-5level %logger %M %ndc - %message%newline"); log4net.Config.BasicConfigurator.Configure(appender); if (ConfigurationManager.AppSettings ["Debug"] != null && ConfigurationManager.AppSettings ["Debug"] == "true") { appender.Threshold = log4net.Core.Level.Debug; } else { appender.Threshold = log4net.Core.Level.Warn; } }
public Log4NetLogger(string modName) { moduleName = modName; // logger = log4net.LogManager.GetLogger(modName); lock (lockObject) { if (logger == null) { // logger = log4net.LogManager.GetLogger(LookingGlassBase.ApplicationName); logger = log4net.LogManager.GetLogger(moduleName); // logger = log4net.LogManager.GetLogger(Assembly.GetExecutingAssembly().FullName); // logger = log4net.LogManager.GetLogger(ModuleName); // If error level reporting isn't enabled we assume no logger is configured // and initialize a default ConsoleAppender if (!logger.IsErrorEnabled) { log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); appender.Layout = new log4net.Layout.PatternLayout("%timestamp[%thread]: %message%newline"); BasicConfigurator.Configure(appender); } } } }
public static void Main(string[] args) { var appender = new log4net.Appender.ConsoleAppender(); appender.Layout = new log4net.Layout.SimpleLayout(); appender.AddFilter(new log4net.Filter.LevelRangeFilter { LevelMin = log4net.Core.Level.Info }); log4net.Config.BasicConfigurator.Configure(appender); using (var connection = new MyConnection(new[] { "uri_0", "uri_1" })) { connection.Open(); Console.WriteLine("Press enter to subscribe data and press again to exit."); Console.ReadLine(); connection.Subscribe(new TestSubscriber("A")); connection.Subscribe(new TestSubscriber("B")); Console.ReadLine(); } }
public static void AddLogToConsole(bool basicConfig) { AllocConsole(); var appender = new log4net.Appender.ConsoleAppender(); var layout = new log4net.Layout.PatternLayout { ConversionPattern = DefaultConversionPatern, Header = "Time;Level;Description;" }; layout.ActivateOptions(); appender.Layout = layout; appender.ActivateOptions(); if (basicConfig) { log4net.Config.BasicConfigurator.Configure(appender); } else { ((log4net.Repository.Hierarchy.Hierarchy)LogManager.GetRepository()).Root.AddAppender(appender); } }
private static void SetUpConsoleLogger() { string consolePattern = "%message%newline"; log4net.Layout.PatternLayout layout = new log4net.Layout.PatternLayout(consolePattern); layout.Header = ""; layout.Footer = ""; layout.ActivateOptions(); log4net.Appender.ConsoleAppender consoleAppender = new log4net.Appender.ConsoleAppender(); //consoleAppender.ErrorHandler = new LoggingErrorHandler(); consoleAppender.Name = "Console appender"; consoleAppender.Threshold = log4net.Core.Level.Warn; consoleAppender.Layout = layout; consoleAppender.Target = "Console.Out"; consoleAppender.ActivateOptions(); // A slight bit of hackery in order to programatically set more than one appender (which isn't supported by BasicConfigurator) log4net.Repository.Hierarchy.Logger root = ((log4net.Repository.Hierarchy.Hierarchy)log4net.LogManager.GetRepository()).Root; root.AddAppender(consoleAppender); root.Repository.Configured = true; }
public override void Configure(string key, ILoggerRepository repository) { foreach (var level in Levels) { var appender = new log4net.Appender.ConsoleAppender(); var layout = new PatternLayout(Pattern); layout.ActivateOptions(); appender.Layout = layout; appender.Name = key + "_" + level.ToString().ToLower(); var filter = new LevelRangeFilter(); filter.LevelMax = level; filter.LevelMin = level; filter.ActivateOptions(); appender.AddFilter(filter); appender.ActivateOptions(); BasicConfigurator.Configure(repository, appender); } }
static void Main(string[] args) { bool coloredLogging = true; bool printHelp = false; bool printVersion = false; // Name the main thread Thread.CurrentThread.Name = "Main"; #region Command Line Argument Handling Mono.Options.OptionSet set = new Mono.Options.OptionSet() { { "nocolor", "Disable colored console logging", v => coloredLogging = false }, { "h|?|help", "Shows launch options", v => printHelp = true }, { "version", "Show version information", v => printVersion = true } }; set.Parse(args); if (printHelp) { set.WriteOptionDescriptions(Console.Out); return; } if (printVersion) { string version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString(); Console.WriteLine("Simian " + version); return; } #endregion Command Line Argument Handling #region log4net Setup // If error level reporting isn't enabled we assume no logger is configured and initialize a default appender if (!m_log.Logger.IsEnabledFor(log4net.Core.Level.Error)) { log4net.Appender.AppenderSkeleton appender; if (coloredLogging) { log4net.Appender.ColoredConsoleAppender coloredAppender = new log4net.Appender.ColoredConsoleAppender(); var mapping = new log4net.Appender.ColoredConsoleAppender.LevelColors(); mapping.Level = log4net.Core.Level.Debug; mapping.ForeColor = log4net.Appender.ColoredConsoleAppender.Colors.HighIntensity; coloredAppender.AddMapping(mapping); mapping = new log4net.Appender.ColoredConsoleAppender.LevelColors(); mapping.Level = log4net.Core.Level.Info; mapping.ForeColor = log4net.Appender.ColoredConsoleAppender.Colors.White; coloredAppender.AddMapping(mapping); mapping = new log4net.Appender.ColoredConsoleAppender.LevelColors(); mapping.Level = log4net.Core.Level.Warn; mapping.BackColor = log4net.Appender.ColoredConsoleAppender.Colors.Purple; mapping.ForeColor = log4net.Appender.ColoredConsoleAppender.Colors.White; coloredAppender.AddMapping(mapping); mapping = new log4net.Appender.ColoredConsoleAppender.LevelColors(); mapping.Level = log4net.Core.Level.Error; mapping.BackColor = log4net.Appender.ColoredConsoleAppender.Colors.Red; mapping.ForeColor = log4net.Appender.ColoredConsoleAppender.Colors.White; coloredAppender.AddMapping(mapping); appender = coloredAppender; } else { appender = new log4net.Appender.ConsoleAppender(); } appender.Layout = new log4net.Layout.PatternLayout("%timestamp [%thread] %-5level %logger - %message%newline"); appender.ActivateOptions(); BasicConfigurator.Configure(appender); m_log.Info("No log configuration found, defaulting to console logging"); } // Hook up Debug.Assert statements to log4net Debug.Listeners.Insert(0, new log4netTraceListener()); #endregion log4net Setup // Set the working directory to the application dir Directory.SetCurrentDirectory(Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location)); // Initialize the Simian object m_simian = new Simian(); // Handle Ctrl+C Console.CancelKeyPress += delegate(object sender, ConsoleCancelEventArgs e) { e.Cancel = true; m_simian.Shutdown(); m_running = false; }; // Attempt to load modules if (m_simian.LoadModules()) { // Initialize the interactive console InteractiveConsole(); } else { m_log.Error("Application module loading failed, shutting down"); } }
private static void SetUpConsoleLogger() { string consolePattern = "%message%newline"; log4net.Layout.PatternLayout layout = new log4net.Layout.PatternLayout( consolePattern ); layout.Header = ""; layout.Footer = ""; layout.ActivateOptions(); log4net.Appender.ConsoleAppender consoleAppender = new log4net.Appender.ConsoleAppender(); //consoleAppender.ErrorHandler = new LoggingErrorHandler(); consoleAppender.Name = "Console appender"; consoleAppender.Threshold = log4net.Core.Level.Warn; consoleAppender.Layout = layout; consoleAppender.Target = "Console.Out"; consoleAppender.ActivateOptions(); // A slight bit of hackery in order to programatically set more than one appender (which isn't supported by BasicConfigurator) log4net.Repository.Hierarchy.Logger root = ( (log4net.Repository.Hierarchy.Hierarchy)log4net.LogManager.GetRepository() ).Root; root.AddAppender( consoleAppender ); root.Repository.Configured = true; }
/// <summary> /// The main method. /// </summary> /// <param name="args">The arguments.</param> /// <returns>Return code indicating success/failure.</returns> internal static int Main(string[] args) { var appender = new log4net.Appender.ConsoleAppender(); appender.Layout = new log4net.Layout.PatternLayout("%message%newline"); log4net.Config.BasicConfigurator.Configure(appender); if (args.Length < 2 || args.Length > 3) { ShowHelp(); return 1; } var reportFiles = args[0].Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); var targetDirectory = args[1]; var reportType = ReportType.Html; if (args.Length > 2 && !Enum.TryParse<ReportType>(args[2], true, out reportType)) { logger.Error("Unknown ReportType."); return 1; } // Check whether report exists if (!reportFiles.Any()) { logger.Error("No report files specified."); return 1; } foreach (var file in reportFiles) { if (!File.Exists(file)) { logger.ErrorFormat("The report file '{0}' does not exist.", file); return 1; } } // Create target directory if (!Directory.Exists(targetDirectory)) { try { Directory.CreateDirectory(targetDirectory); } catch (Exception ex) { logger.ErrorFormat("The target directory '{0}' could not be created: {1}", targetDirectory, ex.Message); return 1; } } var stopWatch = new System.Diagnostics.Stopwatch(); stopWatch.Start(); // Initiate parser var parser = ParserFactory.CreateParser(reportFiles); if (parser == null) { logger.Error("No matching parser found."); stopWatch.Stop(); return 1; } new ReportBuilder(parser, new RendererFactory(reportType), targetDirectory).CreateReport(); stopWatch.Stop(); logger.InfoFormat("Report generation took {0} seconds", stopWatch.ElapsedMilliseconds / 1000); return 0; }
public static void ConfigureForConsoleDebug() { log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); appender.Layout = new log4net.Layout.PatternLayout(LAYOUTFORMAT); log4net.Config.BasicConfigurator.Configure(appender); }
/// <summary> /// Application's Entry Point. /// </summary> /// <param name="args">See usage (--help).</param> protected static void Main(string[] args) { /* configure loggging */ var consoleAppender = new log4net.Appender.ConsoleAppender { Layout = new log4net.Layout.SimpleLayout() }; log4net.Config.BasicConfigurator.Configure(consoleAppender); var rootLogger = ((Hierarchy)LogManager.GetRepository()).Root; rootLogger.Level = Level.Info; consoleLog = LogManager.GetLogger("ConradRelayCardUtil"); /* parse RuntimeOptions */ if (!Parser.Default.ParseArguments(args, RuntimeOptions)) { return; } if (RuntimeOptions.OptionDebug) { rootLogger.Level = Level.Debug; } /* create card instance and initialize with serial port from RuntimeOptions*/ consoleLog.DebugFormat("Setting card port to {0}", RuntimeOptions.SerialPortName); conradCard = new Conrad8RelayCard(RuntimeOptions.SerialPortName); /* init card if not DoNotInit*/ if (!RuntimeOptions.OptionDoNotInit) { try { consoleLog.Debug("Initializing card(s)"); var numberOfCards = conradCard.InitializeCard(); consoleLog.InfoFormat("Found ({0}) card(s)", numberOfCards); } catch (Exception ex) { consoleLog.Error("Could not initialize card(s)", ex); return; } } else { consoleLog.Debug("Option 'DoNotInit'has been set, card not initialized"); } switch (RuntimeOptions.CommandOption) { case CommandOption.Getport: GetPort(); break; case CommandOption.Setport: SetPort(); break; case CommandOption.HardwareTest: HardwareTest(); break; case CommandOption.SetSingle: SetSingle(); break; case CommandOption.DelSingle: DelSingle(); break; case CommandOption.Toggle: Toggle(); break; default: Console.WriteLine("Invalid command or not implemented."); break; } }
protected override void ProcessRecord() { //todo set default to scriptname.log string test = MyInvocation.ScriptName; log4net.ILog logger = log4net.LogManager.GetLogger("Powershell"); System.IO.FileInfo logFileInfo = new System.IO.FileInfo(_logConfigFile); log4net.Config.XmlConfigurator.ConfigureAndWatch(logFileInfo); WriteObject(logger); log4net.Appender.IAppender[] appenders = log4net.LogManager.GetRepository().GetAppenders(); foreach (log4net.Appender.IAppender logAppender in appenders) { #region RollingFilleAppender if ((logAppender.GetType() == typeof(log4net.Appender.RollingFileAppender)) && logAppender.Name == "OSCCDefaultRollingFileAppender") { log4net.Appender.FileAppender fileAppender = (log4net.Appender.RollingFileAppender)logAppender; if (MyInvocation.BoundParameters.ContainsKey("LogFileName")) { log4net.Util.PatternString dynamicFileName = new log4net.Util.PatternString(LogFileName); log4net.Util.ConverterInfo adminuiLogConverterInfo = new log4net.Util.ConverterInfo(); adminuiLogConverterInfo.Name = "adminuilog"; adminuiLogConverterInfo.Type = typeof(Log4Net_CMTrace.CMAdminUILogFolderPatternConverter); log4net.Util.ConverterInfo ccmLogConverterInfo = new log4net.Util.ConverterInfo(); ccmLogConverterInfo.Name = "ccmlog"; ccmLogConverterInfo.Type = typeof(Log4Net_CMTrace.CMClientLogFolderPatternConverter); log4net.Layout.PatternLayout newLayout = new log4net.Layout.PatternLayout(); dynamicFileName.AddConverter(adminuiLogConverterInfo); dynamicFileName.AddConverter(ccmLogConverterInfo); dynamicFileName.ActivateOptions(); //fileAppender.File = LogFileName; fileAppender.File = dynamicFileName.Format(); } else { if (MyInvocation.ScriptName != "") { fileAppender.File = MyInvocation.ScriptName + ".log"; } } if (MyInvocation.BoundParameters.ContainsKey("FileLogLevel")) { switch (FileLogLevel.ToLower()) { case "off": fileAppender.Threshold = log4net.Core.Level.Off; break; case "info": fileAppender.Threshold = log4net.Core.Level.Info; break; case "warn": fileAppender.Threshold = log4net.Core.Level.Warn; break; case "error": fileAppender.Threshold = log4net.Core.Level.Error; break; case "debug": fileAppender.Threshold = log4net.Core.Level.Debug; break; default: fileAppender.Threshold = log4net.Core.Level.Info; break; } } else { fileAppender.Threshold = log4net.Core.Level.Info; } fileAppender.ActivateOptions(); } #endregion #region OMSFilleAppender if ((logAppender.GetType() == typeof(log4net.Appender.FileAppender)) && logAppender.Name == "OSCCOMSFileAppender") { log4net.Appender.FileAppender fileAppender = (log4net.Appender.FileAppender)logAppender; if (MyInvocation.BoundParameters.ContainsKey("OMSLogFileName")) { log4net.Util.PatternString dynamicFileName = new log4net.Util.PatternString(LogFileName); log4net.Util.ConverterInfo adminuiLogConverterInfo = new log4net.Util.ConverterInfo(); adminuiLogConverterInfo.Name = "adminuilog"; adminuiLogConverterInfo.Type = typeof(Log4Net_CMTrace.CMAdminUILogFolderPatternConverter); log4net.Util.ConverterInfo ccmLogConverterInfo = new log4net.Util.ConverterInfo(); ccmLogConverterInfo.Name = "ccmlog"; ccmLogConverterInfo.Type = typeof(Log4Net_CMTrace.CMClientLogFolderPatternConverter); log4net.Layout.PatternLayout newLayout = new log4net.Layout.PatternLayout(); dynamicFileName.AddConverter(adminuiLogConverterInfo); dynamicFileName.AddConverter(ccmLogConverterInfo); dynamicFileName.ActivateOptions(); //fileAppender.File = LogFileName; fileAppender.File = dynamicFileName.Format(); } else { if (MyInvocation.ScriptName != "") { fileAppender.File = MyInvocation.ScriptName + ".OMS." + DateTime.Today.ToString("yyyyMMdd") + ".log"; } } if (MyInvocation.BoundParameters.ContainsKey("OMSFileLogLevel")) { switch (FileLogLevel.ToLower()) { case "off": fileAppender.Threshold = log4net.Core.Level.Off; break; case "info": fileAppender.Threshold = log4net.Core.Level.Info; break; case "warn": fileAppender.Threshold = log4net.Core.Level.Warn; break; case "error": fileAppender.Threshold = log4net.Core.Level.Error; break; case "debug": fileAppender.Threshold = log4net.Core.Level.Debug; break; default: fileAppender.Threshold = log4net.Core.Level.Info; break; } } fileAppender.ActivateOptions(); } #endregion #region ConsoleAppender if (logAppender.GetType() == typeof(log4net.Appender.ConsoleAppender)) { log4net.Appender.ConsoleAppender consoleAppender = (log4net.Appender.ConsoleAppender)logAppender; if (this.Host.Name.ToLower() == "consolehost") { if (MultiColor == false) { { if (MyInvocation.BoundParameters.ContainsKey("ConsoleLogLevel")) { switch (ConsoleLogLevel.ToLower()) { case "off": consoleAppender.Threshold = log4net.Core.Level.Off; break; case "info": consoleAppender.Threshold = log4net.Core.Level.Info; break; case "warn": consoleAppender.Threshold = log4net.Core.Level.Warn; break; case "error": consoleAppender.Threshold = log4net.Core.Level.Error; break; case "debug": consoleAppender.Threshold = log4net.Core.Level.Debug; break; default: consoleAppender.Threshold = log4net.Core.Level.Info; break; } } } } else { consoleAppender.Threshold = log4net.Core.Level.Off; } } else { if (this.Host.Name.ToLower() == "windows powershell ise host") { if (MyInvocation.BoundParameters.ContainsKey("ConsoleLogLevel")) { switch (ConsoleLogLevel.ToLower()) { case "off": consoleAppender.Threshold = log4net.Core.Level.Off; break; case "info": consoleAppender.Threshold = log4net.Core.Level.Info; break; case "warn": consoleAppender.Threshold = log4net.Core.Level.Warn; break; case "error": consoleAppender.Threshold = log4net.Core.Level.Error; break; case "debug": consoleAppender.Threshold = log4net.Core.Level.Debug; break; default: consoleAppender.Threshold = log4net.Core.Level.Info; break; } } if ((MyInvocation.BoundParameters.ContainsKey("MultiColor")) && (MultiColor == true)) { Console.WriteLine("Powershell ISe does not support multi colored displays."); } } } consoleAppender.ActivateOptions(); } #endregion #region coloredconsoleappender if (logAppender.GetType() == typeof(log4net.Appender.ColoredConsoleAppender)) { log4net.Appender.ColoredConsoleAppender coloredConsoleAppender = (log4net.Appender.ColoredConsoleAppender)logAppender; if (this.Host.Name.ToLower() == "consolehost") { if (MultiColor == true) { if (MyInvocation.BoundParameters.ContainsKey("ConsoleLogLevel")) { switch (ConsoleLogLevel.ToLower()) { case "off": coloredConsoleAppender.Threshold = log4net.Core.Level.Off; break; case "info": coloredConsoleAppender.Threshold = log4net.Core.Level.Info; break; case "warn": coloredConsoleAppender.Threshold = log4net.Core.Level.Warn; break; case "error": coloredConsoleAppender.Threshold = log4net.Core.Level.Error; break; case "debug": coloredConsoleAppender.Threshold = log4net.Core.Level.Debug; break; default: coloredConsoleAppender.Threshold = log4net.Core.Level.Info; break; } } } else { coloredConsoleAppender.Threshold = log4net.Core.Level.Off; } } if (this.Host.Name.ToLower() == "windows powershell ise host") { coloredConsoleAppender.Threshold = log4net.Core.Level.Off; } coloredConsoleAppender.ActivateOptions(); } #endregion } }
/// <summary> /// add console appender /// </summary> /// <param name="patternStr"></param> public static void AddConsoleLogger(String patternStr) { if (String.IsNullOrEmpty(patternStr)) patternStr = "%message%newline"; log4net.Layout.PatternLayout layout = new log4net.Layout.PatternLayout(patternStr); log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); appender.Layout = layout; m_Appenders.Add(appender); }
public void SuccessfulProcessTest1() { // Arrange var container = new UnityContainer(); var appender = new log4net.Appender.ConsoleAppender { Layout = new log4net.Layout.SimpleLayout() }; log4net.Config.BasicConfigurator.Configure(appender); var logger = LogManager.GetLogger(typeof(IncomingTransactionProcessorTests)); container.RegisterInstance(logger); var sessionId = Guid.NewGuid(); var mockService = new Mock<IClientService>(MockBehavior.Strict); mockService.Setup(s => s.GetLastProcessedTransactionId(sessionId)).Returns(default(string)); container.RegisterInstance(mockService.Object); var mockRpcClient = new Mock<IRpcClient>(MockBehavior.Strict); var transactions = new List<Transaction> { new Transaction { Account = "100", Address = "address", Amount = 50m, Category = "receive", Confirmations = 1, Time = DateTime.UtcNow.AddMinutes(-11), TransactionId = "1000" }, new Transaction { Account = "101", Address = "address", Amount = 75m, Category = "receive", Confirmations = 1, Time = DateTime.UtcNow.AddMinutes(-10), TransactionId = "1001" }, }; mockRpcClient.Setup(r => r.GetTransactions(null, 1000, 0)).Returns(transactions.Take(1).ToList()); ////mockRpcClient.Setup(r => r.GetTransactions(null, 12, 0)).Returns(transactions.Take(2).ToList()); ////mockRpcClient.Setup(r => r.GetTransactions(null, 14, 0)).Returns(transactions.Take(2).ToList()); container.RegisterInstance(mockRpcClient.Object); var processor = new Mock<IncomingTransactionProcessor>() { CallBase = true }; processor.Setup(p => p.Process(sessionId, It.IsAny<Transaction>())); container.BuildUp(processor.Object); // Act processor.Object.Process(sessionId); // Assert mockService.Verify(s => s.GetLastProcessedTransactionId(sessionId), Times.Once()); mockRpcClient.Verify(r => r.GetTransactions(null, 1000, 0), Times.Once()); ////mockRpcClient.Verify(r => r.GetTransactions(null, 12, 0), Times.Once()); ////mockRpcClient.Verify(r => r.GetTransactions(null, 14, 0), Times.Once()); processor.Verify(p => p.Process(sessionId, It.IsAny<Transaction>()), Times.Exactly(1)); }
private static log4net.Appender.ConsoleAppender GetConsoleAppender( log4net.Core.Level consoleLogLevel) { log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); appender.Name = "Console"; appender.Layout = new log4net.Layout.PatternLayout( "%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c - %m%n"); appender.Threshold = consoleLogLevel; appender.ActivateOptions(); return appender; }
public static void ConfigureConsoleLogging() { log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); appender.Layout = new log4net.Layout.PatternLayout("%-5p %c{1} %m%n"); log4net.Config.BasicConfigurator.Configure(appender); }
public static void Main(string[] args) { // set default options and parameter arguments string configfile = ""; string account = ""; string task = ""; string provider = ""; string gui = ""; bool help = false; bool list = false; bool debug = false; var p = new OptionSet () { { "c=", "configuration file to use. Default is provider.config in assembly directory", v => configfile = v }, { "g=", "gui to use, default is CGui (only for aqbanking)", v=> gui = v }, { "v", "increase verbosity, usefull for debugging", v=> debug = true }, { "p=", "provider to use, default is aqbanking", v => provider = v }, { "a=", "AccountIdentifier/Number to use", v => account = v }, { "t=", "task that should be performed. Can be getbalance or gettransactions", v => task = v }, { "l", "list all available accounts", v => list = v != null }, { "h|?|help", "shows this help", v => help = v != null }, }; try { // readin cmdline options p.Parse (args); if (help) { p.WriteOptionDescriptions (Console.Out); return; } // read in configuration or use default ProviderConfig conf; if (!string.IsNullOrEmpty (configfile)) conf = new ProviderConfig (configfile); else conf = new ProviderConfig (); // setup logging log4net.Appender.ConsoleAppender appender; appender = new log4net.Appender.ConsoleAppender (); appender.Layout = new log4net.Layout.PatternLayout ("%-4timestamp %-5level %logger %M %ndc - %message%newline"); log4net.Config.BasicConfigurator.Configure (appender); if (debug) appender.Threshold = log4net.Core.Level.Debug; else appender.Threshold = log4net.Core.Level.Warn; if (!string.IsNullOrEmpty (gui)) { conf.Settings.Remove ("Gui"); conf.Settings.Add (new KeyValueConfigurationElement ("Gui", gui)); } if (!string.IsNullOrEmpty (provider)) { conf.Settings.Remove ("Provider"); conf.Settings.Add (new KeyValueConfigurationElement ("Provider", provider)); } // init using (var banking = new BankingFactory().GetProvider(conf)) { // output account overview if (list) { foreach (var acc in banking.Accounts) acc.Print (); return; } // account requests (Balance, Transactions) // parameter sanitation IBankAccount b; if (string.IsNullOrEmpty (account)) { b = banking.Accounts.First (); } else b = banking.GetAccountByIdentifier (account); if (string.IsNullOrEmpty (task)) throw new Exception ("Task needed, specify via -t <task>"); switch (task) { case "gettransactions": List<ITransaction > l = banking.GetTransactions (b); foreach (ITransaction t in l) t.Print (); return; case "getbalance": var bal = banking.GetBalance (b); Console.WriteLine (bal); return; } } } catch (Exception e) { Console.WriteLine ("ERROR: " + e.Message); p.WriteOptionDescriptions (Console.Out); //throw e; } return; }
// private static void TestApamaLinux() // { // IDictionary<string, string> config = new Dictionary<string, string>(); // config.Add("gdb_exec", "/opt/gdb-7.2/bin/gdb"); // config.Add("gdb_log", "stream:stderr"); // // //config.Add("target", "extended-remote :1234"); // // config.Add("target", "run_local"); // // //config.Add("target", "attach_local"); // //config.Add("target-options", "14577"); // // //config.Add("file", "/home/andi/Documents/Uni/master-thesis/src/test_sources/gdb_reverse_debugging_test/gdb_reverse_debugging_test"); // config.Add("file", "/home/andi/hacklet/prog0-x64"); // // using(ITargetConnector connector = // GenericClassIdentifierFactory.CreateFromClassIdentifierOrType<ITargetConnector>("general/gdb")) // { // ISymbolTable symbolTable = (ISymbolTable)connector; // // connector.Setup(config); // connector.Connect(); // // ISymbolTableMethod main = symbolTable.FindMethod("main"); // IBreakpoint snapshotBreakpoint = connector.SetSoftwareBreakpoint(main, 0, "break_snapshot"); // IBreakpoint restoreBreakpoint = connector.SetSoftwareBreakpoint (0x4007b5, 0, "break_restore"); // //// IFuzzDescription barVar1_Description = new SingleValueFuzzDescription(bar.Parameters[0], //// new RandomByteGenerator( 4, 4, RandomByteGenerator.ByteType.All)); //// IFuzzDescription barVar1_readableChar = new PointerValueFuzzDescription(bar.Parameters[0], //// new RandomByteGenerator(5, 1000, RandomByteGenerator.ByteType.PrintableASCIINullTerminated)); // // connector.DebugContinue (); //// Registers r = ((Fuzzer.TargetConnectors.GDB.GDBConnector)connector).GetRegisters(); //// using(FileStream fSink = new FileStream("/home/andi/x86-64.registers", FileMode.CreateNew, FileAccess.Write)) //// { //// StreamHelper.WriteTypedStreamSerializable(r, fSink); //// } // ISymbolTableVariable argv = main.Parameters[1]; // ISymbolTableVariable dereferencedArgv = argv.Dereference(); // // DataGeneratorLogger datagenLogger = new DataGeneratorLogger("/home/andi/log"); //// IFuzzDescription fuzzArgv = new PointerValueFuzzDescription( //// dereferencedArgv, new RandomByteGenerator( //// 100, 10000, RandomByteGenerator.ByteType.PrintableASCIINullTerminated)); //// IStackFrameInfo stackFrameInfo = connector.GetStackFrameInfo(); // //// //// FuzzController fuzzController = new FuzzController( //// connector, //// snapshotBreakpoint, //// restoreBreakpoint, //// new LoggerCollection( //// new GDBLogger((GDBConnector)connector, "/home/andi/log"), //// new StackFrameLogger(connector, "/home/andi/log"), //// datagenLogger //// ), //// fuzzArgv); //// //// fuzzController.Fuzz(); // } // // // // Console.ReadLine(); // // } /// <summary> /// Initializes the logger /// </summary> private static void SetupLogging() { log4net.Appender.FileAppender fileAppender = new log4net.Appender.FileAppender(); fileAppender.Name = "FileAppender"; //fileAppender.Writer = new StreamWriter("/home/andi/fuzzer.log"); fileAppender.ImmediateFlush = true; fileAppender.Layout = new log4net.Layout.PatternLayout("[%date{dd.MM.yyyy HH:mm:ss,fff}]-%-5level-[%c]: %message%newline"); fileAppender.File = "/home/andi/fuzzer.log"; fileAppender.ActivateOptions(); log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); appender.Name = "ConsoleAppender"; appender.Layout = new log4net.Layout.PatternLayout("[%date{dd.MM.yyyy HH:mm:ss,fff}]-%-5level-[%c]: %message%newline"); log4net.Appender.ForwardingAppender forwarder = new log4net.Appender.ForwardingAppender(); forwarder.AddAppender(fileAppender); forwarder.AddAppender(appender); log4net.Config.BasicConfigurator.Configure(forwarder); //_logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); }
/// <summary> /// Initializes the logger /// </summary> private void SetupLogging() { if(ConfigurationManager.GetSection("log4net") == null) { log4net.Appender.ConsoleAppender appender = new log4net.Appender.ConsoleAppender(); appender.Name = "ConsoleAppender"; appender.Layout = new log4net.Layout.PatternLayout("[%date{dd.MM.yyyy HH:mm:ss,fff}]-%-5level-%t-[%c]: %message%newline"); log4net.Config.BasicConfigurator.Configure(appender); } else { log4net.Config.XmlConfigurator.Configure((XmlElement)ConfigurationManager.GetSection("log4net")); } _logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); }
public static void Main(string[] args) { // set default options and parameter arguments string configfile = ""; string account = ""; string task = ""; string provider = ""; string gui = ""; bool help = false; bool list = false; bool debug = false; var p = new OptionSet() { { "c=", "configuration file to use. Default is provider.config in assembly directory", v => configfile = v }, { "g=", "gui to use, default is CGui (only for aqbanking)", v => gui = v }, { "v", "increase verbosity, usefull for debugging", v => debug = true }, { "p=", "provider to use, default is aqbanking", v => provider = v }, { "a=", "AccountIdentifier/Number to use", v => account = v }, { "t=", "task that should be performed. Can be getbalance or gettransactions", v => task = v }, { "l", "list all available accounts", v => list = v != null }, { "h|?|help", "shows this help", v => help = v != null }, }; try { // readin cmdline options p.Parse(args); if (help) { p.WriteOptionDescriptions(Console.Out); return; } // read in configuration or use default ProviderConfig conf; if (!string.IsNullOrEmpty(configfile)) { conf = new ProviderConfig(configfile); } else { conf = new ProviderConfig(); } // setup logging log4net.Appender.ConsoleAppender appender; appender = new log4net.Appender.ConsoleAppender(); appender.Layout = new log4net.Layout.PatternLayout("%-4timestamp %-5level %logger %M %ndc - %message%newline"); log4net.Config.BasicConfigurator.Configure(appender); if (debug) { appender.Threshold = log4net.Core.Level.Debug; } else { appender.Threshold = log4net.Core.Level.Warn; } if (!string.IsNullOrEmpty(gui)) { conf.Settings.Remove("Gui"); conf.Settings.Add(new KeyValueConfigurationElement("Gui", gui)); } if (!string.IsNullOrEmpty(provider)) { conf.Settings.Remove("Provider"); conf.Settings.Add(new KeyValueConfigurationElement("Provider", provider)); } // init using (var banking = new BankingFactory().GetProvider(conf)) { // output account overview if (list) { foreach (var acc in banking.Accounts) { acc.Print(); } return; } // account requests (Balance, Transactions) // parameter sanitation IBankAccount b; if (string.IsNullOrEmpty(account)) { b = banking.Accounts.First(); } else { b = banking.GetAccountByIdentifier(account); } if (string.IsNullOrEmpty(task)) { throw new Exception("Task needed, specify via -t <task>"); } switch (task) { case "gettransactions": List <ITransaction> l = banking.GetTransactions(b); foreach (ITransaction t in l) { t.Print(); } return; case "getbalance": var bal = banking.GetBalance(b); Console.WriteLine(bal); return; } } } catch (Exception e) { Console.WriteLine("ERROR: " + e.Message); p.WriteOptionDescriptions(Console.Out); //throw e; } return; }