Exemple #1
0
        public ActionResult SystemInfo()
        {
            var model = new SystemInfoModel();

            model.NopVersion = NopVersion.CurrentVersion;
            try
            {
                model.OperatingSystem = Environment.OSVersion.VersionString;
            }
            catch (Exception) { }
            try
            {
                model.AspNetInfo = RuntimeEnvironment.GetSystemVersion();
            }
            catch (Exception) { }
            try
            {
                model.IsFullTrust = AppDomain.CurrentDomain.IsFullyTrusted.ToString();
            }
            catch (Exception) { }
            model.ServerTimeZone  = TimeZone.CurrentTimeZone.StandardName;
            model.ServerLocalTime = DateTime.Now;
            model.UtcTime         = DateTime.UtcNow;
            //Environment.GetEnvironmentVariable("USERNAME");
            foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
            {
                model.LoadedAssemblies.Add(new SystemInfoModel.LoadedAssembly()
                {
                    FullName = assembly.FullName,
                    //we cannot use Location property in medium trust
                    //Location = assembly.Location
                });
            }
            return(View(model));
        }
Exemple #2
0
        public ActionResult Index()
        {
            db.Database.Connection.Open();
            SystemInfoModel model = new SystemInfoModel();

            model.Databases = new List <DbConnectionModel>()
            {
                new DbConnectionModel {
                    Database   = db.Database.Connection.Database,
                    DataSource = db.Database.Connection.DataSource,
                    ServerInfo = db.Database.Connection.ServerVersion,
                    State      = db.Database.Connection.State.ToString()
                }
            };

            model.SideProcess = SideServicesManager.GetSideServicesInfo();

            try {
                model.WebSites = null;//IISWebServices();
            } catch { }

            db.Database.Connection.Close();

            return(View(model));
        }
Exemple #3
0
        public FileExportSettingsViewModel(IDataCollectSrv servPxy)
        {
            _serviceProxy       = servPxy;//data service
            _systemInfo         = new ObservableCollection <SystemInfoModel>();
            _systemInfoDetail   = new SystemInfoModel();
            UserAppName         = "";
            GetHostSystemInfo   = new RelayCommand(GetHostSystemInfoHandler);
            OpenTechSupportLink = new RelayCommand(OpenTechSupportLinkHandler);

            logger.Log(LogLevel.Info, "--- FileExportSettingsViewModel:loaded ---");

            // Get lists of settings objects
            try
            {
                //Devices = ModuleDataModel.Instance.getDeviceLists();
                logger.Log(LogLevel.Debug, "All lists of settings objects are loaded.");
            }
            catch (Exception ex)
            {
                logger.Log(LogLevel.Error, "EXCEPTION raised: " + ex.ToString());
            }

            // Set default values
            EnableDisableSettings = true;


            // We expect a message with some lists with changes.
            Messenger.Default.Register <UpdateSystemReportMessage>(this, UpdateSystemReportMessageHandler);

            logger.Log(LogLevel.Debug, "All default values are set. End of SerialCommViewModel() constructor!");

            Init();
        }
Exemple #4
0
        public ActionResult SystemInfo()
        {
            var model = new SystemInfoModel();

            model.NopVersion = NopVersion.CurrentVersion;
            try
            {
                model.OperatingSystem = Environment.OSVersion.VersionString;
            }
            catch (Exception) { }
            try
            {
                model.AspNetInfo = RuntimeEnvironment.GetSystemVersion();
            }
            catch (Exception) { }
            try
            {
                model.IsFullTrust = AppDomain.CurrentDomain.IsFullyTrusted.ToString();
            }
            catch (Exception) { }
            model.ServerTimeZone  = TimeZone.CurrentTimeZone.StandardName;
            model.ServerLocalTime = DateTime.Now;
            model.UtcTime         = DateTime.UtcNow;
            //Environment.GetEnvironmentVariable("USERNAME");
            return(View(model));
        }
