1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
'\" t
.\" Title: nvme-virtium-save-smart-to-vtview-log
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 02/14/2024
.\" Manual: NVMe Manual
.\" Source: NVMe
.\" Language: English
.\"
.TH "NVME\-VIRTIUM\-SAVE\" "1" "02/14/2024" "NVMe" "NVMe Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
nvme-virtium-save-smart-to-vtview-log \- Periodically save smart attributes into a log file (csv format)\&.
.SH "SYNOPSIS"
.sp
.nf
\fInvme virtium save\-smart\-to\-vtview\-log\fR <device> [\-\-run\-time=<NUM> | \-r <NUM>]
[\-\-freq=<NUM> | \-f <NUM>]
[\-\-output\-file=<FILE> | \-o <FILE>]
[\-\-test\-name=<NAME> | \-n <NAME>]
.fi
.SH "DESCRIPTION"
.sp
This command automates the process of collecting SMART data periodically and saving the data in a ready\-to\-analyze format\&. Each entry is saved with timestamp and in csv format\&. Users can use excel to analyze the data\&. Some examples of use cases are collecting SMART data for temperature characterization, data to calculate endurance, or collecting SMART data during a test or during normal operation\&.
.sp
The <device> parameter is mandatory and may be either the NVMe character device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1)\&.
.sp
On success, the command generates a log file, which contains an entry for identify device (current features & settings) and periodic entries of SMART data\&.
.sp
This command runs for the time specified by the option <run\-time>, and collects SMART data at the frequency specified by the option <freq>\&. If the output file name is not specified, this command will generate a file name that include model string and serial number of the device\&.
.sp
If the test\-name option is specified, it will be recorded in the log file and be used as part of the log file name\&.
.SH "OPTIONS"
.PP
\-r <NUM>, \-\-run\-time=<NUM>
.RS 4
(optional) Number of hours to log data (default = 20 hours)
.RE
.PP
\-f <NUM>, \-\-freq=<NUM>
.RS 4
(optional) How often you want to log SMART data (0\&.25 = 15\*(Aq, 0\&.5 = 30\*(Aq, 1 = 1 hour, 2 = 2 hours, etc\&.)\&. Default = 10 hours\&.
.RE
.PP
\-o <FILE>, \-\-output\-file=<FILE>
.RS 4
(optional) Name of the log file (give it a name that easy for you to remember what the test is)\&. You can leave it blank too, the file name will be generated as <model string>\-<serial number>\-<test name>\&.txt\&.
.RE
.PP
\-n <NAME>, \-\-test\-name=<NAME>
.RS 4
(optional) Name of the test you are doing\&. We use this string as part of the name of the log file\&.
.RE
.SH "EXAMPLES"
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Temperature characterization:
.sp
.if n \{\
.RS 4
.\}
.nf
# nvme virtium save\-smart\-to\-vtview\-log /dev/yourDevice \-\-run\-time=100 \-\-record\-frequency=0\&.25 \-\-test\-name=burn\-in\-at\-(\-40)
.fi
.if n \{\
.RE
.\}
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Endurance testing:
.sp
.if n \{\
.RS 4
.\}
.nf
# nvme virtium save\-smart\-to\-vtview\-log /dev/yourDevice \-\-run\-time=100 \-\-record\-frequency=1 \-\-test\-name=Endurance\-test\-JEDEG\-219\-workload
.fi
.if n \{\
.RE
.\}
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Just logging: Default logging is run for 20 hours and log every 10 hours\&.
.sp
.if n \{\
.RS 4
.\}
.nf
# nvme virtium save\-smart\-to\-vtview\-log /dev/yourDevice
.fi
.if n \{\
.RE
.\}
.RE
.SH "NVME"
.sp
Part of the nvme\-user suite
|