2

我正在尝试根据我们的应用程序仪表板页面上的一些统计数据创建每晚的电子邮件。我无法找到一种方法来简单地导出数据或通过 api 访问任何这些数字。

看来我可以深入研究 appstats 代码并弄清楚如何通过 renderDetailsAsJson 自动获取一些统计信息,但是 a)我想要的大多数统计信息都不在那里,并且 b)我不太舒服地运行 appstats 记录全职我们的生产系统。

我也在考虑抓取 html 以获得我需要的数字,但我也不期待。

有没有人成功地以自动化方式检索 GAE 仪表板数据?有任何想法吗?

4

1 回答 1

1

是的,我们在一些黑客的帮助下成功地解析了仪表板。

GAE工具appengine-tools-sdk-1.6.1.jar使用AppAdminFactoryansServerConnection类来更新/管理您的应用程序。没有此类的文档,但是通过查看源代码,我们提出了这段代码,它成功地获取了管理页面上的任何 Url:

    AppAdminFactory.ConnectOptions connectionOptions = new AppAdminFactory.ConnectOptions();
    connectionOptions.setCookies(new ClientCookieManager());
    connectionOptions.setHost("https://appengine.google.com");
    connectionOptions.setUserId("your_email@domain.com");
    connectionOptions.setPasswordPrompt(new AppAdminFactory.PasswordPrompt() {
        public String getPassword() {
            return "YourPassword";
        }
    });

    ServerConnection serverConnection = ServerConnectionFactory.getServerConnection(connectionOptions);
    Map<String, String> params = new HashMap<String, String>();

            // provide some parameters (see url when visiting Dashboard)
    params.put("app_id", "s~idd-backend")

            // provide the Url
    String response = serverConnection.get("/dashboard", params);
于 2012-05-18T22:50:40.560 回答