Finish storage information api
This commit is contained in:
@@ -27,7 +27,7 @@ class StatisticsController(
|
||||
@GetMapping("/cpu")
|
||||
fun cpu(): ResponseResult<CpuInfoVo> = ResponseResult.success(data = statisticsService.cpu())
|
||||
|
||||
@Operation(summary = "获取内存信息")
|
||||
@GetMapping("/memory")
|
||||
fun memory(): ResponseResult<MemoryInfoVo> = ResponseResult.success(data = statisticsService.memory())
|
||||
@Operation(summary = "获取存储信息")
|
||||
@GetMapping("/storage")
|
||||
fun storage(): ResponseResult<StorageInfoVo> = ResponseResult.success(data = statisticsService.storage())
|
||||
}
|
||||
@@ -9,5 +9,5 @@ interface IStatisticsService {
|
||||
|
||||
fun cpu(): CpuInfoVo
|
||||
|
||||
fun memory(): MemoryInfoVo
|
||||
fun storage(): StorageInfoVo
|
||||
}
|
||||
@@ -9,7 +9,7 @@ import top.fatweb.api.util.ByteUtil
|
||||
import top.fatweb.api.vo.system.*
|
||||
import java.time.LocalDateTime
|
||||
import java.time.ZoneOffset
|
||||
import java.util.Properties
|
||||
import java.util.*
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
||||
@Service
|
||||
@@ -93,7 +93,8 @@ class StatisticsServiceImpl : IStatisticsService {
|
||||
processorTicks[CentralProcessor.TickType.SOFTIRQ.index] - processorPrevTicks[CentralProcessor.TickType.SOFTIRQ.index]
|
||||
val processorSteal =
|
||||
processorTicks[CentralProcessor.TickType.STEAL.index] - processorPrevTicks[CentralProcessor.TickType.STEAL.index]
|
||||
val processorTotal = processorUser + processorNice + processorSystem + processorIdle + processorIowait + processorIrq + processorSoftirq + processorSteal
|
||||
val processorTotal =
|
||||
processorUser + processorNice + processorSystem + processorIdle + processorIowait + processorIrq + processorSoftirq + processorSteal
|
||||
processors?.add(
|
||||
CpuInfoVo(
|
||||
processorUser,
|
||||
@@ -112,14 +113,21 @@ class StatisticsServiceImpl : IStatisticsService {
|
||||
}
|
||||
}
|
||||
|
||||
override fun memory() = MemoryInfoVo(
|
||||
total = systemInfo.hardware.memory.total,
|
||||
free = systemInfo.hardware.memory.available,
|
||||
virtualMax = systemInfo.hardware.memory.virtualMemory.virtualMax,
|
||||
virtualInUse = systemInfo.hardware.memory.virtualMemory.virtualInUse,
|
||||
override fun storage() = StorageInfoVo(
|
||||
memoryTotal = systemInfo.hardware.memory.total,
|
||||
memoryFree = systemInfo.hardware.memory.available,
|
||||
virtualMemoryMax = systemInfo.hardware.memory.virtualMemory.virtualMax,
|
||||
virtualMemoryInUse = systemInfo.hardware.memory.virtualMemory.virtualInUse,
|
||||
swapTotal = systemInfo.hardware.memory.virtualMemory.swapTotal,
|
||||
swapUsed = systemInfo.hardware.memory.virtualMemory.swapUsed,
|
||||
jvmTotal = runtime.totalMemory(),
|
||||
jvmFree = runtime.freeMemory()
|
||||
jvmFree = runtime.freeMemory(),
|
||||
fileStores = systemInfo.operatingSystem.fileSystem.fileStores.map {
|
||||
FileStoreInfoVo(
|
||||
mount = it.mount,
|
||||
total = it.totalSpace,
|
||||
free = it.freeSpace
|
||||
)
|
||||
}
|
||||
)
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
package top.fatweb.api.vo.system
|
||||
|
||||
data class FileStoreInfoVo(
|
||||
val mount: String,
|
||||
val total: Long,
|
||||
val free: Long
|
||||
)
|
||||
@@ -1,12 +0,0 @@
|
||||
package top.fatweb.api.vo.system
|
||||
|
||||
data class MemoryInfoVo(
|
||||
val total: Long,
|
||||
val free: Long,
|
||||
val virtualMax: Long,
|
||||
val virtualInUse: Long,
|
||||
val swapTotal: Long,
|
||||
val swapUsed: Long,
|
||||
val jvmTotal: Long,
|
||||
val jvmFree: Long,
|
||||
)
|
||||
13
src/main/kotlin/top/fatweb/api/vo/system/StorageInfoVo.kt
Normal file
13
src/main/kotlin/top/fatweb/api/vo/system/StorageInfoVo.kt
Normal file
@@ -0,0 +1,13 @@
|
||||
package top.fatweb.api.vo.system
|
||||
|
||||
data class StorageInfoVo(
|
||||
val memoryTotal: Long,
|
||||
val memoryFree: Long,
|
||||
val virtualMemoryMax: Long,
|
||||
val virtualMemoryInUse: Long,
|
||||
val swapTotal: Long,
|
||||
val swapUsed: Long,
|
||||
val jvmTotal: Long,
|
||||
val jvmFree: Long,
|
||||
val fileStores: List<FileStoreInfoVo>
|
||||
)
|
||||
Reference in New Issue
Block a user