File tree 3 files changed +82
-0
lines changed
3 files changed +82
-0
lines changed Original file line number Diff line number Diff line change
1
+ // Copyright 2021 The Prometheus Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+
14
+ package procfs
15
+
16
+ import (
17
+ "strings"
18
+
19
+ "github.com/prometheus/procfs/internal/util"
20
+ )
21
+
22
+ // CmdLine returns the command line of the kernel.
23
+ func (fs FS ) CmdLine () ([]string , error ) {
24
+ data , err := util .ReadFileNoStat (fs .proc .Path ("cmdline" ))
25
+ if err != nil {
26
+ return nil , err
27
+ }
28
+
29
+ return strings .Fields (string (data )), nil
30
+ }
Original file line number Diff line number Diff line change
1
+ // Copyright 2021 The Prometheus Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+
14
+ // +build linux
15
+
16
+ package procfs
17
+
18
+ import (
19
+ "testing"
20
+
21
+ "github.com/google/go-cmp/cmp"
22
+ )
23
+
24
+ func TestCmdline (t * testing.T ) {
25
+ fs , err := NewFS (procTestFixtures )
26
+ if err != nil {
27
+ t .Fatal (err )
28
+ }
29
+
30
+ got , err := fs .CmdLine ()
31
+ if err != nil {
32
+ t .Fatal (err )
33
+ }
34
+
35
+ want := []string {
36
+ "BOOT_IMAGE=/vmlinuz-5.11.0-22-generic" ,
37
+ "root=UUID=456a0345-450d-4f7b-b7c9-43e3241d99ad" ,
38
+ "ro" ,
39
+ "quiet" ,
40
+ "splash" ,
41
+ "vt.handoff=7" ,
42
+ }
43
+
44
+ if diff := cmp .Diff (want , got ); diff != "" {
45
+ t .Fatalf ("unexpected CmdLine (-want +got):\n %s" , diff )
46
+ }
47
+ }
Original file line number Diff line number Diff line change @@ -644,6 +644,11 @@ Node 0, zone DMA32 759 572 791 475 194 45 12 0
644
644
Node 0, zone Normal 4381 1093 185 1530 567 102 4 0 0 0 0
645
645
Mode: 644
646
646
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
647
+ Path: fixtures/proc/cmdline
648
+ Lines: 1
649
+ BOOT_IMAGE=/vmlinuz-5.11.0-22-generic root=UUID=456a0345-450d-4f7b-b7c9-43e3241d99ad ro quiet splash vt.handoff=7
650
+ Mode: 444
651
+ # ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
647
652
Path: fixtures/proc/cpuinfo
648
653
Lines: 216
649
654
processor : 0
You can’t perform that action at this time.
0 commit comments