You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.7 KiB
61 lines
1.7 KiB
package disk |
|
|
|
import ( |
|
"encoding/json" |
|
|
|
"github.com/shirou/gopsutil/internal/common" |
|
) |
|
|
|
var invoke common.Invoker = common.Invoke{} |
|
|
|
type UsageStat struct { |
|
Path string `json:"path"` |
|
Fstype string `json:"fstype"` |
|
Total uint64 `json:"total"` |
|
Free uint64 `json:"free"` |
|
Used uint64 `json:"used"` |
|
UsedPercent float64 `json:"usedPercent"` |
|
InodesTotal uint64 `json:"inodesTotal"` |
|
InodesUsed uint64 `json:"inodesUsed"` |
|
InodesFree uint64 `json:"inodesFree"` |
|
InodesUsedPercent float64 `json:"inodesUsedPercent"` |
|
} |
|
|
|
type PartitionStat struct { |
|
Device string `json:"device"` |
|
Mountpoint string `json:"mountpoint"` |
|
Fstype string `json:"fstype"` |
|
Opts string `json:"opts"` |
|
} |
|
|
|
type IOCountersStat struct { |
|
ReadCount uint64 `json:"readCount"` |
|
MergedReadCount uint64 `json:"mergedReadCount"` |
|
WriteCount uint64 `json:"writeCount"` |
|
MergedWriteCount uint64 `json:"mergedWriteCount"` |
|
ReadBytes uint64 `json:"readBytes"` |
|
WriteBytes uint64 `json:"writeBytes"` |
|
ReadTime uint64 `json:"readTime"` |
|
WriteTime uint64 `json:"writeTime"` |
|
IopsInProgress uint64 `json:"iopsInProgress"` |
|
IoTime uint64 `json:"ioTime"` |
|
WeightedIO uint64 `json:"weightedIO"` |
|
Name string `json:"name"` |
|
SerialNumber string `json:"serialNumber"` |
|
Label string `json:"label"` |
|
} |
|
|
|
func (d UsageStat) String() string { |
|
s, _ := json.Marshal(d) |
|
return string(s) |
|
} |
|
|
|
func (d PartitionStat) String() string { |
|
s, _ := json.Marshal(d) |
|
return string(s) |
|
} |
|
|
|
func (d IOCountersStat) String() string { |
|
s, _ := json.Marshal(d) |
|
return string(s) |
|
}
|
|
|