Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Controller ¶
type Controller struct { controllerstatus.StatusController LastReport types.SmartProxyReport // contains filtered or unexported fields }
Controller gathers the report from Smart Proxy
func New ¶
func New(client *insightsclient.Client, configurator configobserver.Interface, reporter InsightsReporter, insightsOperatorCLI operatorv1client.InsightsOperatorInterface) *Controller
New initializes and returns a Gatherer
func NewWithTechPreview ¶
func NewWithTechPreview(client *insightsclient.Client, configurator configobserver.Interface) *Controller
func (*Controller) PullReportTechpreview ¶
func (c *Controller) PullReportTechpreview(insightsRequestID string) (*types.InsightsAnalysisReport, error)
PullReportTechpreview queries the "reportEndpointTechPreview" endpoint with provided Insights request ID to get the corresponding Insights analysis report. When the response is successfully decoded, the "insightsclient_request_recvreport_total" Prometheus metric is incremented and InsightsAnalysisReport is returned. This is called only in TechPreview clusters.
func (*Controller) PullSmartProxy ¶
func (c *Controller) PullSmartProxy() (bool, error)
PullSmartProxy performs a request to the Smart Proxy and unmarshal the response
func (*Controller) RetrieveReport ¶
func (c *Controller) RetrieveReport()
RetrieveReport gets the report from Smart Proxy, if possible, handling the delays and timeouts
func (*Controller) Run ¶
func (c *Controller) Run(ctx context.Context)
Run goroutine code for gathering the reports from Smart Proxy
type InsightsReporter ¶
type InsightsReporter interface {
ArchiveUploaded() <-chan struct{}
}
InsightsReporter represents an object that can notify about archive uploading