监控应用程序以跟踪生产中 .net 服务的性能?
有没有类似于 appdynamics.com 的东西来跟踪生产中 .net 服务的性能和错误?
我希望有一个易于集成的仪表板来监控
- 每分钟的调用次数
- 响应时间
- CPU/内存使用
- GC行为
- 异常
- 如果有任何超出范围的警报(实际响应时间与平均响应时间等)
Is there anything similar to appdynamics.com to track performance and errors of a .net service in production?
I'd love to have an easy to integrate dashboard to monitor
- Number of calls per minute
- Response time
- Cpu / Memory usage
- GC behaviours
- Exceptions
- Alerts if anything is out of scale (actual response time vs avg, etc..)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
看看 AlertGrid,它是一个用于跟踪应用程序的自定义指标/统计数据并发出警报的工具。您的应用程序必须将事件发送到 AlertGrid(通过简单的 API 进行非常简单的集成),然后您可以可视化这些事件中发送的指标并创建规则,例如“如果 [3,4,5] 中的指标 A > 30 和 B,则发送短信至 X 并发送电子邮件至 Y”。
Have a look at AlertGrid, it's a tool for tracing custom metrics/statistics of your app and raising alerts. Your app has to send events to AlertGrid (a very easy integration thru a simple API), then you can visualize metrics sent in those events and create rules e.g. "if metric A > 30 and B in [3,4,5] then send SMS to X and email to Y".
JetBrains 的 dotTrace Performance 应该可以做到这一切,也许不是警报,但它是商业软件,除非您运行开源软件。我正在开始学习它。 http://www.jetbrains.com/profiler/
JetBrains's dotTrace Performance should do all that, maybe not alerts, but it's commercial software unless you run an open source software. I'm starting to learn it. http://www.jetbrains.com/profiler/
您可以创建自己的自定义性能计数器 并使用它们。
所有异常也可以使用您自己的日志工具来处理,该日志工具处理性能计数器方面并在适当的窗口中记录异常事件日志也是如此。
据我记得,当我们实现它时,这并不是一项艰巨的任务,从那时起,您几乎可以使用任何工具来收集和分析数据,查找计数器之间的相关性等(最好有 CPU/磁盘/网络利用率和方法调用信息在 perflog 中的同一图表上。)
至于方法调用时间,可以通过使用 QueryPerformanceCounter 在自定义接收器中(如果您有远程处理解决方案)或某些自定义绑定(如果您使用 WCF)。
我想您可以轻松找到有关所有主题的优质资源 - 创建自定义性能计数器、使用 QPF 来计时方法调用、使用自定义源在系统日志中创建条目、使用自定义绑定用于各种目的等等 - 通过一些研究。
You can create your own custom performance counters and use them.
All exceptions can also be handled with your own log facility that handles the performance counter aspect and logs the exceptions in the appropriate windows event log as well.
It was not a gigantic undertaking as far as I remember when we implemented it and from that point on you can use almost any tool to collect and analyze data, find correlations between counters, etc. (It is nice to have e.g. CPU/Disk/network utilization and method call info on the same chart in perflog.)
As for method call times, it can be implemented by making use of QueryPerformanceCounter in a custom sink if you have a remoting solution or some custom binding if you are working with WCF.
I guess you can easily find great resources on all topics - creating a custom perf counter, using QPF to time method calls, creating entries in the system logs with custom sources, using custom bindings for various purposes, etc. - with some research.
AppDynamics 现在支持 .NET:http://appdynamics.com/solutions-dot-net-monitoring .php。
AppDynamics supports .NET now: http://appdynamics.com/solutions-dot-net-monitoring.php.