# Map configuration format description

## General Information

The NagVis configuration file format is very similiar to the format used by Nagios®.

Configuration statements start with the keyword "define" followed by a type field and a left curly bracket ({). Every following line defines variable-value pairs, separated by an equal sign (=) until a right curly bracket (}) is found.

Hashes (#) are used to mark comments, note that a comment line MUST start with a hash not with other chars like whitespaces!

## Object types

- Global
- Host
- Service
- Hostgroup
- Servicegroup
- Map
- Textbox
- Shape
- Line
- Template
- Container
- Dynamic Group (New in 1.8b1)
- Aggregation (New in 1.8rc2)

## Description of the object types

### Global

The first definition in every config file should be of the special type "global". Options which are defined at this paragraph are valid for the whole map and are getting inherited to other types defined later.

Example with all options which have to be set:

    define global {
     map_image=lan.png
    }

Value | Default | Description
--- | --- | ---
allowed_for_config |  | Comma separated list of Nagios users who are allowed to edit this map. Can be "EVERYONE" for no permission check. (Deprecated in 1.5)
allowed_user |  | Comma separated list of Nagios users who are allowed to view this map. Can be "EVERYONE" for no permission check. (Deprecated in 1.5)
map_image |  | The name of the map image displayed in the background of the NagVis map, for example a Visio (TM) drawing. The value can even be "none" or empty for no background image. It is also possible to add URLs here. The URL has to be surrounded by [ and ].
alias | map name | The alias is the label for each map. If it is defined it is shown everywhere in NagVis frontend.
backend_id | inherited (nagvis.ini.php) | Backend-ID defined in Main Configuration file where NagVis should search for the object states. If this parameter is not given, the Backend defined as default backend in the Main Configuration file is used. As of NagVis 1.8 it is possible to define a "," separated list of backends here to combine objects of several backends. Host, host and service group objects do support merging their members into one object when multiple backends are configured for an object.
background_color | inherited (nagvis.ini.php) | Background colour of this map. If this is not set backgroundcolor from Main Configuration file is taken.
context_menu | inherited (nagvis.ini.php) | Enable/Disable the context menu on your map objects.
context_template | inherited (nagvis.ini.php) | Default context template to be used on this map
event_on_load | inherited (nagvis.ini.php) | Enabled/disables eventhandling on page loading. Initial problematic states will raise events in frontend during page rendering. (New in 1.7b3)
event_repeat_interval | inherited (nagvis.ini.php) | Repeat frontend events in the given interval. The interval is configured in seconds. Set value to 30 to let NagVis re-raise events for problematic objects every 30 seconds. (New in 1.7b3)
event_repeat_duration | inherited (nagvis.ini.php) | The time in seconds to repeat alerts for a problematic object as configured in event_repeat_interval. This value defaults to -1, this leads to repeated events until the problematic state has been fixed. (New in 1.7b3)
event_background | inherited (nagvis.ini.php) | Enable/Disable changing background colour on state changes (configured colour is shown when summary state is PENDING, OK or UP).
event_highlight | inherited (nagvis.ini.php) | Enable/Disable highlighting of the state changing object by adding a flashing border.
event_highlight_duration | inherited (nagvis.ini.php) | Set the highlight duration in milliseconds
event_highlight_interval | inherited (nagvis.ini.php) | Set the highlight interval in milliseconds
event_log | inherited (nagvis.ini.php) | Enable/Disable the eventlog in the new javascript frontend. The eventlog keeps track of important actions and information.
event_log_level | inherited (nagvis.ini.php) | Loglevel of the eventlog (Available: debug, info, warning, critical).
event_log_events | inherited (nagvis.ini.php) | Number of events in the eventlog scrollback
event_log_height | inherited (nagvis.ini.php) | Height of the javascript eventlog in px
event_log_hidden | inherited (nagvis.ini.php) | Hide/Show the eventlog on map loading
event_scroll | inherited (nagvis.ini.php) | Enable/Disable scrolling to the icon which changed the state when the icon is out of the visible scope.
event_sound | inherited (nagvis.ini.php) | Enable/Disable sound signals on state changes.
exclude_members |  | It is possible to exclude member objects completely while fetching the object information from the backend. The filtered elements will not appear anywhere in this object. For details about the filter syntax have a look at the exclude regex definition. (New in 1.6b4)
exclude_member_states |  | It is possible to exclude one or several member states while calculating the summary state of objects. The filtered elements will appear in the member lists but won't be used for summary state calculations. For details about the filter syntax have a look at the exclude regex definition. (New in 1.6b4)
grid_color | inherited (nagvis.ini.php) | The colour of the grid lines.
grid_show | inherited (nagvis.ini.php) | Enable/Disable a grid to make the alignment of objects easier in edit mode. Objects are aligned to the upper left corner after moving.
grid_steps | inherited (nagvis.ini.php) | Scale of the grid in px.
header_menu | inherited (nagvis.ini.php) | Enable/Disable the header menu
header_template | inherited (nagvis.ini.php) | header template to be used on this map
hover_childs_limit | inherited (nagvis.ini.php) | Number of maximum children to be displayed. Set to -1 to disable the limit.
hover_childs_order | inherited (nagvis.ini.php) | Order direction of child objects
hover_childs_show | inherited (nagvis.ini.php) | Enable/Disable displaying child objects
hover_childs_sort | inherited (nagvis.ini.php) | Sort method of child objects
hover_delay | inherited (nagvis.ini.php) | Delay of hover menu appearance in seconds
hover_menu | inherited (nagvis.ini.php) | Enable/Disable the hover menu
hover_template | inherited (nagvis.ini.php) | Default hover template to be used on this map
hover_timeout | inherited (nagvis.ini.php) | Default hover menu ajax request timeout in seconds (Deprecated in 1.4)
iconset | inherited (nagvis.ini.php) | Iconset to use as default for all objects placed on the map. Can be overwritten on a per object base. In the example "std_small" is used which means an OK state will be displayed using "std_small_ok.png", a CRITICAL state will be displayed by using "std_small_critical.png" and so on.
icon_size | inherited (nagvis.ini.php) | Scales the iconsets up or down while showing in the map. If left empty, the iconset images will be displayed at their natural size. You can configure this option with either a single integer for giving width and height at once, but you can also provide two comma separated integers to specify different values forr the width and height.
in_maintenance | 0 | Enable/Disable the maintenance mode of this map. If a map is in maintenance mode only a message gets displayed instead of the map.
label_show | 0 | Enable/Disable labels for the maps objects
label_x | center | Default x-position of the labels in px (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position). Since 1.7.7 this can also be set do center, which is the new default option.
label_y | bottom | Default y-position of the labels in px (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position). Since 1.7.7 this can also be set do bottom, which is the new default option.
label_width | auto | Default width of the labels in px
label_background | transparent | Default background colour of the labels. The colour should be given in hexcode. Can also be "transparent".
label_border | #000000 | Default border colour of the labels. The colour should be given in hexcode. Can also be "transparent".
label_style |  | Custom styling for the label text. To be given like HTML style attribute contents. E.g. `font-family:sans;font-weight:bold;`
line_type |  | Specifies the type of line when view_type=line. Valid values are: "11" for lines with one arrow at the end of a line. "10" for lines with two arrows pointing to each other in the middle of the line. "12" for plain lines without arrow.
line_width | 3 | This defines the width of the line in px when this object is being displayed as line.
line_weather_colors | inherited (nagvis.ini.php) | This defines the colours of weathermap colours in the different percentage levels. For example above 10% load it will be coloured #8c00ff.
only_hard_states | inherited (nagvis.ini.php) | Sets whether soft states should be ignored. Default setting is 0.
parent_map |  | The parent map of this map. This option is only used in the menu visualisations of the header menu and sidebar
recognize_services | inherited (nagvis.ini.php) | Sets whether the states of the services on hosts, hostgroup objects should be recognised. If this is not given in the config it's set to 1.
show_in_lists | inherited (nagvis.ini.php) | Show the maps in lists (dropdowns, index page, ...)
ignore_linked_maps_summary_state | 0 | Ignore child map summary state in parent's summary state
show_in_multisite | inherited (nagvis.ini.php) | Show the maps in multisite snapin
stylesheet | inherited (nagvis.ini.php) | Filename of the custom stylesheet to use on the maps (The file needs to be located in the share/nagvis/styles directory)
url_target | _self | Target of the Icon link, this option adapts <a target=""> (_self is same window)
host_url | inherited (nagvis.ini.php) | The default url to follow when a user left-clicks on a host object. Available macros: [htmlcgi], [htmlbase], [host_name], [backend_id]
hostgroup_url | inherited (nagvis.ini.php) | The default url to follow when a user left-clicks on an hostgroup object. Available macros: [htmlcgi], [htmlbase], [hostgroup_name], [backend_id]
serviceurl | inherited (nagvis.ini.php) | The default url to follow when a user left-clicks on an service object. Available macros: [htmlcgi], [htmlbase], [host_name], [service_description], [backend_id]
servicegroup_url | inherited (nagvis.ini.php) | The default url to follow when a user left-clicks on an servicegroup object. Available macros: [htmlcgi], [htmlbase], [servicegroup_name], [backend_id]
dyngroup_url | inherited (nagvis.ini.php) | The default url to follow when a user left-clicks on a dynamic group object. This is disabled by default, because there is no good link target in the default web GUI. So if you use another web GUI, there might be a useful target. Available macros: [htmlcgi], [htmlbase], [dyngroup_name], [backend_id]
aggr_url | inherited (nagvis.ini.php) | The default url to follow when a user left-clicks on an aggregation object. Available macros: [htmlcgi], [htmlbase], [aggr_name], [backend_id]
map_url | inherited (nagvis.ini.php) | The default url to follow when a user left-clicks on an map object. Available macros: [htmlcgi], [htmlbase], [map_name]
zoom | 100 | Zoom factor of the map. Can be set to any percentage value that the map objects should be zoomed in or out (New in 1.7b1). Since 1.8b1 this can be set to "fill", the map is being zoomed to fill the browsers viewport.
zoombar | inherited (nagvis.ini.php) | Enables a floating bar to make the map zooming controllable by this bar or by using the mouse wheel. To control NagVis scrolling via mouse wheel, you need to press the ALT key and then scroll the mouse wheel while holding the ALT key. (New in 1.8b1)

### Host

Example with all options which have to be set (note that options already defined in the global section are optional):

    define host {
     host_name=localhost
     x=100
     y=200
    }

Value | Default | Description
--- | --- | ---
object_id |  | Unique identifier of the object on the current map. Each object on the map needs to have an object_id. The object_id is built of alphanumeric signs of any length. When no object_id is given NagVis will generate one for the object.
host_name |  | Name of the host as defined in Nagios
x |  | X axis coordinate(s). Take a look at the coordinate definition for details.
y |  | Y axis coordinate(s). Take a look at the coordinate definition for details.
backend_id | inherited (global) | Backend-ID defined in Main Configuration file where NagVis should search for the object states. If this parameter is not given, the Backend which was set in global section of the map is taken. As of NagVis 1.8 it is possible to define a "," separated list of backends here to combine objects of several backends. All services for hosts with matching names found in all given backends will be added to the single host object.
context_menu | inherited (nagvis.ini.php) | Enable/Disable the context menu for this object.
context_template | inherited (nagvis.ini.php) | Context template for this object.
exclude_members |  | It is possible to exclude member objects completely while fetching the object information from the backend. The filtered elements will not appear anywhere in this object. For details about the filter syntax have a look at the exclude regex definition. (New in 1.6b4)
exclude_member_states |  | It is possible to exclude one or several member states while calculating the summary state of objects. The filtered elements will appear in the member lists but won't be used for summary state calculations. For details about the filter syntax have a look at the exclude regex definition. (New in 1.6b4)
hover_menu | inherited (nagvis.ini.php) | Enable/Disable the hover menu
hover_delay | inherited (nagvis.ini.php) | Delay of hover menu appearance in seconds
hover_template | inherited (global) | Hover template for this object
hover_timeout | inherited (nagvis.ini.php) | Hover menu ajax request timeout in seconds for this object
hover_url |  | URL which should be displayed in hover menu instead of standard information. There are some macros available: [host_name]: This macro stands for the object name.
hover_childs_show | inherited (nagvis.ini.php) | Enable/Disable displaying child objects
hover_childs_sort | inherited (nagvis.ini.php) | Sort method of child objects
hover_childs_order | inherited (nagvis.ini.php) | Order direction of child objects
hover_childs_limit | inherited (nagvis.ini.php) | Maximum number of children to be displayed. Set to -1 to disable the limit.
iconset | inherited (global) | Special iconset. Is inherited from global paragraph if not specified.
icon_size | inherited (nagvis.ini.php) | Scales the iconsets up or down while showing in the map. If left empty, the iconset images will be displayed at their natural size. You can configure this option with either a single integer for giving width and height at once, but you can also provide two comma separated integers to specify different values forr the width and height.
label_show | inherited (global) | Enable/Disable label for this object
label_text | [name] | Text of the label. Available macros: [name], [alias], [output]
label_x | inherited (global) | Label X-Position (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position)
label_y | inherited (global) | Label Y-Position (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position)
label_width | inherited (global) | Width of the label in px
label_background | inherited (global) | Background colour of the label. The colour should be given in hexcode. Can also be "transparent".
label_border | inherited (global) | Border colour of the labels. The colour should be given in hexcode. Can also be "transparent".
label_style | inherited (global) | Custom styling for the label text. To be given like HTML style attribute contents. E.g. `font-family:sans;font-weight:bold;`
line_type | inherited (global) | Specifies the type of line when view_type=line. Valid values are: "11" for lines with one arrow at the end of a line. "10" for lines with two arrows pointing to each other in the middle of the line. "12" for plain lines without arrow.
line_width | inherited (global) | This defines the width of the line in px when this object is being displayed as line.
only_hard_states | inherited (global) | Sets whether soft states should be ignored. Default setting is 0.
recognize_services | inherited (global) | Defines if the services of the host affect the displayed state. If set to "1" a critical service on the host will result in a host state display as critical too. If set to "0" only the Nagios Host State (UP or DOWN) will be used and the services of the host will be ignored.
url |  | URL where the Icon should link to. Default link is to the Nagios CGIs. Macros [host_name], [htmlcgi] and [htmlbase] are available. The value can be set to "#" to disable the link.
url_target | _self | Target of the Icon link, this option adapts <a target=""> (_self is same window). Macro [name] is available.
use |  | Comma separated list of object templates to use. For details see template objects
view_type | icon | This option defines the type of view for this object. Possible values are: "icon" or "line". Before NagVis 1.4 you could change the view of an object by setting the line_type. Since NagVis 1.4 you need to set the view_type for changing icons to lines.
z | 1 | The z option defines the order of icons which are stacked on top of each other. The highest value will be displayed on top. The background image has the value of 0. So valid values should be above or equal 1. Note: To prevent conflicts with the header navigation you should keep this value below 100.

### Service

Example with all options which have to be set (note that option already defined in the global section are optional):

    define service {
     host_name=localhost
     service_description=ping
     iconset=std_big
     x=100
     y=200
    }

Value | Default | Description
--- | --- | ---
object_id |  | Unique identifier of the object on the current map. Each object on the map needs to have an object_id. The object_id is built of alphanumeric signs of any length. When no object_id is given NagVis will generate one for the object.
host_name |  | Name of the host as defined in Nagios
service_description |  | Name of the service as defined in Nagios
x |  | X axis coordinate(s). Take a look at the coordinate definition for details.
y |  | Y axis coordinate(s). Take a look at the coordinate definition for details.
backend_id | inherited (global) | Backend-ID defined in Main Configuration file where NagVis should search for the object states. If this parameter is not given, the Backend which was set in global section of the map is taken.
context_menu | inherited (nagvis.ini.php) | Enable/Disable the context menu for this object.
context_template | inherited (nagvis.ini.php) | Context template for this object.
exclude_members |  | It is possible to exclude member objects completely while fetching the object information from the backend. The filtered elements will not appear anywhere in this object. For details about the filter syntax have a look at the exclude regex definition. (New in 1.6b4)
exclude_member_states |  | It is possible to exclude one or several member states while calculating the summary state of objects. The filtered elements will appear in the member lists but won't be used for summary state calculations. For details about the filter syntax have a look at the exclude regex definition. (New in 1.6b4)
gadget_url |  | The value can be a gadget script in gadget path (`nagvis/gadgets`) e.g. "std_speedometer.php" or a full URI to a gadget like script surrounded by brackets e.g. "[http://127.0.0.1/nagvis/gadgets/std_speedometer.php]". For details about gadgets see here. This option is only recognised when view_type="gadget" is set.
gadget_scale | 100 | The scale of the gadget. Default scale is 100 (percent). The gadgets should be able to be resized by this parameter
gadget_type | img | The type of the rendered output. This can be "html" when the gadget renders normal HTML code, or "img" when the gadget renders an image.
gadget_opts |  | Optional gadget specific params. The contents can be freely defined for each gadget. The value is processed as GET param "opts". We recommend to use a var/val format like this: key1=val1,key2=val2. Then you can easily split this string to an array in the gadget.
hover_menu | inherited (nagvis.ini.php) | Enable/Disable the hover menu
hover_template | inherited (global) | Hover template for this object
hover_timeout | inherited (nagvis.ini.php) | Hover menu ajax request timeout in seconds for this object
hover_delay | inherited (nagvis.ini.php) | Delay of hover menu appearance in seconds
hover_url |  | URL which should be displayed in hover menu instead of standard information. There are some macros available: [host_name]: This macro stands for the object name. [service_description]: This macro stands for the service description and will only be replaced in service objects.
hover_childs_show | inherited (nagvis.ini.php) | Enable/Disable displaying child objects
hover_childs_sort | inherited (nagvis.ini.php) | Sort method of child objects
hover_childs_order | inherited (nagvis.ini.php) | Order direction of child objects
hover_childs_limit | inherited (nagvis.ini.php) | Maximum number of children to be displayed. Set to -1 to disable the limit.
iconset | inherited (global) | Special iconset. Is inherited from global paragraph if not specified.
icon_size | inherited (nagvis.ini.php) | Scales the iconsets up or down while showing in the map. If left empty, the iconset images will be displayed at their natural size. You can configure this option with either a single integer for giving width and height at once, but you can also provide two comma separated integers to specify different values forr the width and height.
label_show | inherited (global) | Enable/Disable label for this object
label_text | [name] [service_description] | Text of the label. Available macros: [name], [alias], [service_description], [output]
label_x | inherited (global) | Label X-Position (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position)
label_y | inherited (global) | Label Y-Position (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position)
label_width | inherited (global) | Width of the label in px
label_background | inherited (global) | Background colour of the label. The colour should be given in hexcode. Can also be "transparent".
label_border | inherited (global) | Border colour of the labels. The colour should be given in hexcode. Can also be "transparent".
label_style | inherited (global) | Custom styling for the label text. To be given like HTML style attribute contents. E.g. `font-family:sans;font-weight:bold;`
line_type | inherited (global) | Specifies the type of line when view_type=line. Valid values are: "11" for lines with one arrow at the end of a line. "10" for lines with two arrows pointing to each other in the middle of the line. "12" for plain lines without arrow.
line_width | inherited (global) | This defines the width of the line in px when this object is being displayed as line.
| line_cut | 0.5 | Lines with two parts have the cut in the middle of the line. This equates to a line cut value of "0.5". It is possible to relocate the cut by changing this value. Valid values are 0.0 to 1.0.
line_label_pos_in | 0.5 | Weathermap lines have their labels in the middle of the line by default. This equates to a value of "0.5". It is possible to relocate the cut by changing this value. Valid values are 0.0 to 1.0.
line_label_pos_out | 0.5 | Weathermap lines have their labels in the middle of the line by default. This equates to a value of "0.5". It is possible to relocate the cut by changing this value. Valid values are 0.0 to 1.0.
line_label_in | in | Specify which performance data name you want to use for the "inbound" weathermap line.
line_label_out | out | Specify which performance data name you want to use for the "outbound" weathermap line.
line_label_y_offset | 2 | This option defines the offset of the labels to the line when rendering weathermap lines which show percentage and absolute bandwidth labels.
line_weather_colors | inherited (global) | This defines the colours of weathermap colours in the different percentage levels. For example above 10% load it will be coloured #8c00ff.
only_hard_states | inherited (global) | Sets whether soft states should be ignored. Default setting is 0.
url |  | URL where the Icon should link to. Default link is to the Nagios CGIs. Macros [host_name], [htmlcgi] and [htmlbase] are available. The value can be set to "#" to disable the link.
url_target | _self | Target of the Icon link, this option adapts <a target=""> (_self is same window). Available macros: [name], [service_description],
use |  | Comma separated list of object templates to use. For details see template objects
view_type | icon | This option defines the type of view for this object. Possible values are: "icon" or "line". Before NagVis 1.4 you could change the view of an object by setting the line_type. Since NagVis 1.4 you need to set the view_type for changing icons to lines.
z | 1 | The z option defines the order of icons which are stacked on top of each other. The highest value will be displayed on top. The background image has the value of 0. So valid values should be above or equal 1. Note: To prevent conflicts with the header navigation you should keep this value below 100.

### Hostgroup

Example with all options which have to be set (note that options already defined in the global section are optional):

    define hostgroup {
     hostgroup_name=servers
     x=100
     y=200
    }

Value | Default | Description
--- | --- | ---
object_id |  | Unique identifier of the object on the current map. Each object on the map needs to have an object_id. The object_id is built of alphanumeric signs of any length. When no object_id is given NagVis will generate one for the object.
hostgroup_name |  | Name of the hostgroup as defined in Nagios
x |  | X axis coordinate(s). Take a look at the coordinate definition for details.
y |  | Y axis coordinate(s). Take a look at the coordinate definition for details.
backend_id | inherited (global) | Backend-ID defined in Main Configuration file where NagVis should search for the object states. If this parameter is not given, the Backend which was set in global section of the map is taken. As of NagVis 1.8 it is possible to define a "," separated list of backends here to combine objects of several backends. All host members of host groups with matching names found in all given backends will be added to the single host group object.
context_menu | inherited (nagvis.ini.php) | Enable/Disable the context menu for this object.
context_template | inherited (nagvis.ini.php) | Context template for this object.
exclude_members |  | It is possible to exclude member objects completely while fetching the object information from the backend. The filtered elements will not appear anywhere in this object. For details about the filter syntax have a look at the exclude regex definition. (New in 1.6b4)
exclude_member_states |  | It is possible to exclude one or several member states while calculating the summary state of objects. The filtered elements will appear in the member lists but won't be used for summary state calculations. For details about the filter syntax have a look at the exclude regex definition. (New in 1.6b4)
hover_menu | inherited (nagvis.ini.php) | Enable/Disable the hover menu
hover_delay | inherited (nagvis.ini.php) | Delay of hover menu appearance in seconds
hover_template | inherited (global) | Hover template for this object
hover_timeout | inherited (nagvis.ini.php) | Hover menu ajax request timeout in seconds for this object
hover_url |  | URL which should be displayed in hover menu instead of standard information. There are some macros available: [hostgroup_name]: This macro stands for the object name.
hover_childs_show | inherited (nagvis.ini.php) | Enable/Disable displaying child objects
hover_childs_sort | inherited (nagvis.ini.php) | Sort method of child objects
hover_childs_order | inherited (nagvis.ini.php) | Order direction of child objects
hover_childs_limit | inherited (nagvis.ini.php) | Maximum number of children to be displayed. Set to -1 to disable the limit.
iconset | inherited (global) | Special iconset. Is inherited from global paragraph if not specified.
icon_size | inherited (nagvis.ini.php) | Scales the iconsets up or down while showing in the map. If left empty, the iconset images will be displayed at their natural size. You can configure this option with either a single integer for giving width and height at once, but you can also provide two comma separated integers to specify different values forr the width and height.
label_show | inherited (global) | Enable/Disable label for this object
label_text | [name] | Text of the label. Available macros: [name], [alias], [output]
label_x | inherited (global) | Label X-Position (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position)
label_y | inherited (global) | Label Y-Position (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position)
label_width | inherited (global) | Width of the label in px
label_background | inherited (global) | Background colour of the label. The colour should be given in hexcode. Can also be "transparent".
label_border | inherited (global) | Border colour of the labels. The colour should be given in hexcode. Can also be "transparent".
label_style | inherited (global) | Custom styling for the label text. To be given like HTML style attribute contents. E.g. `font-family:sans;font-weight:bold;`
line_type | inherited (global) | Specifies the type of line when view_type=line. Valid values are: "11" for lines with one arrow at the end of a line. "10" for lines with two arrows pointing to each other in the middle of the line. "12" for plain lines without arrow.
line_width | inherited (global) | This defines the width of the line in px when this object is being displayed as line.
recognize_services | inherited (global) | Defines if the services of the hosts affect the displayed state. If set to "1" a critical service on one of the host will result in a hostgroup state display as critical too. If set to "0" only the Nagios Host State (UP or DOWN) will be used and the services of the hosts will be ignored.
url |  | URL where the Icon should link to. Default link is to the Nagios CGIs. Macros [host_name], [htmlcgi] and [htmlbase] are available. The value can be set to "#" to disable the link.
url_target | _self | Target of the Icon link, this option adapts <a target=""> (_self is same window). Available macros: [name]
use |  | Comma separated list of object templates to use. For details see template objects
view_type | icon | This option defines the type of view for this object. Possible values are: "icon" or "line". Before NagVis 1.4 you could change the view of an object by setting the line_type. Since NagVis 1.4 you need to set the view_type for changing icons to lines.
z | 1 | The z option defines the order of icons which are stacked on top of each other. The highest value will be displayed on top. The background image has the value of 0. So valid values should be above or equal 1. Note: To prevent conflicts with the header navigation you should keep this value below 100.

### Servicegroup

Example with all options which have to be set (note that options already defined in the global section are optional):

    define servicegroup {
     servicegroup_name=servicegroup1
     x=100
     y=200
    }

Value | Default | Description
--- | --- | ---
object_id |  | Unique identifier of the object on the current map. Each object on the map needs to have an object_id. The object_id is built of alphanumeric signs of any length. When no object_id is given NagVis will generate one for the object.
servicegroup_name |  | Name of the servicegroup as defined in Nagios.
x |  | X axis coordinate(s). Take a look at the coordinate definition for details.
y |  | Y axis coordinate(s). Take a look at the coordinate definition for details.
backend_id | inherited (global) | Backend-ID defined in Main Configuration file where NagVis should search for the object states. If this parameter is not given, the Backend which was set in global section of the map is taken. As of NagVis 1.8 it is possible to define a "," separated list of backends here to combine objects of several backends. All service members of groups with matching names found in all given backends will be added to the single servie group object.
context_menu | inherited (nagvis.ini.php) | Enable/Disable the context menu for this object.
context_template | inherited (nagvis.ini.php) | Context template for this object.
exclude_members |  | It is possible to exclude member objects completely while fetching the object information from the backend. The filtered elements will not appear anywhere in this object. For details about the filter syntax have a look at the exclude regex definition. (New in 1.6b4)
exclude_member_states |  | It is possible to exclude one or several member states while calculating the summary state of objects. The filtered elements will appear in the member lists but won't be used for summary state calculations. For details about the filter syntax have a look at the exclude regex definition. (New in 1.6b4)
hover_menu | inherited (nagvis.ini.php) | Enable/Disable the hover menu
hover_url |  | URL which should be displayed in hover menu instead of standard information. There are some macros available: [servicegroup_name]: This macro stands for the object name.
hover_template | inherited (global) | Hover template for this object
hover_timeout | inherited (nagvis.ini.php) | Hover menu ajax request timeout in seconds for this object
hover_delay | inherited (nagvis.ini.php) | Delay of hover menu appearance in seconds
hover_childs_show | inherited (nagvis.ini.php) | Enable/Disable displaying child objects
hover_childs_sort | inherited (nagvis.ini.php) | Sort method of child objects
hover_childs_order | inherited (nagvis.ini.php) | Order direction of child objects
hover_childs_limit | inherited (nagvis.ini.php) | Number of maximum children to be displayed. Set to -1 to disable the limit.
iconset | inherited (global) | Special iconset. Is inherited from global paragraph if not specified.
icon_size | inherited (nagvis.ini.php) | Scales the iconsets up or down while showing in the map. If left empty, the iconset images will be displayed at their natural size. You can configure this option with either a single integer for giving width and height at once, but you can also provide two comma separated integers to specify different values forr the width and height.
label_show | inherited (global) | Enable/Disable label for this object
label_text | [name] | Text of the label. Available macros: [name], [alias], [output]
label_x | inherited (global) | Label X-Position (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position)
label_y | inherited (global) | Label Y-Position (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position)
label_width | inherited (global) | Width of the label in px
label_background | inherited (global) | Background colour of the label. The colour should be given in hexcode. Can also be "transparent".
label_border | inherited (global) | Border colour of the labels. The colour should be given in hexcode. Can also be "transparent".
label_style | inherited (global) | Custom styling for the label text. To be given like HTML style attribute contents. E.g. `font-family:sans;font-weight:bold;`
line_type | inherited (global) | Specifies the type of line when view_type=line. Valid values are: "11" for lines with one arrow at the end of a line. "10" for lines with two arrows pointing to each other in the middle of the line. "12" for plain lines without arrow.
line_width | inherited (global) | This defines the width of the line in px when this object is being displayed as line.
only_hard_states | inherited (global) | Sets whether soft states should be ignored. Default setting is 0.
url |  | URL where the Icon should link to. Default link is to the Nagios CGIs. Macros [host_name], [htmlcgi] and [htmlbase] are available. The value can be set to "#" to disable the link.
url_target | _self | Target of the Icon link, this option adapts <a target=""> (_self is same window). Available macros: [name]
use |  | Comma separated list of object templates to use. For details see template objects
view_type | icon | This option defines the type of view for this object. Possible values are: "icon" or "line". Before NagVis 1.4 you could change the view of an object by setting the line_type. Since NagVis 1.4 you need to set the view_type for changing icons to lines.
z | 1 | The z option defines the order of icons which are stacked on top of each other. The highest value will be displayed on top. The background image has the value of 0. So valid values should be above or equal 1. Note: To prevent conflicts with the header navigation you should keep this value below 100.

### Map

Example with all options which have to be set (note that options already defined in the global section are optional):

    define map {
     map_name=webserver
     x=77
     y=156
    }

Value | Default | Description
--- | --- | ---
object_id |  | Unique identifier of the object on the current map. Each object on the map needs to have an object_id. The object_id is built of alphanumeric signs of any length. When no object_id is given NagVis will generate one for the object.
map_name |  | Name of the NagVis map cfg file (without .cfg extension)
x |  | X axis coordinate(s). Take a look at the coordinate definition for details.
y |  | Y axis coordinate(s). Take a look at the coordinate definition for details.
context_menu | inherited (nagvis.ini.php) | Enable/Disable the context menu for this object.
context_template | inherited (nagvis.ini.php) | Context template for this object.
exclude_members |  | It is possible to exclude member objects completely while fetching the object information from the backend. The filtered elements will not appear anywhere in this object. For details about the filter syntax have a look at the exclude regex definition. (New in 1.6b4)
exclude_member_states |  | It is possible to exclude one or several member states while calculating the summary state of objects. The filtered elements will appear in the member lists but won't be used for summary state calculations. For details about the filter syntax have a look at the exclude regex definition. (New in 1.6b4)
hover_menu | inherited (nagvis.ini.php) | Enable/Disable the hover menu
hover_url |  | URL which should be displayed in hover menu instead of standard information. There are some macros available: [map_name]: This macro stands for the object name.
hover_template | inherited (global) | Hover template for this object
hover_timeout | inherited (nagvis.ini.php) | Hover menu ajax request timeout in seconds for this object
hover_delay | inherited (nagvis.ini.php) | Delay of hover menu appearance in seconds
hover_childs_show | inherited (nagvis.ini.php) | Enable/Disable displaying child objects
hover_childs_sort | inherited (nagvis.ini.php) | Sort method of child objects
hover_childs_order | inherited (nagvis.ini.php) | Order direction of child objects
hover_childs_limit | inherited (nagvis.ini.php) | Number of maximum children to be displayed. Set to -1 to disable the limit.
iconset | inherited (global) | Special iconset. Is inherited from global paragraph if not specified.
icon_size | inherited (nagvis.ini.php) | Scales the iconsets up or down while showing in the map. If left empty, the iconset images will be displayed at their natural size. You can configure this option with either a single integer for giving width and height at once, but you can also provide two comma separated integers to specify different values forr the width and height.
label_show | inherited (global) | Enable/Disable label for this object
label_text | [name] | Text of the label. Available macros: [name], [alias], [output]
label_x | inherited (global) | Label X-Position (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position)
label_y | inherited (global) | Label Y-Position (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position)
label_width | inherited (global) | Width of the label in px
label_background | inherited (global) | Background colour of the label. The colour should be given in hexcode. Can also be "transparent".
label_border | inherited (global) | Border colour of the labels. The colour should be given in hexcode. Can also be "transparent".
label_style | inherited (global) | Custom styling for the label text. To be given like HTML style attribute contents. E.g. `font-family:sans;font-weight:bold;`
line_type | inherited (global) | Specifies the type of line when view_type=line. Valid values are: "11" for lines with one arrow at the end of a line. "10" for lines with two arrows pointing to each other in the middle of the line. "12" for plain lines without arrow.
line_width | inherited (global) | This defines the width of the line in px when this object is being displayed as line.
only_hard_states | inherited (global) | Sets whether soft states should be ignored. Default setting is 0.
url |  | URL where the Icon should link to. Default link is to the Nagios CGIs. Macros [host_name], [htmlcgi] and [htmlbase] are available. The value can be set to "#" to disable the link.
url_target | _self | Target of the Icon link, this option adapts <a target=""> (_self is same window). Available macros: [name]
use |  | Comma separated list of object templates to use. For details see template objects
view_type | icon | This option defines the type of view for this object. Possible values are: "icon" or "line". Before NagVis 1.4 you could change the view of an object by setting the line_type. Since NagVis 1.4 you need to set the view_type for changing icons to lines.
z | 1 | The z option defines the order of icons which are stacked on top of each other. The highest value will be displayed on top. The background image has the value of 0. So valid values should be above or equal 1. Note: To prevent conflicts with the header navigation you should keep this value below 100.

### Textbox

Example with major options:

    define textbox {
      text="This is an informational text which can be placed anywhere on the map, HTML can also be used for formatting purposes"
     x=200
     y=100
    }

Value | Default | Description
--- | --- | ---
object_id |  | Unique identifier of the object on the current map. Each object on the map needs to have an object_id. The object_id is built of alphanumeric signs of any length. When no object_id is given NagVis will generate one for the object.
text |  | Your own text, HTML is possible. There are some macros: [refresh_counter]: Shows the time until the next reload/rotate dynamically [worker_last_run]: Shows the time of the last worker run
x |  | X axis coordinate(s). Take a look at the coordinate definition for details.
y |  | Y axis coordinate(s). Take a look at the coordinate definition for details.
w | auto | Width of the textbox in px (pixels). Set to "auto" for auto scaling.
h | auto | Height of the textbox in px (pixels). Set to "auto" for auto scaling.
background_color | #C0C0C0 | Background colour of the textbox. The colour should be given in hexcode. Can also be "transparent".
border_color | #000000 | Background colour of the textbox. The colour should be given in hexcode. Can also be "transparent".
style |  | Custom styling for the text. To be given like HTML style attribute contents. E.g. `font-family:sans;font-weight:bold;`
use |  | Comma separated list of object templates to use. For details see Template
z | 1 | The z option defines the order of icons which are stacked on top of each other. The highest value will be displayed on top. The background image has the value of 0. So valid values should be above or equal 1. Note: To prevent conflicts with the header navigation you should keep this value below 100.

### Shape

Basicaly shapes are simple images which can be moved and positioned on the map. The shapes are meant to be layout elements. The shapes were added to give the users the option to create less static maps.

Example with all values which have to be set:

    define shape {
     icon="test"
     x=200
     y=100
    }

Value | Default | Description
--- | --- | ---
object_id |  | Unique identifier of the object on the current map. Each object on the map needs to have an object_id. The object_id is built of alphanumeric signs of any length. When no object_id is given NagVis will generate one for the object.
icon |  | Filename of the shape. Shapes have to be located in the shape directory (default: `nagvis/images/shapes`). It is also possible to add URLs here. The URL has to be surrounded by [ and ].
x |  | X axis coordinate(s). Take a look at the coordinate definition for details.
y |  | Y axis coordinate(s). Take a look at the coordinate definition for details.
enable_refresh | 0 | This option activates the shape for regular updates in the frontend. This is only needed for dynamic shape images which change once in a while.
hover_menu | 0 | Enable/Disable the hover menu
hover_url |  | URL which should be displayed when hovering over the image. By default there is no action on hover.
hover_delay | inherited (nagvis.ini.php) | Delay of hover menu appearance in seconds
url |  | URL where the Icon should link to. By default there is no link. The value can be empty to disable the link.
url_target | _self | Target of the Icon link, this option adapts <a target=""> (_self is same window)
use |  | Comma separated list of object templates to use. For details see Template
z | 1 | The z option defines the order of icons which are stacked on top of each other. The highest value will be displayed on top. The background image has the value of 0. So valid values should be above or equal 1. Note: To prevent conflicts with the header navigation you should keep this value below 100.

### Line

The line is a stateless layout element to connect elements and visualize stateless connections between other objects. The objecttype has been created to make the design less static.

Example with all values which have to be set:

    define line {
        line_type=1
        x=200
        y=100
    }

Value | Default | Description
--- | --- | ---
object_id |  | Unique identifier of the object on the current map. Each object on the map needs to have an object_id. The object_id is built of alphanumeric signs of any length. When no object_id is given NagVis will generate one for the object.
line_type |  | Specifies the type of line when view_type=line. Valid values are: "11" for lines with one arrow at the end of a line. "10" for lines with two arrows pointing to each other in the middle of the line. "12" for plain lines without arrow.
x |  | X axis coordinate(s). Take a look at the coordinate definition for details.
y |  | Y axis coordinate(s). Take a look at the coordinate definition for details.
line_width | 3 | The width of the line in pixels.
line_color | #ffffff | The fill colour of the line in hex form. Can also be "transparent".
line_color_border | #000000 | The border colour of the line in hex form. Can also be "transparent".
hover_menu | 0 | Enable/Disable the hover menu
hover_url |  | URL which should be displayed when hovering over the image. By default there is no action on hover.
hover_delay | inherited (nagvis.ini.php) | Delay of hover menu appearance in seconds
url |  | URL where the Icon should link to. By default there is no link. The value can be empty to disable the link.
url_target | _self | Target of the Icon link, this option adapts <a target=""> (_self is same window)
use |  | Comma separated list of object templates to use. For details see Template
z | 1 | The z option defines the order of icons which are stacked on top of each other. The highest value will be displayed on top. The background image has the value of 0. So valid values should be above or equal 1. Note: To prevent conflicts with the header navigation you should keep this value below 100.

### Template

With this object you have the ability to define all values except the `must-have-attributes` in one object for many others. You can set all attributes to the value you need and inherit them with the `use` attribute to each object.

Please note: When editing objects using object templates using the web based editing functions the values configured in the template will be copied to the edited objects. From this time the values set in the object are not used anymore. It is not recommended to use the web editing frontend and template objects at the same time.

Example with all values which have to be set:

    define template {
     name=generic-template
    }

Value | Default | Description
--- | --- | ---
name |  | Template name (simple string without space - has to be unique within the map)
... |  | All values which are available in the objects which inherit this template

### Container

Example with major options:

    define container {
      url="std_hello.php"
      x=200
      y=100
    }

Option | Default | Description
--- | --- | ---
object_id |  | Unique identifier of the object on the current map. Each object on the map needs to have an object_id. The object_id is built of alphanumeric signs of any length. When no object_id is given NagVis will generate one for the object.
url |  | The URL to load the contents of the container from. This can be given as simple filename, in this case script is loaded from the `nagvis/userfiles/script` directory. As alternative it is possible to configure absolute paths like e.g. /path/to/my/script.php or full URLs like e.g. http://127.0.0.1/my-script.php. It is possible to add a set of parameters to the URL, it is up to the script to handle them.
x |  | X axis coordinate. Take a look at the coordinate definition for details.
y |  | Y axis coordinate(s). Take a look at the coordinate definition for details.
w | auto | Width of the textbox in px (pixels). Set to "auto" for auto scaling.
h | auto | Height of the textbox in px (pixels). Set to "auto" for auto scaling.
view_type | inline | This option defines the way to render the image. Possible values are: "inline" an "iframe". Inline means the fetched contents are directly put in the a container object (`innerHTML`). When setting the value to iframe an iframe object is created to render the given URL in this iframe.
enable_refresh | 0 | Enabling this option activates regular updates for this object while being displayed in the frontend. This is only needed for contents which might change during showing the map.
background_color | #C0C0C0 | Background colour of the textbox. The colour should be given in hexcode. Can also be "transparent".
border_color | #000000 | Background colour of the textbox. The colour should be given in hexcode. Can also be "transparent".
style |  | Custom styling for the text. To be given like HTML style attribute contents. E.g. `font-family:sans;font-weight:bold;`. It is applied to a "span" element, the container element which gets the contents of the requested url added.
use |  | Comma separated list of object templates to use. For details see Template
z | 5 | The z option defines the order of icons which are stacked on top of each other. The highest value will be displayed on top. The background image has the value of 0. So valid values should be above or equal 1. Note: To prevent conflicts with the header navigation you should keep this value below 100.

#### Script: std_lq.php

This script is delivered with NagVis. It can be used to list data fetched via livestatus on your maps to e.g. display lists of items or just raw numbers.

Please note: By default all queries get the current username added with the `AuthUser` livestatus filer. Resulting from this a user can only see the hosts and services he is a contact of. To change this behaviour you can customize (copy) the std_lq.php and change the `setAuthUser` to the following definition:

    $setAuthUser = true;

To add the script to your maps you need to add `std_lq.php` with additional parameters to the `url` parameter in a container object. The parameters are given as URL parameters.

You have to call this script with at least two parameters:

backend_id | The id of the backend to use as configured in NagVis
query | The livestatus query to execute (newlines must be given as \\n)

Optional parameters:

type | Customize the way the resulting data is displayed

Example calls to this script:

Query a single cell as simple string:

    std_lq.php?backend_id=live_1&query=GET hosts\\nLimit: 1\\nColumns: host_name\\n&type=cell

Query several columns from a single dataset. Resulting values are displayed separated by ", ":

    std_lq.php?backend_id=live_1&query=GET hosts\\nLimit: 1\\nColumns: host_name address state\\n&type=row

Query one column from several datasets. Each cell found is displayed on a separate line:

    std_lq.php?backend_id=live_1&query=GET hosts\\nLimit: 2\\nColumns: host_name\\n&type=column

Query several columns from several datasets and display them as a table:

    std_lq.php?backend_id=live_1&query=GET hosts\\nLimit: 2\\nColumns: host_name state address\\n&type=list

### Dynamic Group

Please note: Dynamic groups can only be used with livestatus backends.

This example creates a dynamic group named "My Dynamic Group" which engroups all services which have the name "CPU load". All used options have to be set (note that options already defined in the global section are optional):

    define dyngroup {
     name=My Dynamic Group
     object_types=service
     object_filter=Filter: service_description = CPU load\n
     x=100
     y=200
    }

Value | Default | Description
--- | --- | ---
object_id |  | Unique identifier of the object on the current map. Each object on the map needs to have an object_id. The object_id is built of alphanumeric signs of any length. When no object_id is given NagVis will generate one for the object.
name |  | You can configure any name here, it is just a string to make the object identifyable for you.
object_types |  | Controls which type of objects are used within the dynamic group. Can be set to either "host" or "service".
object_filter |  | This is used in the livestatus queries belonging to this object to filter the member objects used in this dynamic group. You need to provide valid livestatus filter definitions here.
x |  | X axis coordinate(s). Take a look at the coordinate definition for details.
y |  | Y axis coordinate(s). Take a look at the coordinate definition for details.
backend_id | inherited (global) | Backend-ID defined in Main Configuration file where NagVis should search for the object states. If this parameter is not given, the Backend which was set in global section of the map is taken. As of NagVis 1.8 it is possible to define a "," separated list of backends here to combine objects of several backends. All host members of host groups with matching names found in all given backends will be added to the single host group object.
context_menu | inherited (nagvis.ini.php) | Enable/Disable the context menu for this object.
context_template | inherited (nagvis.ini.php) | Context template for this object.
hover_menu | inherited (nagvis.ini.php) | Enable/Disable the hover menu
hover_delay | inherited (nagvis.ini.php) | Delay of hover menu appearance in seconds
hover_template | inherited (global) | Hover template for this object
hover_timeout | inherited (nagvis.ini.php) | Hover menu ajax request timeout in seconds for this object
hover_url |  | URL which should be displayed in hover menu instead of standard information. There are some macros available: [dyngroup_name]: This macro stands for the object name.
hover_childs_show | inherited (nagvis.ini.php) | Enable/Disable displaying child objects
hover_childs_sort | inherited (nagvis.ini.php) | Sort method of child objects
hover_childs_order | inherited (nagvis.ini.php) | Order direction of child objects
hover_childs_limit | inherited (nagvis.ini.php) | Maximum number of children to be displayed. Set to -1 to disable the limit.
iconset | inherited (global) | Special iconset. Is inherited from global paragraph if not specified.
icon_size | inherited (nagvis.ini.php) | Scales the iconsets up or down while showing in the map. If left empty, the iconset images will be displayed at their natural size. You can configure this option with either a single integer for giving width and height at once, but you can also provide two comma separated integers to specify different values forr the width and height.
label_show | inherited (global) | Enable/Disable label for this object
label_text | [name] | Text of the label. Available macros: [name], [alias], [output]
label_x | inherited (global) | Label X-Position (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position)
label_y | inherited (global) | Label Y-Position (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position)
label_width | inherited (global) | Width of the label in px
label_background | inherited (global) | Background colour of the label. The colour should be given in hexcode. Can also be "transparent".
label_border | inherited (global) | Border colour of the labels. The colour should be given in hexcode. Can also be "transparent".
label_style | inherited (global) | Custom styling for the label text. To be given like HTML style attribute contents. E.g. `font-family:sans;font-weight:bold;`
line_type | inherited (global) | Specifies the type of line when view_type=line. Valid values are: "11" for lines with one arrow at the end of a line. "10" for lines with two arrows pointing to each other in the middle of the line. "12" for plain lines without arrow.
line_width | inherited (global) | This defines the width of the line in px when this object is being displayed as line.
recognize_services | inherited (global) | Defines if the services of the hosts affect the displayed state. If set to "1" a critical service on one of the host will result in a hostgroup state display as critical too. If set to "0" only the Nagios Host State (UP or DOWN) will be used and the services of the hosts will be ignored.
url |  | URL where the Icon should link to. Default link is to the Nagios CGIs. Macros [dyngroup_name], [htmlcgi] and [htmlbase] are available. The value can be set to an empty string to disable the link.
url_target | _self | Target of the Icon link, this option adapts <a target=""> (_self is same window). Available macros: [name]
use |  | Comma separated list of object templates to use. For details see template objects
view_type | icon | This option defines the type of view for this object. Possible values are: "icon" or "line". Before NagVis 1.4 you could change the view of an object by setting the line_type. Since NagVis 1.4 you need to set the view_type for changing icons to lines.
z | 1 | The z option defines the order of icons which are stacked on top of each other. The highest value will be displayed on top. The background image has the value of 0. So valid values should be above or equal 1. Note: To prevent conflicts with the header navigation you should keep this value below 100.

### Aggregation

Please note: Aggregations can currently only be used with the "mkbi" backend.

This example creates an object showing the state of a Checkmk BI Aggregation which is named "Host localhost". All used options have to be set (note that options already defined in the global section are optional):

    define aggr {
     name=Host localhost
     x=100
     y=200
    }

Value | Default | Description
--- | --- | ---
object_id |  | Unique identifier of the object on the current map. Each object on the map needs to have an object_id. The object_id is built of alphanumeric signs of any length. When no object_id is given NagVis will generate one for the object.
name |  | The name you configure here needs to match the name of the Checkmk BI Aggregation you like to show the state of.
x |  | X axis coordinate(s). Take a look at the coordinate definition for details.
y |  | Y axis coordinate(s). Take a look at the coordinate definition for details.
backend_id | inherited (global) | Backend-ID defined in Main Configuration file where NagVis should search for the object states. If this parameter is not given, the Backend which was set in global section of the map is taken. As of NagVis 1.8 it is possible to define a "," separated list of backends here to combine objects of several backends. All host members of host groups with matching names found in all given backends will be added to the single host group object.
context_menu | inherited (nagvis.ini.php) | Enable/Disable the context menu for this object.
context_template | inherited (nagvis.ini.php) | Context template for this object.
hover_menu | inherited (nagvis.ini.php) | Enable/Disable the hover menu
hover_delay | inherited (nagvis.ini.php) | Delay of hover menu appearance in seconds
hover_template | inherited (global) | Hover template for this object
hover_timeout | inherited (nagvis.ini.php) | Hover menu ajax request timeout in seconds for this object
hover_url |  | URL which should be displayed in hover menu instead of standard information. There are some macros available: [aggr_name]: This macro stands for the object name.
hover_childs_show | inherited (nagvis.ini.php) | Enable/Disable displaying child objects
hover_childs_sort | inherited (nagvis.ini.php) | Sort method of child objects
hover_childs_order | inherited (nagvis.ini.php) | Order direction of child objects
hover_childs_limit | inherited (nagvis.ini.php) | Maximum number of children to be displayed. Set to -1 to disable the limit.
iconset | inherited (global) | Special iconset. Is inherited from global paragraph if not specified.
icon_size | inherited (nagvis.ini.php) | Scales the iconsets up or down while showing in the map. If left empty, the iconset images will be displayed at their natural size. You can configure this option with either a single integer for giving width and height at once, but you can also provide two comma separated integers to specify different values forr the width and height.
label_show | inherited (global) | Enable/Disable label for this object
label_text | [name] | Text of the label. Available macros: [name], [alias], [output]
label_x | inherited (global) | Label X-Position (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position)
label_y | inherited (global) | Label Y-Position (with prefix + or - relative to the upper left corner of the icons, otherwise absolute position)
label_width | inherited (global) | Width of the label in px
label_background | inherited (global) | Background colour of the label. The colour should be given in hexcode. Can also be "transparent".
label_border | inherited (global) | Border colour of the labels. The colour should be given in hexcode. Can also be "transparent".
label_style | inherited (global) | Custom styling for the label text. To be given like HTML style attribute contents. E.g. `font-family:sans;font-weight:bold;`
line_type | inherited (global) | Specifies the type of line when view_type=line. Valid values are: "11" for lines with one arrow at the end of a line. "10" for lines with two arrows pointing to each other in the middle of the line. "12" for plain lines without arrow.
line_width | inherited (global) | This defines the width of the line in px when this object is being displayed as line.
recognize_services | inherited (global) | Defines if the services of the hosts affect the displayed state. If set to "1" a critical service on one of the host will result in a hostgroup state display as critical too. If set to "0" only the Nagios Host State (UP or DOWN) will be used and the services of the hosts will be ignored.
url |  | URL where the Icon should link to. Default link is to the Checkmk BI Aggregation in Checkmk Web-GUI. Macros [aggr_name], [htmlcgi] and [htmlbase] are available. The value can be set to an empty string to disable the link.
url_target | _self | Target of the Icon link, this option adapts <a target=""> (_self is same window). Available macros: [name]
use |  | Comma separated list of object templates to use. For details see template objects
view_type | icon | This option defines the type of view for this object. Possible values are: "icon" or "line". Before NagVis 1.4 you could change the view of an object by setting the line_type. Since NagVis 1.4 you need to set the view_type for changing icons to lines.
z | 1 | The z option defines the order of icons which are stacked on top of each other. The highest value will be displayed on top. The background image has the value of 0. So valid values should be above or equal 1. Note: To prevent conflicts with the header navigation you should keep this value below 100.

## Variable Types

This chapter explains the different variable types used in the map configuration file.

### Coordinates

The objects on the NagVis maps are positioned using coordinates. By default each coordinate is a single integer which defines the offset from the upper left corner of the map in px (Pixels).
The example below is a host object which is positioned 100px from the left and 100px from the top of the map:

    define host {
     object_id=41790e
     host_name=localhost
     x=100
     y=100
    }

It is possible to define multiple coordinates for one object. This is needed for drawing lines on the maps. One example of a line which starts at 100/100 and ends at 200/200:

    define service {
     object_id=1dd76b
     host_name=localhost
     service_description=Interface eth0
     view_type=line
     line_type=10
     x=110,200
     y=110,200
    }

When lines have one part (e.g. --->) there must be two coords set. When using lines with two (e.g. ---><---) parts it is possible to set two coordinates for direct lines or three coordinates to reposition the middle of the line to a custom place.

### Relative coordinates

Since NagVis 1.6 it is possible to position objects depending on other objects. A relationship between two objects is defined from the "childs" view. This means the configuration needs to be done in the object which belongs to another object.
To define a relationship the coordinate is not given as integer anymore. Instead of the px offset the object_id of the parent object is used to define a relative position.

Examples:

- `41790e%+30` = coordinate of object 41790e plus 30 pixels
- `41790e%-199` = coordinate of object 41790e minus 199 pixels
- `41790e%+0` = coordinate same as of object 41790e

We adapt the examples above and give the start of the line a relative position to the host object:

    define host {
     object_id=41790e
     host_name=localhost
     x=100
     y=100
    }

    define service {
     object_id=1dd76b
     host_name=localhost
     service_description=Interface eth0
     view_type=line
     line_type=10
     x=41790e%+0,200
     y=41790e%+0,200
    }

With the configuration above the beginning of the line is attached to the host object and moved every time the host object is moved.

The above example does not result in exactly the same positions as the first example. The line beginning in the first example is 10px more to the left and 10px more to the bottom. To get that fixed it is possible to define an optional offset to the parent object.

Set the following coordinates to configure an offset of 10px in both directions:

    x=41790e%+10,200
    y=41790e%+10,200

It is also possible to set a negative offset by replacing the plus (+) sign with a minus (-) sign.

### Exclude Regex (New in 1.6b4)

The exclude regular expressions can be used to filter out one or several members of objects. For example it is possible to filter out one specific service of a host, like in this simple example where the service "CPU load" is excluded:

    define host {
      object_id=5932ab
      host_name=localhost
      x=123
      y=123
      exclude_members=CPU load
    }

This was not a real regex but for example this regex would exclude all services starting with the string "DB_test"

    exclude_members=^DB_test

The same is possible for hostgroups, servicegroups and so on.

Another more advanced task is to exclude just one service of one host from a hostgroup. This can be seen as a member element of a member. Let's exclude "CPU load" of the host "localhost".

    define hostgroup {
      object_id=b5932a
      hostgroup_name=mygroup
      x=42
      y=23
      exclude_members=localhost~~CPU load
    }

When excluding members of members you need to use the string "~~" as separator between the two expressions for matching the member name (host_name in this case) and the regex for the name of the members member (service description in this case).