cloudwatch

package
v0.0.0-...-c5563bb Latest Latest
Warning

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

Go to latest
Published: Oct 4, 2017 License: GPL-3.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	Cfg *config.Config
	Log = newLogger()
)

Functions

This section is empty.

Types

type APIDetail

type APIDetail struct {
	EventID      string    `json:"eventID"`
	EventName    string    `json:"eventName"`
	EventSource  string    `json:"eventSource"`
	EventTime    time.Time `json:"eventTime"`
	EventType    string    `json:"eventType"`
	EventVersion string    `json:"eventVersion"`

	AWSRegion string `json:"awsRegion"`
	//AdditionalEventData map[string]string `json:"additionalEventData,omitempty"`
	AdditionalEventData interface{} `json:"additionalEventData,omitempty"`
	//RequestParams       interface{} `json:"requestParameters"`
	RequestParams json.RawMessage `json:"requestParameters"`
	//ResponseElements    map[string]string `json:"responseElements,omitempty"`
	ResponseElements interface{}  `json:"responseElements,omitempty"`
	SourceIPAddress  string       `json:"sourceIPAddress"`
	UserAgent        string       `json:"userAgent"`
	UserIdentity     UserIdentity `json:"userIdentity,omitempty"`
	ErrorCode        string       `json:"errorCode"`
	ErrorMessage     string       `json:"errorMessage"`
}

APIDetail of the triggered event This is useful for API or Console events

func (APIDetail) ParseUserIdentity

func (e APIDetail) ParseUserIdentity() (map[string]string, error)

type AWSEvent

type AWSEvent struct {
	Event            Event
	ApiDetail        APIDetail
	ApiCall          string
	RequestParameter interface{}
}

func DecodeEvent

func DecodeEvent(data json.RawMessage) (AWSEvent, error)

func (*AWSEvent) GetValueFromTemplate

func (e *AWSEvent) GetValueFromTemplate(input string) (string, error)

GetValueFromTemplate parse input string as a template and sets values from AWSEvent event.

type AWSEventInterface

type AWSEventInterface interface {
	// contains filtered or unexported methods
}

type ApiEvent

type ApiEvent struct {
	ID         string    `json:"id"`
	DetailType string    `json:"detail-type"`
	Source     string    `json:"source"`
	Account    string    `json:"account"`
	Time       time.Time `json:"time"`
	Region     string    `json:"region"`
	Resources  []string  `json:"resources"`
	Detail     APIDetail `json:"detail"`
}

type AutoScalingGroupDetail

type AutoScalingGroupDetail struct {
	ActivityID           string            `json:"ActivityId"`
	AutoScalingGroupName string            `json:"AutoScalingGroupName"`
	Cause                string            `json:"Cause"`
	Details              map[string]string `json:"Details"`
	EC2InstanceID        string            `json:"EC2InstanceId"`
	RequestID            string            `json:"RequestId"`
	StatusCode           string            `json:"StatusCode"`

	StartTime time.Time `json:"StartTime"`
	EndTime   time.Time `json:"EndTime"`
}

AutoScalingGroupDetail of the triggered event

type CreateSecurityGroupRequestParameters

type CreateSecurityGroupRequestParameters struct {
	GroupName        string `json:"groupName,omitempty"`
	GroupDescription string `json:"groupDescription,omitempty"`
	VpcId            string `json:"vpcId,omitempty"`
}

type CreateTagsRequestParameters

type CreateTagsRequestParameters struct {
	ResourcesSet struct {
		Items []map[string]string `json:"items"`
	} `json:"resourcesSet"`
	TagSet struct {
		Items []map[string]string `json:"items"`
	} `json:"tagSet"`
}

type EC2Detail

type EC2Detail struct {
	InstanceID string `json:"instance-id"`
	State      string `json:"state"`
}

EC2Detail of the triggered event

type Event

type Event struct {
	ID         string          `json:"id"`
	DetailType string          `json:"detail-type"`
	Source     string          `json:"source"`
	Account    string          `json:"account"`
	Time       time.Time       `json:"time"`
	Region     string          `json:"region"`
	Resources  []string        `json:"resources"`
	Detail     json.RawMessage `json:"detail"`
}

Event represents a CloudWatch Event http://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#api_event_type

type SecurityGroupPolicyRequestParameters

type SecurityGroupPolicyRequestParameters struct {
	GroupId string `json:"groupId,omitempty"`
}

type SnapshotRequestParameters

type SnapshotRequestParameters struct {
	SnapshotId string `json:"snapshotId,omitempty"`
}

type UserIdentity

type UserIdentity struct {
	Type        string `json:"type,omitempty"`
	PrincipleID string `json:"principalId,omitempty"`
	ARN         string `json:"arn,omitempty"`
	AccountID   string `json:"accountId,omitempty"`
	//SessionContext map[string]string `json:"sessionContext,omitempty"`
	SessionContext interface{} `json:"sessionContext,omitempty"`
}

type VolumeRequestParameters

type VolumeRequestParameters struct {
	VolumeId string `json:"volumeId,omitempty"`
}

Jump to

Keyboard shortcuts

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