Documentation ¶
Index ¶
- Constants
- type Client
- func (c *Client) SqlDatabase(sqlInstance *model.SQLInstance) (*model.SQLDatabase, error)
- func (c *Client) SqlInstance(ctx context.Context, env string, teamSlug slug.Slug, instanceName string) (*model.SQLInstance, error)
- func (c *Client) SqlInstances(ctx context.Context, teamSlug slug.Slug) ([]*model.SQLInstance, *model.SQLInstancesMetrics, error)
- type ClientOption
- type DatabaseID
- type DatabaseIDToMetricValues
- type MetricType
- type Metrics
- type MetricsFilter
- type MetricsOptions
- type Option
- type Query
- type TeamMetricsCache
Constants ¶
View Source
const ( CpuUtilization MetricType = "cloudsql.googleapis.com/database/cpu/utilization" CpuCores MetricType = "cloudsql.googleapis.com/database/cpu/reserved_cores" MemoryUtilization MetricType = "cloudsql.googleapis.com/database/memory/utilization" MemoryQuota MetricType = "cloudsql.googleapis.com/database/memory/quota" DiskUtilization MetricType = "cloudsql.googleapis.com/database/disk/utilization" DiskQuota MetricType = "cloudsql.googleapis.com/database/disk/quota" Filter MetricsFilter = `metric.type="%s" AND resource.type="cloudsql_database"` )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func NewClient ¶
func NewClient(ctx context.Context, db database.Database, informers k8s.ClusterInformers, log logrus.FieldLogger, opts ...ClientOption) (*Client, error)
func (*Client) SqlDatabase ¶
func (c *Client) SqlDatabase(sqlInstance *model.SQLInstance) (*model.SQLDatabase, error)
func (*Client) SqlInstance ¶
func (*Client) SqlInstances ¶
func (c *Client) SqlInstances(ctx context.Context, teamSlug slug.Slug) ([]*model.SQLInstance, *model.SQLInstancesMetrics, error)
type ClientOption ¶
type ClientOption func(*Client)
func WithMetrics ¶
func WithMetrics(metrics *Metrics) ClientOption
type DatabaseID ¶
type DatabaseID string
type DatabaseIDToMetricValues ¶
type DatabaseIDToMetricValues = map[DatabaseID]float64
type MetricType ¶
type MetricType = string
type Metrics ¶
type Metrics struct {
// contains filtered or unexported fields
}
func NewMetrics ¶
func (*Metrics) AverageForTeam ¶
func (m *Metrics) AverageForTeam(ctx context.Context, projectID string, metricType MetricType) (map[DatabaseID]float64, error)
type MetricsFilter ¶
type MetricsFilter = string
type MetricsOptions ¶
type MetricsOptions struct {
// contains filtered or unexported fields
}
type Option ¶
type Option func(*MetricsOptions)
func WithAggregation ¶
func WithAggregation(aggregation *monitoringpb.Aggregation) Option
func WithDefaultQuery ¶
func WithDefaultQuery(metricType MetricType) Option
func WithInterval ¶
type Query ¶
type Query struct { MetricType MetricType Filter MetricsFilter }
type TeamMetricsCache ¶
type TeamMetricsCache = map[MetricType]DatabaseIDToMetricValues
Click to show internal directories.
Click to hide internal directories.