Exemple #5
0
        /// <summary>
        /// Prepare system info model
        /// </summary>
        /// <param name="model">System info model</param>
        /// <returns>System info model</returns>
        public virtual SystemInfoModel PrepareSystemInfoModel(SystemInfoModel model)
        {
            if (model == null)
            {
                throw new ArgumentNullException(nameof(model));
            }

            model.NopVersion      = NopVersion.CurrentVersion;
            model.ServerTimeZone  = TimeZoneInfo.Local.StandardName;
            model.ServerLocalTime = DateTime.Now;
            model.UtcTime         = DateTime.UtcNow;
            model.CurrentUserTime = _dateTimeHelper.ConvertToUserTime(DateTime.Now);
            model.HttpHost        = _httpContextAccessor.HttpContext.Request.Headers[HeaderNames.Host];

            //ensure no exception is thrown
            try
            {
                model.OperatingSystem = Environment.OSVersion.VersionString;
                model.AspNetInfo      = RuntimeEnvironment.GetSystemVersion();
                model.IsFullTrust     = AppDomain.CurrentDomain.IsFullyTrusted.ToString();
            }
            catch { }

            foreach (var header in _httpContextAccessor.HttpContext.Request.Headers)
            {
                model.Headers.Add(new SystemInfoModel.HeaderModel
                {
                    Name  = header.Key,
                    Value = header.Value
                });
            }

            foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
            {
                var loadedAssemblyModel = new SystemInfoModel.LoadedAssembly
                {
                    FullName = assembly.FullName
                };

                //ensure no exception is thrown
                try
                {
                    loadedAssemblyModel.Location = assembly.IsDynamic ? null : assembly.Location;
                    loadedAssemblyModel.IsDebug  = assembly.GetCustomAttributes(typeof(DebuggableAttribute), false)
                                                   .FirstOrDefault() is DebuggableAttribute attribute && attribute.IsJITOptimizerDisabled;

                    //https://stackoverflow.com/questions/2050396/getting-the-date-of-a-net-assembly
                    //we use a simple method because the more Jeff Atwood's solution doesn't work anymore
                    //more info at https://blog.codinghorror.com/determining-build-date-the-hard-way/
                    loadedAssemblyModel.BuildDate = assembly.IsDynamic ? null : (DateTime?)TimeZoneInfo.ConvertTimeFromUtc(_fileProvider.GetLastWriteTimeUtc(assembly.Location), TimeZoneInfo.Local);
                }
                catch { }
                model.LoadedAssemblies.Add(loadedAssemblyModel);
            }

            return(model);
        }
Exemple #6
0
        /// <summary>
        /// Saves the specified note.
        /// </summary>
        /// <param name="dev">The note.</param>
        public void Save(SystemInfoModel data)
        {
            if (!_dataStore.Contains(data))
            {
                _dataStore.Add(data);
            }

            Serialize();
        }
Exemple #7
0
    protected void GetPageData()
    {
        new userManageDb();
        SystemInfoModel model = this.sia.GetModel(this.RecordID);

        this.LbSystemName.Text = model.SystemName;
        this.LbSignMan.Text    = model.SignMan;
        this.LbRemark.Text     = model.Remark;
        this.LbSignDate.Text   = model.SignDate.ToString("yyyy-MM-dd");
    }
Exemple #8
0
    protected void GetPageData()
    {
        SystemInfoModel model = this.sia.GetModel(this.RecordID);

        this.txtSystemName.Text   = model.SystemName;
        this.txtSignMan.Text      = model.SignMan;
        this.txtRemark.Text       = model.Remark;
        this.DBSignDate.Text      = model.SignDate.ToString("yyyy-MM-dd");
        this.chkNowSystem.Checked = (model.IsCurrent == "1");
    }
Exemple #9
0
        public ActionResult SystemInfo()
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManageMaintenance))
            {
                return(AccessDeniedView());
            }

            var model = new SystemInfoModel();

            try
            {
                model.OperatingSystem = Environment.OSVersion.VersionString;
            }
            catch (Exception)
            {
            }
            try
            {
                model.AspNetInfo = RuntimeEnvironment.GetSystemVersion();
            }
            catch (Exception)
            {
            }
            try
            {
                model.IsFullTrust = AppDomain.CurrentDomain.IsFullyTrusted.ToString();
            }
            catch (Exception)
            {
            }
            model.ServerTimeZone  = TimeZone.CurrentTimeZone.StandardName;
            model.ServerLocalTime = DateTime.Now;
            model.UtcTime         = DateTime.UtcNow;
            model.HttpHost        = _webHelper.ServerVariables("HTTP_HOST");
            foreach (var key in _httpContext.Request.ServerVariables.AllKeys)
            {
                model.ServerVariables.Add(new SystemInfoModel.ServerVariableModel
                {
                    Name  = key,
                    Value = _httpContext.Request.ServerVariables[key]
                });
            }
            //Environment.GetEnvironmentVariable("USERNAME");
            foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
            {
                model.LoadedAssemblies.Add(new SystemInfoModel.LoadedAssembly
                {
                    FullName = assembly.FullName
                               //we cannot use Location property in medium trust
                               //Location = assembly.Location
                });
            }
            return(View(model));
        }
