我维护着几个 Web 应用程序,我想添加一些“不错的”报告/分析页面。构建一次就足够简单了(例如使用 flot 或类似的绘图库)但不知何故似乎应该有一个报告生成库,它“只是”生成必要的图表而无需太多编码+提供一些过滤能力。
有一些工具可用,但出于某种原因从来没有一个合适的工具:
- 必须在 Linux 上工作
- 首选开源,但闭源也可以,只要定价模式也适合小型安装
- 需要 Python API(或使用标准网络协议(protocol)的外部服务)
我意识到这并不是一个独特的问题,但我找不到具有相同范围的其他 stackoverflow 问题。任何指点表示赞赏。
更新(2012-08-09,15:10 UTC):我意识到我没有提出更多要求/愿望:
- 用于访问报告的网络界面
- 访问控制:每个用户只能获得关于他自己数据的报告(对于图书馆来说很简单,对于外部服务器来说可能很难)
- 过滤:我需要根据某些参数(例如“仅此时间范围内的事件”、“仅在某地 X”)对值进行交互式过滤。
请您参考如下方法:
Windward * 是一家软件公司,它提供的解决方案似乎可以满足您的大部分需求。他们通过 Jython 或 RESTful API(分别是他们的 Java Engine 和 Javelin)提供 Python API,他们的主要优势是模板设计是在 Microsoft Office 中完成的,因此报告可以非常灵活并且易于组合(大多数人们已经知道如何使用 Word,因此学习曲线也比其他解决方案少得多)。您可以添加在运行时获取参数或即时更改的动态过滤器,您可以输出多种格式,包括 HTML 和 PDF,并且它几乎适用于所有主要数据源。对于 Web 界面,您可以构建自己的界面并轻松地将报告集成到其中(引擎),或者购买一个预构建的界面并根据您的规范对其进行修改(标枪)。
不利的一面是,它们是闭源的,并且在不了解您的设置的情况下,我很难说它们的定价是否可行。不过可能值得一看——上面的链接及其 documentation wiki可能是开始寻找您是否合适的好地方。
*免责声明:我为 Windward 工作。我确实相信它们是目前最好的报告包之一,但还有其他一些也可能满足您的需求。
