Documentation ¶
Index ¶
- Constants
- func Asset(name string) ([]byte, error)
- func AssetDir(name string) ([]string, error)
- func AssetInfo(name string) (os.FileInfo, error)
- func AssetNames() []string
- func MustAsset(name string) []byte
- func RestoreAsset(dir, name string) error
- func RestoreAssets(dir, name string) error
- type AtaInfo
- type Info
- type NVMeDevice
- type NvmeInfo
- type ScsiInfo
Constants ¶
const ( NvmeAdminGetLogPage = 0x02 NvmeAdminIdentify = 0x06 )
NVMe admin disk query constants
Variables ¶
This section is empty.
Functions ¶
func Asset ¶
Asset loads and returns the asset for the given name. It returns an error if the asset could not be found or could not be loaded.
func AssetDir ¶
AssetDir returns the file names below a certain directory embedded in the file by go-bindata. For example if you run go-bindata on data/... and data contains the following hierarchy:
data/ foo.txt img/ a.png b.png
then AssetDir("data") would return []string{"foo.txt", "img"} AssetDir("data/img") would return []string{"a.png", "b.png"} AssetDir("foo.txt") and AssetDir("notexist") would return an error AssetDir("") will return []string{"data"}.
func AssetInfo ¶
AssetInfo loads and returns the asset info for the given name. It returns an error if the asset could not be found or could not be loaded.
func MustAsset ¶
MustAsset is like Asset but panics when Asset would return an error. It simplifies safe initialization of global variables.
func RestoreAsset ¶
RestoreAsset restores an asset under the given directory
func RestoreAssets ¶
RestoreAssets restores an asset under the given directory recursively
Types ¶
type AtaInfo ¶
type AtaInfo struct { LUWWNDeviceID string `json:"scsiLuWWNDeviceID,omitempty"` SerialNum string `json:"serialNum,omitempty"` ModelNum string `json:"modelNum,omitempty"` FirmwareRevision string `json:"firmwareRevision,omitempty"` RotationRate string `json:"RotationRate,omitempty"` ATAMajorVersion string `json:"MajorVersion,omitempty"` ATAMinorVersion string `json:"MinorVersion,omitempty"` SmartSupportAvailable bool `json:"smartSupportAvailable,omitempty"` SmartSupportEnabled bool `json:"smartSupportEnabled,omitempty"` ErrorLog string `json:"smartErrorLog,omitempty"` Transport string `json:"transport,omitempty"` }
AtaInfo contains ATA drive info
type Info ¶
type Info struct { Device string `json:"device"` Scsi *ScsiInfo `json:"scsi,omitempty"` Nvme *NvmeInfo `json:"nvme,omitempty"` Ata *AtaInfo `json:"ata,omitempty"` Error string `json:"error,omitempty"` }
Info contains S.M.A.R.T data about the drive
type NVMeDevice ¶
type NVMeDevice struct { Name string // contains filtered or unexported fields }
NVMeDevice represents drive data about NVMe drives
func NewNVMeDevice ¶
func NewNVMeDevice(name string) *NVMeDevice
NewNVMeDevice creates a new NVMeDevice struct with name
func (*NVMeDevice) Open ¶
func (d *NVMeDevice) Open() (err error)
Open - open device file to find kernel info
type NvmeInfo ¶
type NvmeInfo struct { SerialNum string `json:"serialNum,omitempty"` VendorID string `json:"vendorId,omitempty"` FirmwareVersion string `json:"firmwareVersion,omitempty"` ModelNum string `json:"modelNum,omitempty"` SpareAvailable string `json:"spareAvailable,omitempty"` SpareThreshold string `json:"spareThreshold,omitempty"` Temperature string `json:"temperature,omitempty"` CriticalWarning string `json:"criticalWarning,omitempty"` MaxDataTransferPages int `json:"maxDataTransferPages,omitempty"` ControllerBusyTime *big.Int `json:"controllerBusyTime,omitempty"` PowerOnHours *big.Int `json:"powerOnHours,omitempty"` PowerCycles *big.Int `json:"powerCycles,omitempty"` UnsafeShutdowns *big.Int `json:"unsafeShutdowns,omitempty"` MediaAndDataIntegrityErrors *big.Int `json:"mediaAndDataIntgerityErrors,omitempty"` DataUnitsReadBytes *big.Int `json:"dataUnitsReadBytes,omitempty"` DataUnitsWrittenBytes *big.Int `json:"dataUnitsWrittenBytes,omitempty"` HostReadCommands *big.Int `json:"hostReadCommands,omitempty"` HostWriteCommands *big.Int `json:"hostWriteCommands,omitempty"` }
NvmeInfo contains NVMe drive info
type ScsiInfo ¶
type ScsiInfo struct { CapacityBytes int64 `json:"scsiCapacityBytes,omitempty"` ModeSenseBuf string `json:"scsiModeSenseBuf,omitempty"` RespLen int64 `json:"scsirespLen,omitempty"` BdLen int64 `json:"scsiBdLen,omitempty"` Offset int64 `json:"scsiOffset,omitempty"` RPM int64 `json:"sciRpm,omitempty"` }
ScsiInfo contains SCSI drive Info