Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#.NET内核中的访问信号器性能计数器_C#_Asp.net_.net_Asp.net Core_Signalr - Fatal编程技术网

C#.NET内核中的访问信号器性能计数器

C#.NET内核中的访问信号器性能计数器,c#,asp.net,.net,asp.net-core,signalr,C#,Asp.net,.net,Asp.net Core,Signalr,我无法访问信号器性能计数器;如何使用C#访问.NET内核中SignalR的性能计数器? 我已通过安装成功 signalr.exe ipc 但是我还没有找到任何方法从我的程序中访问它们,我假设是通过PerformanceCounter类。 文档对于如何在安装它们之后继续以编程方式使用它们完全没有帮助 我认为我可以像任何性能计数器一样使用它们 Process p = <My process>; PerformanceCounter totalErrorsCounter= new Perf

我无法访问信号器性能计数器;如何使用C#访问.NET内核中SignalR的性能计数器? 我已通过安装成功

signalr.exe ipc

但是我还没有找到任何方法从我的程序中访问它们,我假设是通过
PerformanceCounter
类。 文档对于如何在安装它们之后继续以编程方式使用它们完全没有帮助

我认为我可以像任何性能计数器一样使用它们

Process p = <My process>;
PerformanceCounter totalErrorsCounter= new PerformanceCounter("Process", "Message Bus Busy Workers", p.ProcessName);

我哪里错了?

文档很清楚,错误也很清楚,
过程
类别不包含信号计数器<代码>进程用于进程指标,如CPU、RAM使用率,如
%处理器时间
%用户时间
页面错误/秒
。如果在计算机上打开性能监视器,您将看到所有已安装的类别和计数器。
signar.exe
工具适用于旧的signar,而不是ASP.NET Core signar。您正在尝试读取现有ASP.NET Signal应用程序的计数器吗?或者读取SignalR Core的指标?如果您想收集性能计数器,可以在性能监视器中创建“数据收集器集”,定期收集计数器并将其保存到文件中。您的应用程序只需要定期获取新文件。您可以指定用于控制数据收集何时停止、空间不足时如何操作或将旧文件移动/复制到其他文件夹的规则。存储目标可以是远程文件共享,允许快速、方便地监视多台服务器。一旦您找到其他地方开始使用,文档可以作为参考。我们正在使用ASP.NET核心信号器。您是说ASP.NET核心信号器没有性能计数器吗?我必须在代码中创建自己的类别吗?我对监视SignalR消息总线主题和相关的.Perf计数器很感兴趣,它是Windows的一项基本功能,比简单的性能监视器视图功能强大得多。您可以在性能监视器中找到所有已安装的计数器。不管怎样,你都应该检查一下,看看它们是否安装正确,当前的流量是多少等等。ASP.NET内核是跨平台的,Linux没有类似于perf计数器的功能——事实上有多个库,比如LTTng和DTrace。
System.InvalidOperationException: 'Could not locate Performance Counter with specified category name 'Process', counter name 'Message Bus Busy Workers'.'