cloudproviderapi

package
v3.13.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 6, 2024 License: MPL-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AWSAccount

type AWSAccount struct {
	// ID is the unique identifier for the AWS account in our systems.
	ID string `json:"id"`

	// RoleARN is the AWS ARN of the associated IAM role granting Grafana access to the AWS Account.
	RoleARN string `json:"role_arn"`

	// Regions is the list of AWS regions in use for the AWS Account.
	Regions []string `json:"regions"`
}

type AWSCloudWatchCustomNamespace

type AWSCloudWatchCustomNamespace struct {
	Name                  string                `json:"name"`
	Metrics               []AWSCloudWatchMetric `json:"metrics"`
	ScrapeIntervalSeconds int64                 `json:"scrapeIntervalSeconds"`
}

type AWSCloudWatchMetric

type AWSCloudWatchMetric struct {
	Name       string   `json:"name"`
	Statistics []string `json:"statistics"`
}

type AWSCloudWatchScrapeJobRequest

type AWSCloudWatchScrapeJobRequest struct {
	Name                  string                         `json:"name"`
	Enabled               bool                           `json:"enabled"`
	AWSAccountResourceID  string                         `json:"awsAccountResourceID"`
	RegionsSubsetOverride []string                       `json:"regionsSubsetOverride"`
	ExportTags            bool                           `json:"exportTags"`
	Services              []AWSCloudWatchService         `json:"services"`
	CustomNamespaces      []AWSCloudWatchCustomNamespace `json:"customNamespaces"`
}

type AWSCloudWatchScrapeJobResponse

type AWSCloudWatchScrapeJobResponse struct {
	Name                 string                         `json:"name"`
	Enabled              bool                           `json:"enabled"`
	AWSAccountResourceID string                         `json:"awsAccountResourceID"`
	ExportTags           bool                           `json:"exportTags"`
	Services             []AWSCloudWatchService         `json:"services"`
	CustomNamespaces     []AWSCloudWatchCustomNamespace `json:"customNamespaces"`
	// computed fields beyond the original request
	RoleARN                   string   `json:"roleARN"`
	Regions                   []string `json:"regions"`
	RegionsSubsetOverrideUsed bool     `json:"regionsSubsetOverrideUsed"`
	DisabledReason            string   `json:"disabledReason"`
	Provenance                string   `json:"provenance"`
}

type AWSCloudWatchService

type AWSCloudWatchService struct {
	Name                        string                   `json:"name"`
	Metrics                     []AWSCloudWatchMetric    `json:"metrics"`
	ScrapeIntervalSeconds       int64                    `json:"scrapeIntervalSeconds"`
	ResourceDiscoveryTagFilters []AWSCloudWatchTagFilter `json:"resourceDiscoveryTagFilters"`
	TagsToAddToMetrics          []string                 `json:"tagsToAddToMetrics"`
}

type AWSCloudWatchTagFilter

type AWSCloudWatchTagFilter struct {
	Key   string `json:"key"`
	Value string `json:"value"`
}

type Client

type Client struct {
	// contains filtered or unexported fields
}

func NewClient

func NewClient(authToken string, rawAPIURL string, client *http.Client, defaultHeaders map[string]string) (*Client, error)

func (*Client) CreateAWSAccount

func (c *Client) CreateAWSAccount(ctx context.Context, stackID string, accountData AWSAccount) (AWSAccount, error)

func (*Client) CreateAWSCloudWatchScrapeJob

func (c *Client) CreateAWSCloudWatchScrapeJob(ctx context.Context, stackID string, jobData AWSCloudWatchScrapeJobRequest) (AWSCloudWatchScrapeJobResponse, error)

func (*Client) DeleteAWSAccount

func (c *Client) DeleteAWSAccount(ctx context.Context, stackID string, accountID string) error

func (*Client) DeleteAWSCloudWatchScrapeJob

func (c *Client) DeleteAWSCloudWatchScrapeJob(ctx context.Context, stackID string, jobName string) error

func (*Client) GetAWSAccount

func (c *Client) GetAWSAccount(ctx context.Context, stackID string, accountID string) (AWSAccount, error)

func (*Client) GetAWSCloudWatchScrapeJob

func (c *Client) GetAWSCloudWatchScrapeJob(ctx context.Context, stackID string, jobName string) (AWSCloudWatchScrapeJobResponse, error)

func (*Client) ListAWSCloudWatchScrapeJobs

func (c *Client) ListAWSCloudWatchScrapeJobs(ctx context.Context, stackID string) ([]AWSCloudWatchScrapeJobResponse, error)

func (*Client) UpdateAWSAccount

func (c *Client) UpdateAWSAccount(ctx context.Context, stackID string, accountID string, accountData AWSAccount) (AWSAccount, error)

func (*Client) UpdateAWSCloudWatchScrapeJob

func (c *Client) UpdateAWSCloudWatchScrapeJob(ctx context.Context, stackID string, jobName string, jobData AWSCloudWatchScrapeJobRequest) (AWSCloudWatchScrapeJobResponse, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL