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:

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

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)