我们希望收集有关我们(例如 80% WinApp)应用程序的性能数据,包括在开发人员内部以及在客户站点外部。我们的目标如下:
- 它应该非常快
- 它应该是轻量级的
- 它应该允许在我们的应用程序中跟踪/计时和计算许多不同类型的事件。
- 它应该能够(有效地)收集大量数据,例如域、计算机名、用户、操作系统、内存等。
- 收集到的所有数据都应该是可分析的(一旦它被传输到我们内部的 BI 数据库),可以跨越上述所有维度。
理想情况下,它还可以在站点范围内或逐个用户的基础上进行相对配置,以控制:
- 如果甚至收集到这些性能指标
- 收集它们的详细程度
- 是否将结果报告给我们
我们一直在计划编写我们自己的系统来完成大部分工作。然后,我们将研究许多不同的“持久性”模型,包括“性能数据包”的二进制格式、XmlSerialization 和已经是 .NET 框架一部分的跟踪日志功能,仅举几例。
不过,在参与此之前,我想仔细检查一下“人群”提出的建议。我已经描述了我们正在尝试做的事情,以及我们目前的行动计划——但我正在寻找关于如何最好地解决手头问题的任何和所有建议。
提前致谢。