Objects

From NetXMS Wiki
Revision as of 09:12, 17 January 2013 by Lukas Rypl (talk | contribs) (→‎Object Status: typo)
Jump to navigation Jump to search

Overview

All network infrastructure monitored by NetXMS inside monitoring system represented as a set of objects. Each object represents one physical or logical entity (like host or network interface), or group of them. Objects organized into hierarchical structure. There are 30 different object classes:

Object Class Description Can contain
Entire Network Abstract object representing root of IP topology tree. All zone and subnet objects located under it. System can have only one object of this class.

If zoning enabled:

  • Zone

If zoning disabled:

  • Subnet
Zone Object representing group of (usually interconnected) IP networks without overlapping addresses. Contains appropriate subnet objects.
  • Subnet
Subnet Object representing IP subnet. Typically objects of this class created automatically by the system to reflect system's knowledge of IP topology.
  • Node
Node Object representing physical host or network device. These objects can be created either manually by administrator or automatically during network discovery process.
  • Interface
  • Network Service
  • VPN Connector
Cluster Object representing cluster consisted of two or more hosts.
  • Node
Interface Object representing network interface of node. These objects created automatically by the system during configuration polls. Nothing
Network Service Object representing network service running on a node (like http or ssh). Nothing
VPN Connector Object representing VPN tunnel endpoint. Such objects can be created to add VPN tunnels to network topology known y NetXMS server. Nothing
Service Root Abstract object representing root of your infrastructure service tree. System can have only one object of this class.
  • Cluster
  • Condition
  • Container
  • Mobile Device
  • Node
  • Subnet
Container Grouping object which can contain nodes, subnets, clusters, conditions, or other containers. With help of container objects you can build object's tree which represents logical hierarchy of IT services in your organization.
  • Cluster
  • Condition
  • Container
  • Mobile Device
  • Node
  • Subnet
Condition Object representing complicated condition – like "cpu on node1 is overloaded and node2 is down for more than 10 minutes". Nothing
Template Root Abstract object representing root of your template tree.
  • Template
  • Template Group
Template Group Grouping object which can contain templates or other template groups.
  • Template
  • Template Group
Template Data collection template. See Data Collection section for more information about templates.
  • Mobile Device
  • Node
Network Map Root Abstract object representing root of your network map tree.
  • Network Map
  • Network Map Group
Network Map Group Grouping object which can contain network maps or other network map groups.
  • Network Map
  • Network Map Group
Network Map Network map. Nothing
Dashboard Root Abstract object representing root of your dashboard tree.
  • Dashboard
Dashboard Dashboard. Can contain other dashboards.
  • Dashboard
Report Root Abstract object representing root of your report tree.
  • Report
  • Report Group
Report Group Grouping object which can contain reports or other report groups.
  • Report
  • Report Group
Report Report object. Nothing
Business Service Root Abstract object representing root of your business service tree. System can have only one object of this class.
  • Business Service
Business Service Object representing single business service. Can contain other business services, node links, or service checks.
  • Business Service
  • Node Link
  • Service Check
Node Link Link between node object and business service. Used to simplify creation of node-related service checks.
  • Service Check
Service Check Object used to check business service state. One business service can contain multiple checks. Nothing

Every object has set of attributes; some of them are common (like id and name), while other depends on object class – for example, attribute "SNMP community string" have only node objects.

Object Classes

Top Level Objects

NetXMS has eight top level objects – Entire Network, Service Root, Template Root, Policy Root, Network Map Root, Dashboard Root, Report Root, and Business Service Root. These objects served as an abstract root for appropriate object tree. The following table represents possible child object classes for top level objects:

Object Possible childs
Entire Network
  • Zone
  • Subnet
Service Root
  • Container
  • Subnet
  • Node
  • Cluster
  • Condition
Template Root
  • Template Group
  • Template
Policy Root
  • Policy Group
  • Policy
Network Map Root
  • Network Map Group
  • Network Map
Dashboard Root
  • Dashboard
Report Root
  • Report Group
  • Report
Business Service Root
  • Business Service

All top level objects has only one editable attribute – object's name.

Subnet

Subnet objects represent IP subnets. These objects created automatically by NetXMS server to represent known IP topology. Subnet objects can only contain node objects. The system places node objects inside an appropriate subnet object based on an interface configuration. Subnet objects have only one editable attribute – an object's name.

Container

Container objects (or simply containers) serve as building blocks for creating logical service hierarchy. Containers can have subnets, nodes, conditions, or other containers as child objects. Containers can be created in Infrastructure Services tree. Existing nodes and subnets can be added to containers by using Bind operation, and removed by using Unbind operation.

