Documentation ¶
Index ¶
Constants ¶
View Source
const ( // FlowReject indicates that a flow was rejected FlowReject = "reject" // FlowAccept logs that a flow is accepted FlowAccept = "accept" // MissingToken indicates that the token was missing MissingToken = "missingtoken" // InvalidToken indicates that the token was invalid InvalidToken = "token" // InvalidFormat indicates that the packet metadata were not correct InvalidFormat = "format" // InvalidContext indicates that there was no context in the metadata InvalidContext = "context" // InvalidConnection indicates that there was no connection found InvalidConnection = "connection" // InvalidState indicates that a packet was received without proper state information InvalidState = "state" // InvalidNonse indicates that the nonse check failed InvalidNonse = "nonse" // PolicyDrop indicates that the flow is rejected because of the policy decision PolicyDrop = "policy" )
Flow event description
View Source
const ( // ContainerStart indicates a container start event ContainerStart = "start" // ContainerStop indicates a container stop event ContainerStop = "stop" // ContainerCreate indicates a container create event ContainerCreate = "create" // ContainerDelete indicates a container delete event ContainerDelete = "delete" // ContainerUpdate indicates a container policy update event ContainerUpdate = "update" // ContainerFailed indicates an event that a container was stopped because of policy issues ContainerFailed = "forcestop" // ContainerIgnored indicates that the container will be ignored by Trireme ContainerIgnored = "ignore" // ContainerDeleteUnknown indicates that policy for an unknown container was deleted ContainerDeleteUnknown = "unknowncontainer" )
Container event description
View Source
const ( // PolicyValid Normal flow accept PolicyValid = "V" // DefaultEndPoint provides a string for unknown container sources DefaultEndPoint = "default" )
Variables ¶
This section is empty.
Functions ¶
func StatsFlowHash ¶
func StatsFlowHash(r *FlowRecord) string
StatsFlowHash is a has function to hash flows
Types ¶
type ContainerRecord ¶
type ContainerRecord struct { ContextID string IPAddress string Tags *policy.TagStore Event string }
ContainerRecord is a statistics record for a container
type DefaultCollector ¶
type DefaultCollector struct{}
DefaultCollector implements a default collector infrastructure to syslog
func (*DefaultCollector) CollectContainerEvent ¶
func (d *DefaultCollector) CollectContainerEvent(record *ContainerRecord)
CollectContainerEvent is part of the EventCollector interface.
func (*DefaultCollector) CollectFlowEvent ¶
func (d *DefaultCollector) CollectFlowEvent(record *FlowRecord)
CollectFlowEvent is part of the EventCollector interface.
type EndPoint ¶ added in v1.0.24
type EndPoint struct { ID string IP string Port uint16 Type EndPointType }
EndPoint is a structure that holds all the endpoint information
type EndPointType ¶ added in v1.0.24
type EndPointType byte
EndPointType is the type of an endpoint (PU or an external IP address )
const ( // Address indicates that the endpoint is an external IP address Address EndPointType = iota // PU indicates that the endpoint is a PU PU )
func (*EndPointType) String ¶ added in v1.0.24
func (e *EndPointType) String() string
type EventCollector ¶
type EventCollector interface { // CollectFlowEvent collect a flow event. CollectFlowEvent(record *FlowRecord) // CollectContainerEvent collects a container events CollectContainerEvent(record *ContainerRecord) }
EventCollector is the interface for collecting events.
type FlowRecord ¶
type FlowRecord struct { ContextID string Count int Source *EndPoint Destination *EndPoint Tags *policy.TagStore Action policy.ActionType DropReason string PolicyID string }
FlowRecord describes a flow record for statistis
func (*FlowRecord) String ¶ added in v1.0.24
func (f *FlowRecord) String() string
Click to show internal directories.
Click to hide internal directories.