trireme-lib: go.aporeto.io/trireme-lib/monitor/extractors Index | Files

package extractors

import "go.aporeto.io/trireme-lib/monitor/extractors"

Index

Package Files

docker.go interface.go kubernetes.go linux.go uid.go

Constants

const (

    // PuType is the type of host svc (network only or otherwise)
    PuType = "$PuType"
    // LinuxPU represents the PU type
    LinuxPU = "LinuxPU"

    // HostModeNetworkPU represents host pu in network only mode.
    HostModeNetworkPU = "HostNetworkPU"

    // HostPU represent host pu in true sense (both incoming and outgoing)
    HostPU = "HostPU"
)
const KubernetesContainerNameIdentifier = "@usr:io.kubernetes.container.name"

KubernetesContainerNameIdentifier is the label used by Docker for the K8S container name.

const KubernetesInfraContainerName = "POD"

KubernetesInfraContainerName is the name of the infra POD.

const KubernetesPodNameIdentifier = "@usr:io.kubernetes.pod.name"

KubernetesPodNameIdentifier is the label used by Docker for the K8S pod name.

const KubernetesPodNamespaceIdentifier = "@usr:io.kubernetes.pod.namespace"

KubernetesPodNamespaceIdentifier is the label used by Docker for the K8S namespace.

const UpstreamNameIdentifier = "@k8s:name"

UpstreamNameIdentifier is the identifier used to identify the nane on the resulting PU

const UpstreamNamespaceIdentifier = "@k8s:namespace"

UpstreamNamespaceIdentifier is the identifier used to identify the nanespace on the resulting PU

const UserLabelPrefix = "@usr:"

UserLabelPrefix is the label prefix for all user defined labels

func DefaultHostMetadataExtractor Uses

func DefaultHostMetadataExtractor(event *common.EventInfo) (*policy.PURuntime, error)

DefaultHostMetadataExtractor is a host specific metadata extractor

func DefaultKubernetesMetadataExtractor Uses

func DefaultKubernetesMetadataExtractor(runtime policy.RuntimeReader, pod *api.Pod) (*policy.PURuntime, bool, error)

DefaultKubernetesMetadataExtractor is a default implementation for the medatadata extractor for Kubernetes It only activates the POD//INFRA containers and strips all the labels from docker to only keep the ones from Kubernetes

func DefaultMetadataExtractor Uses

func DefaultMetadataExtractor(info *types.ContainerJSON) (*policy.PURuntime, error)

DefaultMetadataExtractor is the default metadata extractor for Docker

func GetPuType Uses

func GetPuType(runtime policy.RuntimeReader) string

GetPuType returns puType stored by policy extensions.

func IsHostPU Uses

func IsHostPU(runtime policy.RuntimeReader, mode constants.ModeType) bool

IsHostPU returns true if puType stored by policy extensions is host PU

func IsHostmodePU Uses

func IsHostmodePU(runtime policy.RuntimeReader, mode constants.ModeType) bool

IsHostmodePU returns true if puType stored by policy extensions is hostmode PU

func ProcessInfo Uses

func ProcessInfo(pid int32) []string

ProcessInfo returns all metadata captured by a process

func SystemdEventMetadataExtractor Uses

func SystemdEventMetadataExtractor(event *common.EventInfo) (*policy.PURuntime, error)

SystemdEventMetadataExtractor is a systemd based metadata extractor

func UIDMetadataExtractor Uses

func UIDMetadataExtractor(event *common.EventInfo) (*policy.PURuntime, error)

UIDMetadataExtractor is a metadata extractor for uid/gid.

type DockerMetadataExtractor Uses

type DockerMetadataExtractor func(*types.ContainerJSON) (*policy.PURuntime, error)

A DockerMetadataExtractor is a function used to extract a *policy.PURuntime from a given docker ContainerJSON.

func NewExternalExtractor Uses

func NewExternalExtractor(filePath string) (DockerMetadataExtractor, error)

NewExternalExtractor returns a new bash metadata extractor for Docker that will call the executable given in parameter and will generate a Policy Runtime as standard output The format of Input/Output of the executable are in standard JSON.

type EventMetadataExtractor Uses

type EventMetadataExtractor func(*common.EventInfo) (*policy.PURuntime, error)

EventMetadataExtractor is a function used to extract a *policy.PURuntime from a given EventInfo. The EventInfo is generic and is provided over the RPC interface

type KubernetesMetadataExtractorType Uses

type KubernetesMetadataExtractorType func(runtime policy.RuntimeReader, pod *api.Pod) (*policy.PURuntime, bool, error)

KubernetesMetadataExtractorType is an extractor function for Kubernetes. It takes as parameter a standard Docker runtime and a Pod Kubernetes definition and return a PolicyRuntime This extractor also provides an extra boolean parameter that is used as a token to decide if activation is required.

type LinuxMetadataExtractorType Uses

type LinuxMetadataExtractorType func(event *common.EventInfo) (*policy.PURuntime, error)

LinuxMetadataExtractorType is a type of Linux metadata extractors

Package extractors imports 24 packages (graph) and is imported by 11 packages. Updated 2018-11-15. Refresh now. Tools for package owners.