예제 #1
0
파일: Program.cs 프로젝트: lulzzz/CNCLib
        public static void Main(string[] args)
        {
            var logDir = Microsoft.Azure.Web.DataProtection.Util.IsAzureEnvironment()
                ? $"{BaseDirectory}/data/logs"
                : $"{Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)}/CNCLib.Server/logs";

            if (!Directory.Exists(logDir))
            {
                Directory.CreateDirectory(logDir);
            }

            GlobalDiagnosticsContext.Set("logDir", logDir);

            var logger = NLogBuilder.ConfigureNLog("nlog.config").GetCurrentClassLogger();

            #if DEBUG
            LogManager.ThrowExceptions = true;
            #endif
            try
            {
                ProgramUtilities.StartWebService(args, CreateHostBuilder);
            }
            catch (Exception e)
            {
                logger.Error(e);
                throw;
            }
        }
예제 #2
0
        public static void Main(string[] args)
        {
#if DEBUG
            LogManager.ThrowExceptions = true;
#endif
            string localAppData;
            if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
            {
                localAppData = "/var/log";
            }
            else
            {
                localAppData = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData);
                if (!Directory.Exists(localAppData) || ProgramUtilities.RunsAsService())
                {
                    // service user
                    localAppData = Environment.GetEnvironmentVariable("ProgramData");
                }
            }

            GlobalDiagnosticsContext.Set("logDir", $"{localAppData}/CNCLib.Serial.Server/logs");
            var logger = NLogBuilder.ConfigureNLog("NLog.config").GetCurrentClassLogger();
            try
            {
                logger.Info("Starting (Main)");
                ProgramUtilities.StartWebService(args, BuildWebHost);
            }
            catch (Exception e)
            {
                logger.Error(e);
                throw;
            }
        }
예제 #3
0
        public static void Main(string[] args)
        {
            GlobalDiagnosticsContext.Set("logDir", $"{Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)}/CNCLib.Web/logs");

            var logger = NLogBuilder.ConfigureNLog("nlog.config").GetCurrentClassLogger();

#if DEBUG
            LogManager.ThrowExceptions = true;
#endif
            try
            {
                ProgramUtilities.StartWebService(args, BuildWebHost);
            }
            catch (Exception e)
            {
                logger.Error(e);
                throw;
            }
        }