Exemple #10
0
        public AdminInfoService()
        {
            var model = new SystemInfoModel()
            {
                LastDownload = new DateTime(1977, 02, 16),
                DataDir      = @"c:\temp",
            };

            Model = model;
            FetchData().Wait();
        }
Exemple #11
0
        public ActionResult SystemInfo()
        {
            var model = new SystemInfoModel();

            model.BaseEamVersion  = BaseEamVersion.CurrentVersion;
            model.ServerTimeZone  = TimeZone.CurrentTimeZone.StandardName;
            model.ServerLocalTime = DateTime.Now;
            model.UtcTime         = DateTime.UtcNow;
            model.CurrentUserTime = _dateTimeHelper.ConvertToUserTime(DateTime.Now);

            return(View(model));
        }
        public void TestParse()
        {
            SystemInfo TestParseModel = new SystemInfo();

            string virshSystemInfo = GetInputFile("../../../MockFiles/virshsysinfo.txt");

            Console.Write(virshSystemInfo);

            SystemInfoModel result = TestParseModel.Parse(virshSystemInfo);

            Assert.NotNull(result);
        }
        public DataCollectSrv()
        {
            uProcessId = "";
            //BinaryFile based==> initialize device info repository!!!! and get all listed devices !!!!!
            _dataInfoRepository = new SystemInfoRepository("ExcaliburSystemReport");
            _data = new ObservableCollection <SystemInfoModel>(_dataInfoRepository.GetAllData());

            FullDataReport = new SystemInfoModel();
            FullDataReport.DeviceDriverDataList = new List <DeviceManagerDataModel>();
            FullDataReport.ModuleDataList       = new List <ModuleDataModel>();
            FullDataReport.osDataModel          = new OsDataModel();


            Init();
        }
        public IActionResult SystemInfo()
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManageMaintenance))
            {
                return(AccessDeniedView());
            }

            var model = new SystemInfoModel();

            model.GrandVersion = GrandVersion.CurrentVersion;
            try
            {
                model.OperatingSystem = RuntimeInformation.OSDescription;
            }
            catch (Exception) { }
            try
            {
                model.AspNetInfo = RuntimeEnvironment.GetSystemVersion();
            }
            catch (Exception) { }

            var machineNameProvider = EngineContext.Current.Resolve <IMachineNameProvider>();

            model.MachineName = machineNameProvider.GetMachineName();

            model.ServerTimeZone  = TimeZoneInfo.Local.StandardName;
            model.ServerLocalTime = DateTime.Now;
            model.UtcTime         = DateTime.UtcNow;
            foreach (var header in HttpContext.Request.Headers)
            {
                model.ServerVariables.Add(new SystemInfoModel.ServerVariableModel
                {
                    Name  = header.Key,
                    Value = header.Value
                });
            }
            foreach (var assembly in System.AppDomain.CurrentDomain.GetAssemblies())
            {
                model.LoadedAssemblies.Add(new SystemInfoModel.LoadedAssembly
                {
                    FullName = assembly.FullName,
                });
            }
            return(View(model));
        }
