FusionInventory::Agent::Inventory - Inventory data structure
This is a data structure corresponding to an hardware and software inventory.
The constructor. The following parameters are allowed, as keys of the %params hash:
a logger object
a path to a writable directory containing the last serialized inventory
an arbitrary label, used for server-side filtering
Get content attribute.
Merge content to the inventory.
Add a new entry to the inventory. The following parameters are allowed, as keys of the %params hash:
the entry section (mandatory)
the entry (mandatory)
ignore entry if already present
Set inventory tag, an arbitrary label used for filtering on server side.
Save global information regarding the machine.
Operating System information.
Set BIOS information.
What is that for? :)
Compute the inventory checksum. This information is used by the server to know which parts of the inventory have changed since the last one.
Compute the inventory global values, meaning values in hardware section such as CPU number, speed and model, computed from other values, but needed for OCS compatibility.
At the end of the process IF the inventory was saved correctly, the last_state is saved.
This section presents the various entry types, with their attributes. The names correspond to the historical OCS format.
System model
System manufacturer
System Serial number
BIOS release date in the Month/Day/Year format (e.g: 09/27/2010)
The BIOS revision
BIOS manufacturer
Motherboard Manufacturer
Motherboard Serial
Motherboard model
The optional asset tag for this machine.
depcreated, replace by HARDWARE/CHASSIS_TYPE
Windows CAPTION field or subsystem Name from the pci.ids table
The device name, the on from the PCIIDs DB
The manifacturer name, the on from the PCIIDs DB
The PCI class ID
The PCI ID, e.g: 8086:2a40 (only for PCI device)
The PCI subsystem ID, e.g: 8086:2a40 (only for PCI device)
The PCI slot, e.g: 00:02.1 (only for PCI device)
The controller revision, e.g: rev 02. This field may be renamed in the future.
Revision of the device in the XX format (e.g: 04)
E.g: Physical Memory
Only available on Windows, See Win32_PhysicalMemory documentation on MSDN.
Only avalaible on Windows, See Win32_PhysicalMemory documentation on MSDN.
In Mhz, e.g: 800
Eg. 2, start at 1, not 0
The CPU architecture
The total CPU cache size in KB. e.g: 3072
Number of core.
AMD/Intel/Transmeta/Cyrix/VIA/Sun Microsystems//Fujitsu
The name of the CPU, e.g: Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz
Number of thread per core.
Serial number
Frequency in MHz
The CPU ID: http://en.wikipedia.org/wiki/CPUID
Stepping value (Contained in CPUID)
Model value (Contained in CPUID)
Family value (Contained in CPUID)
Family Name
Drive is actually a filesystem. Virtual filesystem like /proc or /sys are ignored.
Date of creation of the filesystem in DD/MM/YYYY format.
Free space (MB)
File system name. e.g: ext3
Name of the partition given by the user.
Windows driver letter. Windows only
Partition serial number or UUID
Boolean. Is this the system partition?
Total space available (MB)
The mount point on UNIX.
System name of the partition (e.g: /dev/sda1 or server:/directory for NFS)
The current user list, '/' is the delimiter. This field is deprecated, you should use the USERS section instead.
Version number of the operating system. This field will be deprecated in the future, please use OPERATINGSYSTEM/VERSION or OPERATINGSYSTEM/KERNEL_VERSION instead.
Service Pack on Windows, kernel build date on Linux
Deprecated, OCS only.
The processor speed in MHz, this field is deprecated, see CPUS instead.
The swap space in MB.
The time needed to run the inventory on the agent side.
Full name of the operating system as reported by itself. This field will be deprecated in the future, please use OPERATINGSYSTEM/NAME or OPERATINGSYSTEM/FULL_NAME instead.
Computer description (Windows only so far)
Total system memory in MB
The login of the last logged user.
This field is deprecated, you should use the USERS section instead.
The virtualization technology used if the machine is a virtual machine.
Can be:
The ID of the Virtual machine on the hypervisor (VM only).
The name of the Virtual machine on the hypervisor (VM only).
Language code of the Windows
The computer chassis format (e.g: Notebook, Laptop, Server, etc)
Architecture of the perl binary used to call the agent, MSWin32-x86-multi-thread.
The name of the kernel used by this operating system, e.g freebsd, linux, hpux, win32, etc (linux for android).
Version of the operating system's kernel, e.g 2.6.32 for Linux, 5.2.x.y on Windows Server 2003, etc.
Name of the Operating System ("Distributor ID" in LSB terms), e.g Debian, Ubuntu, CentOS, SUSE LINUX, Windows, MacOSX, FreeBSD, AIX, Android, etc.
Version of the operating system distribution ("Release" in LSB terms), e.g 11.04 on Ubuntu natty, 5.0.8 on Debian Lenny, 5.4 on CentOS 5.4, 2003 for Windows Server 2003, etc.
Full name of the operating system as reported by itself, e.g "Debian GNU/Linux unstable (sid)" or "Microsoft(R) Windows(R) Server 2003, Enterprise Edition x64". This is also contained in the HARDWARE/OSNAME field which will be deprecated in the future.
The Service Pack level reported by the operating system. This field is only present on systems which use this notion.
The operating system installation date.
Operating system architecture.
The date of the boot of the computer, e.g: 2012-12-09 15:58:20
The uuencoded EDID trame. Optional.
The manufacturer retrieved from the EDID trame.
The serial number retrieved from the EDID trame.
Serial, Parallel, SATA, etc
Represents physical connection points including ports, motherboard slots and peripherals, and proprietary connection points.
This information is hardly reliable.
The bus type.
The slot identifier.
The slot usage status (free or used).
The long name of the device displayed to the user.
The disk size in MB.
INTERFACE can be SCSI/HDC/IDE/USB/1394/Serial-ATA/SAS or empty if unknown
The commercial name of the device
The name of the device as seen by the system. E.g: hda (Linux), \\.\PHYSICALDRIVE0 (Windows)
The kind of device. There is no standard for the format of the string in this field.
The harddrive serial number
Deprecated. The harddrive serial number, same as SERIAL.
World Wide Name http://fr.wikipedia.org/wiki/World_Wide_Name
Where the information about the software came from, can be: registry, rpm, deb, etc
Installation day in DD/MM/YYYY format. Windows only.
Can the software be removed.
Windows only for now, come from the registry
Windows only, come from the registry
If the software is in 32 or 64bit, (1/0)
Windows software GUID
Name of the owner of the software.
ID of the owner of the software. SID on Windows.
The Windows domain of the user, if available.
Video card memory in MB
Resolution in pixel. 1024x768.
The local PCI slot ID if the video card use PCI.
Memory size, in MB.
The name of the virtual machine.
The VM status: running, idle, paused, shutdown, crashed, dying, off
The virtualisation software. E.g: VmWare ESX
The name of the virtualisation system family. The same type found is HARDWARE/VMSYSTEM
Number of CPU affected to the virtual machine
The ID of virtual machine in the virtual managment system.
The list of the MAC addresses of the virtual machine. The delimiter is '/'. e.g: 00:23:18:91:db:8d/00:23:57:31:sb:8e
a comment
Environment variables
Windows updates
Update Id
List of KB, delimiter is '/'
USB Devices
Vendor USB ID. 4 hexa char.
Product USB ID. 4 hexa char.
USB Class (e.g: 8 for Mass Storage)
USB Sub Class
The name of the device (optional)
A network configuration.
The name of the interface as seen in the OS settings, e.g: eth0 (Linux) or AMD PCNET Family Ethernet Adapter (Windows)
The name of the driver used by the network interface
The IP address of the DHCP server (optional).
The PCI slot name.
Up or Down
Interface type: Ethernet, Wifi
If the interface exist or not (1 or empty)
Bonded interfaces list in the eth0/eth1/eth2 format (/ is the separator).
Whether or not it is a HP iLO, Sun SC, HP MP or other kind of Remote Management Interface
Interface speed in Mb/s
Wifi only, Access point MAC Address
Wifi only, Access point name
Battery capacity in mWh
Manufacture date in DD/MM/YYYY format
Name of the device
Battery manufacturer
Voltage in mV
Network: True (1) if it's a network printer
Resolution: eg. 600x600
Shared: True if the printer is shared (Win32)
Status: See Win32_Printer.PrinterStatus
ErrStatus: See Win32_Printer.ExtendedDetectedErrorState
The serial number
The process owner
The process Id
The CPU usage.
The memory.
When the process has been started in YYYY/MM/DD HH:MM format
The command.
Comapny name
Unique ID
1 if the antivirus is enabled.
1 if the antivirus is up to date.
A LVM Logical Volume
The volume name.
The volume group name.
The special attribue used on this volume (e.g: a-)
The size of the volume on MB.
The volume UUID.
The device name. Eg.: /dev/sda1 on Linux.
The physical device name.
The format. E.g: lvm2.
The LVM attribue in use for this phyisical device.
The size in MB.
The UUID.
Item PV_PE_COUNT
Item PE_SIZE
A LVM Volume group.
The name of the volume group.
The volume group LVM attribue.
The size.
The free space.
The UUID
A license
The name of the license
The full name of the license (optional)
The key used to register the license (optional)
The components covered by the license (optional)
The ID of the installation (optional)
To install FusionInventory::Agent, copy and paste the appropriate command in to your terminal.
cpanm
cpanm FusionInventory::Agent
CPAN shell
perl -MCPAN -e shell install FusionInventory::Agent
For more information on module installation, please visit the detailed CPAN module installation guide.