api

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: 25 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CommandInfo

type CommandInfo struct {
	Cmd        *exec.Cmd
	Cancel     context.CancelFunc
	StartTime  time.Time
	Status     string
	Continuous bool
	IsPaused   bool // 是否已暂停
}

CommandInfo 命令信息

type CommandService

type CommandService struct {
	pb.UnimplementedCommandServer
	// contains filtered or unexported fields
}

CommandService Command gRPC 服务实现

func NewCommandService

func NewCommandService(logger *zap.Logger) *CommandService

NewCommandService 创建 Command 服务

func (*CommandService) ExecCommand

func (s *CommandService) ExecCommand(req *pb.ExecCommandReq, stream pb.Command_ExecCommandServer) error

ExecCommand 执行命令

func (*CommandService) ExecCommandSignal

func (s *CommandService) ExecCommandSignal(ctx context.Context, req *pb.ExecCommandSignalReq) (*pb.ExecCommandSignalResp, error)

ExecCommandSignal 发送命令信号

func (*CommandService) GetCommandStatus

func (s *CommandService) GetCommandStatus(ctx context.Context, req *pb.GetCommandStatusReq) (*pb.GetCommandStatusResp, error)

GetCommandStatus 获取命令状态

type FileGRPCService

type FileGRPCService struct {
	pb.UnimplementedFileServer
	// contains filtered or unexported fields
}

FileGRPCService File 服务的 gRPC 实现

func NewFileGRPCService

func NewFileGRPCService(fileService *FileService, logger *zap.Logger) *FileGRPCService

NewFileGRPCService 创建 File gRPC 服务

func (*FileGRPCService) CreateDirectory

func (s *FileGRPCService) CreateDirectory(ctx context.Context, req *pb.CreateDirectoryReq) (*pb.CreateDirectoryResp, error)

CreateDirectory 创建目录

func (*FileGRPCService) DeleteFile

func (s *FileGRPCService) DeleteFile(ctx context.Context, req *pb.DeleteFileReq) (*pb.DeleteFileResp, error)

DeleteFile 删除文件或目录

func (*FileGRPCService) DownloadFile

func (s *FileGRPCService) DownloadFile(req *pb.DownloadFileReq, stream pb.File_DownloadFileServer) error

DownloadFile 下载文件(流式)

func (*FileGRPCService) GetFileInfo

func (s *FileGRPCService) GetFileInfo(ctx context.Context, req *pb.GetFileInfoReq) (*pb.GetFileInfoResp, error)

GetFileInfo 获取文件信息

func (*FileGRPCService) GetUploadStatus

func (s *FileGRPCService) GetUploadStatus(ctx context.Context, req *pb.GetUploadStatusReq) (*pb.GetUploadStatusResp, error)

GetUploadStatus 获取上传状态

func (*FileGRPCService) ListFiles

func (s *FileGRPCService) ListFiles(ctx context.Context, req *pb.ListFilesReq) (*pb.ListFilesResp, error)

ListFiles 列出文件

func (*FileGRPCService) StartFileUpload

func (s *FileGRPCService) StartFileUpload(ctx context.Context, req *pb.StartFileUploadReq) (*pb.StartFileUploadResp, error)

StartFileUpload 开始文件上传

func (*FileGRPCService) UploadFileChunk

func (s *FileGRPCService) UploadFileChunk(ctx context.Context, req *pb.UploadFileChunkReq) (*pb.UploadFileChunkResp, error)

UploadFileChunk 上传文件块

type FileInfo

type FileInfo struct {
	Path    string    `json:"path"`
	Size    int64     `json:"size"`
	IsDir   bool      `json:"is_dir"`
	Mode    string    `json:"mode"`
	ModTime time.Time `json:"mod_time"`
	MD5     string    `json:"md5,omitempty"`
	SHA256  string    `json:"sha256,omitempty"`
}

FileInfo 文件信息

type FileService

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

FileService 文件操作服务

func NewFileService

func NewFileService(logger *zap.Logger, uploadDir string) *FileService

NewFileService 创建文件操作服务

func (*FileService) CopyFile

func (fs *FileService) CopyFile(ctx context.Context, srcPath, dstPath string) error

CopyFile 复制文件

func (*FileService) CreateDirectory

func (fs *FileService) CreateDirectory(ctx context.Context, dirPath string, perm os.FileMode) error

CreateDirectory 创建目录

func (*FileService) DeleteDirectory

func (fs *FileService) DeleteDirectory(ctx context.Context, dirPath string) error

DeleteDirectory 删除目录

func (*FileService) DeleteFile

func (fs *FileService) DeleteFile(ctx context.Context, filePath string) error

DeleteFile 删除文件

func (*FileService) DownloadFile

func (fs *FileService) DownloadFile(ctx context.Context, filePath string, offset, length int64) (io.ReadCloser, int64, error)

DownloadFile 下载文件

func (*FileService) GetChunkSize

func (fs *FileService) GetChunkSize() int64

GetChunkSize 获取块大小

func (*FileService) GetFileInfo

func (fs *FileService) GetFileInfo(ctx context.Context, filePath string) (*FileInfo, error)

GetFileInfo 获取文件信息

func (*FileService) GetUploadStatus

func (fs *FileService) GetUploadStatus(ctx context.Context, sessionID string) (*UploadSession, error)

GetUploadStatus 获取上传状态

func (*FileService) ListFiles

func (fs *FileService) ListFiles(ctx context.Context, dirPath string) ([]FileInfo, error)

ListFiles 列出文件

func (*FileService) MoveFile

func (fs *FileService) MoveFile(ctx context.Context, srcPath, dstPath string) error

