本文整理匯總了Golang中github.com/cloudfoundry/noaa/consumer.Consumer.ContainerMetrics方法的典型用法代碼示例。如果您正苦於以下問題:Golang Consumer.ContainerMetrics方法的具體用法?Golang Consumer.ContainerMetrics怎麽用?Golang Consumer.ContainerMetrics使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/cloudfoundry/noaa/consumer.Consumer
的用法示例。
在下文中一共展示了Consumer.ContainerMetrics方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1:
handler = handlers.NewHttpHandler(messagesToSend, loggertesthelper.Logger())
testServer = httptest.NewServer(handler)
trafficControllerURL = "ws://" + testServer.Listener.Addr().String()
})
It("returns the ContainerMetric values from ContainerEnvelopes", func() {
env := createContainerMetric(2, 2000)
messagesToSend <- marshalMessage(env)
close(messagesToSend)
envelopes, _ := cnsmr.ContainerEnvelopes(appGuid, authToken)
messagesToSend = make(chan []byte, 100)
handler.Messages = messagesToSend
messagesToSend <- marshalMessage(env)
close(messagesToSend)
metrics, err := cnsmr.ContainerMetrics(appGuid, authToken)
Expect(metrics).To(HaveLen(1))
Expect(err).ToNot(HaveOccurred())
Expect(metrics).To(ConsistOf(envelopes[0].ContainerMetric))
})
})
Describe("ContainerEnvelopes", func() {
var (
envelopes []*events.Envelope
err error
)
BeforeEach(func() {
appGuid = "appGuid"
})
示例2:
Describe("RecentLogs", func() {
It("uses the token refresher to obtain a new token", func() {
cnsmr.RecentLogs("some-fake-app-guid", "")
Eventually(refresher.RefreshAuthTokenCalled).Should(BeCalled())
})
It("loads a token if the provided token fails with 401", func() {
statuses <- http.StatusUnauthorized
cnsmr.RecentLogs("some-fake-app-guid", "")
Eventually(refresher.RefreshAuthTokenCalled).Should(BeCalled())
})
})
Describe("ContainerMetrics", func() {
It("uses the token refresher to obtain a new token", func() {
cnsmr.ContainerMetrics("some-fake-app-guid", "")
Eventually(refresher.RefreshAuthTokenCalled).Should(BeCalled())
})
It("loads a token if the provided token fails with 401", func() {
statuses <- http.StatusUnauthorized
cnsmr.ContainerMetrics("some-fake-app-guid", "")
Eventually(refresher.RefreshAuthTokenCalled).Should(BeCalled())
})
})
})
It("does not use the token refresher if an auth token is valid", func() {
refresher := newMockTokenRefresher()
cnsmr := consumer.New("fakeTrafficControllerURL", nil, nil)
示例3:
It("logs stream access", func() {
noaaConsumer.Stream(APP_ID, AUTH_TOKEN)
expected := fmt.Sprintf("CEF:0|cloud_foundry|loggregator_trafficcontroller|1.0|GET /apps/%s/stream|GET /apps/%[1]s/stream|0|", APP_ID)
Eventually(testContents).Should(ContainSubstring(expected))
})
It("logs recent access", func() {
noaaConsumer.RecentLogs(APP_ID, AUTH_TOKEN)
expected := fmt.Sprintf("CEF:0|cloud_foundry|loggregator_trafficcontroller|1.0|GET /apps/%s/recentlogs|GET /apps/%[1]s/recentlogs|0|", APP_ID)
Eventually(testContents).Should(ContainSubstring(expected))
})
It("logs container metrics access", func() {
noaaConsumer.ContainerMetrics(APP_ID, AUTH_TOKEN)
expected := fmt.Sprintf("CEF:0|cloud_foundry|loggregator_trafficcontroller|1.0|GET /apps/%s/containermetrics|GET /apps/%[1]s/containermetrics|0|", APP_ID)
Eventually(testContents).Should(ContainSubstring(expected))
})
It("logs firehose access", func() {
noaaConsumer.Firehose("foo", AUTH_TOKEN)
expected := "CEF:0|cloud_foundry|loggregator_trafficcontroller|1.0|GET /firehose/foo|GET /firehose/foo|0|"
Eventually(testContents).Should(ContainSubstring(expected))
})
})
Context("with legacy endpoints", func() {
var legacyConsumer loggregator_consumer.LoggregatorConsumer