我们希望收集有关我们的应用程序(假设为80%的WinApp)的性能数据,无论是在内部开发中还是在客户现场。 我们的目标如下:
- 它应该非常快
- 它应该轻量级
- 它应该允许跟踪/计时和计数我们应用程序中许多不同类型的事件。
- 它应该能够高效地收集相当数量的数据,例如域,计算机名称,用户,操作系统,内存等。
- 收集的所有数据应该可以跨所有上述维度进行分析(一旦将其传输到我们的内部BI数据库中)。
理想情况下,它还应该相对可配置,在站点范围或用户范围内控制以下内容:
- 是否甚至收集这些性能指标
- 如何详细收集它们
- 是否向我们报告结果
我们一直计划编写自己的系统来完成大部分工作。 然后,我们正在查看许多不同的“持久性”模型,包括“性能数据包”的二进制格式,XmlSerialization以及已经成为.NET框架一部分的Trace Logging功能,这只是其中的一些。
然而,在着手进行此操作之前,我想再次确认看看“人群”建议什么。 我已经描述了我们要做的事情以及我们目前的行动计划 - 但我正在寻找有关如何最好解决手头问题的任何和所有建议。
提前致谢。