|
- package servicestats
-
- import (
- "sync"
- "time"
-
- jcstypes "gitlink.org.cn/cloudream/jcs-pub/common/types"
- )
-
- type StatsHost struct {
- // 统计Hub间的传输数据,仅包含当前Hub主动发送或接收的数量。
- HubTransfer *HubTransferStats
- // 统计Hub与存储系统间的传输数据,仅包含当前Hub主动发送或接收的数量。
- HubStorageTransfer *HubStorageTransferStats
- }
-
- func (h *StatsHost) SetupHubTransfer(fromHubID jcstypes.HubID) {
- h.HubTransfer = &HubTransferStats{
- fromHubID: fromHubID,
- lock: &sync.Mutex{},
- data: HubTransferStatsData{
- StartTime: time.Now(),
- Entries: make(map[jcstypes.HubID]*HubTransferStatsEntry),
- },
- }
- }
-
- func (h *StatsHost) SetupHubStorageTransfer(fromHubID jcstypes.HubID) {
- h.HubStorageTransfer = &HubStorageTransferStats{
- fromHubID: fromHubID,
- lock: &sync.Mutex{},
- data: HubStorageTransferStatsData{
- StartTime: time.Now(),
- Entries: make(map[jcstypes.StorageID]*HubStorageTransferStatsEntry),
- },
- }
- }
|