clioptions

package
v0.0.0-...-e33cdd0 Latest Latest
Warning

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

Go to latest
Published: Jan 14, 2026 License: MIT Imports: 25 Imported by: 1

Documentation

Index

Constants

View Source
const AUTH_HEADER_ENV_VAR = "TEMPORAL_OMES_AUTH_HEADER"

Variables

View Source
var BackupLogger = log.New(os.Stderr, "", 0)

BackupLogger is used in case we can't instantiate zap (it's nicer DX than panicking or using built-in `log`).

Functions

func StartProcessMetricsSidecar

func StartProcessMetricsSidecar(
	logger *zap.SugaredLogger,
	address string,
	workerPID int,
	sdkVersion string,
	buildID string,
	language string,
) *http.Server

StartProcessMetricsSidecar starts a process metrics server that monitors an external PID. This is called by run.go after starting the SDK worker subprocess. It serves /metrics (CPU/memory for the worker PID) and /info (worker metadata).

Types

type ClientOptions

type ClientOptions struct {
	// Address of Temporal server to connect to
	Address string
	// Temporal namespace
	Namespace string
	// Enable TLS
	EnableTLS bool
	// TLS client cert
	ClientCertPath string
	// TLS client private key
	ClientKeyPath string
	// TLS server name
	TLSServerName string
	// Authorization header value
	AuthHeader string
	// Disable Host Verification
	DisableHostVerification bool
	// contains filtered or unexported fields
}

Options for creating a Temporal client.

func (*ClientOptions) Dial

func (c *ClientOptions) Dial(metrics *metrics.Metrics, logger *zap.SugaredLogger) (client.Client, error)

Dial connects to a Temporal server, with logging, metrics, loaded TLS certs and set auth header.

func (*ClientOptions) FlagSet

func (c *ClientOptions) FlagSet() *pflag.FlagSet

FlagSet adds the relevant flags to populate the options struct and returns a pflag.FlagSet.

func (*ClientOptions) MustDial

func (c *ClientOptions) MustDial(metrics *metrics.Metrics, logger *zap.SugaredLogger) client.Client

MustDial connects to a Temporal server, with logging, metrics and loaded TLS certs.

type InfoResponse

type InfoResponse struct {
	SDKVersion string `json:"sdk_version"`
	BuildID    string `json:"build_id"`
	Language   string `json:"language"`
}

InfoResponse is returned by the /info endpoint on the process metrics server. Only contains fields that run-scenario doesn't already know.

type Language

type Language string
const (
	LangGo         Language = "go"
	LangPython     Language = "python"
	LangJava       Language = "java"
	LangTypeScript Language = "typescript"
	LangDotNet     Language = "dotnet"
)

func (*Language) Set

func (lf *Language) Set(value string) error

func (*Language) String

func (lf *Language) String() string

func (*Language) Type

func (lf *Language) Type() string

type LoggingOptions

type LoggingOptions struct {
	// Log level
	LogLevel string
	// Log encoding (console json)
	LogEncoding string
	// Prepared logger to use instead of creating a new one from options. Progamatic use only.
	PreparedLogger *zap.SugaredLogger
	// contains filtered or unexported fields
}

LoggingOptions for setting up the logger component

func (*LoggingOptions) FlagSet

func (l *LoggingOptions) FlagSet() *pflag.FlagSet

FlagSet adds the relevant flags to populate the options struct and returns a pflag.FlagSet.

func (*LoggingOptions) MustCreateLogger

func (l *LoggingOptions) MustCreateLogger() *zap.SugaredLogger

MustCreateLogger sets up a zap logger or panics on error.

type MetricsOptions