Condition

Conditions may represent more complicated status checks because each condition can have a script attached. Interval for evaluation of condition status is configured in Server Configuration Variables as ConditionPollingInterval with default value 60 seconds. Input values for the condition script can be added in the Data tab. Such values are accessible via $1, $2, ... variables inside the script. If the script returns 0, an activation event with the defined severity is created. If the script returns any other value, then a deactivation event is created.

Node

Node objects (or nodes) represent computers and other network-enabled devices (such as routers and switches) in your network. They have a lot of attributes controlling all aspects of interaction between NetXMS server and managed node. For example, the attributes specify what data must be collected, how node status must be checked, which protocol versions to use etc. Node objects contain one or more interface objects. The system creates interface objects automatically during configuration polls.

Interface

Interface objects represent network interfaces of managed computers and devices. Usually these objects created automatically by management server during configuration polls.

VPN Connector

VPN Connector objects are created manually. In case if there is a VPN connection linking two different networks open between two firewalls that are added to the system as objects, a user can create a VPN Connector object on each of the firewall objects and link one to another. The network topology will now show that those two networks are connected and the system will take this condition into account during problem analysis and event correlation.

Network Service

Network Service object is always created under a node and represents a network service (such as HTTP or SSH), which is accessible online (via TCP IP). Network Service objects are always created manually. When creating a new Network Service, a user has to set a protocol type for it. Currently, the system works with the following protocols - HTTP, POP3, SMTP, Telnet, and SSH. In addition to that, it is also possible to define a Custom protocol type. For Custom protocol, a user should define the TCP port number and the system will be checking whether that port is available. For the predefined standard services the system will also check whether an appropriate response is returned. In case of SMTP, the system will send a test mail, in case of POP3 – try to log in with a certain user, in case of HTTP – check whether the contents of a desired web page correspond to a certain given template. As soon as the Network Service object is created, it will be automatically included into the status poll. Each time when the status poll for the particular node is carried out, all Network Service objects are polled for a reply. If an object's reply corresponds to a certain condition, its status is set as NORMAL. If an object is not responding, its status will be hanged to CRITICAL. For more information on object statuses and object status estimation, please refer to Object Status chapter.

Template

Template object represents a template for data collection. For more information, please refer to Templates chapter.

Template Group

Grouping object, which can contain templates or other template groups, in a form of template tree.

Report

Creates a PDF document from data stored in database and a jasper report file controlling structure and formatting of the output. Example of jasper file can be downloaded from https://svn.netxms.org/public/netxms/trunk/reports/IP%20Inventory.jrxml. Jasper report file can be generated for example by iReport Designer.

Report functionality is not enabled by default due to licensing restrictions. See How to compile report-generator for detailed instructions.

Object Status

Each object has a status. Object's status can be one of the following:

Icon Text Description
Error creating thumbnail: Unable to save thumbnail to destination
Normal Object is in normal state.
Error creating thumbnail: Unable to save thumbnail to destination
Warning Warning(s) exist for the object.
Error creating thumbnail: Unable to save thumbnail to destination
Minor Minor problem(s) exist for the object.
Error creating thumbnail: Unable to save thumbnail to destination
Major Major problem(s) exist for the object.
Error creating thumbnail: Unable to save thumbnail to destination
Critical Critical problem(s) exist for the object.
Error creating thumbnail: Unable to save thumbnail to destination
Unknown Object's status is unknown to the management server.
Error creating thumbnail: Unable to save thumbnail to destination
Unmanaged Object is set to "unmanaged" state.
Error creating thumbnail: Unable to save thumbnail to destination
Disabled Object is administratively disabled (only applicable to interface objects).
Error creating thumbnail: Unable to save thumbnail to destination
Testing Object is in testing state (only applicable to interface objects).

Status of the object calculated based on polling results, status of underlying objects, and associated alarms. For some object classes, like Report or Template, status is irrelevant. Status of such objects is always "Normal".

Access Control

Custom Attributes

Every object can have custom attributes defined either by user or integrated application via NetXMS API. Custom attributes distinguished by names (an attribute name can contain up to 127 printable characters), and have string values of unlimited length. However, if you wish to access custom attributes in NXSL scripts as properties of node object, you should name them conforming to NXSL identifier naming constraints. To create or change value of custom attribute manually, right-click object in NetXMS console, select "Properties", then select "Custom Attributes" tab.