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 остановка действия.