type MetricsOptions struct {
	// Address for the Prometheus HTTP listener.
	// If empty, the listener will not be started.
	PrometheusListenAddress string
	// HTTP path for serving metrics.
	// Default "/metrics".
	PrometheusHandlerPath string
	// Address for separate process metrics server (CPU/memory only).
	// If empty, process metrics will not be served separately.
	WorkerProcessMetricsAddress string
	// MetricsVersionTag is the SDK version/ref to report in metrics.
	// This is used by the sidecar's /info endpoint and is NOT passed to the worker.
	// If empty, falls back to the --version flag value.
	MetricsVersionTag string
	// contains filtered or unexported fields
}

MetricsOptions for setting up Prometheus metrics.

func (*MetricsOptions) FlagSet

func (m *MetricsOptions) FlagSet(prefix string) *pflag.FlagSet

FlagSet adds the relevant flags to populate the options struct and returns a pflag.FlagSet.

func (*MetricsOptions) MustCreateMetrics

func (m *MetricsOptions) MustCreateMetrics(ctx context.Context, logger *zap.SugaredLogger) *metrics.Metrics

MustCreateMetrics sets up Prometheus based metrics and starts an HTTP server for serving SDK metrics.

type PassThroughPayloadConverter

type PassThroughPayloadConverter struct{}

func (*PassThroughPayloadConverter) Encoding

func (p *PassThroughPayloadConverter) Encoding() string

func (*PassThroughPayloadConverter) FromPayload

func (p *PassThroughPayloadConverter) FromPayload(payload *common.Payload, valuePtr interface{}) error

func (*PassThroughPayloadConverter) ToPayload

func (p *PassThroughPayloadConverter) ToPayload(value interface{}) (*common.Payload, error)

func (*PassThroughPayloadConverter) ToString

func (p *PassThroughPayloadConverter) ToString(payload *common.Payload) string

type PrometheusInstanceFlags

type PrometheusInstanceFlags struct {
	metrics.PrometheusInstanceOptions
	// contains filtered or unexported fields
}

func (*PrometheusInstanceFlags) FlagSet

func (p *PrometheusInstanceFlags) FlagSet(prefix string) *pflag.FlagSet

type ScenarioID

type ScenarioID struct {
	Scenario  string
	RunID     string
	RunFamily string
}

func (*ScenarioID) AddCLIFlags

func (r *ScenarioID) AddCLIFlags(fs *pflag.FlagSet)

type SdkOptions

type SdkOptions struct {
	Language Language
	Version  string
}

func (*SdkOptions) AddCLIFlags

func (s *SdkOptions) AddCLIFlags(fs *pflag.FlagSet)

type WorkerOptions

type WorkerOptions struct {
	BuildID                      string
	MaxConcurrentActivityPollers int
	MaxConcurrentWorkflowPollers int
	ActivityPollerAutoscaleMax   int // overrides MaxConcurrentActivityPollers
	WorkflowPollerAutoscaleMax   int // overrides MaxConcurrentWorkflowPollers
	MaxConcurrentActivities      int
	MaxConcurrentWorkflowTasks   int
	WorkerActivitiesPerSecond    float64
	ErrOnUnimplemented           bool
	// contains filtered or unexported fields
}

WorkerOptions for setting up worker parameters

func (*WorkerOptions) FlagSet

func (m *WorkerOptions) FlagSet() *pflag.FlagSet

FlagSet adds the relevant flags to populate the options struct and returns a pflag.FlagSet.

type ZapAdapter

type ZapAdapter struct {
	// contains filtered or unexported fields
}

func NewZapAdapter

func NewZapAdapter(zapLogger *zap.Logger) *ZapAdapter

func (*ZapAdapter) Debug

func (log *ZapAdapter) Debug(msg string, keyvals ...interface{})

func (*ZapAdapter) Error

func (log *ZapAdapter) Error(msg string, keyvals ...interface{})

func (*ZapAdapter) Info

func (log *ZapAdapter) Info(msg string, keyvals ...interface{})

func (*ZapAdapter) Warn

func (log *ZapAdapter) Warn(msg string, keyvals ...interface{})

func (*ZapAdapter) With

func (log *ZapAdapter) With(keyvals ...interface{}) log.Logger

Jump to

Keyboard shortcuts

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