aurafx

package
v0.0.0-...-af9c1cf Latest Latest
Warning

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

Go to latest
Published: Jun 19, 2023 License: MIT Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Module = fx.Options(
	adminfx,
	configfx,
	debugfx,
	healthcheckfx,
	metricsfx,
	tracingfx,
)

Functions

func NewAdmin

func NewAdmin(p AdminParams) error

func NewDebug

func NewDebug(p DebugParams) error

func NewFxLogger

func NewFxLogger(log ...*zap.SugaredLogger) fx.Printer

func NewTracerCloser

func NewTracerCloser(p TracingParams) error

func ProvideHealthCheckHandler

func ProvideHealthCheckHandler() healthcheck.Handler

func ProvideLoggerConfig

func ProvideLoggerConfig(config Config) logger.Config

func ProvidePrometheusRegistry

func ProvidePrometheusRegistry() (prometheus.Registerer, prometheus.Gatherer)

func ProvideTracer

func ProvideTracer(
	log *zap.SugaredLogger,
	tracingConfig tracing.Config,
) (*tracing.Tracer, error)

func ProvideTracerProvider

func ProvideTracerProvider(tracer *tracing.Tracer) trace.TracerProvider

func ProvideTracingConfig

func ProvideTracingConfig(config Config) tracing.Config

Types

type AdminConfig

type AdminConfig struct {
	Enabled bool   `json:"enabled" default:"true"`
	Addr    string `json:"addr" default:":8081"`
}

func ProvideAdminConfig

func ProvideAdminConfig(config Config) AdminConfig

type AdminHandlerResult

type AdminHandlerResult struct {
	fx.Out

	AdminHandlers map[string]http.Handler `group:"admin_api_handler"`
}

func NewHealthCheckAdmin

func NewHealthCheckAdmin(health healthcheck.Handler) AdminHandlerResult

func NewMetricsAdmin

func NewMetricsAdmin(gatherer prometheus.Gatherer) AdminHandlerResult

type AdminParams

type AdminParams struct {
	fx.In

	Lifecycle fx.Lifecycle
	OnErrorCh chan error

	Log         *zap.SugaredLogger
	AdminConfig AdminConfig

	AdminHandlers []map[string]http.Handler `group:"admin_api_handler"`
}

type Config

type Config struct {
	AppName string         `json:"app_name" validate:"required" alias:"appName"`
	Logger  logger.Config  `json:"logger" validate:"dive"`
	Tracing tracing.Config `json:"tracing" validate:"dive"`
	Debug   DebugConfig    `json:"debug" validate:"dive"`
	Admin   AdminConfig    `json:"admin" validate:"dive"`
}

type DebugConfig

type DebugConfig struct {
	Enabled bool   `json:"enabled" default:"true"`
	Addr    string `json:"addr" default:":6060"`
}

func ProvideDebugConfig

func ProvideDebugConfig(config Config) DebugConfig

type DebugParams

type DebugParams struct {
	fx.In

	Lifecycle fx.Lifecycle
	OnErrorCh chan error

	Log         *zap.SugaredLogger
	DebugConfig DebugConfig
}

type TracingParams

type TracingParams struct {
	fx.In

	Lifecycle fx.Lifecycle

	Log    *zap.SugaredLogger
	Tracer *tracing.Tracer
}

Jump to

Keyboard shortcuts

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