Exemple #15
0
        //
        // GET: /SystemInfo/
        public ActionResult SystemInfo()
        {
            if (!IsLogged())
            {
                return(BackToLogin());
            }
            var model = new SystemInfoModel();

            try
            {
                model.OperatingSystem = Environment.OSVersion.VersionString;
            }
            catch (Exception ex) {
                _logger.Error(ex);
            }
            try
            {
                model.AspNetInfo = RuntimeEnvironment.GetSystemVersion();
            }
            catch (Exception ex) {
                _logger.Error(ex);
            }
            try
            {
                model.IsFullTrust = AppDomain.CurrentDomain.IsFullyTrusted.ToString();
            }
            catch (Exception ex) {
                _logger.Error(ex);
            }
            model.ServerTimeZone  = TimeZone.CurrentTimeZone.StandardName;
            model.ServerLocalTime = DateTime.Now.ToString("F");
            model.UtcTime         = DateTime.UtcNow.ToString("F");
            model.HttpHost        = this.Request.ServerVariables["HTTP_HOST"];
            ////Environment.GetEnvironmentVariable("USERNAME");
            //foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
            //{
            //    model.LoadedAssemblies.Add(new SystemInfoModel.LoadedAssembly
            //    {
            //        FullName = assembly.FullName,
            //        //we cannot use Location property in medium trust
            //        //Location = assembly.Location
            //    });
            //}
            return(View(model));
        }
        public ActionResult SystemInfo()
        {
            var model = new SystemInfoModel();

            model.AppVersion = SmartStoreVersion.CurrentFullVersion;
            try
            {
                model.OperatingSystem = Environment.OSVersion.VersionString;
            }
            catch (Exception) { }
            try
            {
                model.AspNetInfo = RuntimeEnvironment.GetSystemVersion();
            }
            catch (Exception) { }
            try
            {
                model.IsFullTrust = AppDomain.CurrentDomain.IsFullyTrusted.ToString();
            }
            catch (Exception) { }
            model.ServerTimeZone  = TimeZone.CurrentTimeZone.StandardName;
            model.ServerLocalTime = DateTime.Now;
            model.UtcTime         = DateTime.UtcNow;
            model.HttpHost        = _webHelper.ServerVariables("HTTP_HOST");
            //Environment.GetEnvironmentVariable("USERNAME");

            try
            {
                var mbSize = _dbContext.SqlQuery <decimal>("Select Sum(size)/128.0 From sysfiles").FirstOrDefault();

                model.DatabaseSize = Convert.ToDouble(mbSize);
            }
            catch (Exception) {     }

            foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
            {
                model.LoadedAssemblies.Add(new SystemInfoModel.LoadedAssembly()
                {
                    FullName = assembly.FullName,
                    //we cannot use Location property in medium trust
                    //Location = assembly.Location
                });
            }
            return(View(model));
        }
Exemple #17
0
        public int Update(SystemInfoModel model)
        {
            StringBuilder builder = new StringBuilder();

            builder.Append("update OA_System_Info set ");
            builder.Append("AuditState=" + model.AuditState + ",");
            builder.Append("SystemType='" + model.SystemType + "',");
            builder.Append("CorpCode='" + model.CorpCode + "',");
            builder.Append("UserCode='" + model.UserCode + "',");
            builder.Append("RecordDate='" + model.RecordDate + "',");
            builder.Append("SystemName='" + model.SystemName + "',");
            builder.Append("SystemCode='" + model.SystemCode + "',");
            builder.Append("SignMan='" + model.SignMan + "',");
            builder.Append("SignDate='" + model.SignDate + "',");
            builder.Append("IsCurrent='" + model.IsCurrent + "',");
            builder.Append("Remark='" + model.Remark + "'");
            builder.Append(" where RecordID='" + model.RecordID + "'");
            return(publicDbOpClass.ExecSqlString(builder.ToString()));
        }
Exemple #18
0
        public IActionResult SystemInfo()
        {
            var model = new SystemInfoModel();

            model.GrandVersion = GrandVersion.CurrentVersion;
            try
            {
                model.OperatingSystem = RuntimeInformation.OSDescription;
            }
            catch (Exception) { }
            try
            {
                model.AspNetInfo = RuntimeEnvironment.GetSystemVersion();
            }
            catch (Exception) { }

            var machineNameProvider = _serviceProvider.GetRequiredService <IMachineNameProvider>();

            model.MachineName = machineNameProvider.GetMachineName();

            model.ServerTimeZone  = TimeZoneInfo.Local.StandardName;
            model.ServerLocalTime = DateTime.Now;
            model.ApplicationTime = _dateTimeHelper.ConvertToUserTime(DateTime.UtcNow, TimeZoneInfo.Utc, _dateTimeHelper.DefaultStoreTimeZone);
            model.UtcTime         = DateTime.UtcNow;
            foreach (var header in HttpContext.Request.Headers)
            {
                model.ServerVariables.Add(new SystemInfoModel.ServerVariableModel
                {
                    Name  = header.Key,
                    Value = header.Value
                });
            }
            foreach (var assembly in System.AppDomain.CurrentDomain.GetAssemblies())
            {
                model.LoadedAssemblies.Add(new SystemInfoModel.LoadedAssembly
                {
                    FullName = assembly.FullName,
                });
            }
            return(View(model));
        }
