server

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Jan 1, 2026 License: MIT Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type MetricsCollector

type MetricsCollector interface {
	GetSystemMetrics() interface{}
	GetServiceMetrics(serviceID string) (interface{}, bool)
	GetAllServiceMetrics() map[string]interface{}
	GetHistoryCache() interface{}
	GetPrometheusRegistry() interface{}
}

MetricsCollector 指标收集器接口(避免循环依赖)

type Server

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

Server Agent V2 服务器

func NewServer

func NewServer(
	serverConfig ServerConfig,
	logger *zap.Logger,
	packageService *api.PackageService,
	commandService *api.CommandService,
	healthService *api.HealthService,
	metricsService *api.MetricsService,
	fileService *api.FileGRPCService,
	metricsCollector MetricsCollector,
) (*Server, error)

NewServer 创建新服务器

func NewServerWithStrategy

func NewServerWithStrategy(
	serverConfig ServerConfig,
	logger *zap.Logger,
	packageService *api.PackageService,
	commandService *api.CommandService,
	healthService *api.HealthService,
	metricsService *api.MetricsService,
	fileService *api.FileGRPCService,
	metricsCollector MetricsCollector,
	strategySyncer StrategySyncerInterface,
	telegrafConfigSyncer TelegrafConfigSyncerInterface,
	cfg *config.Config,
) (*Server, error)

NewServerWithStrategy 创建新服务器(带策略支持)

func (*Server) GetGRPCServer

func (s *Server) GetGRPCServer() *grpc.Server

GetGRPCServer 获取 gRPC 服务器实例

func (*Server) Shutdown

func (s *Server) Shutdown(ctx context.Context) error

Shutdown 优雅关闭服务器

func (*Server) Start

func (s *Server) Start(ctx context.Context) error

Start 启动服务器

type ServerConfig

type ServerConfig struct {
	ConfigPath string
	GRPCPort   int
	HTTPPort   int
}

ServerConfig 服务器配置

type StrategySyncerInterface

type StrategySyncerInterface interface {
	GetLastSyncTime() time.Time
	GetLastVersion() int64
	GetStrategyManager() *metrics.StrategyManager
}

StrategySyncerInterface 策略同步器接口(用于查询策略信息)

type TelegrafConfigSyncerInterface

type TelegrafConfigSyncerInterface interface {
	GetLastSyncTime() time.Time
	GetLastConfigHash() string
	GetLastConfig() string
}

TelegrafConfigSyncerInterface Telegraf配置同步器接口(用于查询配置同步状态)

Jump to

Keyboard shortcuts

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