Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewAzureMonitorExecutor ¶
func NewAzureMonitorExecutor(dsInfo *models.DataSource) (tsdb.TsdbQueryEndpoint, error)
NewAzureMonitorExecutor initializes a http client
Types ¶
type ApplicationInsightsResponse ¶
type ApplicationInsightsResponse struct { Tables []struct { TableName string `json:"TableName"` Columns []struct { ColumnName string `json:"ColumnName"` DataType string `json:"DataType"` ColumnType string `json:"ColumnType"` } `json:"Columns"` Rows [][]interface{} `json:"Rows"` } `json:"Tables"` }
ApplicationInsightsResponse is the json response from the Application Insights API
type AzureLogAnalyticsResponse ¶
type AzureLogAnalyticsResponse struct { Tables []struct { Name string `json:"name"` Columns []struct { Name string `json:"name"` Type string `json:"type"` } `json:"columns"` Rows [][]interface{} `json:"rows"` } `json:"tables"` }
AzureLogAnalyticsResponse is the json response object from the Azure Log Analytics API.
type AzureMonitorDatasource ¶
type AzureMonitorDatasource struct {
// contains filtered or unexported fields
}
AzureMonitorDatasource calls the Azure Monitor API - one of the four API's supported
type AzureMonitorExecutor ¶
type AzureMonitorExecutor struct {
// contains filtered or unexported fields
}
AzureMonitorExecutor executes queries for the Azure Monitor datasource - all four services
func (*AzureMonitorExecutor) Query ¶
func (e *AzureMonitorExecutor) Query(ctx context.Context, dsInfo *models.DataSource, tsdbQuery *tsdb.TsdbQuery) (*tsdb.Response, error)
Query takes in the frontend queries, parses them into the query format expected by chosen Azure Monitor service (Azure Monitor, App Insights etc.) executes the queries against the API and parses the response into the right format
type AzureMonitorQuery ¶
type AzureMonitorQuery struct { URL string UrlComponents map[string]string Target string Params url.Values RefID string Alias string }
AzureMonitorQuery is the query for all the services as they have similar queries with a url, a querystring and an alias field
type AzureMonitorResponse ¶
type AzureMonitorResponse struct { Cost int `json:"cost"` Timespan string `json:"timespan"` Interval string `json:"interval"` Value []struct { ID string `json:"id"` Type string `json:"type"` Name struct { Value string `json:"value"` LocalizedValue string `json:"localizedValue"` } `json:"name"` Unit string `json:"unit"` Timeseries []struct { Metadatavalues []struct { Name struct { Value string `json:"value"` LocalizedValue string `json:"localizedValue"` } `json:"name"` Value string `json:"value"` } `json:"metadatavalues"` Data []struct { TimeStamp time.Time `json:"timeStamp"` Average float64 `json:"average,omitempty"` Total float64 `json:"total,omitempty"` Count float64 `json:"count,omitempty"` Maximum float64 `json:"maximum,omitempty"` Minimum float64 `json:"minimum,omitempty"` } `json:"data"` } `json:"timeseries"` } `json:"value"` Namespace string `json:"namespace"` Resourceregion string `json:"resourceregion"` }
AzureMonitorResponse is the json response from the Azure Monitor API