event

package
v1.40.0 Latest Latest
Warning

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

Go to latest
Published: Jul 10, 2025 License: GPL-3.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	KAFKAWRITER  = "kafka_writer"
	KAFKAPREPARE = "kafka_prepare"
)

Functions

This section is empty.

Types

type AgentFailedEvent added in v0.68.0

type AgentFailedEvent struct {
	AgentId mesos.AgentID `json:"agentId"`
	// contains filtered or unexported fields
}

func NewAgentFailedEvent added in v0.68.0

func NewAgentFailedEvent(agentId *mesos.AgentID) *AgentFailedEvent

func (*AgentFailedEvent) GetId added in v0.68.0

func (e *AgentFailedEvent) GetId() mesos.AgentID

func (*AgentFailedEvent) GetLabels added in v0.68.0

func (e *AgentFailedEvent) GetLabels() map[string]string

func (*AgentFailedEvent) GetName added in v0.68.0

func (e *AgentFailedEvent) GetName() string

func (*AgentFailedEvent) GetTimestamp added in v0.68.0

func (e *AgentFailedEvent) GetTimestamp() string

func (*AgentFailedEvent) SetLabels added in v0.68.0

func (e *AgentFailedEvent) SetLabels(labels map[string]string)

type AnnounceTaskPIDEvent added in v0.17.80

type AnnounceTaskPIDEvent struct {
	TaskId string `json:"taskId"`
	PID    int32  `json:"pid"`
	// contains filtered or unexported fields
}

func NewAnnounceTaskPIDEvent added in v0.17.80

func NewAnnounceTaskPIDEvent(id string, pid int32) (e *AnnounceTaskPIDEvent)

func (*AnnounceTaskPIDEvent) GetLabels added in v0.48.0

func (e *AnnounceTaskPIDEvent) GetLabels() map[string]string

func (*AnnounceTaskPIDEvent) GetName added in v0.17.80

func (e *AnnounceTaskPIDEvent) GetName() string

func (*AnnounceTaskPIDEvent) GetTaskId added in v0.17.80

func (e *AnnounceTaskPIDEvent) GetTaskId() string

func (*AnnounceTaskPIDEvent) GetTaskPID added in v0.17.80

func (e *AnnounceTaskPIDEvent) GetTaskPID() int

func (*AnnounceTaskPIDEvent) GetTimestamp added in v0.17.80

func (e *AnnounceTaskPIDEvent) GetTimestamp() string

func (*AnnounceTaskPIDEvent) SetLabels added in v0.48.0

func (e *AnnounceTaskPIDEvent) SetLabels(labels map[string]string)

type BasicTaskTerminated added in v0.12.0

type BasicTaskTerminated struct {
	DeviceEventBase
	ExitCode             int             `json:"exitCode"`
	Stdout               string          `json:"stdout"`
	Stderr               string          `json:"stderr"`
	VoluntaryTermination bool            `json:"voluntaryTermination"`
	FinalMesosState      mesos.TaskState `json:"finalMesosState"`
}

func (*BasicTaskTerminated) GetLabels added in v0.48.0

func (e *BasicTaskTerminated) GetLabels() map[string]string

func (*BasicTaskTerminated) GetName added in v0.12.0

func (e *BasicTaskTerminated) GetName() string

func (*BasicTaskTerminated) GetTimestamp added in v0.17.80

func (e *BasicTaskTerminated) GetTimestamp() string

func (*BasicTaskTerminated) SetLabels added in v0.48.0

func (e *BasicTaskTerminated) SetLabels(labels map[string]string)

type DeviceEvent

type DeviceEvent interface {
	Event
	GetOrigin() DeviceEventOrigin
	GetType() pb.DeviceEventType
}

func NewDeviceEvent

func NewDeviceEvent(origin DeviceEventOrigin, t pb.DeviceEventType) (de DeviceEvent)

type DeviceEventBase

type DeviceEventBase struct {
	Type   pb.DeviceEventType `json:"type"`
	Origin DeviceEventOrigin  `json:"origin"`
	// contains filtered or unexported fields
}

func (*DeviceEventBase) GetLabels added in v0.48.0

func (e *DeviceEventBase) GetLabels() map[string]string

func (*DeviceEventBase) GetOrigin

func (b *DeviceEventBase) GetOrigin() DeviceEventOrigin

func (*DeviceEventBase) GetTimestamp added in v0.17.80

func (e *DeviceEventBase) GetTimestamp() string

func (*DeviceEventBase) GetType