Exemple #19
0
        public SystemInfoModel GetModel(Guid RecordID)
        {
            StringBuilder builder = new StringBuilder();

            builder.Append("select * from OA_System_Info ");
            builder.Append(" where RecordID='" + RecordID + "'");
            SystemInfoModel model = new SystemInfoModel();
            DataSet         set   = publicDbOpClass.DataSetQuary(builder.ToString());

            model.RecordID = RecordID;
            if (set.Tables[0].Rows.Count <= 0)
            {
                return(null);
            }
            if (set.Tables[0].Rows[0]["ClassID"].ToString() != "")
            {
                model.ClassID = int.Parse(set.Tables[0].Rows[0]["ClassID"].ToString());
            }
            if (set.Tables[0].Rows[0]["AuditState"].ToString() != "")
            {
                model.AuditState = int.Parse(set.Tables[0].Rows[0]["AuditState"].ToString());
            }
            model.SystemType = set.Tables[0].Rows[0]["SystemType"].ToString();
            model.CorpCode   = set.Tables[0].Rows[0]["CorpCode"].ToString();
            model.UserCode   = set.Tables[0].Rows[0]["UserCode"].ToString();
            model.IsCurrent  = set.Tables[0].Rows[0]["IsCurrent"].ToString();
            if (set.Tables[0].Rows[0]["RecordDate"].ToString() != "")
            {
                model.RecordDate = DateTime.Parse(set.Tables[0].Rows[0]["RecordDate"].ToString());
            }
            model.SystemName = set.Tables[0].Rows[0]["SystemName"].ToString();
            model.SystemCode = set.Tables[0].Rows[0]["SystemCode"].ToString();
            model.SignMan    = set.Tables[0].Rows[0]["SignMan"].ToString();
            if (set.Tables[0].Rows[0]["SignDate"].ToString() != "")
            {
                model.SignDate = DateTime.Parse(set.Tables[0].Rows[0]["SignDate"].ToString());
            }
            model.Remark = set.Tables[0].Rows[0]["Remark"].ToString();
            return(model);
        }
Exemple #20
0
        /// <summary>
        /// 获取系统信息
        /// </summary>
        /// <param name="domain"></param>
        /// <returns></returns>
        public SystemInfoModel GetSystemInfo(HostModel domain)
        {
            var infoTask = SendAsync <SystemInfoModel>(domain.Host + "/WebSite/SystemInfo");

            infoTask.Wait();
            var model = infoTask.Result;

            if (model == null)
            {
                model = new SystemInfoModel();
            }
            var aliveTask = KeepAlive(domain.Host);

            aliveTask.Wait();
            var aliveResult = aliveTask.Result;

            model.ETime    = aliveResult.etime;
            model.IsAlive  = aliveResult.isAlive;
            model.HttpHost = domain.Host;
            model.HostName = domain.Name;
            return(model);
        }
 protected void btnAdd_Click(object sender, EventArgs e)
 {
     if (this.OperateType == "add")
     {
         SystemInfoModel sIM = this.GetSIM();
         int             num = this.sia.Add(sIM);
         if (num > 0)
         {
             this.JS.Text = "alert('添加成功!');";
             this.JS.Text = "returnValue=true;window.close();";
         }
     }
     if (this.OperateType == "edit")
     {
         SystemInfoModel systemInfoModel = this.GetSystemInfoModel();
         int             num             = this.sia.Update(systemInfoModel);
         if (num > 0)
         {
             this.JS.Text = "alert('修改成功!');";
             this.JS.Text = "returnValue=true;window.close();";
         }
     }
 }
        public Task <SystemInfoModel> PrepareSystemInfoModel(SystemInfoModel model)
        {
            if (model == null)
            {
                throw new ArgumentNullException(nameof(model));
            }

            model.Version         = Core.Version.CurrentVersion;
            model.ServerTimeZone  = TimeZoneInfo.Local.StandardName;
            model.ServerLocalTime = DateTime.Now;
            model.UtcTime         = DateTime.UtcNow;
            model.CurrentUserTime = _dateTimeHelper.ConvertToUserTime(DateTime.Now);
            model.HttpHost        = _httpContextAccessor.HttpContext.Request.Headers[HeaderNames.Host];

            //ensure no exception is thrown
            try
            {
                model.OperatingSystem = Environment.OSVersion.VersionString;
                model.AspNetInfo      = RuntimeEnvironment.GetSystemVersion();
                model.IsFullTrust     = AppDomain.CurrentDomain.IsFullyTrusted.ToString();
            }
            catch
            {
                // ignored
            }

            foreach (var header in _httpContextAccessor.HttpContext.Request.Headers)
            {
                model.Headers.Add(new SystemInfoModel.HeaderModel
                {
                    Name  = header.Key,
                    Value = header.Value
                });
            }

            return(Task.FromResult(model));
        }
