FusionInventory::Agent::Task::Inventory::Inventory(3) 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 informations.

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
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

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:

Physical: (default)
Xen
VirtualBox
Virtual Machine: Generic if it's not possible to correctly identify the solution
VMware: ESX, ESXi, server, etc
QEMU
SolarisZone
VServer
OpenVZ
BSDJail
Parallels
Hyper-V
WINOWNER
WINPRODID
WINPRODKEY
WINCOMPANY
WINLANG
Language code of the Windows
CHASSIS_TYPE
The computer chassis format (e.g: Notebook, Laptop, Server, etc)

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.

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.

CAPACITY
CAPTION
FORMFACTOR
REMOVABLE
PURPOSE
TYPE
DESCRIPTION

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

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