func (b *DeviceEventBase) GetType() pb.DeviceEventType

func (*DeviceEventBase) SetLabels added in v0.48.0

func (e *DeviceEventBase) SetLabels(labels map[string]string)

type DeviceEventOrigin

type DeviceEventOrigin struct {
	// FIXME: replace these Mesos-tainted string wrappers with plain strings
	AgentId    mesos.AgentID    `json:"agentId"`
	ExecutorId mesos.ExecutorID `json:"executorId"`
	TaskId     mesos.TaskID     `json:"taskId"`
}

type DummyWriter added in v1.9.1

type DummyWriter struct{}

func (*DummyWriter) Close added in v1.9.1

func (*DummyWriter) Close()

func (*DummyWriter) WriteEvent added in v1.9.1

func (*DummyWriter) WriteEvent(interface{})

func (*DummyWriter) WriteEventWithTimestamp added in v1.9.1

func (*DummyWriter) WriteEventWithTimestamp(interface{}, time.Time)

type EndOfStream added in v0.12.0

type EndOfStream struct {
	DeviceEventBase
}

func (*EndOfStream) GetLabels added in v0.48.0

func (e *EndOfStream) GetLabels() map[string]string

func (*EndOfStream) GetName added in v0.12.0

func (e *EndOfStream) GetName() string

func (*EndOfStream) GetTimestamp added in v0.17.80

func (e *EndOfStream) GetTimestamp() string

func (*EndOfStream) SetLabels added in v0.48.0

func (e *EndOfStream) SetLabels(labels map[string]string)

type EnvironmentEvent added in v0.19.80

type EnvironmentEvent struct {
	EnvironmentID string
	Run           uint32
	State         string
	Error         error
	Message       string
	// contains filtered or unexported fields
}

func (*EnvironmentEvent) GetError added in v0.19.80

func (e *EnvironmentEvent) GetError() string

func (*EnvironmentEvent) GetLabels added in v0.48.0

func (e *EnvironmentEvent) GetLabels() map[string]string

func (*EnvironmentEvent) GetMessage added in v0.19.80

func (e *EnvironmentEvent) GetMessage() string

func (*EnvironmentEvent) GetName added in v0.19.80

func (e *EnvironmentEvent) GetName() string

func (*EnvironmentEvent) GetRun added in v0.19.80

func (e *EnvironmentEvent) GetRun() uint32

func (*EnvironmentEvent) GetState added in v0.19.80

func (e *EnvironmentEvent) GetState() string

func (*EnvironmentEvent) GetTimestamp added in v0.19.80

func (e *EnvironmentEvent) GetTimestamp() string

func (*EnvironmentEvent) SetLabels added in v0.48.0

func (e *EnvironmentEvent) SetLabels(labels map[string]string)

type Event added in v0.17.80

type Event interface {
	GetName() string
	GetTimestamp() string
	GetLabels() map[string]string
	SetLabels(map[string]string)
}

type ExecutorFailedEvent added in v0.68.0

type ExecutorFailedEvent struct {
	ExecutorId mesos.ExecutorID `json:"executorId"`
	// contains filtered or unexported fields
}

func NewExecutorFailedEvent added in v0.68.0

func NewExecutorFailedEvent(executorId *mesos.ExecutorID) *ExecutorFailedEvent

func (*ExecutorFailedEvent) GetId added in v0.68.0

func (*ExecutorFailedEvent) GetLabels added in v0.68.0

func (e *ExecutorFailedEvent) GetLabels() map[string]string

func (*ExecutorFailedEvent) GetName added in v0.68.0

func (e *ExecutorFailedEvent) GetName() string

func (*ExecutorFailedEvent) GetTimestamp added in v0.68.0

func (e *ExecutorFailedEvent) GetTimestamp() string

func (*ExecutorFailedEvent) SetLabels added in v0.68.0

func (e *ExecutorFailedEvent) SetLabels(labels map[string]string)

type FifoBuffer added in v1.32.0

type FifoBuffer[T any] struct {
	// contains filtered or unexported fields
}

This structure is meant to be used as a threadsafe FIFO with builtin waiting for new data in its Pop and PopMultiple functions. It is meant to be used with multiple goroutines, it is a waste of synchronization mechanisms if used synchronously.

func NewFifoBuffer added in v1.32.0

func NewFifoBuffer[T any]() (result FifoBuffer[T])

func (*FifoBuffer[T]) Length added in v1.32.0

func (this *FifoBuffer[T]) Length() int

func (*FifoBuffer[T]) PopMultiple added in v1.32.0