Exemple #23
0
        public int Add(SystemInfoModel model)
        {
            StringBuilder builder = new StringBuilder();

            builder.Append("insert into OA_System_Info(");
            builder.Append("RecordID,ClassID,AuditState,SystemType,CorpCode,UserCode,RecordDate,SystemName,SystemCode,SignMan,SignDate,isCurrent,Remark");
            builder.Append(")");
            builder.Append(" values (");
            builder.Append("'" + model.RecordID + "',");
            builder.Append(model.ClassID + ",");
            builder.Append(model.AuditState + ",");
            builder.Append("'" + model.SystemType + "',");
            builder.Append("'" + model.CorpCode + "',");
            builder.Append("'" + model.UserCode + "',");
            builder.Append("'" + model.RecordDate + "',");
            builder.Append("'" + model.SystemName + "',");
            builder.Append("'" + model.SystemCode + "',");
            builder.Append("'" + model.SignMan + "',");
            builder.Append("'" + model.SignDate + "',");
            builder.Append("'" + model.IsCurrent + "',");
            builder.Append("'" + model.Remark + "'");
            builder.Append(")");
            return(publicDbOpClass.ExecSqlString(builder.ToString()));
        }
        public ActionResult SystemInfo()
        {
            var model = new SystemInfoModel();

            model.AppVersion = SmartStoreVersion.CurrentFullVersion;

            try
            {
                model.OperatingSystem = "{0} (x{1})".FormatInvariant(Environment.OSVersion.VersionString, Environment.Is64BitProcess ? "64" : "32");
            }
            catch { }
            try
            {
                model.AspNetInfo = RuntimeEnvironment.GetSystemVersion();
            }
            catch { }
            try
            {
                model.IsFullTrust = AppDomain.CurrentDomain.IsFullyTrusted.ToString();
            }
            catch { }

            model.ServerTimeZone  = TimeZone.CurrentTimeZone.StandardName;
            model.ServerLocalTime = DateTime.Now;
            model.UtcTime         = DateTime.UtcNow;
            model.HttpHost        = _services.WebHelper.ServerVariables("HTTP_HOST");

            // DB size & used RAM
            try
            {
                var mbSize = _services.DbContext.SqlQuery <decimal>("Select Sum(size)/128.0 From sysfiles").FirstOrDefault();
                model.DatabaseSize = Convert.ToInt64(mbSize * 1024 * 1024);

                model.UsedMemorySize = GetPrivateBytes();
            }
            catch { }

            // DB settings
            try
            {
                if (DataSettings.Current.IsValid())
                {
                    model.DataProviderFriendlyName = DataSettings.Current.ProviderFriendlyName;
                    model.ShrinkDatabaseEnabled    = _services.Permissions.Authorize(Permissions.System.Maintenance.Read) && DataSettings.Current.IsSqlServer;
                }
            }
            catch { }

            // Loaded assemblies
            try
            {
                var assembly = Assembly.GetExecutingAssembly();
                var fi       = new FileInfo(assembly.Location);
                model.AppDate = fi.LastWriteTime.ToLocalTime();
            }
            catch { }

            foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
            {
                model.LoadedAssemblies.Add(new SystemInfoModel.LoadedAssembly
                {
                    FullName = assembly.FullName,
                    //we cannot use Location property in medium trust
                    //Location = assembly.Location
                });
            }

            // MemCache stats
            model.MemoryCacheStats = GetMemoryCacheStats();

            return(View(model));
        }
Exemple #25
0
        public virtual ActionResult SystemInfo()
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManageMaintenance))
            {
                return(AccessDeniedView());
            }

            var model = new SystemInfoModel();

            model.NopVersion = NopVersion.CurrentVersion;
            try
            {
                model.OperatingSystem = Environment.OSVersion.VersionString;
            }
            catch (Exception) { }
            try
            {
                model.AspNetInfo = RuntimeEnvironment.GetSystemVersion();
            }
            catch (Exception) { }
            try
            {
                model.IsFullTrust = AppDomain.CurrentDomain.IsFullyTrusted.ToString();
            }
            catch (Exception) { }
            model.ServerTimeZone  = TimeZone.CurrentTimeZone.StandardName;
            model.ServerLocalTime = DateTime.Now;
            model.UtcTime         = DateTime.UtcNow;
            model.CurrentUserTime = _dateTimeHelper.ConvertToUserTime(DateTime.Now);
            model.HttpHost        = _webHelper.ServerVariables("HTTP_HOST");
            foreach (var key in _httpContext.Request.ServerVariables.AllKeys)
            {
                if (key.StartsWith("ALL_"))
                {
                    continue;
                }

                model.ServerVariables.Add(new SystemInfoModel.ServerVariableModel
                {
                    Name  = key,
                    Value = _httpContext.Request.ServerVariables[key]
                });
            }
            //Environment.GetEnvironmentVariable("USERNAME");

            var trustLevel = CommonHelper.GetTrustLevel();

            foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
            {
                var loadedAssembly = new SystemInfoModel.LoadedAssembly
                {
                    FullName = assembly.FullName,
                };
                //ensure no exception is thrown
                try
                {
                    var canGetLocation = trustLevel >= AspNetHostingPermissionLevel.High && !assembly.IsDynamic;
                    loadedAssembly.Location  = canGetLocation ? assembly.Location : null;
                    loadedAssembly.IsDebug   = IsDebugAssembly(assembly);
                    loadedAssembly.BuildDate = canGetLocation ? (DateTime?)GetBuildDate(assembly, TimeZoneInfo.Local) : null;
                }
                catch (Exception) { }
                model.LoadedAssemblies.Add(loadedAssembly);
            }

            return(View(model));
        }
