Documentation ¶
Index ¶
- type ApplicationAutoScalingClient
- type ECSClient
- func (e *ECSClient) GetClusterContainerInstances(cluster *types.ECSCluster) ([]*types.ECSContainerInstance, error)
- func (e *ECSClient) GetClusterServices(autoScalingClient *ApplicationAutoScalingClient, cluster *types.ECSCluster) ([]*types.ECSService, error)
- func (e *ECSClient) GetClusters() ([]*types.ECSCluster, error)
- type ECSGatherer
- type Exporter
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ApplicationAutoScalingClient ¶
type ApplicationAutoScalingClient struct {
// contains filtered or unexported fields
}
ApplicationAutoScalingClient is a wrapper for AWS AutoscalingClient that gets ECS clusters metrics
func NewApplicationAutoScalingClient ¶
func NewApplicationAutoScalingClient(s *session.Session) (*ApplicationAutoScalingClient, error)
NewApplicationAutoScalingClient will return an initialized ECSClient
type ECSClient ¶
type ECSClient struct {
// contains filtered or unexported fields
}
ECSClient is a wrapper for AWS ecs client that implements helpers to get ECS clusters metrics
func NewECSClient ¶
NewECSClient will return an initialized ECSClient
func (*ECSClient) GetClusterContainerInstances ¶
func (e *ECSClient) GetClusterContainerInstances(cluster *types.ECSCluster) ([]*types.ECSContainerInstance, error)
GetClusterContainerInstances will return all the container instances from a cluster
func (*ECSClient) GetClusterServices ¶
func (e *ECSClient) GetClusterServices(autoScalingClient *ApplicationAutoScalingClient, cluster *types.ECSCluster) ([]*types.ECSService, error)
GetClusterServices will return all the services from a cluster
func (*ECSClient) GetClusters ¶
func (e *ECSClient) GetClusters() ([]*types.ECSCluster, error)
GetClusters will get the clusters from the ECS API
type ECSGatherer ¶
type ECSGatherer interface { GetClusters() ([]*types.ECSCluster, error) GetClusterServices(autoScalingClient *ApplicationAutoScalingClient, cluster *types.ECSCluster) ([]*types.ECSService, error) GetClusterContainerInstances(cluster *types.ECSCluster) ([]*types.ECSContainerInstance, error) }
ECSGatherer is the interface that implements the methods required to gather ECS data
type Exporter ¶
type Exporter struct { sync.Mutex // Our exporter object will be locakble to protect from concurrent scrapes // contains filtered or unexported fields }
Exporter collects ECS clusters metrics
func (*Exporter) Collect ¶
func (e *Exporter) Collect(ch chan<- prometheus.Metric)
Collect fetches the stats from configured ECS and delivers them as Prometheus metrics. It implements prometheus.Collector
func (*Exporter) Describe ¶
func (e *Exporter) Describe(ch chan<- *prometheus.Desc)
Describe describes all the metrics ever exported by the ECS exporter. It implements prometheus.Collector.