11、GO语言使用gopsutil包进行机器信息采集

package main

import (
    "fmt"
    "github.com/shirou/gopsutil/cpu"
    "github.com/shirou/gopsutil/disk"
    "github.com/shirou/gopsutil/host"
    "github.com/shirou/gopsutil/mem"
    "github.com/shirou/gopsutil/net"
    "github.com/shirou/gopsutil/process"
    "time"
)

func main() {
    //获取本机信息
    h,_ := host.Info()
    fmt.Println("本机信息:",h)

    //获取CPU信息
    c,_ := cpu.Info()
    fmt.Println("cpu信息:",c)
    /*用户CPU时间/系统CPU时间/空闲时间。。。等等
    用户CPU时间:就是用户的进程获得了CPU资源以后,在用户态执行的时间。
    系统CPU时间:用户进程获得了CPU资源以后,在内核态的执行时间。
    */
    c1,_ := cpu.Times(false)
    fmt.Println("cpu1:",c1)

    //CPU使用率,每秒刷新一次
    for{
     c2, _ := cpu.Percent(time.Duration(time.Second), false)
     fmt.Println(c2)
    }

    //获取物理内存和交换区内存信息
    m1, _ := mem.VirtualMemory()
    fmt.Println("m1:",m1)
    m2, _ := mem.SwapMemory()
    fmt.Println("m2:",m2)

    //可以通过psutil获取磁盘分区、磁盘使用率和磁盘IO信息
    d1, _ := disk.Partitions(true)  //所有分区
    fmt.Println("d1:",d1)
    d2, _ := disk.Usage("E:")  //指定某路径的硬盘使用情况
    fmt.Println("d2:",d2)
    d3, _ := disk.IOCounters()  //所有硬盘的io信息
    fmt.Println("d3:",d3)

    //获取当前网络连接信息
    n1, _ := net.Connections("all")  //可填入tcp、udp、tcp4、udp4等等
    fmt.Println("n1:",n1)

    //获取网络读写字节/包的个数
    n2, _ := net.IOCounters(false)
    fmt.Println("n2:",n2)

    //获取到所有进程的详细信息
    p1, _ := process.Pids()  //获取当前所有进程的pid
    fmt.Println("p1:",p1)
    p2,_ := process.GetWin32Proc(1120)  //对应pid的进程信息
    fmt.Println("p2:",p2)
    //fmt.Println(p2[0].ParentProcessID)  //获取父进程的pid
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 原创链接 一、Java面试题java有多重要,对于做android的我们,不需要多说了,let’s go (1)J...
    李福来阅读 2,350评论 0 5
  • Anna艳娜 2018年5月10日复盘 早晨6:00起床,状态依旧不是很好,没有选择学习,转而去做了下整理,放松一...
    Anna艳娜阅读 156评论 0 0
  • 一、介绍 GCD,英文全称是Grand Central Dispatch(功能强悍的中央调度器),基于C语言编写的...
    时间已静止阅读 9,173评论 11 53
  • 1、今天下午接女儿放学,陪她一起玩耍。回家的路上,女儿说:妈妈,我长大了要跟多多结婚(她班同学)所完后,我有些难过...
    宁静的流星阅读 281评论 0 0
  • 窗外黄绿片片 是昨夜留下的梦 落在云雾间 朦胧中的点点 是你唇上的颜色 匆匆来去 灰与黑坚实的烙在天地间 一年年横...
    秀秀Jenny阅读 303评论 0 1