func (this *FifoBuffer[T]) PopMultiple(numberToPop uint) (result []T)

Blocks until it has some value in internal buffer

func (*FifoBuffer[T]) Push added in v1.32.0

func (this *FifoBuffer[T]) Push(value T)

func (*FifoBuffer[T]) ReleaseGoroutines added in v1.32.0

func (this *FifoBuffer[T]) ReleaseGoroutines()

type HasEnvID added in v1.28.0

type HasEnvID interface {
	GetEnvironmentId() string
}

type IntegratedServiceEvent added in v0.75.0

type IntegratedServiceEvent interface {
	Event
	GetServiceName() string
}

type IntegratedServiceEventBase added in v0.75.0

type IntegratedServiceEventBase struct {
	ServiceName string `json:"serviceName"`
	// contains filtered or unexported fields
}

func (*IntegratedServiceEventBase) GetLabels added in v0.75.0

func (e *IntegratedServiceEventBase) GetLabels() map[string]string

func (*IntegratedServiceEventBase) GetServiceName added in v0.75.0

func (b *IntegratedServiceEventBase) GetServiceName() string

func (*IntegratedServiceEventBase) GetTimestamp added in v0.75.0

func (e *IntegratedServiceEventBase) GetTimestamp() string

func (*IntegratedServiceEventBase) SetLabels added in v0.75.0

func (e *IntegratedServiceEventBase) SetLabels(labels map[string]string)

type KafkaWriter added in v1.9.1

type KafkaWriter struct {
	*kafka.Writer
	// contains filtered or unexported fields
}

Kafka writer is used to convert events from events.proto into kafka messages and to write them. it is built with 2 workers:

#1 is gathering kafka.Message from any goroutine which sends message into buffered channel and puts them into FifoBuffer.
#2 is poping any messages from FifoBuffer and sends them to Kafka

The reason for this setup over setting Async: true in kafka.Writer is the ability to have some error handling
of failed messages. Moreover if we used only one worker that gathers messages from channel and then sends them directly to Kafka,
we would block whole core if we receive lot of messages at once. So we split functionality into two workers: one is
putting all messages into the buffer, so if we have a lot of messages buffer just grows without blocking whole core and the
second does all the sending. This setup allows us to gather messages from any amount of goroutines without blocking/losing messages.
Another benefit is batching messages instead of writing them one by one.

func NewWriterWithTopic added in v1.7.0

func NewWriterWithTopic(topic topic.Topic) *KafkaWriter

func (*KafkaWriter) Close added in v1.9.1

func (w *KafkaWriter) Close()

func (*KafkaWriter) WriteEvent added in v1.9.1

func (w *KafkaWriter) WriteEvent(e interface{})

func (*KafkaWriter) WriteEventWithTimestamp added in v1.9.1

func (w *KafkaWriter) WriteEventWithTimestamp(e interface{}, timestamp time.Time)

type RoleEvent added in v0.19.80

type RoleEvent struct {
	Name     string
	Status   string
	State    string
	RolePath string
	// contains filtered or unexported fields
}

func (*RoleEvent) GetLabels added in v0.48.0

func (e *RoleEvent) GetLabels() map[string]string

func (*RoleEvent) GetName added in v0.19.80

func (r *RoleEvent) GetName() string

func (*RoleEvent) GetRolePath added in v0.19.80

func (r *RoleEvent) GetRolePath() string

func (*RoleEvent) GetState added in v0.19.80

func (r *RoleEvent) GetState() string

func (*RoleEvent) GetStatus added in v0.19.80

func (r *RoleEvent) GetStatus() string

func (*RoleEvent) GetTimestamp added in v0.19.80

func (e *RoleEvent) GetTimestamp() string

func (*RoleEvent) SetLabels added in v0.48.0

func (e *RoleEvent) SetLabels(labels map[string]string)

type TaskEvent added in v0.19.80

type TaskEvent struct {
	Name      string
	TaskID    string
	Status    string
	State     string
	Hostname  string
	ClassName string
	// contains filtered or unexported fields
}

func (*TaskEvent) GetClassName added in v0.19.80

func (r *TaskEvent) GetClassName() string

func (*TaskEvent) GetHostname added in v0.19.80

func (r *TaskEvent) GetHostname() string

func (*TaskEvent) GetLabels added in v0.48.0

func (e *TaskEvent) GetLabels() map[string]string

func (*TaskEvent) GetName added in v0.19.80

func (r *TaskEvent) GetName() string

