plugin_summary

package module
v3.0.0-...-9000c53 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 16, 2022 License: MIT Imports: 11 Imported by: 0

README

Summary插件

对系统的信息进行采样,支持级联采样,即从服务器会向主服务器报告数据

如果没有订阅者则不进行采集,节省系统资源

默认配置

[Summary]
SampleRate = 1
NetAdapter = '@en\d+@'
[Summary]
SampleRate = 1
NetAdapter = "eth"
  • SampleRate 采样率,单位秒,即每一秒采样一次
  • NetAdapter 只收集指定的网卡数据,用于过滤机器上的虚拟网卡,支持正则

数据结构

type ServerSummary struct {
	Address string
	Memory  struct {
		Total uint64
		Free  uint64
		Used  uint64
		Usage float64
	}
	CPUUsage float64
	HardDisk struct {
		Total uint64
		Free  uint64
		Used  uint64
		Usage float64
	}
	NetWork     []NetWorkInfo
	Streams     []*Stream
	lastNetWork []NetWorkInfo
	ref         int
	control     chan bool
	reportChan  chan *ServerSummary
	Children    map[string]*ServerSummary
}

API

  • /api/summary 获取采样数据,这个接口返回一个SSE

上报逻辑

graph LR
    从服务器 --上报--> 主服务器
    主服务器 --推送--> 用户页面

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type NetWorkInfo

type NetWorkInfo struct {
	Name         string
	Receive      uint64
	Sent         uint64
	ReceiveSpeed uint64
	SentSpeed    uint64
}

NetWorkInfo 网速信息

type ServerSummary

type ServerSummary struct {
	Address string
	Memory  struct {
		Total uint64
		Free  uint64
		Used  uint64
		Usage float64
	}
	CPUUsage float64
	HardDisk struct {
		Total uint64
		Free  uint64
		Used  uint64
		Usage float64
	}
	NetWork []NetWorkInfo
	Streams []*Stream

	Children map[string]*ServerSummary
	// contains filtered or unexported fields
}

ServerSummary 系统摘要定义

var Summary ServerSummary

Summary 系统摘要数据

func (*ServerSummary) Add

func (s *ServerSummary) Add()

Add 增加订阅者

func (*ServerSummary) Done

func (s *ServerSummary) Done()

Done 删除订阅者

func (*ServerSummary) Report

func (s *ServerSummary) Report(slave *ServerSummary)

Report 上报数据

func (*ServerSummary) Running

func (s *ServerSummary) Running() bool

Running 是否正在采集数据

func (*ServerSummary) StartSummary

func (s *ServerSummary) StartSummary()

StartSummary 开始定时采集数据,每秒一次

Jump to

Keyboard shortcuts

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