NAME
FusionInventory::Agent::Inventory - Inventory data structure
DESCRIPTION
This is a data structure corresponding to an hardware and software inventory.
METHODS
new(%params)
The constructor. The following parameters are allowed, as keys of the %params hash:
- logger
-
a logger object
- statedir
-
a path to a writable directory containing the last serialized inventory
- tag
-
an arbitrary label, used for server-side filtering
getContent()
Get content attribute.
mergeContent($content)
Merge content to the inventory.
addEntry(%params)
Add a new entry to the inventory. The following parameters are allowed, as keys of the %params hash:
- section
-
the entry section (mandatory)
- entry
-
the entry (mandatory)
- noDuplicated
-
ignore entry if already present
setTag($tag)
Set inventory tag, an arbitrary label used for filtering on server side.
setHardware()
Save global information regarding the machine.
setOperatingSystem()
Operating System information.
setBios()
Set BIOS information.
setAccessLog()
What is that for? :)
computeChecksum()
Compute the inventory checksum. This information is used by the server to know which parts of the inventory have changed since the last one.
computeLegacyValues()
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.
saveLastState()
At the end of the process IF the inventory was saved correctly, the last_state is saved.
DATA MODEL
This section presents the various entry types, with their attributes. The names correspond to the historical OCS format.
BIOS
- SMODEL
-
System model
- SMANUFACTURER
-
System manufacturer
- SSN
-
System Serial number
- BDATE
-
BIOS release date in the Month/Day/Year format (e.g: 09/27/2010)
- BVERSION
-
The BIOS revision
- BMANUFACTURER
-
BIOS manufacturer
- MMANUFACTURER
-
Motherboard Manufacturer
- MSN
-
Motherboard Serial
- MMODEL
-
Motherboard model
- ASSETTAG
- ENCLOSURESERIAL
- BIOSSERIAL
-
The optional asset tag for this machine.
- TYPE
-
depcreated, replace by HARDWARE/CHASSIS_TYPE
CONTROLLERS
- CAPTION
-
Windows CAPTION field or subsystem Name from the pci.ids table
- DRIVER
- NAME
-
The device name, the on from the PCIIDs DB
- MANUFACTURER
-
The manifacturer name, the on from the PCIIDs DB
- PCICLASS
-
The PCI class ID
- PCIID
-
The PCI ID, e.g: 8086:2a40 (only for PCI device)
- PCISUBSYSTEMID
-
The PCI subsystem ID, e.g: 8086:2a40 (only for PCI device)
- PCISLOT
-
The PCI slot, e.g: 00:02.1 (only for PCI device)
- TYPE
-
The controller revision, e.g: rev 02. This field may be renamed in the future.
- REV
-
Revision of the device in the XX format (e.g: 04)
MEMORIES
- CAPACITY
- CAPTION
-
E.g: Physical Memory
- DESCRIPTION
- FORMFACTOR
-
Only available on Windows, See Win32_PhysicalMemory documentation on MSDN.
- REMOVABLE
- PURPOSE
-
Only avalaible on Windows, See Win32_PhysicalMemory documentation on MSDN.
- SPEED
-
In Mhz, e.g: 800
- TYPE
- NUMSLOTS
-
Eg. 2, start at 1, not 0
- SERIALNUMBER
CPUS
- ARCH
-
The CPU architecture
- CACHESIZE
-
The total CPU cache size in KB. e.g: 3072
- CORE
-
Number of core.
- DESCRIPTION
- MANUFACTURER
-
AMD/Intel/Transmeta/Cyrix/VIA/Sun Microsystems//Fujitsu
- NAME
-
The name of the CPU, e.g: Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz
- THREAD
-
Number of thread per core.
- SERIAL
-
Serial number
- SPEED
-
Frequency in MHz
- ID
-
The CPU ID: http://en.wikipedia.org/wiki/CPUID
- STEPPING
-
Stepping value (Contained in CPUID)
- MODEL
-
Model value (Contained in CPUID)
- FAMILYNUMBER
-
Family value (Contained in CPUID)
- FAMILYNAME
-
Family Name
DRIVES
Drive is actually a filesystem. Virtual filesystem like /proc or /sys are ignored.
- CREATEDATE
-
Date of creation of the filesystem in DD/MM/YYYY format.
- DESCRIPTION
- FREE
-
Free space (MB)
- FILESYSTEM
-
File system name. e.g: ext3
- LABEL
-
Name of the partition given by the user.
- LETTER
-
Windows driver letter. Windows only
- SERIAL
-
Partition serial number or UUID
- SYSTEMDRIVE
-
Boolean. Is this the system partition?
- TOTAL
-
Total space available (MB)
- TYPE
-
The mount point on UNIX.
- VOLUMN
-
System name of the partition (e.g: /dev/sda1 or server:/directory for NFS)
HARDWARE
- USERID
-
The current user list, '/' is the delimiter. This field is deprecated, you should use the USERS section instead.
- OSVERSION
-
Version number of the operating system. This field will be deprecated in the future, please use OPERATINGSYSTEM/VERSION or OPERATINGSYSTEM/KERNEL_VERSION instead.
- PROCESSORN
- OSCOMMENTS
-
Service Pack on Windows, kernel build date on Linux
- CHECKSUM
-
Deprecated, OCS only.
- PROCESSORT
-
Deprecated, OCS only.
- NAME
- PROCESSORS
-
The processor speed in MHz, this field is deprecated, see CPUS instead.
- SWAP
-
The swap space in MB.
- ETIME
-
The time needed to run the inventory on the agent side.
- TYPE
- OSNAME
-
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.
- IPADDR
- WORKGROUP
- DESCRIPTION
-
Computer description (Windows only so far)
- MEMORY
-
Total system memory in MB
- UUID
- DNS
- LASTLOGGEDUSER
-
The login of the last logged user.
- USERDOMAIN
-
This field is deprecated, you should use the USERS section instead.
- DATELASTLOGGEDUSER
- DEFAULTGATEWAY
- VMSYSTEM
-
The virtualization technology used if the machine is a virtual machine.
Can be:
- VMID
-
The ID of the Virtual machine on the hypervisor (VM only).
- VMNAME
-
The name of the Virtual machine on the hypervisor (VM only).
- WINOWNER
- WINPRODID
- WINPRODKEY
- WINCOMPANY
- WINLANG
-
Language code of the Windows
- CHASSIS_TYPE
-
The computer chassis format (e.g: Notebook, Laptop, Server, etc)
- ARCHNAME
-
Architecture of the perl binary used to call the agent, MSWin32-x86-multi-thread.
OPERATINGSYSTEM
- KERNEL_NAME
-
The name of the kernel used by this operating system, e.g freebsd, linux, hpux, win32, etc (linux for android).
- KERNEL_VERSION
-
Version of the operating system's kernel, e.g 2.6.32 for Linux, 5.2.x.y on Windows Server 2003, etc.
- NAME
-
Name of the Operating System ("Distributor ID" in LSB terms), e.g Debian, Ubuntu, CentOS, SUSE LINUX, Windows, MacOSX, FreeBSD, AIX, Android, etc.
- VERSION
-
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
-
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.
- SERVICE_PACK
-
The Service Pack level reported by the operating system. This field is only present on systems which use this notion.
- INSTALL_DATE
-
The operating system installation date.
- ARCH
-
Operating system architecture.
- BOOT_TIME
-
The date of the boot of the computer, e.g: 2012-12-09 15:58:20
MONITORS
- BASE64
-
The uuencoded EDID trame. Optional.
- CAPTION
- DESCRIPTION
- MANUFACTURER
-
The manufacturer retrieved from the EDID trame.
- SERIAL
-
The serial number retrieved from the EDID trame.
- UUENCODE
-
The uuencoded EDID trame. Optional.
PORTS
Serial, Parallel, SATA, etc
- CAPTION
- DESCRIPTION
- NAME
- TYPE
SLOTS
Represents physical connection points including ports, motherboard slots and peripherals, and proprietary connection points.
This information is hardly reliable.
- DESCRIPTION
-
The bus type.
- DESIGNATION
- NAME
-
The slot identifier.
- STATUS
-
The slot usage status (free or used).
STORAGES
- DESCRIPTION
-
The long name of the device displayed to the user.
- DISKSIZE
-
The disk size in MB.
- INTERFACE
-
INTERFACE can be SCSI/HDC/IDE/USB/1394/Serial-ATA/SAS or empty if unknown
- MANUFACTURER
- MODEL
-
The commercial name of the device
- NAME
-
The name of the device as seen by the system. E.g: hda (Linux), \\.\PHYSICALDRIVE0 (Windows)
- TYPE
-
The kind of device. There is no standard for the format of the string in this field.
- SERIAL
-
The harddrive serial number
- SERIALNUMBER
-
Deprecated. The harddrive serial number, same as SERIAL.
- FIRMWARE
- SCSI_COID
- SCSI_CHID
- SCSI_UNID
- SCSI_LUN
- WWN
-
World Wide Name http://fr.wikipedia.org/wiki/World_Wide_Name
SOFTWARES
- COMMENTS
- FILESIZE
- FOLDER
- FROM
-
Where the information about the software came from, can be: registry, rpm, deb, etc
- HELPLINK
- INSTALLDATE
-
Installation day in DD/MM/YYYY format. Windows only.
- NAME
- NO_REMOVE
-
Can the software be removed.
- RELEASE_TYPE
-
Windows only for now, come from the registry
- PUBLISHER
- UNINSTALL_STRING
-
Windows only, come from the registry
- URL_INFO_ABOUT
- VERSION
- VERSION_MINOR
-
Windows only, come from the registry
- VERSION_MAJOR
-
Windows only, come from the registry
- IS64BIT
-
If the software is in 32 or 64bit, (1/0)
- GUID
-
Windows software GUID
- USERNAME
-
Name of the owner of the software.
- USERID
-
ID of the owner of the software. SID on Windows.
USERS
- LOGIN
- DOMAIN
-
The Windows domain of the user, if available.
VIDEOS
- CHIPSET
- MEMORY
-
Video card memory in MB
- NAME
- RESOLUTION
-
Resolution in pixel. 1024x768.
- PCISLOT
-
The local PCI slot ID if the video card use PCI.
VIRTUALMACHINES
- MEMORY
-
Memory size, in MB.
- NAME
-
The name of the virtual machine.
- UUID
- STATUS
-
The VM status: running, idle, paused, shutdown, crashed, dying, off
- SUBSYSTEM
-
The virtualisation software. E.g: VmWare ESX
- VMTYPE
-
The name of the virtualisation system family. The same type found is HARDWARE/VMSYSTEM
- VCPU
-
Number of CPU affected to the virtual machine
- VMID
-
The ID of virtual machine in the virtual managment system.
- MAC
-
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
- COMMENT
-
a comment
- OWNER
SOUNDS
- DESCRIPTION
- MANUFACTURER
- NAME
MODEMS
- DESCRIPTION
- NAME
ENVS
Environment variables
- KEY
- VAL
UPDATES
Windows updates
- ID
-
Update Id
- KB
-
List of KB, delimiter is '/'
USBDEVICES
USB Devices
- VENDORID
-
Vendor USB ID. 4 hexa char.
- PRODUCTID
-
Product USB ID. 4 hexa char.
- SERIAL
- CLASS
-
USB Class (e.g: 8 for Mass Storage)
- SUBCLASS
-
USB Sub Class
- NAME
-
The name of the device (optional)
NETWORKS
A network configuration.
- DESCRIPTION
-
The name of the interface as seen in the OS settings, e.g: eth0 (Linux) or AMD PCNET Family Ethernet Adapter (Windows)
- DRIVER
-
The name of the driver used by the network interface
- IPADDRESS
- IPADDRESS6
- IPDHCP
-
The IP address of the DHCP server (optional).
- IPGATEWAY
- IPMASK
- IPSUBNET
- MACADDR
- MTU
- PCISLOT
-
The PCI slot name.
- STATUS
-
Up or Down
- TYPE
-
Interface type: Ethernet, Wifi
- VIRTUALDEV
-
If the interface exist or not (1 or empty)
- SLAVES
-
Bonded interfaces list in the eth0/eth1/eth2 format (/ is the separator).
- MANAGEMENT
-
Whether or not it is a HP iLO, Sun SC, HP MP or other kind of Remote Management Interface
- SPEED
-
Interface speed in Mb/s
- BSSID
-
Wifi only, Access point MAC Address
- SSID
-
Wifi only, Access point name
BATTERIES
- CAPACITY
-
Battery capacity in mWh
- DATE
-
Manufacture date in DD/MM/YYYY format
- NAME
-
Name of the device
- SERIAL
-
Serial number
- MANUFACTURER
-
Battery manufacturer
- VOLTAGE
-
Voltage in mV
PRINTERS
- COMMENT
- DESCRIPTION
- DRIVER
- NAME
- NETWORK
-
Network: True (1) if it's a network printer
- PORT
- RESOLUTION
-
Resolution: eg. 600x600
- SHARED
-
Shared: True if the printer is shared (Win32)
- STATUS
-
Status: See Win32_Printer.PrinterStatus
- ERRSTATUS
-
ErrStatus: See Win32_Printer.ExtendedDetectedErrorState
- SERVERNAME
- SHARENAME
- PRINTPROCESSOR
- SERIAL
-
The serial number
PROCESSES
- USER
-
The process owner
- PID
-
The process Id
- CPUUSAGE
-
The CPU usage.
- MEM
-
The memory.
- VIRTUALMEMORY
- TTY
- STARTED
-
When the process has been started in YYYY/MM/DD HH:MM format
- CMD
-
The command.
ANTIVIRUS
- COMPANY
-
Comapny name
- NAME
- GUID
-
Unique ID
- ENABLED
-
1 if the antivirus is enabled.
- UPTODATE
-
1 if the antivirus is up to date.
- VERSION
LOGICAL_VOLUMES
A LVM Logical Volume
- LVNAME
-
The volume name.
- VGNAME
-
The volume group name.
- ATTR
-
The special attribue used on this volume (e.g: a-)
- SIZE
-
The size of the volume on MB.
- UUID
-
The volume UUID.
PHYSICAL_VOLUMES
- DEVICE
-
The device name. Eg.: /dev/sda1 on Linux.
- PV_NAME
-
The physical device name.
- FORMAT
-
The format. E.g: lvm2.
- ATTR
-
The LVM attribue in use for this phyisical device.
- SIZE
-
The size in MB.
- PV_UUID
-
The UUID.
- PV_PE_COUNT
-
Item PV_PE_COUNT
- PE_SIZE
-
Item PE_SIZE
VOLUME_GROUPS
A LVM Volume group.
- VGNAME
-
The name of the volume group.
- PV_COUNT
- LV_COUNT
- ATTR
-
The volume group LVM attribue.
- SIZE
-
The size.
- FREE
-
The free space.
- UUID
-
The UUID
LICENSEINFOS
A license
- NAME
-
The name of the license
- FULLNAME
-
The full name of the license (optional)
- KEY
-
The key used to register the license (optional)
- COMPONENTS
-
The components covered by the license (optional)
- PRODUCTID
-
The ID of the installation (optional)