mirror of
https://github.com/lzh-1625/go_process_manager.git
synced 2025-10-06 00:16:53 +08:00
add chart display config
This commit is contained in:
@@ -4,33 +4,34 @@ var CF = new(configuration)
|
|||||||
|
|
||||||
// 只支持 float64、int、int64、bool、string类型
|
// 只支持 float64、int、int64、bool、string类型
|
||||||
type configuration struct {
|
type configuration struct {
|
||||||
LogLevel string `default:"debug" describe:"日志等级[debug,info]"`
|
LogLevel string `default:"debug" describe:"日志等级[debug,info]"`
|
||||||
Listen string `default:":8797" describe:"监听端口"`
|
Listen string `default:":8797" describe:"监听端口"`
|
||||||
EsEnable bool `default:"false" describe:"启用Elasticsearch"`
|
EsEnable bool `default:"false" describe:"启用Elasticsearch"`
|
||||||
EsUrl string `default:"" describe:"Elasticsearch url"`
|
EsUrl string `default:"" describe:"Elasticsearch url"`
|
||||||
EsIndex string `default:"server_log_v1" describe:"Elasticsearch index"`
|
EsIndex string `default:"server_log_v1" describe:"Elasticsearch index"`
|
||||||
EsUsername string `default:"" describe:"Elasticsearch用户名"`
|
EsUsername string `default:"" describe:"Elasticsearch用户名"`
|
||||||
EsPassword string `default:"" describe:"Elasticsearch密码"`
|
EsPassword string `default:"" describe:"Elasticsearch密码"`
|
||||||
EsWindowLimit bool `default:"true" describe:"Es分页10000条限制"`
|
EsWindowLimit bool `default:"true" describe:"Es分页10000条限制"`
|
||||||
FileSizeLimit float64 `default:"10.0" describe:"文件大小限制(MB)"`
|
FileSizeLimit float64 `default:"10.0" describe:"文件大小限制(MB)"`
|
||||||
ProcessInputPrefix string `default:">" describe:"进程输入前缀"`
|
ProcessInputPrefix string `default:">" describe:"进程输入前缀"`
|
||||||
ProcessRestartsLimit int `default:"2" describe:"进程重启次数限制"`
|
ProcessRestartsLimit int `default:"2" describe:"进程重启次数限制"`
|
||||||
ProcessMsgCacheLinesLimit int `default:"50" describe:"std进程缓存消息行数"`
|
ProcessMsgCacheLinesLimit int `default:"50" describe:"std进程缓存消息行数"`
|
||||||
ProcessMsgCacheBufLimit int `default:"4096" describe:"pty进程缓存消息字节长度"`
|
ProcessMsgCacheBufLimit int `default:"4096" describe:"pty进程缓存消息字节长度"`
|
||||||
ProcessExpireTime int64 `default:"60" describe:"进程控制权过期时间(秒)"`
|
ProcessExpireTime int64 `default:"60" describe:"进程控制权过期时间(秒)"`
|
||||||
PerformanceInfoListLength int `default:"30" describe:"性能信息存储长度"`
|
PerformanceInfoListLength int `default:"30" describe:"性能信息存储长度"`
|
||||||
PerformanceInfoInterval int `default:"60" describe:"监控获取间隔时间(秒)"`
|
PerformanceInfoInterval int `default:"60" describe:"监控获取间隔时间(秒)"`
|
||||||
TerminalConnectTimeout int `default:"10" describe:"终端连接超时时间(分钟)"`
|
TerminalConnectTimeout int `default:"10" describe:"终端连接超时时间(分钟)"`
|
||||||
UserPassWordMinLength int `default:"4" describe:"用户密码最小长度"`
|
UserPassWordMinLength int `default:"4" describe:"用户密码最小长度"`
|
||||||
LogMinLenth int `default:"0" describe:"过滤日志最小长度"`
|
LogMinLenth int `default:"0" describe:"过滤日志最小长度"`
|
||||||
LogHandlerPoolSize int `default:"10" describe:"日志处理并行数"`
|
LogHandlerPoolSize int `default:"10" describe:"日志处理并行数"`
|
||||||
PprofEnable bool `default:"true" describe:"启用pprof分析工具"`
|
PprofEnable bool `default:"true" describe:"启用pprof分析工具"`
|
||||||
KillWaitTime int `default:"5" describe:"kill信号等待时间(秒)"`
|
KillWaitTime int `default:"5" describe:"kill信号等待时间(秒)"`
|
||||||
TaskTimeout int `default:"60" describe:"任务执行超时时间(秒)"`
|
TaskTimeout int `default:"60" describe:"任务执行超时时间(秒)"`
|
||||||
TokenExpirationTime int64 `default:"720" describe:"token过期时间(小时)"`
|
TokenExpirationTime int64 `default:"720" describe:"token过期时间(小时)"`
|
||||||
WsHealthCheckInterval int `default:"3" describe:"ws主动健康检查间隔(秒)"`
|
WsHealthCheckInterval int `default:"3" describe:"ws主动健康检查间隔(秒)"`
|
||||||
CgroupPeriod int64 `default:"100000" describe:"CgroupPeriod"`
|
CgroupPeriod int64 `default:"100000" describe:"CgroupPeriod"`
|
||||||
CgroupSwapLimit bool `default:"false" describe:"cgroup swap限制"`
|
CgroupSwapLimit bool `default:"false" describe:"cgroup swap限制"`
|
||||||
CondWaitTime int `default:"30" describe:"长轮询等待时间(秒)"`
|
CondWaitTime int `default:"30" describe:"长轮询等待时间(秒)"`
|
||||||
Tui bool `default:"-"`
|
PerformanceCapacityDisplay bool `default:"false" describe:"性能资源容量显示"`
|
||||||
|
Tui bool `default:"-"`
|
||||||
}
|
}
|
||||||
|
@@ -7,6 +7,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
|
"github.com/lzh-1625/go_process_manager/config"
|
||||||
"github.com/lzh-1625/go_process_manager/internal/app/constants"
|
"github.com/lzh-1625/go_process_manager/internal/app/constants"
|
||||||
"github.com/lzh-1625/go_process_manager/internal/app/model"
|
"github.com/lzh-1625/go_process_manager/internal/app/model"
|
||||||
"github.com/lzh-1625/go_process_manager/internal/app/repository"
|
"github.com/lzh-1625/go_process_manager/internal/app/repository"
|
||||||
@@ -119,10 +120,13 @@ func (p *processCtlLogic) getProcessInfoList(processConfiglist []model.Process)
|
|||||||
pi.State.State = process.State.State
|
pi.State.State = process.State.State
|
||||||
pi.StartTime = process.GetStartTimeFormat()
|
pi.StartTime = process.GetStartTimeFormat()
|
||||||
pi.User = process.GetUserString()
|
pi.User = process.GetUserString()
|
||||||
|
|
||||||
pi.Usage.Cpu = process.performanceStatus.cpu
|
pi.Usage.Cpu = process.performanceStatus.cpu
|
||||||
pi.Usage.CpuCapacity = float64(runtime.NumCPU()) * 100.0
|
|
||||||
pi.Usage.Mem = process.performanceStatus.mem
|
pi.Usage.Mem = process.performanceStatus.mem
|
||||||
pi.Usage.MemCapacity = float64(utils.UnwarpIgnore(mem.VirtualMemory()).Total >> 10)
|
if config.CF.PerformanceCapacityDisplay {
|
||||||
|
pi.Usage.CpuCapacity = float64(runtime.NumCPU()) * 100.0
|
||||||
|
pi.Usage.MemCapacity = float64(utils.UnwarpIgnore(mem.VirtualMemory()).Total >> 10)
|
||||||
|
}
|
||||||
pi.Usage.Time = process.performanceStatus.time
|
pi.Usage.Time = process.performanceStatus.time
|
||||||
pi.TermType = process.Type()
|
pi.TermType = process.Type()
|
||||||
pi.CgroupEnable = process.Config.cgroupEnable
|
pi.CgroupEnable = process.Config.cgroupEnable
|
||||||
|
@@ -16,8 +16,8 @@ type ProcessInfo struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type Usage struct {
|
type Usage struct {
|
||||||
CpuCapacity float64 `json:"cpuCapacity"`
|
CpuCapacity float64 `json:"cpuCapacity,omitempty"`
|
||||||
MemCapacity float64 `json:"memCapacity"`
|
MemCapacity float64 `json:"memCapacity,omitempty"`
|
||||||
Cpu []float64 `json:"cpu"`
|
Cpu []float64 `json:"cpu"`
|
||||||
Mem []float64 `json:"mem"`
|
Mem []float64 `json:"mem"`
|
||||||
Time []string `json:"time"`
|
Time []string `json:"time"`
|
||||||
|
Reference in New Issue
Block a user