Documentation
¶
Index ¶
Constants ¶
const ( // PingCommand команда для проверки состояния runtime. PingCommand uint8 = 0x1 // ChangeOutCommand команда для изменения выходного потока. ChangeOutCommand uint8 = 0x2 )
const ( // OKResponse ответ, предполагающий успешное выполнение действия. OKResponse uint8 = 0x0 // FailResponse ответ, предполагающий ошибочное выполнение действия. FailResponse uint8 = 0x1 )
Variables ¶
var ( ErrCommandFailed = errors.New("command returned not OK response") ErrBadOut = errors.New("address must be in format <host>:<port>") )
Возможные ошибки
var ( ErrRuntimeAlreadyRegistered = errors.New("action already registered") ErrUnknownRuntime = errors.New("unknown action") )
Возможные ошибки.
Functions ¶
Types ¶
type ActionOptions ¶
ActionOptions опции для запуска действия
type Config ¶
type Config struct { // PingsToStop количество неудачных ping запросов, // после которых рантайм признается отказавшим. PingsToStop int `yaml:"pings-to-stop"` // PingFrequency время между запросами к рантаймам для получения состояния. PingFrequency util.Duration `yaml:"ping-freq"` }
Config набор настроек для Watcher
type Runtime ¶
type Runtime struct {
// contains filtered or unexported fields
}
Runtime структура, представляющая собой запущенное действие
func NewRuntime ¶
func NewRuntime(schemeName, actionName string, bin []byte, l *util.Logger, opt *RuntimeOptions) *Runtime
NewRuntime создает новое действие.
func (*Runtime) ActionName ¶
ActionName возвращает имя действия, частью которого является рантайм.
func (*Runtime) Ping ¶
func (r *Runtime) Ping() (*RuntimeTelemetry, error)
Ping проверяет работоспособность действия с помощью отправки ping.
func (*Runtime) SchemeName ¶
SchemeName возвращает имя схемы, частью которой является рантайм.
type RuntimeOptions ¶
type RuntimeOptions struct { Port int Replicas int In []string Out []string ActionOptions *ActionOptions RuntimePath string RuntimeLogsDir string RuntimeLogsLevel string ActionStartRetry *util.RetryConfig Timeout time.Duration AckPeriod time.Duration ForwardLogDir string }
RuntimeOptions набор параметров при запуске действия.
type RuntimeTelemetry ¶
type RuntimeTelemetry struct {
OldestOutput uint32
}
RuntimeTelemetry информация о состоянии runtime.
type Watcher ¶
type Watcher struct {
// contains filtered or unexported fields
}
Watcher структура для контроля запущенных действий.
var RuntimeWatcher *Watcher
RuntimeWatcher объект синглтон для слежения за работоспособностью действий.
func (*Watcher) ChangeOutRuntime ¶
ChangeOutRuntime изменяет один из выходных потоков рантайма.
func (*Watcher) GetRuntimesTelemetry ¶
func (w *Watcher) GetRuntimesTelemetry() []*message.RuntimeTelemetry
GetRuntimesTelemetry возвращает информацию о состояниях действий.
func (*Watcher) StartRuntime ¶
StartRuntime запускает регистрирует действие для наблюдения
func (*Watcher) StopRuntime ¶
StopRuntime остановка действия.