Cloud Foundry - 如何 subscribe/watch firehose 事件?

Cloud Foundry - How to subscribe/watch firehose events?

任务:编写一个简单的独立应用程序(app1),可以订阅(观看)来自关键云铸造厂的流水事件。尚未了解用于 app1.

的技术

Python 是我的主要技能,但如果需要 Java 或 GO

app1 需要在 Pivotal Cloud Foundry 中跨组织订阅(观看)Staging complete 任何应用 运行 的事件并接收应用详细信息然后触发 cf env <app_name> 以获取刚刚进入暂存阶段的应用程序的环境详细信息。


任何应用程序都使用清单文件推送,具有环境变量(如下所示)

    --- applications: 

     - name: some-app

        instances: 1 

        memory: 1G 

        buildpack: java_buildpack_offline         

        path: target/artifact.jar

        routes: - 
              route: some.router.com 

         services: 
              - abc

               - def

           env: 

                 ARTIFACT_VERSION: 0.0.1

1) 哪种技术更适合(支持)执行此任务?基本上观看 Firehose 事件和 运行 cf env <on_that_app>

2) 我的代码 (app1) 是否应该 运行 在 PCFoundry 中观看 Firehose 事件?我可以 运行 app1 在 PCF 之外观看 Firehose 事件吗?

作为新手,请分享一些有关 PCFoundry(PAAS) 中 firehose 事件的学习资源

Golang 概念(请不要期待任何 copy/paste 代码):

  1. 从多普勒获取日志消息 - 使用 cloudfoundry/noaa 并只观察日志 Staging complete
  2. 调用 CF 客户端并获取环境变量值 - 使用 cloudfoundry-community/go-cfclient

您可以从任何地方观看 Firehose 事件。您只需要与 Doppler URL 建立网络连接,因此可以在 localhost 开发机器上进行开发,而生产版本可以在 运行 Cloud Foundry 中完成。您可以使用 websockets,这样您就可以将更改直接推送到浏览器。恕我直言,最终的 Golang 实现将需要 disk_quota: 64Mmemory: 16M.