func (*TaskEvent) GetState added in v0.19.80

func (r *TaskEvent) GetState() string

func (*TaskEvent) GetStatus added in v0.19.80

func (r *TaskEvent) GetStatus() string

func (*TaskEvent) GetTaskID added in v0.19.80

func (r *TaskEvent) GetTaskID() string

func (*TaskEvent) GetTimestamp added in v0.19.80

func (e *TaskEvent) GetTimestamp() string

func (*TaskEvent) SetLabels added in v0.48.0

func (e *TaskEvent) SetLabels(labels map[string]string)

type TaskInternalError added in v0.67.0

type TaskInternalError struct {
	DeviceEventBase
}

func (*TaskInternalError) GetLabels added in v0.67.0

func (e *TaskInternalError) GetLabels() map[string]string

func (*TaskInternalError) GetName added in v0.67.0

func (e *TaskInternalError) GetName() string

func (*TaskInternalError) GetTimestamp added in v0.67.0

func (e *TaskInternalError) GetTimestamp() string

func (*TaskInternalError) SetLabels added in v0.67.0

func (e *TaskInternalError) SetLabels(labels map[string]string)

type TasksReleasedEvent added in v0.17.80

type TasksReleasedEvent struct {
	EnvironmentId     uid.ID           `json:"environmentId"`
	TaskIdsReleased   []string         `json:"taskIdsReleased"`
	TaskReleaseErrors map[string]error `json:"taskReleaseErrors"`
	// contains filtered or unexported fields
}

func NewTasksReleasedEvent added in v0.17.80

func NewTasksReleasedEvent(envId uid.ID, taskIdsReleased []string, taskReleaseErrors map[string]error) (tr *TasksReleasedEvent)

func (*TasksReleasedEvent) GetEnvironmentId added in v0.17.80

func (tr *TasksReleasedEvent) GetEnvironmentId() uid.ID

func (*TasksReleasedEvent) GetLabels added in v0.48.0

func (e *TasksReleasedEvent) GetLabels() map[string]string

func (*TasksReleasedEvent) GetName added in v0.17.80

func (tr *TasksReleasedEvent) GetName() string

func (*TasksReleasedEvent) GetTaskIds added in v0.17.80

func (tr *TasksReleasedEvent) GetTaskIds() []string

func (*TasksReleasedEvent) GetTaskReleaseErrors added in v0.17.80

func (tr *TasksReleasedEvent) GetTaskReleaseErrors() map[string]error

func (*TasksReleasedEvent) GetTimestamp added in v0.17.80

func (e *TasksReleasedEvent) GetTimestamp() string

func (*TasksReleasedEvent) SetLabels added in v0.48.0

func (e *TasksReleasedEvent) SetLabels(labels map[string]string)

type TasksStateChangedEvent added in v0.17.81

type TasksStateChangedEvent struct {
	EnvironmentId       uid.ID   `json:"environmentId"`
	TaskIdsStateChanged []string `json:"taskIdsStatesChanged"`
	TaskStateChangedErr error    `json:"taskStateChangedErr"`
	// contains filtered or unexported fields
}

func NewTasksStateChangedEvent added in v0.17.81

func NewTasksStateChangedEvent(envId uid.ID, taskIdsChangeState []string, taskStateChangedErr error) (tr *TasksStateChangedEvent)

func (*TasksStateChangedEvent) GetEnvironmentId added in v0.17.81

func (tr *TasksStateChangedEvent) GetEnvironmentId() uid.ID

func (*TasksStateChangedEvent) GetLabels added in v0.48.0

func (e *TasksStateChangedEvent) GetLabels() map[string]string

func (*TasksStateChangedEvent) GetName added in v0.17.81

func (tr *TasksStateChangedEvent) GetName() string

func (*TasksStateChangedEvent) GetTaskIds added in v0.17.81

func (tr *TasksStateChangedEvent) GetTaskIds() []string

func (*TasksStateChangedEvent) GetTasksStateChangedError added in v0.17.81

func (tr *TasksStateChangedEvent) GetTasksStateChangedError() error

func (*TasksStateChangedEvent) GetTimestamp added in v0.17.81

func (e *TasksStateChangedEvent) GetTimestamp() string

func (*TasksStateChangedEvent) SetLabels added in v0.48.0

func (e *TasksStateChangedEvent) SetLabels(labels map[string]string)

type Writer added in v1.7.0

type Writer interface {
	WriteEvent(e interface{})
	WriteEventWithTimestamp(e interface{}, timestamp time.Time)
	Close()
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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