我目前正在尝试在 Windows azure 环境中移动 java 应用程序,目前正在努力使用诊断工具。我已经阅读了以下工具的功能和评论:Cerebreta、Splunk、Spotlight 等。我想确保所有这些工具是否都适用于 java,如果不是,那么我应该使用哪些工具来达到这个目的。
注意:应用程序将在 Azure 环境中的 Tomcat 上运行。
提前致谢。
我目前正在尝试在 Windows azure 环境中移动 java 应用程序,目前正在努力使用诊断工具。我已经阅读了以下工具的功能和评论:Cerebreta、Splunk、Spotlight 等。我想确保所有这些工具是否都适用于 java,如果不是,那么我应该使用哪些工具来达到这个目的。
注意:应用程序将在 Azure 环境中的 Tomcat 上运行。
提前致谢。
您不清楚您是在云服务、虚拟机还是在 Windows Azure 网站上运行,但由于您专门讨论的是 Windows Azure 诊断,因此我假设您只在查看云服务。
无论您使用什么类型的语言,Windows Azure 诊断功能都适用于云服务。诊断程序.wadcfg文件需要定义并包含在您的工作角色的根目录或您的 web 角色的 bin 目录中(您可能需要试验它在 java web 角色上的位置)。您还需要将诊断模块包含在服务定义文件中,并将其存储连接字符串包含在服务配置文件中,就像描述的第一个链接一样。同样,这与您编写的语言无关。Diagnostics 代理为您安装在实例上,然后使用 diagnostics.wadcfg 文件来确定它如何收集数据以及将该数据传输到存储帐户的频率。上面的链接将解释这一切。
Cerebrata 工具(完全披露:我为 Cerebrata 工作)用于在将诊断数据集中到存储帐户后对其进行分析。由于这使用存储帐户中的数据,因此就 Cerebrata 而言,您使用 Java 编写应用程序并不重要。
我对 splunk 并不太熟悉,但据我所知,您会希望在 Windows Azure VM 上安装 splunk 服务器,以使其具有持久性。为了使服务器能够访问运行您的应用程序的其他虚拟机,它们需要位于同一个虚拟网络中。看起来 splunk 使用 WMI,所以你应该没问题,但他们有一个免费版本,你可以用它来试用它并验证它是否有效。请务必检查 Splunk 的许可,以确保您可以将其安装在虚拟化环境中或任何会阻止您在 Azure 中使用它的地方。
还有其他选项,如New Relic、Azure Watch等。
我还将推荐Windows Azure 上的 Java 开发文档。