asp.net 获取服务器相关信息

简介:  #region 返回操作系统信息 .net版本 数据库大小  程序大小等方法        ///         /// 获取服务器系统信息        ///         public string GetOSVersion()        {            OperatingSystem os = Environment.
  #region  返回操作系统信息 .net版本 数据库大小  程序大小等方法
        
///   <summary>
        
///  获取服务器系统信息
        
///   </summary>
         public   string  GetOSVersion()
        {
            OperatingSystem os 
=  Environment.OSVersion;
            
return  os.ToString();
        }

        
///   <summary>
        
///  获取服务器.net版本
        
///   </summary>
        
///   <returns></returns>
         public   string  GetNetVersion()
        {
            
return  Environment.Version.ToString();
        }

        
///   <summary>
        
///  获取数据库大小
        
///   </summary>
        
///   <returns></returns>
         public   string  GetDataBaseLength()
        {
            
string  fileFullPath  =  HttpContext.Current.Server.MapPath( " ~/App_Data/WanJiaFilm.mdf " );
            FileInfo file 
=   new  FileInfo(fileFullPath);
            
return  (Convert.ToDouble(file.Length)  /   1024   /   1024 ).ToString( " N " +   " M " ;
        }

        
///   <summary>
        
///  递归文件目录,返回目录下所有文件大小
        
///   </summary>
        
///   <param name="d"> 传入的路径 </param>
        
///   <returns></returns>
         public   static   long  DirSize(DirectoryInfo d)
        {
            
long  Size  =   0 ;
            
//  所有文件大小.
            FileInfo[] fis  =  d.GetFiles();
            
foreach  (FileInfo fi  in  fis)
            {
                Size 
+=  fi.Length;
            }
            
//  遍历出当前目录的所有文件夹.
            DirectoryInfo[] dis  =  d.GetDirectories();
            
foreach  (DirectoryInfo di  in  dis)
            {
                Size 
+=  DirSize(di);    // 这就用到递归了,调用父方法,注意,这里并不是直接返回值,而是调用父返回来的
            }
            
return  (Size);
        }

        
///   <summary>
        
///  调用DirSize方法
        
///   </summary>
        
///   <returns></returns>
         public   string  GetDirSize()
        {
            
string  fullPath  =  HttpContext.Current.Server.MapPath( " ~/ " );
            DirectoryInfo d 
=   new  DirectoryInfo(fullPath);
            
return  (Convert.ToDouble(DirSize(d))  /   1024   /   1024 ).ToString( " N " +   " M " ;
        }
        
#endregion

        
#region  服务器相关属性
        
///   <summary>
        
///  服务器名称
        
///   </summary>
         public   string  MachineName
        {
            
get  {  return  HttpContext.Current.Server.MachineName; }
        }

        
///   <summary>
        
///  服务器操作系统
        
///   </summary>
         public   string  ServiveSystem
        {
            
get  {  return  GetOSVersion(); }
        }

        
///   <summary>
        
///  服务器IP地址
        
///   </summary>
         public   string  ServiceIP
        {
            
get  {  return  HttpContext.Current.Request.ServerVariables[ " LOCAL_ADDR " ]; }
        }

        
///   <summary>
        
///  网站端口号
        
///   </summary>
         public   string  ServicePort
        {
            
get  {  return  HttpContext.Current.Request.ServerVariables[ " SERVER_PORT " ]; }
        }

        
///   <summary>
        
///  服务器IIS版本
        
///   </summary>
         public   string  ServiceIIS
        {
            
get  {  return  HttpContext.Current.Request.ServerVariables[ " SERVER_SOFTWARE " ]; }
        }

        
///   <summary>
        
///  服务器.NET解释引擎版本
        
///   </summary>
         public   string  ServiceNetVersion
        {
            
get  {  return  GetNetVersion(); }
        }

        
///   <summary>
        
///  服务器时间
        
///   </summary>
         public   string  ServiceTime
        {
            
get  {  return  DateTime.Now.ToString(); }
        }

        
///   <summary>
        
///  网站绝对路径
        
///   </summary>
         public   string  ServicePath
        {
            
get  {  return  HttpContext.Current.Request.ServerVariables[ " PATH_TRANSLATED " ].ToString(); }
        }

        
///   <summary>
        
///  数据库大小
        
///   </summary>
         public   string  DataBaseLength
        {
            
get  {  return  GetDataBaseLength(); }
        }

        
///   <summary>
        
///  获取程序占用空间大小
        
///   </summary>
         public   string  GetSystemLength
        {
            
get  {  return  GetDirSize(); }
        }
        
#endregion
目录
相关文章
|
21天前
|
存储 关系型数据库 MySQL
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
194 2
|
22天前
|
缓存 监控 Linux
Python 实时获取Linux服务器信息
Python 实时获取Linux服务器信息
|
1月前
|
监控 网络安全 调度
Quartz.Net整合NetCore3.1,部署到IIS服务器上后台定时Job不被调度的解决方案
解决Quartz.NET在.NET Core 3.1应用中部署到IIS服务器上不被调度的问题,通常需要综合考虑应用配置、IIS设置、日志分析等多个方面。采用上述策略,结合细致的测试和监控,可以有效地提高定时任务的稳定性和可靠性。在实施任何更改后,务必进行充分的测试,以验证问题是否得到解决,并监控生产环境的表现,确保长期稳定性。
56 1
|
1月前
|
网络协议 Unix Linux
一个.NET开源、快速、低延迟的异步套接字服务器和客户端库
一个.NET开源、快速、低延迟的异步套接字服务器和客户端库
|
1月前
|
SQL 分布式计算 Hadoop
Hadoop-37 HBase集群 JavaAPI 操作3台云服务器 POM 实现增删改查调用操作 列族信息 扫描全表
Hadoop-37 HBase集群 JavaAPI 操作3台云服务器 POM 实现增删改查调用操作 列族信息 扫描全表
33 3
|
1月前
|
存储 数据采集 分布式计算
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
44 1
|
1月前
|
应用服务中间件 PHP Apache
PbootCMS提示错误信息“未检测到您服务器环境的sqlite3数据库扩展...”
PbootCMS提示错误信息“未检测到您服务器环境的sqlite3数据库扩展...”
|
2月前
|
存储 关系型数据库 MySQL
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
130 5
|
2月前
|
人工智能 运维 安全
专访浪潮信息:AI 原生时代,浪潮信息引领服务器操作系统创新 全面贡献龙蜥社区
分享了关于 AI 原生化趋势下服务器操作系统进化的思考,以及浪潮信息在龙蜥社区开源贡献的思路、成果与未来技术发展规划。
专访浪潮信息:AI 原生时代,浪潮信息引领服务器操作系统创新 全面贡献龙蜥社区
|
2月前
|
开发框架 JavaScript 前端开发