Exemple #26
0
        public ActionResult SystemInfo()
        {
            SystemInfoModel model = new SystemInfoModel(ServiceSystem.GetServerInfo());

            return(View(model));
        }
Exemple #27
0
        /// <summary>
        /// Deletes the specified note.
        /// </summary>
        /// <param name="note">The note.</param>
        public void Delete(SystemInfoModel data)
        {
            _dataStore.Remove(data);

            Serialize();
        }
Exemple #28
0
        /// <summary>
        /// Prepare system info model
        /// </summary>
        /// <param name="model">System info model</param>
        /// <returns>
        /// A task that represents the asynchronous operation
        /// The task result contains the system info model
        /// </returns>
        public virtual async Task<SystemInfoModel> PrepareSystemInfoModelAsync(SystemInfoModel model)
        {
            if (model == null)
                throw new ArgumentNullException(nameof(model));

            model.NopVersion = NopVersion.FULL_VERSION;
            model.ServerTimeZone = TimeZoneInfo.Local.StandardName;
            model.ServerLocalTime = DateTime.Now;
            model.UtcTime = DateTime.UtcNow;
            model.CurrentUserTime = await _dateTimeHelper.ConvertToUserTimeAsync(DateTime.Now);
            model.HttpHost = _httpContextAccessor.HttpContext.Request.Headers[HeaderNames.Host];

            //ensure no exception is thrown
            try
            {
                model.OperatingSystem = Environment.OSVersion.VersionString;
                model.AspNetInfo = RuntimeInformation.FrameworkDescription;
                model.IsFullTrust = AppDomain.CurrentDomain.IsFullyTrusted;
            }
            catch
            {
                // ignored
            }

            foreach (var header in _httpContextAccessor.HttpContext.Request.Headers)
            {
                model.Headers.Add(new SystemInfoModel.HeaderModel
                {
                    Name = header.Key,
                    Value = header.Value
                });
            }

            foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
            {
                var loadedAssemblyModel = new SystemInfoModel.LoadedAssembly
                {
                    FullName = assembly.FullName
                };

                //ensure no exception is thrown
                try
                {
                    loadedAssemblyModel.Location = assembly.IsDynamic ? null : assembly.Location;
                    loadedAssemblyModel.IsDebug = assembly.GetCustomAttributes(typeof(DebuggableAttribute), false)
                        .FirstOrDefault() is DebuggableAttribute attribute && attribute.IsJITOptimizerDisabled;

                    //https://stackoverflow.com/questions/2050396/getting-the-date-of-a-net-assembly
                    //we use a simple method because the more Jeff Atwood's solution doesn't work anymore 
                    //more info at https://blog.codinghorror.com/determining-build-date-the-hard-way/
                    loadedAssemblyModel.BuildDate = assembly.IsDynamic ? null : (DateTime?)TimeZoneInfo.ConvertTimeFromUtc(_fileProvider.GetLastWriteTimeUtc(assembly.Location), TimeZoneInfo.Local);

                }
                catch
                {
                    // ignored
                }

                model.LoadedAssemblies.Add(loadedAssemblyModel);
            }


            var currentStaticCacheManagerName = _staticCacheManager.GetType().Name;

            if (_appSettings.DistributedCacheConfig.Enabled)
                currentStaticCacheManagerName +=
                    $"({await _localizationService.GetLocalizedEnumAsync(_appSettings.DistributedCacheConfig.DistributedCacheType)})";

            model.CurrentStaticCacheManager = currentStaticCacheManagerName;

            model.AzureBlobStorageEnabled = _appSettings.AzureBlobConfig.Enabled;

            return model;
        }
        public ActionResult SystemInfo()
        {
            var model = new SystemInfoModel();

            model.AppVersion = SmartStoreVersion.CurrentFullVersion;

            try
            {
                model.OperatingSystem = Environment.OSVersion.VersionString;
            }
            catch (Exception) { }
            try
            {
                model.AspNetInfo = RuntimeEnvironment.GetSystemVersion();
            }
            catch (Exception) { }
            try
            {
                model.IsFullTrust = AppDomain.CurrentDomain.IsFullyTrusted.ToString();
            }
            catch (Exception) { }

            model.ServerTimeZone  = TimeZone.CurrentTimeZone.StandardName;
            model.ServerLocalTime = DateTime.Now;
            model.UtcTime         = DateTime.UtcNow;
            model.HttpHost        = _services.WebHelper.ServerVariables("HTTP_HOST");

            try
            {
                var mbSize = _services.DbContext.SqlQuery <decimal>("Select Sum(size)/128.0 From sysfiles").FirstOrDefault();
                model.DatabaseSize = Convert.ToInt64(mbSize * 1024 * 1024);

                model.UsedMemorySize = System.Diagnostics.Process.GetCurrentProcess().PrivateMemorySize64;
            }
            catch { }

            try
            {
                if (DataSettings.Current.IsValid())
                {
                    model.DataProviderFriendlyName = DataSettings.Current.ProviderFriendlyName;
                    model.ShrinkDatabaseEnabled    = _services.Permissions.Authorize(StandardPermissionProvider.ManageMaintenance) && DataSettings.Current.IsSqlServer;
                }
            }
            catch { }

            try
            {
                var assembly = Assembly.GetExecutingAssembly();
                var fi       = new FileInfo(assembly.Location);
                model.AppDate = fi.LastWriteTime.ToLocalTime();
            }
            catch { }

            foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
            {
                model.LoadedAssemblies.Add(new SystemInfoModel.LoadedAssembly()
                {
                    FullName = assembly.FullName,
                    //we cannot use Location property in medium trust
                    //Location = assembly.Location
                });
            }
            return(View(model));
        }
