mirror of
https://github.com/fankes/komari-agent.git
synced 2026-03-26 21:35:12 +08:00
Compare commits
5 Commits
c22aecbf1d
...
ec28397f8b
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ec28397f8b | ||
|
|
ed2c7684fa | ||
|
|
d77e9c52e9 | ||
|
|
456b71d395 | ||
|
|
a463360836 |
@@ -26,6 +26,7 @@ type Config struct {
|
||||
CustomIpv4 string `json:"custom_ipv4" env:"AGENT_CUSTOM_IPV4"` // 自定义 IPv4 地址
|
||||
CustomIpv6 string `json:"custom_ipv6" env:"AGENT_CUSTOM_IPV6"` // 自定义 IPv6 地址
|
||||
GetIpAddrFromNic bool `json:"get_ip_addr_from_nic" env:"AGENT_GET_IP_ADDR_FROM_NIC"` // 从网卡获取IP地址
|
||||
HostProc string `json:"host_proc" env:"HOST_PROC"` // 容器环境下宿主机/proc目录的挂载点,用于监控宿主机进程
|
||||
ConfigFile string `json:"config_file" env:"AGENT_CONFIG_FILE"` // JSON配置文件路径
|
||||
|
||||
}
|
||||
|
||||
@@ -104,15 +104,15 @@ func GetMemHtopLike() RamInfo {
|
||||
} else {
|
||||
raminfo.Used = info.MemTotal - info.MemFree
|
||||
}
|
||||
raminfo.Used += info.Shmem
|
||||
|
||||
// Adjust for Zswap
|
||||
if info.Zswap > 0 || info.Zswapped > 0 {
|
||||
if raminfo.Used > info.Zswap {
|
||||
raminfo.Used -= info.Zswap
|
||||
} else {
|
||||
raminfo.Used = 0
|
||||
}
|
||||
}
|
||||
//if info.Zswap > 0 || info.Zswapped > 0 {
|
||||
// if raminfo.Used > info.Zswap {
|
||||
// raminfo.Used -= info.Zswap
|
||||
// } else {
|
||||
// raminfo.Used = 0
|
||||
// }
|
||||
//}
|
||||
return raminfo
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,6 +26,11 @@ func OSName() string {
|
||||
return synologyName
|
||||
}
|
||||
|
||||
// Check if it's a fnOS
|
||||
if fnOSName := detectFnOS(); fnOSName != "" {
|
||||
return fnOSName
|
||||
}
|
||||
|
||||
file, err := os.Open("/etc/os-release")
|
||||
if err != nil {
|
||||
return "Linux"
|
||||
@@ -47,6 +52,21 @@ func OSName() string {
|
||||
return "Linux"
|
||||
}
|
||||
|
||||
func detectFnOS() string {
|
||||
if info, err := os.Stat("/usr/trim/BUILD_VERSION"); err == nil && !info.IsDir() {
|
||||
if data, err := os.ReadFile("/usr/trim/BUILD_VERSION"); err == nil {
|
||||
// format like "1.1.11"
|
||||
if version := strings.TrimSpace(string(data)); version != "" {
|
||||
return "fnOS " + version
|
||||
}
|
||||
}
|
||||
}
|
||||
if info, err := os.Stat("/usr/trim"); err == nil && info.IsDir() {
|
||||
return "fnOS"
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func detectSynology() string {
|
||||
synologyFiles := []string{
|
||||
"/etc/synoinfo.conf",
|
||||
|
||||
@@ -17,6 +17,12 @@ func ProcessCount() (count int) {
|
||||
func processCountLinux() (count int) {
|
||||
procDir := "/proc"
|
||||
|
||||
if flags.HostProc != "" {
|
||||
if info, err := os.Stat(flags.HostProc); err == nil && info.IsDir() {
|
||||
procDir = flags.HostProc
|
||||
}
|
||||
}
|
||||
|
||||
entries, err := os.ReadDir(procDir)
|
||||
if err != nil {
|
||||
return 0
|
||||
|
||||
Reference in New Issue
Block a user