MoveFile 移动文件

func (*FileService) StartUpload

func (fs *FileService) StartUpload(ctx context.Context, filePath string, totalSize int64, md5, sha256 string) (string, error)

StartUpload 开始上传(创建上传会话)

func (*FileService) UploadChunk

func (fs *FileService) UploadChunk(ctx context.Context, sessionID string, chunkIndex int64, data []byte) error

UploadChunk 上传文件块

type HealthService

type HealthService struct {
	pb.UnimplementedHealthServer
	// contains filtered or unexported fields
}

HealthService 健康检查服务

func NewHealthService

func NewHealthService(healthChecker health.HealthChecker, healthCoordinator *health.Coordinator, serviceManager service.ServiceManager, logger *zap.Logger) *HealthService

NewHealthService 创建健康检查服务

func (*HealthService) GetHealthHistory

func (s *HealthService) GetHealthHistory(ctx context.Context, req *pb.GetHealthHistoryReq) (*pb.GetHealthHistoryResp, error)

GetHealthHistory 获取服务的健康检查历史

func (*HealthService) GetHealthStatus

func (s *HealthService) GetHealthStatus(ctx context.Context, req *pb.GetHealthStatusReq) (*pb.GetHealthStatusResp, error)

GetHealthStatus 获取指定服务的健康状态

func (*HealthService) ListHealthStatuses

func (s *HealthService) ListHealthStatuses(ctx context.Context, req *pb.ListHealthStatusesReq) (*pb.ListHealthStatusesResp, error)

ListHealthStatuses 列出所有服务的健康状态

type MetricsService

type MetricsService struct {
	pb.UnimplementedMetricsServer
	// contains filtered or unexported fields
}

MetricsService 指标服务

func NewMetricsService

func NewMetricsService(
	metricsCollector metrics.MetricsCollector,
	applicationCollector *metrics.ApplicationMetricsCollector,
	serviceManager service.ServiceManager,
	logger *zap.Logger,
) *MetricsService

NewMetricsService 创建指标服务

func (*MetricsService) GetApplicationMetrics

GetApplicationMetrics 获取应用指标

func (*MetricsService) GetMetricsHistory

func (s *MetricsService) GetMetricsHistory(ctx context.Context, req *pb.GetMetricsHistoryReq) (*pb.GetMetricsHistoryResp, error)

GetMetricsHistory 获取指标历史数据

func (*MetricsService) GetServiceMetrics

func (s *MetricsService) GetServiceMetrics(ctx context.Context, req *pb.GetServiceMetricsReq) (*pb.GetServiceMetricsResp, error)

GetServiceMetrics 获取指定服务的指标

func (*MetricsService) GetSystemMetrics

func (s *MetricsService) GetSystemMetrics(ctx context.Context, req *pb.GetSystemMetricsReq) (*pb.GetSystemMetricsResp, error)

GetSystemMetrics 获取系统指标

func (*MetricsService) ListServiceMetrics

ListServiceMetrics 列出所有服务的指标

type PackageService

type PackageService struct {
	pb.UnimplementedPackageServer
	// contains filtered or unexported fields
}

PackageService Package gRPC 服务实现

func NewPackageService

func NewPackageService(
	serviceManager service.ServiceManager,
	configManager service.ConfigManager,
	logManager logs.LogManager,
	logger *zap.Logger,
) *PackageService

NewPackageService 创建 Package 服务

func (*PackageService) ApplyConfigs

func (s *PackageService) ApplyConfigs(ctx context.Context, req *pb.ApplyConfigsReq) (*pb.ApplyConfigsResp, error)

ApplyConfigs 应用配置

func (*PackageService) GetConfigs

func (s *PackageService) GetConfigs(ctx context.Context, req *pb.GetConfigsReq) (*pb.GetConfigsResp, error)

GetConfigs 获取配置

func (*PackageService) GetRecentLogs

func (s *PackageService) GetRecentLogs(ctx context.Context, req *pb.GetRecentLogsReq) (*pb.GetRecentLogsResp, error)

GetRecentLogs 获取最近日志

func (*PackageService) PackageList

func (s *PackageService) PackageList(ctx context.Context, _ *emptypb.Empty) (*pb.PackageListResp, error)

PackageList 列出所有服务

func (*PackageService) QueryLogs

func (s *PackageService) QueryLogs(ctx context.Context, req *pb.QueryLogsReq) (*pb.QueryLogsResp, error)

QueryLogs 查询日志(支持搜索、过滤、分页)

func (*PackageService) Restart

func (s *PackageService) Restart(ctx context.Context, req *pb.RestartReq) (*emptypb.Empty, error)

Restart 重启服务

func (*PackageService) Start

func (s *PackageService) Start(ctx context.Context, req *pb.StartReq) (*emptypb.Empty, error)

Start 启动服务

func (*PackageService) Stop

func (s *PackageService) Stop(ctx context.Context, req *pb.StopReq) (*emptypb.Empty, error)

Stop 停止服务

func (*PackageService) StreamLogs

func (s *PackageService) StreamLogs(req *pb.StreamLogsReq, stream pb.Package_StreamLogsServer) error

StreamLogs 流式传输日志

type UploadSession

type UploadSession struct {
	ID           string
	FilePath     string
	TotalSize    int64
	ReceivedSize int64
	Chunks       map[int64]bool
	MD5          string
	SHA256       string
	Status       string // "uploading", "completed", "failed"
	CreatedAt    time.Time
	// contains filtered or unexported fields
}

UploadSession 上传会话

Jump to

Keyboard shortcuts

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