Go语言实现监控服务器磁盘使用率

package main
import (
	"fmt"
	"github.com/gin-gonic/gin" // 引入Gin框架
	"os/exec"
	"strings"
    "net/http"
)
func main() {
	// 创建Gin服务器
	r := gin.Default()
	r.GET("/", func(c *gin.Context) {
		// 获取磁盘使用率
		out, err := exec.Command("df", "-h").Output()
		if err != nil {
			c.String(http.StatusInternalServerError, "Error: %!!(MISSING)s(MISSING)", err) // 如果出错,输出错误信息
			return
		}
		// 解析输出
		lines := strings.Split(string(out), "\n")
		c.Writer.WriteString("<html><body>") // 输出HTML页面头
		c.Writer.WriteString("<h1>Disk Usage</h1>") // 输出标题
		c.Writer.WriteString("<table>") // 输出表格
		for _, line := range lines[1:] {
			fields := strings.Fields(line)
			if len(fields) == 0 {
				continue
			}
			// 输出磁盘使用率
			c.Writer.WriteString(fmt.Sprintf("<tr><td>%!!(MISSING)!(MISSING)s(MISSING)</td><td>%!!(MISSING)!(MISSING)s(MISSING)</td></tr>\n", fields[0], fields[4])) // 输出磁盘使用率
		}
		c.Writer.WriteString("</table>") // 结束表格
		c.Writer.WriteString("</body></html>") // 结束HTML页面
	})
	// 启动Gin服务器
	r.Run(":8999") // 监听8080端口
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值