c# - 获取跨平台系统健康 ASP.Net Core

标签 c# ubuntu asp.net-core health-monitoring

我正在开发一个 ASP.Net Core MVC 应用程序,管理员例如我应该能够看到系统信息,例如:

  1. 当前进程的 CPU 使用率
  2. 总 CPU 使用率
  3. 可用的总系统内存
  4. 当前应用程序使用的总系统内存
  5. 系统内存总使用量
  6. 总可用磁盘空间
  7. 使用的总磁盘空间

在挖掘了几个小时之后,我只找到了使用一些性能计数器或系统查询的解决方案。问题是它们中的大多数只能在 Windows 下工作,但我需要它们在 Linux 上工作,具体来说是 Ubuntu 18.10,才能工作。

最佳答案

您只需执行 linux 命令行相关程序即可收集这些信息。您甚至可以创建一个 shell 脚本来一次性收集所有这些信息,并以您可以处理的格式返回它们。

以下命令应该足以收集所有信息。

  • ps -aux:每个进程的 cpu 和内存消耗
  • free:整体内存消耗
  • df:整体磁盘消耗

关于c# - 获取跨平台系统健康 ASP.Net Core,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56456542/

相关文章:

c# - 将 dapper 与 JOIN 一起使用

c# - .Net Core/ASP5 应用程序的构建路径是什么?

c# - ValueTask 有 ContinueWith 吗?

c# - 加载相关对象时出现异常。 Entity Framework

c# - Ameritrade API 流式 future - 符号命名约定?

github 在 ubuntu 中寻找应用程序?

c# - WebView - 在每个请求上定义 User-Agent

perl - Sublime 3 (Ubuntu) 中的交互式 Perl 编程

ubuntu - 如何在 ZFS 数据集中创建卷并附加到 LXD 容器?

asp.net-core - Microsoft.EntityFrameworkCore.Sqlite.Core和Microsoft.EntityFrameworkCore.Sqlite程序集之间有什么区别?