-
Notifications
You must be signed in to change notification settings - Fork 498
/
facter.yaml
2062 lines (1913 loc) · 82.5 KB
/
facter.yaml
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
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
# This file is used to validate the facter output schema and also document facts.
#
# Use the following attributes for each entry:
# - pattern (optional): the pattern to match against a fact name; if not specified, an exact match is performed.
# - type (required): the type of the fact. Must be one of the following:
# * integer
# * double
# * string
# * boolean
# * array
# * map
# * ip (IPv4 address string)
# * ip6 (IPv6 address string)
# * mac (MAC address string)
# - hidden (optional; default: false): true if the value is hidden from facter output by default, false if not.
# - description (required): describes the fact's purpose.
# - resolution (optional): describes how the fact is resolved.
# - caveats (optional): describes any caveats to the fact.
# - elements (required for map types): contains the element values of a map value; each element is another entry.
# - validate (optional; default: true): true if a map value's elements should be validated or false if not.
# - blockgroup (optional): the block group of this fact; if not specified, the fact cannot be blocked
#
# Please keep the facts in alphabetical order.
aio_agent_version:
type: string
description: Return the version of the puppet-agent package that installed facter.
resolution: |
All platforms: use the compile-time enabled version definition.
architecture:
type: string
hidden: true
description: Return the operating system's hardware architecture.
resolution: |
POSIX platforms: use the `uname` function to retrieve the OS hardware architecture.
Windows: use the `GetNativeSystemInfo` function to retrieve the OS hardware architecture.
caveats: |
Linux: Debian, Gentoo, kFreeBSD, and Ubuntu use "amd64" for "x86_64" and Gentoo uses "x86" for "i386".
augeas:
type: map
description: Return information about augeas.
resolution: |
All platforms: query augparse for augeas metadata.
elements:
version:
type: string
description: The version of augparse.
augeasversion:
type: string
hidden: true
description: Return the version of augeas.
resolution: |
All platforms: query augparse for the augeas version.
az_metadata:
type: map
description: |
Return the Microsoft Azure instance metadata.
Please see the [Microsoft Azure instance metadata documentation](http://https://docs.microsoft.com/en-us/azure/virtual-machines/windows/instance-metadata-service) for the contents of this fact.
resolution: |
Azure: query the Azure metadata endpoint and parse the response.
caveats: |
All platforms: `libfacter` must be built with `libcurl` support.
validate: false
blockdevices:
type: string
hidden: true
description: Return a comma-separated list of block devices.
resolution: |
Linux: parse the contents of `/sys/block/<device>/`.
Solaris: use the `kstat` function to query disk information.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
blockdevice_<devicename>_model:
pattern: '^blockdevice_[A-Za-z0-9]+_model$'
type: string
hidden: true
description: Return the model name of block devices attached to the system.
resolution: |
Linux: parse the contents of `/sys/block/<device>/device/model` to retrieve the model name/number for a device.
Solaris: use the `kstat` function to query disk information.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
blockdevice_<devicename>_size:
pattern: ^blockdevice_[A-Za-z0-9]+_size$
type: integer
hidden: true
description: Return the size of a block device in bytes.
resolution: |
Linux: parse the contents of `/sys/block/<device>/size` to receive the size (multiplying by 512 to correct for blocks-to-bytes).
Solaris: use the `kstat` function to query disk information.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
blockdevice_<devicename>_vendor:
pattern: ^blockdevice_[A-Za-z0-9]+_vendor$
type: string
hidden: true
description: Return the vendor name of block devices attached to the system.
resolution: |
Linux: parse the contents of `/sys/block/<device>/device/vendor` to retrieve the vendor for a device.
Solaris: use the `kstat` function to query disk information.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
bios_release_date:
type: string
hidden: true
description: Return the release date of the system BIOS.
resolution: |
Linux: parse the contents of `/sys/class/dmi/id/bios_date` to retrieve the system BIOS release date.
Solaris: use the `smbios` utility to retrieve the system BIOS release date.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
bios_vendor:
type: string
hidden: true
description: Return the vendor of the system BIOS.
resolution: |
Linux: parse the contents of `/sys/class/dmi/id/bios_vendor` to retrieve the system BIOS vendor.
Solaris: use the `smbios` utility to retrieve the system BIOS vendor.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
bios_version:
type: string
hidden: true
description: Return the version of the system BIOS.
resolution: |
Linux: parse the contents of `/sys/class/dmi/id/bios_version` to retrieve the system BIOS version.
Solaris: use the `smbios` utility to retrieve the system BIOS version.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
boardassettag:
type: string
hidden: true
description: Return the system board asset tag.
resolution: |
Linux: parse the contents of `/sys/class/dmi/id/board_asset_tag` to retrieve the system board asset tag.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
boardmanufacturer:
type: string
hidden: true
description: Return the system board manufacturer.
resolution: |
Linux: parse the contents of `/sys/class/dmi/id/board_vendor` to retrieve the system board manufacturer.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
boardproductname:
type: string
hidden: true
description: Return the system board product name.
resolution: |
Linux: parse the contents of `/sys/class/dmi/id/board_name` to retrieve the system board product name.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
boardserialnumber:
type: string
hidden: true
description: Return the system board serial number.
resolution: |
Linux: parse the contents of `/sys/class/dmi/id/board_serial` to retrieve the system board serial number.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
chassisassettag:
type: string
hidden: true
description: Return the system chassis asset tag.
resolution: |
Linux: parse the contents of `/sys/class/dmi/id/chassis_asset_tag` to retrieve the system chassis asset tag.
Solaris: use the `smbios` utility to retrieve the system chassis asset tag.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
chassistype:
type: string
hidden: true
description: Return the system chassis type.
resolution: |
Linux: parse the contents of `/sys/class/dmi/id/chassis_type` to retrieve the system chassis type.
Solaris: use the `smbios` utility to retrieve the system chassis type.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
cloud:
type: map
description: Information about the cloud instance of the node. This is currently only populated on nodes running in Microsoft Azure, Amazon Web Services, and Google Compute Engine.
elements:
provider:
type: string
description: The cloud provider for the node.
dhcp_servers:
type: map
hidden: true
description: Return the DHCP servers for the system.
resolution: |
Linux: parse `dhclient` lease files or use the `dhcpcd` utility to retrieve the DHCP servers.
Mac OSX: use the `ipconfig` utility to retrieve the DHCP servers.
Solaris: use the `dhcpinfo` utility to retrieve the DHCP servers.
Windows: use the `GetAdaptersAddresses` (Windows Server 2003: `GetAdaptersInfo`) function to retrieve the DHCP servers.
elements:
<interface>:
pattern: ^((?!system).+)*$
type: ip
description: The DHCP server for the interface.
system:
type: ip
description: The DHCP server for the default interface.
disks:
type: map
description: Return the disk (block) devices attached to the system.
resolution: |
AIX: query the ODM for all disk devices
Linux: parse the contents of `/sys/block/<device>/`.
Solaris: use the `kstat` function to query disk information.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
elements:
<devicename>:
pattern: \w+
type: map
description: Represents a disk or block device.
elements:
model:
type: string
description: The model of the disk or block device.
product:
type: string
description: The product name of the disk or block device.
caveats: Only present on Solaris.
serial_number:
type: string
description: The serial number of the disk or block device.
size:
type: string
description: The display size of the disk or block device, such as "1 GiB".
size_bytes:
type: integer
description: The size of the disk or block device, in bytes.
vendor:
type: string
description: The vendor of the disk or block device.
type:
type: string
description: The type of disk or block device (sshd or hdd). This fact is available only on Linux.
dmi:
type: map
description: Return the system management information.
resolution: |
Linux: parse the contents of `/sys/class/dmi/id/` to retrieve system management information.
Mac OSX: use the `sysctl` function to retrieve system management information.
Solaris: use the `smbios`, `prtconf`, and `uname` utilities to retrieve system management information.
Windows: use WMI to retrieve system management information.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
elements:
bios:
type: map
description: The system BIOS information.
elements:
release_date:
type: string
description: The release date of the system BIOS.
vendor:
type: string
description: The vendor of the system BIOS.
version:
type: string
description: The version of the system BIOS.
board:
type: map
description: The system board information.
elements:
asset_tag:
type: string
description: The asset tag of the system board.
manufacturer:
type: string
description: The manufacturer of the system board.
product:
type: string
description: The product name of the system board.
serial_number:
type: string
description: The serial number of the system board.
chassis:
type: map
description: The system chassis information.
elements:
asset_tag:
type: string
description: The asset tag of the system chassis.
type:
type: string
description: The type of the system chassis.
manufacturer:
type: string
description: The system manufacturer.
product:
type: map
description: The system product information.
elements:
name:
type: string
description: The product name of the system.
serial_number:
type: string
description: The product serial number of the system.
uuid:
type: string
description: The product unique identifier of the system.
domain:
type: string
hidden: true
description: Return the network domain of the system.
resolution: |
POSIX platforms: use the `getaddrinfo` function to retrieve the network domain.
Windows: query the registry to retrieve the network domain; falls back to the primary interface's domain if not set in the registry.
ec2_metadata:
type: map
description: |
Return the Amazon Elastic Compute Cloud (EC2) instance metadata.
Please see the [EC2 instance metadata documentation](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html) for the contents of this fact.
resolution: |
EC2: query the EC2 metadata endpoint and parse the response.
caveats: |
All platforms: `libfacter` must be built with `libcurl` support.
validate: false
blockgroup: EC2
ec2_userdata:
type: string
description: |
Return the Amazon Elastic Compute Cloud (EC2) instance user data.
Please see the [EC2 instance user data documentation](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html) for the contents of this fact.
resolution: |
EC2: query the EC2 user data endpoint and parse the response.
caveats: |
All platforms: `libfacter` must be built with `libcurl` support.
blockgroup: EC2
env_windows_installdir:
type: string
description: Return the path of the directory in which Puppet was installed.
resolution: |
Windows: This fact is specific to the Windows MSI generated environment, and is
set using the `environment.bat` script that configures the runtime environment
for all Puppet executables. Please see [the original commit in the puppet_for_the_win repo](https://github.com/puppetlabs/puppet_for_the_win/commit/0cc32c1a09550c13d725b200d3c0cc17d93ec262) for more information.
caveats: |
This fact is specific to Windows, and will not resolve on any other platform.
facterversion:
type: string
description: Return the version of facter.
resolution: |
All platforms: use the built-in version of libfacter.
filesystems:
type: string
description: Return the usable file systems for block or disk devices.
resolution: |
AIX: parse the contents of `/etc/vfs` to retrieve the usable file systems.
Linux: parse the contents of `/proc/filesystems` to retrieve the usable file systems.
Mac OSX: use the `getfsstat` function to retrieve the usable file systems.
Solaris: use the `sysdef` utility to retrieve the usable file systems.
caveats: |
Linux: The proc file system must be mounted.
Mac OSX: The usable file systems is limited to the file system of mounted devices.
blockgroup: file system
fips_enabled:
type: boolean
description: Return whether the platform is in FIPS mode
resolution: |
Linux: parse the contents of `/proc/sys/crypto/fips_enabled` which if non-zero indicates fips mode has been enabled.
Windows: check if key `HKEY_LOCAL_MACHINE/System/CurrentControlSet/Control/Lsa/FipsAlgorithmPolicy/Enabled` is 1 or 0
caveats: |
Linux: Limited to linux redhat family only
details: |
Only available on Windows and Redhat linux family
fqdn:
type: string
hidden: true
description: Return the fully qualified domain name (FQDN) of the system.
resolution: |
POSIX platforms: use the `getaddrinfo` function to retrieve the FQDN or use host and domain names.
Windows: use the host and domain names to build the FQDN.
gce:
type: map
description: |
Return the Google Compute Engine (GCE) metadata.
Please see the [GCE metadata documentation](https://cloud.google.com/compute/docs/metadata) for the contents of this fact.
resolution: |
GCE: query the GCE metadata endpoint and parse the response.
caveats: |
All platforms: `libfacter` must be built with `libcurl` support.
validate: false
gid:
type: string
hidden: true
description: Return the group identifier (GID) of the user running facter.
resolution: |
POSIX platforms: use the `getegid` fuction to retrieve the group identifier.
hardwareisa:
type: string
hidden: true
description: Return the hardware instruction set architecture (ISA).
resolution: |
POSIX platforms: use `uname` to retrieve the hardware ISA.
Windows: use WMI to retrieve the hardware ISA.
hardwaremodel:
type: string
hidden: true
description: Return the operating system's hardware model.
resolution: |
POSIX platforms: use the `uname` function to retrieve the OS hardware model.
Windows: use the `GetNativeSystemInfo` function to retrieve the OS hardware model.
hostname:
type: string
hidden: true
description: Return the host name of the system.
resolution: |
POSIX platforms: use the `gethostname` function to retrieve the host name
Windows: use the `GetComputerNameExW` function to retrieve the host name.
hypervisors:
type: map
description: |
Experimental fact: Return the names of any detected hypervisors and any collected metadata about them.
resolution: |
All platforms: Use the external `whereami` library to gather hypervisor data, if available.
validate: false
id:
type: string
hidden: true
description: Return the user identifier (UID) of the user running facter.
resolution: |
POSIX platforms: use the `geteuid` fuction to retrieve the user identifier.
identity:
type: map
description: Return the identity information of the user running facter.
resolution: |
POSIX platforms: use the `getegid`, `getpwuid_r`, `geteuid`, and `getgrgid_r` functions to retrieve the identity information; use the result of the `geteuid() == 0` test as the value of the privileged element
Windows: use the `GetUserNameExW` function to retrieve the identity information; use the `GetTokenInformation` to get the current process token elevation status and use it as the value of the privileged element on versions of Windows supporting the token elevation, on older versions of Windows use the `CheckTokenMembership` to test whether the well known local Administrators group SID is enabled in the current thread impersonation token and use the test result as the value of the privileged element
elements:
gid:
type: integer
description: The group identifier of the user running facter.
group:
type: string
description: The group name of the user running facter.
uid:
type: integer
description: The user identifier of the user running facter.
user:
type: string
description: The user name of the user running facter.
privileged:
type: boolean
description: True if facter is running as a privileged process or false if not.
interfaces:
type: string
hidden: true
description: Return the comma-separated list of network interface names.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interface names.
Mac OSX: use the `getifaddrs` function to retrieve the network interface names.
Solaris: use the `ioctl` function to retrieve the network interface names.
Windows: use the `GetAdaptersAddresses` function to retrieve the network interface names.
ipaddress:
type: ip
hidden: true
description: Return the IPv4 address for the default network interface.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interface address.
Mac OSX: use the `getifaddrs` function to retrieve the network interface address.
Solaris: use the `ioctl` function to retrieve the network interface address.
Windows: use the `GetAdaptersAddresses` function to retrieve the network interface address.
ipaddress6:
type: ip6
hidden: true
description: Return the IPv6 address for the default network interface.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interface address.
Mac OSX: use the `getifaddrs` function to retrieve the network interface address.
Solaris: use the `ioctl` function to retrieve the network interface address.
Windows: use the `GetAdaptersAddresses` function to retrieve the network interface address.
ipaddress6_<interface>:
pattern: ^ipaddress6_.+$
type: ip6
hidden: true
description: Return the IPv6 address for a network interface.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interface address.
Mac OSX: use the `getifaddrs` function to retrieve the network interface address.
Solaris: use the `ioctl` function to retrieve the network interface address.
Windows: use the `GetAdaptersAddresses` function to retrieve the network interface address.
ipaddress_<interface>:
pattern: ^ipaddress_.+$
type: ip
hidden: true
description: Return the IPv4 address for a network interface.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interface address.
Mac OSX: use the `getifaddrs` function to retrieve the network interface address.
Solaris: use the `ioctl` function to retrieve the network interface address.
Windows: use the `GetAdaptersAddresses` function to retrieve the network interface address.
is_virtual:
type: boolean
description: Return whether or not the host is a virtual machine.
resolution: |
Linux: use procfs or utilities such as `vmware` and `virt-what` to retrieve virtual machine status.
Mac OSX: use the system profiler to retrieve virtual machine status.
Solaris: use the `zonename` utility to retrieve virtual machine status.
Windows: use WMI to retrieve virtual machine status.
kernel:
type: string
description: Return the kernel's name.
resolution: |
POSIX platforms: use the `uname` function to retrieve the kernel name.
Windows: use the value of `windows` for all Windows versions.
kernelmajversion:
type: string
description: Return the kernel's major version.
resolution: |
POSIX platforms: use the `uname` function to retrieve the kernel's major version.
Windows: use the file version of `kernel32.dll` to retrieve the kernel's major version.
kernelrelease:
type: string
description: Return the kernel's release.
resolution: |
POSIX platforms: use the `uname` function to retrieve the kernel's release.
Windows: use the file version of `kernel32.dll` to retrieve the kernel's release.
kernelversion:
type: string
description: Return the kernel's version.
resolution: |
POSIX platforms: use the `uname` function to retrieve the kernel's version.
Windows: use the file version of `kernel32.dll` to retrieve the kernel's version.
ldom:
type: map
description: Return Solaris LDom information from the `virtinfo` utility.
resolution: |
Solaris: use the `virtinfo` utility to retrieve LDom information.
validate: false
ldom_<name>:
pattern: ^ldom_.+$
hidden: true
type: string
description: Return Solaris LDom information.
resolution: |
Solaris: use the `virtinfo` utility to retrieve LDom information.
load_averages:
type: map
description: Return the load average over the last 1, 5 and 15 minutes.
resolution: |
POSIX platforms: use `getloadavg` function to retrieve the system load averages.
elements:
1m:
type: double
description: The system load average over the last minute.
5m:
type: double
description: The system load average over the last 5 minutes.
15m:
type: double
description: The system load average over the last 15 minutes.
lsbdistcodename:
type: string
hidden: true
description: Return the Linux Standard Base (LSB) distribution code name.
resolution: |
Linux: use the `lsb_release` utility to retrieve the LSB distribution code name.
caveats: |
Linux: Requires that the `lsb_release` utility be installed.
lsbdistdescription:
type: string
hidden: true
description: Return the Linux Standard Base (LSB) distribution description.
resolution: |
Linux: use the `lsb_release` utility to retrieve the LSB distribution description.
caveats: |
Linux: Requires that the `lsb_release` utility be installed.
lsbdistid:
type: string
hidden: true
description: Return the Linux Standard Base (LSB) distribution identifier.
resolution: |
Linux: use the `lsb_release` utility to retrieve the LSB distribution identifier.
caveats: |
Linux: Requires that the `lsb_release` utility be installed.
lsbdistrelease:
type: string
hidden: true
description: Return the Linux Standard Base (LSB) distribution release.
resolution: |
Linux: use the `lsb_release` utility to retrieve the LSB distribution release.
caveats: |
Linux: Requires that the `lsb_release` utility be installed.
lsbmajdistrelease:
type: string
hidden: true
description: Return the Linux Standard Base (LSB) major distribution release.
resolution: |
Linux: use the `lsb_release` utility to retrieve the LSB major distribution release.
caveats: |
Linux: Requires that the `lsb_release` utility be installed.
lsbminordistrelease:
type: string
hidden: true
description: Return the Linux Standard Base (LSB) minor distribution release.
resolution: |
Linux: use the `lsb_release` utility to retrieve the LSB minor distribution release.
caveats: |
Linux: Requires that the `lsb_release` utility be installed.
lsbrelease:
type: string
hidden: true
description: Return the Linux Standard Base (LSB) release.
resolution: |
Linux: use the `lsb_release` utility to retrieve the LSB release.
caveats: |
Linux: Requires that the `lsb_release` utility be installed.
macaddress:
type: mac
hidden: true
description: Return the MAC address for the default network interface.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interface address.
Mac OSX: use the `getifaddrs` function to retrieve the network interface address.
Solaris: use the `ioctl` function to retrieve the network interface address.
Windows: use the `GetAdaptersAddresses` function to retrieve the network interface address.
macaddress_<interface>:
pattern: ^macaddress_.+$
type: mac
hidden: true
description: Return the MAC address for a network interface.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interface address.
Mac OSX: use the `getifaddrs` function to retrieve the network interface address.
Solaris: use the `ioctl` function to retrieve the network interface address.
Windows: use the `GetAdaptersAddresses` function to retrieve the network interface address.
macosx_buildversion:
type: string
hidden: true
description: Return the Mac OSX build version.
resolution: |
Mac OSX: use the `sw_vers` utility to retrieve the Mac OSX build version.
macosx_productname:
type: string
hidden: true
description: Return the Mac OSX product name.
resolution: |
Mac OSX: use the `sw_vers` utility to retrieve the Mac OSX product name.
macosx_productversion:
type: string
hidden: true
description: Return the Mac OSX product version.
resolution: |
Mac OSX: use the `sw_vers` utility to retrieve the Mac OSX product version.
macosx_productversion_major:
type: string
hidden: true
description: Return the Mac OSX product major version.
resolution: |
Mac OSX: use the `sw_vers` utility to retrieve the Mac OSX product major version.
macosx_productversion_minor:
type: string
hidden: true
description: Return the Mac OSX product minor version.
resolution: |
Mac OSX: use the `sw_vers` utility to retrieve the Mac OSX product minor version.
macosx_productversion_patch:
type: string
hidden: true
description: Return the Mac OSX product patch version.
resolution: |
Mac OSX: use the `sw_vers` utility to retrieve the Mac OSX product patch version.
manufacturer:
type: string
hidden: true
description: Return the system manufacturer.
resolution: |
Linux: parse the contents of `/sys/class/dmi/id/sys_vendor` to retrieve the system manufacturer.
Solaris: use the `prtconf` utility to retrieve the system manufacturer.
Windows: use WMI to retrieve the system manufacturer.
caveats: |
Linux: kernel 2.6+ is required due to the reliance on sysfs.
memory:
type: map
description: Return the system memory information.
resolution: |
Linux: parse the contents of `/proc/meminfo` to retrieve the system memory information.
Mac OSX: use the `sysctl` function to retrieve the system memory information.
Solaris: use the `kstat` function to retrieve the system memory information.
Windows: use the `GetPerformanceInfo` function to retrieve the system memory information.
elements:
swap:
type: map
description: Represents information about swap memory.
elements:
available:
type: string
description: The display size of the available amount of swap memory, such as "1 GiB".
available_bytes:
type: integer
description: The size of the available amount of swap memory, in bytes.
capacity:
type: string
description: The capacity percentage (0% is empty, 100% is full).
encrypted:
type: boolean
description: True if the swap is encrypted or false if not.
total:
type: string
description: The display size of the total amount of swap memory, such as "1 GiB".
total_bytes:
type: integer
description: The size of the total amount of swap memory, in bytes.
used:
type: string
description: The display size of the used amount of swap memory, such as "1 GiB".
used_bytes:
type: integer
description: The size of the used amount of swap memory, in bytes.
system:
type: map
description: Represents information about system memory.
elements:
available:
type: string
description: The display size of the available amount of system memory, such as "1 GiB".
available_bytes:
type: integer
description: The size of the available amount of system memory, in bytes.
capacity:
type: string
description: The capacity percentage (0% is empty, 100% is full).
total:
type: string
description: The display size of the total amount of system memory, such as "1 GiB".
total_bytes:
type: integer
description: The size of the total amount of system memory, in bytes.
used:
type: string
description: The display size of the used amount of system memory, such as "1 GiB".
used_bytes:
type: integer
description: The size of the used amount of system memory, in bytes.
memoryfree:
type: string
hidden: true
description: Return the display size of the free system memory, such as "1 GiB".
resolution: |
Linux: parse the contents of `/proc/meminfo` to retrieve the free system memory.
Mac OSX: use the `sysctl` function to retrieve the free system memory.
Solaris: use the `kstat` function to retrieve the free system memory.
Windows: use the `GetPerformanceInfo` function to retrieve the free system memory.
memoryfree_mb:
type: double
hidden: true
description: Return the size of the free system memory, in mebibytes.
resolution: |
Linux: parse the contents of `/proc/meminfo` to retrieve the free system memory.
Mac OSX: use the `sysctl` function to retrieve the free system memory.
Solaris: use the `kstat` function to retrieve the free system memory.
Windows: use the `GetPerformanceInfo` function to retrieve the free system memory.
memorysize:
type: string
hidden: true
description: Return the display size of the total system memory, such as "1 GiB".
resolution: |
Linux: parse the contents of `/proc/meminfo` to retrieve the total system memory.
Mac OSX: use the `sysctl` function to retrieve the total system memory.
Solaris: use the `kstat` function to retrieve the total system memory.
Windows: use the `GetPerformanceInfo` function to retrieve the total system memory.
memorysize_mb:
type: double
hidden: true
description: Return the size of the total system memory, in mebibytes.
resolution: |
Linux: parse the contents of `/proc/meminfo` to retrieve the total system memory.
Mac OSX: use the `sysctl` function to retrieve the total system memory.
Solaris: use the `kstat` function to retrieve the total system memory.
Windows: use the `GetPerformanceInfo` function to retrieve the total system memory.
mountpoints:
type: map
description: Return the current mount points of the system.
resolution: |
AIX: use the `mntctl` function to retrieve the mount points.
Linux: use the `setmntent` function to retrieve the mount points.
Mac OSX: use the `getfsstat` function to retrieve the mount points.
Solaris: parse the contents of `/etc/mnttab` to retrieve the mount points.
blockgroup: file system
elements:
<mountpoint>:
pattern: .+
type: map
description: Represents a mount point.
elements:
available:
type: string
description: The display size of the available space, such as "1 GiB".
available_bytes:
type: integer
description: The size of the available space, in bytes.
capacity:
type: string
description: The capacity percentage (0% is empty, 100% is full).
device:
type: string
description: The name of the mounted device.
filesystem:
type: string
description: The file system of the mounted device.
options:
type: array
description: The mount options.
size:
type: string
description: The display size of the total space, such as "1 GiB".
size_bytes:
type: integer
description: The size of the total space, in bytes.
used:
type: string
description: The display size of the used space, such as "1 GiB".
used_bytes:
type: integer
description: The size of the used space, in bytes.
mtu_<interface>:
pattern: ^mtu_.+$
type: integer
hidden: true
description: Return the Maximum Transmission Unit (MTU) for a network interface.
resolution: |
Linux: use the `ioctl` function to retrieve the network interface MTU.
Mac OSX: use the `getifaddrs` function to retrieve the network interface MTU.
Solaris: use the `ioctl` function to retrieve the network interface MTU.
Windows: use the `GetAdaptersAddresses` function to retrieve the network interface MTU.
netmask:
type: ip
hidden: true
description: Return the IPv4 netmask for the default network interface.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interface netmask.
Mac OSX: use the `getifaddrs` function to retrieve the network interface netmask.
Solaris: use the `ioctl` function to retrieve the network interface netmask.
Windows: use the `GetAdaptersAddresses` (Windows Server 2003: `GetAdaptersInfo`) function to retrieve the network interface netmask.
netmask6:
type: ip6
hidden: true
description: Return the IPv6 netmask for the default network interface.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interface netmask.
Mac OSX: use the `getifaddrs` function to retrieve the network interface netmask.
Solaris: use the `ioctl` function to retrieve the network interface netmask.
Windows: use the `GetAdaptersAddresses` function to retrieve the network interface netmask.
caveats: |
Windows Server 2003: IPv6 netmasks are not supported.
netmask6_<interface>:
pattern: ^netmask6_.+$
type: ip6
hidden: true
description: Return the IPv6 netmask for a network interface.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interface netmask.
Mac OSX: use the `getifaddrs` function to retrieve the network interface netmask.
Solaris: use the `ioctl` function to retrieve the network interface netmask.
Windows: use the `GetAdaptersAddresses` function to retrieve the network interface netmask.
caveats: |
Windows Server 2003: IPv6 netmasks are not supported.
netmask_<interface>:
pattern: ^netmask_.+$
type: ip
hidden: true
description: Return the IPv4 netmask for a network interface.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interface netmask.
Mac OSX: use the `getifaddrs` function to retrieve the network interface netmask.
Solaris: use the `ioctl` function to retrieve the network interface netmask.
Windows: use the `GetAdaptersAddresses` (Windows Server 2003: `GetAdaptersInfo`) function to retrieve the network interface netmask.
network:
type: ip
hidden: true
description: Return the IPv4 network for the default network interface.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interface network.
Mac OSX: use the `getifaddrs` function to retrieve the network interface network.
Solaris: use the `ioctl` function to retrieve the network interface network.
Windows: use the `GetAdaptersAddresses` function to retrieve the network interface network.
network6:
type: ip6
hidden: true
description: Return the IPv6 network for the default network interface.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interface network.
Mac OSX: use the `getifaddrs` function to retrieve the network interface network.
Solaris: use the `ioctl` function to retrieve the network interface network.
Windows: use the `GetAdaptersAddresses` function to retrieve the network interface network.
network6_<interface>:
pattern: ^network6_.+$
type: ip6
hidden: true
description: Return the IPv6 network for a network interface.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interface network.
Mac OSX: use the `getifaddrs` function to retrieve the network interface network.
Solaris: use the `ioctl` function to retrieve the network interface network.
Windows: use the `GetAdaptersAddresses` function to retrieve the network interface network.
network_<interface>:
pattern: ^network_.+$
type: ip
hidden: true
description: Return the IPv4 network for a network interface.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interface network.
Mac OSX: use the `getifaddrs` function to retrieve the network interface network.
Solaris: use the `ioctl` function to retrieve the network interface network.
Windows: use the `GetAdaptersAddresses` function to retrieve the network interface network.
networking:
type: map
description: Return the networking information for the system.
resolution: |
Linux: use the `getifaddrs` function to retrieve the network interfaces.
Mac OSX: use the `getifaddrs` function to retrieve the network interfaces.
Solaris: use the `ioctl` function to retrieve the network interfaces.
Windows: use the `GetAdaptersAddresses` function to retrieve the network interfaces.