Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Manager ¶
type Manager interface { Start(env adapter.Env) error Close() SendRecords(ctx *auth.Context, records []Record) error }
A Manager wraps all things related to analytics processing
type Options ¶
type Options struct { // LegacyEndpoint is true if using older direct-submit protocol LegacyEndpoint bool // BufferPath is the directory where the adapter will buffer analytics records. BufferPath string // StagingFileLimit is the maximum number of files stored in the staging directory. // Once this is reached, the oldest files will start being removed. StagingFileLimit int // Base Apigee URL BaseURL *url.URL // Key for submit auth Key string // Secret for submit auth Secret string // Client is a configured HTTPClient Client *http.Client // SendChannelSize is the size of the records channel SendChannelSize int // IsHybrid is populated for Apigee hybrid deployment HybridConfigFile string // collection interval CollectionInterval time.Duration // contains filtered or unexported fields }
Options allows us to specify options for how this analytics manager will run.
type Record ¶
type Record struct { ClientReceivedStartTimestamp int64 `json:"client_received_start_timestamp"` ClientReceivedEndTimestamp int64 `json:"client_received_end_timestamp"` ClientSentStartTimestamp int64 `json:"client_sent_start_timestamp"` ClientSentEndTimestamp int64 `json:"client_sent_end_timestamp"` TargetReceivedStartTimestamp int64 `json:"target_received_start_timestamp,omitempty"` TargetReceivedEndTimestamp int64 `json:"target_received_end_timestamp,omitempty"` TargetSentStartTimestamp int64 `json:"target_sent_start_timestamp,omitempty"` TargetSentEndTimestamp int64 `json:"target_sent_end_timestamp,omitempty"` RecordType string `json:"recordType"` APIProxy string `json:"apiproxy"` RequestURI string `json:"request_uri"` RequestPath string `json:"request_path"` RequestVerb string `json:"request_verb"` ClientIP string `json:"client_ip,omitempty"` UserAgent string `json:"useragent"` APIProxyRevision int `json:"apiproxy_revision"` ResponseStatusCode int `json:"response_status_code"` DeveloperEmail string `json:"developer_email,omitempty"` DeveloperApp string `json:"developer_app,omitempty"` AccessToken string `json:"access_token,omitempty"` ClientID string `json:"client_id,omitempty"` APIProduct string `json:"api_product,omitempty"` Organization string `json:"organization"` Environment string `json:"environment"` GatewaySource string `json:"gateway_source"` GatewayFlowID string `json:"gateway_flow_id"` }
A Record is a single event that is tracked via Apigee analytics.
Click to show internal directories.
Click to hide internal directories.