Exemple #30
0
        public virtual IActionResult SystemInfo()
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManageMaintenance))
            {
                return(AccessDeniedView());
            }

            var model = new SystemInfoModel
            {
                NopVersion = NopVersion.CurrentVersion
            };

            try
            {
                model.OperatingSystem = Environment.OSVersion.VersionString;
            }
            catch (Exception) { }
            try
            {
                model.AspNetInfo = RuntimeEnvironment.GetSystemVersion();
            }
            catch (Exception) { }
            try
            {
                model.IsFullTrust = AppDomain.CurrentDomain.IsFullyTrusted.ToString();
            }
            catch (Exception) { }
            model.ServerTimeZone  = TimeZone.CurrentTimeZone.StandardName;
            model.ServerLocalTime = DateTime.Now;
            model.UtcTime         = DateTime.UtcNow;
            model.CurrentUserTime = _dateTimeHelper.ConvertToUserTime(DateTime.Now);
            model.HttpHost        = HttpContext.Request.Headers[HeaderNames.Host];

            foreach (var header in HttpContext.Request.Headers)
            {
                model.Headers.Add(new SystemInfoModel.HeaderModel
                {
                    Name  = header.Key,
                    Value = header.Value
                });
            }

            foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
            {
                var loadedAssembly = new SystemInfoModel.LoadedAssembly
                {
                    FullName = assembly.FullName,
                };
                //ensure no exception is thrown
                try
                {
                    loadedAssembly.Location = assembly.IsDynamic ? null : assembly.Location;
                    loadedAssembly.IsDebug  = IsDebugAssembly(assembly);

                    //https://stackoverflow.com/questions/2050396/getting-the-date-of-a-net-assembly
                    //we use a simple method because the more Jeff Atwood's solution doesn't work anymore (more info at https://blog.codinghorror.com/determining-build-date-the-hard-way/)
                    loadedAssembly.BuildDate = assembly.IsDynamic ? null : (DateTime?)TimeZoneInfo.ConvertTimeFromUtc(System.IO.File.GetLastWriteTimeUtc(assembly.Location), TimeZoneInfo.Local);
                }
                catch (Exception) { }
                model.LoadedAssemblies.Add(loadedAssembly);
            }

            return(View(model));
        }