Zabbix 1.

8 Manual [Zabbix]

http://www.zabbix.com/documentation/1.8/complete

Zabbix 1.8 Manual
1. About
1.1. Overview of Zabbix
1.1.1. What is Zabbix?
Zabbix was created by Alexei Vladishev, and currently is actively developed and supported by Zabbix SIA. Zabbix is an enterprise-class open source distributed monitoring solution. Zabbix is software that monitors numerous parameters of a network and the health and integrity of servers. Zabbix uses a flexible notification mechanism that allows users to configure e-mail based alerts for virtually any event. This allows a fast reaction to server problems. Zabbix offers excellent reporting and data visualisation features based on the stored data. This makes Zabbix ideal for capacity planning. Zabbix supports both polling and trapping. All Zabbix reports and statistics, as well as configuration parameters, are accessed through a web-based front end. A web-based front end ensures that the status of your network and the health of your servers can be assessed from any location. Properly configured, Zabbix can play an important role in monitoring IT infrastructure. This is equally true for small organisations with a few servers and for large companies with a multitude of servers. Zabbix is free of cost. Zabbix is written and distributed under the GPL General Public License version 2. It means that its source code is freely distributed and available for the general public. Commercial support is available and provided by Zabbix Company.

1.1.2. What does Zabbix offer?
Zabbix offers: auto-discovery of servers and network devices distributed monitoring with centralised WEB administration support for both polling and trapping mechanisms server software for Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X native high performance agents (client software for Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows 2000, Windows 2003, Windows XP, Windows Vista) agent-less monitoring secure user authentication flexible user permissions web-based interface flexible e-mail notification of predefined events high-level (business) view of monitored resources audit log

1.1.3. Why use Zabbix?
Open Source solution highly efficient agents for UNIX and WIN32 based platforms low learning curve high ROI. Downtimes are very expensive. low cost of ownership very simple configuration Centralised monitoring system. All information (configuration, performance data) is stored in relational database high-level service tree very easy setup support for SNMP (v1,v2). Both trapping and polling. visualisation capabilities built-in housekeeping procedure

1.1.4. Users of Zabbix
Many organisations of different size around the world rely on Zabbix as a primary monitoring platform. 0 Comments

1.2. Goals and Principles
1.2.1. Main Goals of Zabbix Development
There are several goals Zabbix is trying to achieve: become recognized Open Source monitoring tool create Zabbix user group, which helps making the software even better provide high-quality commercial support

1.2.2. Main principles of Zabbix development
be user friendly keep things simple use as few processing resources as possible react fast document every aspect of the software

What's new in Zabbix 1.8
More than a year in making, Zabbix 1.8 has arrived with lots of new features, as well as improved old ones. You can introduce yourself to the changes for this new version of Zabbix in the following section.

1. Notable improvements
With so many changes it is impossible to pick 3 most notable ones - which is attempted below. For this reason, it is suggested to read on, as some generally minor feature might be very important to you. Performance improvements Full Unicode support Bar reports API technical preview

2. New features and improvements for the frontend
Zabbix web frontend is the feature that sets it apart from other solutions. Powerful, yet easy to use official GUI is shipped with the default package. It provides both non-intimidating access for novice users and large scale configuration features for sizable installations. Being most user-visible part, we will start by looking at many new features and improvements in Zabbix 1.8 for the web frontend. 2.1. Bar reports Zabbix already has easy to use simple graphs that do not require any configuration - these are provided for every numeric item. Custom graphs, along with a couple simplistic reports, allow to look at the data in context. Zabbix 1.8 brings much more powerful built-in reporting. New report category, bar reports, allows to look at the data from many different angles. Want to look at the weekly temperatures in the server room for the last two months? Have to compare webserver load for the first month of every quarter this year? All that and more is possible with this new feature.

2.2. Full Unicode support While previous Zabbix versions were multi-language friendly, providing several frontend translations, it was not a truly global thing - the most popular encoding, Unicode, was not fully supported. Zabbix 1.8 now fully supports Unicode/UTF-8, allowing for a true localised or multilanguage setup. 2.3. Improved time period navigation In Zabbix, single control is used to select time period displayed for many views, including simple and custom graphs, raw data, screens and web monitoring. Already improved in 1.6, time period selector has been improved in 1.8 further.

This scrollbar allows easy dragging and resizing of it. Additionally, links on the left hand side allow to choose some predefined, often used time periods and move displayed period forward/backward in time. And the dates on the right hand side actually work as links, popping up a calendar and allowing to set specific start/end time.

1 of 83

2010/9/17 下午 01:50

Zabbix 1.8 Manual [Zabbix]

http://www.zabbix.com/documentation/1.8/complete

Notice the dynamic/fixed link in the lower right hand corner? It can be used to control whether time period is kept constant when you change start/end time. In addition to the screenshots you can also view the video 2.4. Improved graphs Zabbix graphs have been improved in many ways. This includes both visual and functional improvements, like the time period selector already mentioned. For example, information about max/min/avg values is presented clearly as a table. of using graph time period controls.

2.4.1. Improved timeline in charts Zabbix graphs - or charts - usually display time on x axis. And even this representation has been improved in the new version. Comparing 1.6 and 1.8:

Axis labels in 1.6.

Axis labels in trunk.

As can be seen, labels are now easier to read. Instead of prioritising some arbitrary point in time, depending on graph scale, actual points in time like change of a day are prioritised. Sometimes Zabbix will even use more “human readable” labels:

2.4.2. Gradient line support in graphs Zabbix graphs support several line styles, and 1.8 brings one more - gradient line. It's easier to understand how that works by looking at an actual example.

2.4.3. DejaVu font used for graphs DejaVu 2.5. Improved map editing Zabbix supports network maps where monitored environment can be laid out on a background image to provide user friendly overview. In previous versions, editing such network maps was not easy - coordinates of each element on the map had to be specified manually. Map editing in Zabbix 1.8 has been greatly improved by adding drag and drop support, as well as selected element detail displaying in a popup. font is now used for graphs for nice looking text - and for Unicode capabilities.

You can even watch a video

of map editing.

In addition to that map links may have optional text for displaying arbitrary information, for example, bandwidth data.

Background map CC-BY-SA Openstreetmap 2 6 Changed configuration layout

.

2 of 83

2010/9/17 下午 01:50

Zabbix 1.8 Manual [Zabbix]
2.6. Changed configuration layout Zabbix web frontend provides convenient way to display and visualise received data, as well as configure all aspects of monitoring.

http://www.zabbix.com/documentation/1.8/complete

Layout of this configuration has been redone in 1.8. Instead of separate sections for items, graphs, triggers and so on, they are folded into host configuration section, where convenient linking allows for easy access to all of these entities and more. On the other hand, host group configuration has been brought out on the configuration menu.

Another change is general configuration being moved to administration section to avoid Zabbix administrator level users from having access to global configuration parameters. 2.7. Visual trigger editing frontend Usage thresholds and any other problem conditions are freely configurable by user. These definitions are called triggers, and complex expressions can be used for each trigger to define what is considered a problem. In addition to ability to edit trigger expressions directly, a frontend to create triggers visually has been added.

There is a special mode for creating log related triggers. It also incorporates ability to provide test data and try out trigger behaviour. (screenshot) 2.8. New and improved filters As Zabbix frontend provides means to access all the information, it can be a daunting task to find the desired one. Previous versions offered ways to filter this information, and 1.8 improves situation in this regard by adding new filters and making existing ones more powerful. 2.8.1. Items filter Item configuration section is the one where all aspects regarding data gathering are configured, thus it is displaying quite a lot of information. Being able to quickly find desired data gathering entries is crucial to efficient configuration, and in Zabbix 1.8 there's an improved filter for items that allows for much more detailed searching. (screenshot) After performing initial filtering, subfilter becomes available. It presents found values and results can be filtered further.

2.8.2. Audit filter Accountability is important on any system with more than one user (and on many systems with single user as well). Zabbix frontend records all operations in an audit log. In version 1.8 audit logs now can be filtered quite extensively to find exactly the changes you are looking for.

2.8.3. Latest data filter Looking at shiny graphs is tempting, but sometimes you need the real data. Latest data section in Zabbix frontend allows to see exact values for all monitored metrics. It is now possible to filter this screen by freeform search against item descriptions.

2.8.4. Reworked "Status of triggers" view Trigger view is widely used to display list of current problems, and it was possible to display recent events for all the problems, limited by day count. In 1.8, this screen gained has been changed, providing new features like expanding individual triggers to show their events and confirming all events for a trigger.

2.8.5. Other filters improved Filters in other sections of the frontend have been improved as well, allowing to get to the data easier and more quickly. 2.9. Improved screen editing Zabbix screens is a feature that allows to group many frontend elements, including graphs, network maps, raw data and many others. Configuring them initially was not very hard, but making any significant changes was nearly impossible in some cases. Screen editing has been greatly improved in 1.8. This includes: Drag and drop support. Dragging an element to empty cell will move it there, dragging an element on occupied cell will switch these elements. You can watch a video video). Using icons on the screen edges, rows now can be inserted and removed from arbitrary locations. of this feature (site also allows to download original .ogg

2.10. Global search There's now a search box in the upper right corner, which allows searching in hosts, host groups and templates.

Results allow for a quick access to found entities and their elements:

2.11. Minor frontend improvements For a GUI minor visual change can bring large benefits to the user. Zabbix 1.8 has many minor improvements and features that should make working more productive and pleasant. 2.11.1. Cleaner error displaying

3 of 83

2010/9/17 下午 01:50

Zabbix 1.8 Manual [Zabbix]
Error messages are now shown as icons and error text is available in a popup. Clicking the icon opens the popup to allow copying of the message.

http://www.zabbix.com/documentation/1.8/complete

2.11.2. History strings saved by reference At the top of the frontend, there's a breadcrumbs type history, showing recently accessed pages.

When a language is switched in frontend, in previous versions existing history entries would not switch language, only new entries would be added in the correct language. Now history strings change appropriately. 2.11.3. Paging for entity lists added Many locations of Zabbix frontend present information as lists - whether it's a list of hosts, items or triggers. These lists can get quite long on large installations of Zabbix, and that slows down frontend considerably. Zabbix 1.8 supports splitting long lists in multiple pages. Entry count per page is configurable in user's profile.

Configuring rows per page in user profile

Entry limit in action

2.11.4. Selected rows are highlighted now Most of the entries in these lists can be selected for performing some operation on them. A minor but welcome improvement in 1.8 - selected rows now are hilighted.

2.11.5. Ability to display server name Setting variable ZBX_SERVER_NAME allows Zabbix server name to be displayed in the frontend upper right corner.

It is also used in page title. 2.11.6. More flexible linked items Zabbix supports very powerful templating that makes large scale configuration management easy. Templates can be linked to monitored hosts and they determine what and how is monitored. Downstream linked items in Zabbix 1.8 are more flexible now - for example, it is possible to edit SNMP parameters like community string, or allowed hosts for trapper items, in items that are linked in from templates. 2.11.7. IP address becomes default option In host creation form, IP address is now the default choice. 2.11.8. Debug mode added for frontend Mostly useful for developers, but can be handy when trying to determine source of a problem for others as well.

Debug mode can be enabled on user group basis. 2.11.9. Help icons lead to online manual Oldtime Zabbix users might remember the days when help icons from Zabbix frontend linked to the online manual. With the conversion to online documentation that again is possible, and in Zabbix 1.8 most of these icons open Zabbix manual in a new browser window or tab.

3. API
In version 1.8 first, Zabbix provides JSON-RPC API. It already allows to perform most of the configuration changes, thus enabling powerful means for automated or complex setup management. .

While API itself might not be that exciting for casual users, it enables creation of various tools. One such tool already has been created - Zabbix commandline utility or Zabcon

Zabcon is especially exciting for users who would like to perform uncommon, large scale changes, as it allows easy scripting without programming skills. Zabbix management from servers without GUI installed also is expected to be possible, and surely users will come up with innovative and impressing uses for this tool. Note: API is currently considered to be in a technical preview state and can change in next versions.

4. Improvements for larger installations
Zabbix is being used in larger and larger environments every day. 1.8 release introduces several changes that are specifically useful in average and above setups. 4.1. Performance improvements When monitoring hundreds and thousands of devices, load on the monitoring server hardware can become a serious issue. Zabbix 1.8 brings many different improvements to the performance in several key areas. 4.1.1. Increased Zabbix server and proxy performance Doing the main work behind the scenes, Zabbix server has been improved greatly to allow gathering more data on the same hardware. As Zabbix proxy shares some code with the server, it has benefited from these changes as well. 4.1.1.1. Much more efficient polling Hundreds of pollers can be executed for greater parallelism and performance. The pollers do not communicate directly with the database and use very little of server CPU and memory resources. 4.1.1.2. Added configuration data cache module Database cache is enabled by default and can not be disabled. Configuration option StartDBSyncers has been removed from Zabbix server and proxy configuration files. A special internal check has been introduced, zabbix[wcache,*] to monitor health of this cache. 4.1.2. Frontend images recompressed with pngcrush To reduce amount of data that users have to retrieve from webserver when using Zabbix frontend, all PNG images have been recompressed for optimal size. 4.1.3. Items with SNMP dynamic index use one connection Zabbix supports monitoring SNMP metrics that have dynamic identifiers. In version 1.8 index resolving and data retrieval is performed in a single connection now, reducing network load and load on the monitored devices. 4.2. Automated host management improvements For larger or constantly changing environments replicating these changes in Zabbix configuration can be a challenge. Zabbix already supported network discovery, and 1.8 now brings both improvements to the network discovery, as well as new methods to automate adding of new devices to monitor. 4.2.1. Network discovery improvements Network discovery 4.2.1.1. Port interval support For services where it's appropriate, port interval support has been added. 4.2.1.2. New action operations Based on discovery events, two new operations have been added, thus increasing available operation count for network discovery to 10. Enable host Disable host , available in previous versions, has received multiple improvements.

4 of 83

2010/9/17 下午 01:50

to be used in item names.query 5 of 83 2010/9/17 下午 01:50 . PHP4 was not receiving bugfixes anymore.3 added Released in 2009. Exact changes made to item preserved Exact changes made to trigger preserved 5. 5.called macros .load[.Zabbix 1.3. 6.EVENTS.3.9]} {EVENT.3.STATUS} {EVENT. Audit log in 1.8 introduces several new checks and improves old ones.HISTORY} {TRIGGER. Basic authentication support in web monitoring Web monitoring now supports basic HTTP authentication.8. on template and host level.06.NAME[1. IPv6 support has been implemented for SNMP monitoring.8 Manual [Zabbix] http://www.01.9]} {PROFILE.2. for example..07.dns.9]} {HOSTNAME[1. As soon as you have a new node in the Cloud Zabbix will automatically start collection of performance and availability data of the host.168. These can be defined globally for Zabbix installation. Various 5.03 and last release with security fixes in 2008.DNS[1.. 5.min({$CPULOAD_PERIOD})}>{$MAX_CPULOAD} 5. Host maintenance Host and host group maintenance has been added to Zabbix. For example..6.8.8 requires PHP 5. template and host level macros Support for user definable macros (or variables) has been added. It can be configured per scenario. it is possible to use different uniqueness criteria for some services.zabbix. IPv6 support for SNMP monitoring In addition to the SNMP related improvements for network discovery. and instead of simply seeing that something has changed..*[1.VALUE} and {ITEM. Since the last stable Zabbix release there have been major changes in PHP versions.5. 4. In map labels Map labels allow using handy macros like the current value of some item. New macros Zabbix provides very useful variables . it would be discovered as multiple hosts in Zabbix versions before 1. Support for PHP 5. 192.9]} {ITEM. for example system.CONN[1.9]} {TRIGGER. PHP 5.2.30. {TRIGGERS.3.1.2.08.8 increases the amount of available macros.uname returned by Zabbix agent or any OID returned by SNMP capable host.4.avg1].9]} {ITEM. The feature might be very handy for automatic monitoring of new Cloud nodes. Auto registration for active agents Completely new in Zabbix 1.9]} {HOST.1. Hosts that are in maintenance are indicated as such in Monitoring → Triggers view. Support for global.1..2.3.ACK. New and improved monitored metrics While Zabbix can be extended.*[1.8/complete 4. Zabbix 1.6. notification is generated after maintenance period ends.0 or later. This allows to add new hosts for monitoring without any manual server configuration for each individual host.UNACK} 5.9]} {HOST.2.cpu.UNACK} 5.1.8 has been improved. icmppingloss net. Minor improvements We call these minor.. Zabbix 1. built-in checks require less resources and are easier to use.8. IP mask support Industry standard network mask notation can now be used in network discovery.LASTVALUE[1.0 was out for some time to require support of Zabbix frontend.. 4.2. In notifications Along with existing macros new ones can be used in notifications that are sent out.6. Advanced regular expression editor Advanced regular expression editor was added to Zabbix with ability to test regular expressions. Zabbix 1. as well as making some macros usable in more locations.2.tcp. many entities will have exact changes recorded.2. {NODE.VALUE[1. even if all hosts are linked against single template: In this case. 5..1. Supported PHP version changes Zabbix frontend is based on PHP 5.2.9]} {ITEM.LOG. 6. Support for PHP 4 dropped Last bugfix release in 2008. . Starting with 1.9]} {ITEM.. 6. Support for multihomed devices If a host provides some service on multiple IP addresses.com/documentation/1.ACK. templated trigger expression would be: {ca_001:system. defining the following macros on a host level allows to set custom thresholds per host.1.9]} {IPADDRESS[1.2.1.1. It is now possible to define complex regular expression with easy to use interface and reuse them with simple reference.8.0/24. notifications and elsewhere. 4. 5.5. New items Several completely new items have appeared.3.. Improved audit log Zabbix provides accontability by recording all user logins and changes to the Zabbix configuration in the audit log. it is possible to allow active Zabbix agent auto-registration.4. after which server can start monitoring them. SNMPv3 support Network discovery in Zabbix 1.KEY[1. 4. 6. 5. but for somebody one of these might be the biggest change in Zabbix 1.1. If a problem happens during the maintenance and is not resolved.*[1. and Zabbix frontend has been changed accordingly.8 supports SNMPv3 with all the corresponding functionality..

First CPU number changed on Linux First CPU on Linux is now referred to as 0.10.100] This would send five 128 byte packets to host with IP 10.5.3 Installation and upgrade S th i t ll ti ti f i t ll ti 6 of 83 2010/9/17 下午 01:50 .2.14. which is consistent with other operating systems. .zabbix. 6. 6.1. while other messages using both email and SMS without creating multiple actions. count . Oracle support is now implemented using native Oracle Call Interface greatly improves performance and stability of Zabbix setups using Oracle as a back-end database.6.9. LVM swap devices support LVM devices are now supported as swap devices on Linux. ICMP items have new parameters Zabbix ICMP items now are much more flexible. Manual user unblocking Ability to manually unblock users who have been locked out by bruteforce protection was added. Item icmpping has gained the following parameters: target . Rotated logfile monitoring Zabbix supports logfile monitoring.8.number of packets.13. 6. Positive sign for decimal values supported If incoming decimal (float) value is preceded by a + sign. this functionality will be available in future releases. Zabbix 1.packet size in bytes.Zabbix 1. What's new in further releases See detailed information on new features and significant changes in other 1. it is supported as a positive number now.5. Native support of Oracle Previous version of Zabbix had a dependency on a third party library called sqlora8.8. Now all parameters are included.12.time between successive packets in milliseconds.300.2.4. For example.2.it is much easier to monitor with Zabbix 1. It specifies maximum number of new lines per second the agent will send to Zabbix server or Proxy. that was not easy enough. 6. which allows to set timestamp for each value. Client utilities moved to bin Zabbix client utilities zabbix_get and zabbix_sender were moved from sbin to bin. 6.2. 'maxlines' parameter for log items Item keys log and eventlog now have new parameter . Clicking on the Blocked link will unblock this user.8 natively supports two new input data types. and their default values. export functionality. Now it is possible to use a key like this: icmpping[10. are documented.2 1. 6.1.Zabbix agent. size .10. as it is now possible to specify regular expressions in logfile monitoring.2. status of the host will be correctly displayed and updated in Zabbix front-end.8 improves it further. 6.1 1.8. Online documentation Documentation from an inflexible PDF file has been converted to online format where anybody can comment on individual pages. 6.8.6.2. For fast growing file the number can be increased using the new parameter. appliances and servers without use of Zabbix Agent. 6. Default mode is avg. which Errors related to each method are stored separately and can be obtained by moving mouse cursor over the error icon. Octal Hexadecimal 6.7. CPU switches support on Linux Key system.8 frontend three different monitoring methods have their status displayed . 6. Timestamp support for zabbix_sender Support for -T parameter in zabbix_sender has been added.4. Notification media can be chosen in action operations It means that it's possible to define messages that will be sent to one or several medias only. Added Windows services key Added services key for Windows which can return services in a particular state.10.1. Improved sample configuration files Sample configuration file layout was changed. SNMP and IPMI.switches can be used for Linux hosts.11.8/complete 6.128. SSH and telnet checks Now SSH and telnet can be used for direct.one of min. all critical messages can be delivered by using SMS messaging. and version 1. as well as allowed ranges. 6. 6.3. Offline documentation can still be obtained with ODT 6. source and event ID on the agent side.8. 6. By default.8 Manual [Zabbix] http://www.for example. timeout . Host status propagation from proxies If a host is monitored by a proxy. interval .3. if logfile name includes date . Currently SSH and telnet cannot be used in actions. New input data types While different base values could be monitored before with user parameters.10. agent-less monitoring. 6. while Black&blue theme uses blue colour.2.5. The option can be used to migrate older historical data from other monitoring tools to Zabbix database for graphing and long-term analysis.8 series releases: 1. 6. New Windows eventlog filters Windows eventlog entries now can be filtered by type.2.7.8. The library is not actively developed any more.10.maxlines. and use 100 ms timeout. Zabbix agent does not send more than 100 log lines per second per log file.timeout in milliseconds. SSH supports both password and key authentication methods. sometimes found on devices like printers. If an application is writing to a new logfile with varying name . Item icmppingsec has gained all the above parameters. It makes possible very effective remote monitoring of network devices.com/documentation/1. in 1. Default theme uses green to denote availability. avg. Added manpages Manpages for all Zabbix processes have been added.10 with 300 ms interval between them. Detailed availability information displaying Instead of simply displaying generic host status.2.cpu. and one additional: mode . 6.2. 6. max.host IP or DNS name.10.2. 6.

actions drop index actions_1. drop index). Comment at the end of a configuration file line is not allowed anymore (this worked for numeric parameters only before). 3. Key vfs.1. For version 1.1.ntp for item keys net.5.3.6. Trying to run IPv6-enabled daemon on a system without IPv6 support fail: Listener failed with error: socket() for [[(null)]:10051] failed with error 97: Address family not supported by protocol. create index. See upgrading section if upgrading from an older Zabbix release.3 Parameter service.8/postgresql/patch. graphs_items_2. You might have to remove groupid=&hostid=& part from the URL when attempting to delete the trigger.2 Because of frontend changes. To avoid this issue. 3. Make sure that you have enough permissions (create table.cpu.6.8. default graphs might have incorrect configuration.8. Zabbix 1.example file to zabbix. If you are converting the database to UTF-8.4. they should be upgraded.tcp. including database access parameters.3.6. new parameters added. Common symptom is failing to start with the error message: Floating point exception.5.conf. 3. read important notes.8/complete 3.size now takes into account reserved diskspace for root user.6.8 All hosts now are required to belong to at least one group. Opening such a graph usually will swap working time and trigger showing with percentile values. history_log_2. httptest drop index httptest_2. power off. history_text drop index history_text_2. These include: Incorrect trigger appearing. If that is the case. It is recommended to test the upgrade procedure in a non-production environment. Ignore any warning messages about non-existent indexes! Database upgrade scripts are located in directory upgrades/dbpatches/1. Old syntax is still supported. Also see requirement changes for version 1.8.8. 3. Oracle or PostgreSQL drop drop drop drop drop drop drop drop drop drop drop index index index index index index index index index index index dhosts_1. for PostgreSQL it may take several hours or more because of conversion of existing historical data.3. 3.sql Oracle: upgrades/dbpatches/1.8 only! For upgrade from earlier versions use also upgrade scripts from Zabbix 1.5.service. Known problems 3. 3. Stop Zabbix server Stop Zabbix server to make sure that no new data is inserted into database.8 PHP mbstring check may fail with PHP < 5.conf. Upgrade database Before running upgrade scripts drop the following indexes: MySQL alter alter alter alter alter alter alter alter alter alter alter table table table table table table table table table table table dhosts drop index dhosts_1.7.2. Maximal PHP POST size should be at least 16MB (option post_max_size).6.x can't be used with Zabbix 1.php.0.6. 3. Depending on the installation time of your Zabbix server. For version 1.3.6. Upgrade procedure The following steps have to be performed for successful upgrade from Zabbix 1. Make sure that you have backup of your database. configuration files and PHP files. Backup existing Zabbix database This is very important step.x to 1. sender. Installation See the installation section for full details. graphs_items_1.x can be used with Zabbix 1. Install new Zabbix GUI Follow installation instructions.8/mysql/patch. Before upgrading. any unexpected problem).zabbix. XML export includes SNMP and other information for all items. It does not require any configuration changes on agent side. dservices_1. or compile from the scratch on the target system.3. For version 1.6.tcp. System requirement changes Additional or increased system requirements: Support for PHP 4 dropped. httptest_3.fs.14 and later is known to work. escalations_2.x to 1.5. Precompiled binaries (agent.8. Zabbix 1.service and net.util key on Linux now starts with 0. Maximal PHP memory size should be at least 128MB (option memory_limit). tables and fields are set to UTF-8 encoding. services drop index services_1.x and Zabbix 1.8/oracle/patch.com/documentation/1. Install new server binaries You may use pre-compiled binaries or compile your own. escalations drop index escalations_2. Configuration option StartDBSyncers has been removed from Zabbix server and proxy configuration files. 3. it can take many hours. For version 1.6.5. PHP files and Zabbix binaries Make a backup copy of Zabbix binaries.6. 3.1. Hostnames with spaces do not work when sending data from a file with zabbix_sender (fixed in 1. choosing Configuration of triggers.x. then clicking on Delete in the trigger editing form and confirming the deletion.4.1.2.8. The whole upgrade procedure may take several hours depending on size of Zabbix database. CPU index for system. drop table.2.2. some installations might see incorrect older data appear in frontend. history_text_2. http://www.x.sql Database upgrade should take around 10-15 minutes. You may want to review them.8. Sorting in frontend is not performed for entities with positional variables (like item names with $1 etc). Make sure database.2). This trigger can be deleted by clicking on it.2.8/<db engine>: MySQL: upgrades/dbpatches/1. 3.8. with name **ERROR**. Installation and Upgrade Notes 3. This only affects you if those graphs are being used. Also make sure that you have enough free disk space.6.6. services_1. For IPMI support you need a recent OpenIPMI version .8.1. Key vfs. Uploading of images for network maps may fail if database is not configured properly.conf were changed in 1. Backup configuration files. when showing all hosts from all groups.8 Manual [Zabbix] See the installation section for new installations.size returns data in bytes for all operating systems now.sql PostgreSQL: upgrades/dbpatches/1. copy zabbix. dservices drop index dservices_1. graphs_items drop index graphs_items_2. 3.php and modify parameters.8.6.2 in Zabbix 1. Important notes 3.2 and 1. Older Zabbix proxies of version 1. Version compatibility Older agents from Zabbix 1. get) might not work on 64bit systems with glibc versions older than 2. httptest_2.perf renamed to ntp. 3. graphs_items drop index graphs_items_1.6.Zabbix 1. httptest drop index httptest_3. These scripts are for upgrade from Zabbix 1.4. 7 of 83 2010/9/17 下午 01:50 .0. history_log drop index history_log_2. Review Server configuration parameters Some parameters of zabbix_server. 3. It will help if upgrade procedure fails (lack of disk space. actions_1. 3.fs. simply fixing and saving the graph will solve the problem. Use older versions. usually in Monitoring → Triggers section.

Required if Oracle is used as Zabbix back-end database. --enable-mbstring Required if MySQL is used as Zabbix back end database. we may assume that Zabbix generates one event per second.3. Requirements 2. Apple Safari) may work with Zabbix as well.000. It means that if we want to keep 3 years of events this would require 3*365*24*3600* 130 = 11GB 8 of 83 2010/9/17 下午 01:50 .2. 2003. The data is used for trending and long period graphs. 2. 128 MB of physical memory and 256 MB of free disk space could be a good starting point. The following software is required to run Zabbix: Software Apache PHP PHP modules: php-gd PHP TrueType support PHP bc support PHP XML support PHP session support PHP socket support PHP multibyte support MySQL php-mysql Oracle php-oci8 PostgreSQL php-pgsql SQLite php-sqlite3 7.5. 2. php-mbstring. If you're planning to keep a long history of monitored parameters. leading database engines.4. Zabbix database size mainly depends on these variables.0. For example. Required for user script support. the faster the database (and therefore Zabbix) works! 2. Housekeeper settings for history Zabbix keeps values for a fixed period of time. CPU Requirements Zabbix and especially Zabbix database may require significant CPU resources depending on number of monitored parameters and chosen database engine.1. PHP function imagerotate might be required. Zabbix is tested on the following platforms: AIX FreeBSD HP-UX Linux Mac OS/X NetBSD OpenBSD SCO Open Server Solaris Windows 2000.1. In our case. Choice of database engine Zabbix Server and Proxy support four database engines: MySQL Oracle PostgreSQL SQLite 2.2 or later 3.1.5GB for 5 years. Housekeeper setting for trends Zabbix keeps 1 hour max/min/avg/count statistics for each item in table trends. 2. Software Requirements Zabbix is built around modern Apache WEB server. Opera and Konqueror are supported.com for information about the current version and for downloading instructions.8 Manual [Zabbix] http://www. fault tolerance and resilience.600.0 or higher. Supported Platforms Due to security requirements and mission-critical nature of monitoring server. It is hard number of events generated by Zabbix daily. disk space for keeping a single value may vary from 40 bytes to hundreds of bytes.1. Hardware requirements 2. the amount of required disk memory obviously depends on the number of hosts and parameters that are being monitored. or about 130M of values. XP. however it is also included into number of OS distributions pre-compiled. MySQL.0 or later GD 2.x or later for much better performance.3. Amount of memory allocated for the connection depends on configuration of the database engine. 0 Comments 2. Memory Requirements Zabbix requires both physical and disk memory.Zabbix 1. --with-ttf php-bcmath.8. Oracle. 2.2.6. --enable-sockets. It is highly recommended to run the database on a separate box for large installations. 2. total number of values will be around (30*24*3600)* 50 = 129. Housekeeper settings for events Each Zabbix event requires approximately 130 bytes of disk space.3. Version 1. Vista (only Zabbix agent) Zabbix may work on other Unix-like operating systems as well.1.12 or later 5. Comments .3GB per year. Suppose we would like to keep trend data for 5 years.zabbix. normally several weeks or months. Zabbix operates on market leading versions. It is suggested to use at least PostgreSQL 8.8/complete 3. type of received values (floats. Other hardware A serial communication port and a serial GSM Modem required for using SMS notification support in Zabbix. Microsoft Internet Explorer. 2. However. WEB browser on client side Support for HTML and PNG images is required.1. depending on database type. Server requirements Requirement Description OpenIPMI libssh2 Required for IPMI support Required for SSH support.22 or later Version 1.com/documentation/1. How to Get Zabbix Check the Zabbix Home Page at http://www.1. UNIX is the only operating system that can consistently deliver the necessary performance. Start new Zabbix binaries Start new binaries. which define amount of stored historical data: Number of processed values per second This is average number of new values Zabbix server receives every second. It means that 50 new values are added to Zabbix database every second. log files. If it is missing. Database size Zabbix configuration data requires fixed amount of disk space and does not grow much.6. Zabbix may work on previous versions of Apache. and PostgreSQL as well. --enable-bcmath php-xml or php5-dom. 2. The more physical memory you have. Examples of hardware configuration The table provides several hardware configurations: Name Small Medium Large Platform Ubuntu Linux CPU/Memory PII 350MHz 256MB Database MySQL MyISAM MySQL InnoDB Monitored hosts 20 500 >1000 Ubuntu Linux 64 bit AMD Athlon 3200+ 2GB Intel Xeon 2xCPU 8GB Ubuntu Linux 64 bit Intel Dual Core 6400 4GB RAID10 MySQL InnoDB or PostgreSQL Very large RedHat Enterprise Fast RAID10 MySQL InnoDB or PostgreSQL >10000 Actual configuration depends on number of active items and refresh rates very much. etc). Other browsers (Google Chrome. Check log files to see if the binaries have started successfully. Cookies and Java Script must be enabled. Zabbix database. if provided as a separate package by the distributor php-session. Required if PostgreSQL is used as Zabbix back-end database. For other fonts than the default DejaVu. requires about 128 bytes per each total. 3000 values will require (3000/1800)*(24*3600*365)* 128 = 6. which introduced much better VACUUM performance Required if SQLite is used as Zabbix back-end database.5GB of disk space. Each new value required certain amount of disk space for data and index. if we would like to keep 30 days of history and we receive 50 values per second.3.5 or later 3.4. Installation 1. So. Each Zabbix daemon process requires several connections to a database server.zabbix. strings. Latest versions of Mozilla Firefox. if provided as a separate package by the distributor php-net-socket. which is not the case in Debian and other distributions.0 or later PHP GD module must support PNG images. In worst case scenario. This function is only available if PHP is compiled with bundled GD. Consider using PostgreSQL 8. 2. you should be thinking of at least a couple of gigabytes to have enough space to store the history in the database.3. it means that 130M of values will require 130M * 50 bytes = 6. Normally it is around 50 bytes per value. Zabbix is distributed as a source package.3. Depending on used database engine. if we have 3000 items for monitoring with refresh rate of 60 seconds. number of values per seconds is calculated as 3000/60 = 50. or 31. these fonts might be rendered incorrectly in Monitoring → Overview header and other locations. integers. and the PHP scripting language.

Consider using PostgreSQL 8. GNU C compiler is the best choice for open platforms. postgresql-dev. Software requirements Building of Zabbix server or agents from sources requires additional software. days : number of days to keep history bytes : number of bytes required to keep single trend.2. depends on database engine. Disk space requirements for nodes in distributed setup are calculated in a similar way.1. 2. src/zabbix_sender The directory contains Makefile and sources for zabbix_sender.5 or later required. the total required disk space can be calculated as: Configuration + History + Trends + Events The disk space will NOT be used immediately after Zabbix installation. and report these data to the Zabbix for further processing. Structure of Zabbix distribution docs The directory contains this Manual in PDF format src The directory contains sources for all Zabbix processes except frontends. History Trends Events So. The Zabbix Agents are extremely efficient because of use of native system calls for gathering statistical information. the Web-based Interface is provided. In case of failures (such as a harddisk running full. Other (HP. 3. Zabbix can also perform agent-less monitoring and also monitor network devices using SNMP agents.4. or a crashed service process). Optional. The Proxy collects performance and availability data on behalf of Zabbix Server. only Proxies collect data thus making processing on the Server less CPU and disk I/O hungry. Libcurl library and header files Version 7. days*(items/1800)*24*3600*bytes items : number of items days : number of days to keep history bytes : number of bytes required to keep single trend.13. depends on database engine. C Compiler C compiler is required.1. statistical and operational data are stored. 3. PostgreSQL Headers and Libraries Version 7. The Agent will gather operational information from the system on which it is running. Usually provided as part of mysql-dev. src/zabbix_get The directory contains Makefile and sources for zabbix_get. days*events*24*3600*bytes events : number of event per second.Zabbix 1. sqlite3-dev packages. Zabbix front-end must run on the same physical machine if SQLite is used. memory. but it is also the central component to which the Agents will report availability and integrity information and statistics. Zabbix Components Zabbix consists of several major software components.8 Manual [Zabbix] It means that if we want to keep 3 years of events.2 or later required. include The directory contains include Zabbix files.d The directory contains start-up scripts for different platforms. Iksemel library and header files Required to enable Jabber messaging. The Interface is a part of the Zabbix Server. branches. networks having no local administrators.3. src/zabbix_agent The directory contains Makefile and sources for zabbix_agent and zabbix_agentd. Components 3. Zabbix Proxy The Proxy is an optional part of Zabbix deployment. In this case. Zabbix Proxy is an ideal solution for a centralized monitoring of remote locations. normally 128 bytes. misc misc/init. Zabbix Proxies can also be used to distribute load of a single Zabbix Server. but this also depends on a total number of child nodes linked to a node. this would require 3*365*24*3600* 130 = 11GB The table contains formulas that can be used to calculate disk space required for Zabbix system: Parameter Formula for required disk space (in bytes) days*(items/refresh rate)*24*3600*bytes items : number of items days : number of days to keep history refresh rate : average refresh rate of items bytes : number of bytes required to keep single value. depends on database engine. GNU Make GNU make is required to process Zabbix Makefiles. the responsibilities of which are outlined below. http://www. which depends on hosekeeper settings.1 or higher required for WEB monitoring module.) on networked systems. All collected data is buffered locally and transferred to Zabbix Server the Proxy belongs to. those systems must run the Zabbix Agent.zabbix. Zabbix Server This is the centre of the Zabbix software.7. Installation from Source 4. create The directory contains SQL script for initial database creation 9 of 83 2010/9/17 下午 01:50 . the Zabbix Server can actively alert the administrators of the particular machine that reported the failure.3. 3.8/complete Zabbix configuration Fixed size. 4. IBM) C compilers may be used as well. Zabbix Agent In order to actively monitor local resources and applications (such as harddrives. SQLite Headers and Libraries Version 3. src/zabbix_server The directory contains Makefile and sources for zabbix_server. and it is the entity in the Zabbix software that will actively alert administrators when problems arise in any of the monitored systems. and is usually (but not necessarily) run on the same physical machine as the one running the Zabbix Server. One (1) event per second in worst case scenario. Time synchronisation It is very important to have precise system date on server with Zabbix running. 4. Oracle Headers and Libraries Sqlora8 headers and libraries are required. Database size will grow then it will stop growing at some point. Optional. 3.com/documentation/1. normally 50 bytes. The following software is required to compile Zabbix: One of the following database engines: MySQL Headers and Libraries Version 3.2. 3.22 or later required. The WEB Interface In order to allow easy access to the monitoring data and then configuration of Zabbix from anywhere and from any platform. The Server can remotely check networked services (such as web servers and mail servers) using simple service checks. The Server is the central repository in which all configuration.x for much better performance.0. ntpd 1 Comment is the most popular daemon that synchronizes the host's time with the time of other machines. normally 130 bytes.5. frontends frontends/php The directory contains files of PHP frontend. Optional. processor statistics etc. NET-SNMP (or UCD-SNMP) library and header files Required for SNMP support. Normally 10MB or less.

or any other account with special rights is a security risk.3600 zabbix /opt/zabbix/bin/zabbix_agent Restart inetd shell> killall -HUP inetd Modify default settings in configuration files Step 8 Configure /etc/zabbix/zabbix_agent. However. make install will install all the files in /usr/local/bin./configure --enable-server --with-oracle=/home/zabbix/sqlora8 --with-net-snmp --with-jabber --with-libcurl # for Oracle + Jabber + WEB monitoring Use flag –with-oracle to specify location of sqlora8 library. If you plan to distribute compiled binaries among different servers.db The database will be automatically created if it does not exist.8 Manual [Zabbix] The directory contains SQL script for initial database creation. The file should contain the IP address of the Zabbix server.8. The libary is required for Oracle support.conf If you plan to use zabbix_agent instead of the recommended zabbix_agentd. shell> . The library can be found at libsqlora8 homepage Use flag –enable-static to statically link libraries. Connections from other hosts will be denied. In this case daemon binaries will be installed under <prefix>/sbin. For MySQL: shell> mysql> mysql> shell> shell> shell> shell> shell> mysql -u<username> -p<password> create database zabbix character set utf8. default parameters are sufficient.conf as example./data shell> cat data. Make sure that you have enough permissions.sql | mysql -u<username> -p<password> zabbix For Oracle (we assume that user zabbix with password password exists and has permissions to create database objects): shell> cd create shell> sqlplus zabbix/password sqlplus> set def off sqlplus> @schema/oracle.sql sqlplus> @data/data. both –with-net-snmp and –with-ucd-snmp may be skipped. you must use this flag to make these binaries work without required libraries./data cat data. There are separate scripts for MySQL. However. 10 of 83 2010/9/17 下午 01:50 .3. it is recommended. You may take misc/conf/zabbix_agentd. Step 7 Configure /etc/inetd. Step 6 Configure /etc/services The step is optional. Step 2 Untar Zabbix sources shell> gunzip zabbix-1. Step 4 Configure and compile the source code for your system The sources must be compiled for both the server (monitoring machine) as well as the clients (monitored machines).tar. quit. On the client (monitored) machines.sql sqlplus> @data/images_oracle.conf You need to configure this file for every host having zabbix_agent installed.sql | sqlite3 /var/lib/sqlite/zabbix.'bin'. create/data Data for initial database creation. psql> \q shell> cd create/schema shell> cat postgresql.db cd .conf as example.sql sqlplus> exit For PostgreSQL: shell> psql -U <username> psql> create database zabbix. The file should contain IP address of Zabbix server. You may take misc/conf/zabbix_agent. If no SNMP support required. PostgreSQL and SQLite. –enable-static does not work under Solaris.conf For small installations (up to ten monitored hosts). See section [Performance tuning] for more details.zabbix.sql | mysql -u<username> -p<password> zabbix cd . http://www.8/complete 4.tar Step 3 Create the Zabbix database Zabbix comes with SQL scripts used to create the required database schema and also to insert a default configuration. the following line must be added: zabbix_agent stream tcp nowait. Connections from other hosts will be denied. while utilities under <prefix>/bin.gz && tar -xvf zabbix-1. However. Flag –withucd-snmp can be used instead of –with-net-snmp. To configure the source for the server. Running Zabbix as 'root'.sql | psql -U <username> zabbix For SQLite: shell> shell> shell> shell> shell> cd create/schema cat sqlite.Zabbix 1. For production use you should create a dedicated unprivileged account ('zabbix' is commonly used). if you want to compile client binaries along with server binaries./data cat data. You can specify an installation prefix other than /usr/local using –prefix. you must specify which database will be used. Do not do it! Zabbix server process (zabbix_server) is protected from being run under root account.sql | mysql -u<username> -p<password> zabbix cat images_mysql.conf You need to configure this file for every host with zabbix_agentd installed.sql | sqlite3 /var/lib/sqlite/zabbix.sql | psql -U <username> zabbix shell> cat images_pgsql.db cat images_sqlite3. Oracle. you should change default parameters to maximize performance of Zabbix..sql | psql -U <username> zabbix shell> cd . Man pages will be installed under <prefix>/share. run: shell> . for example –prefix=/home/zabbix./configure --enable-server --enable-agent --with-mysql --with-net-snmp --with-jabber --with-libcurl Parameter –enable-static may be used to force static linkage.sql | sqlite3 /var/lib/sqlite/zabbix.. Step 9 Configure /etc/zabbix/zabbix_agentd.com/documentation/1. Step 10 Configure /etc/zabbix/zabbix_server./configure --enable-server --with-pgsql --with-net-snmp --with-jabber --with-libcurl # for PostgreSQL + Jabber + WEB monitoring or shell> .8./configure --enable-server --with-mysql --with-net-snmp --with-jabber --with-libcurl # for MySQL + Jabber + WEB monitoring or shell> . add the following lines to /etc/services: zabbix-agent zabbix-agent zabbix-trapper zabbix-trapper 10050/tcp 10050/udp 10051/tcp 10051/udp Zabbix Zabbix Zabbix Zabbix Agent Agent Trapper Trapper Note that the port numbers are offical Zabbix ports registered in IANA. upgrades The directory contains upgrade procedures for different versions of Zabbix.. Step 5 Make and install everything shell> make install By default. /usr/local/lib etc. cd create/schema cat mysql. Zabbix Server Server side Step 1 Create the Zabbix superuser account This is the user the server will run as. create/schema Database creation schemas.

If you plan to distribute compiled binaries among different hosts. the following line must be added: zabbix_agent stream tcp nowait.com/documentation/1. Zabbix comes with SQL scripts used to create the required database schema. quit.8/complete You may take misc/conf/zabbix_server./configure --enable-proxy --with-pgsql --with-net-snmp –with-libcurl # for PostgreSQL + WEB monitoring or shell> ./zabbix_server Step 12 Run agents Run zabbix_agentd where necessary. if you want to compile client binaries along with proxy binaries.Zabbix 1. The library can be found at libsqlora8 homepage./configure --enable-proxy --enable-agent --with-mysql –with-net-snmp –with-libcurl Parameter —enable-static may be used to force static linkage./configure --enable-proxy --with-mysql --with-net-snmp –with-libcurl # for MySQL + WEB monitoring or shell> .log for any error messages. To configure the source for the Proxy. you should change default parameters to maximize performance of Zabbix Proxy. it is recommended. You may take misc/conf/zabbix_proxy. make install will install all the files in /usr/local/bin.sql | sqlite3 /var/lib/sqlite/zabbix. shell> cd bin shell> . both –with-net-snmp and –with-ucd-snmp may be skipped.tar.sql | mysql -u<username> -p<password> zabbix For Oracle (we assume that user ‘zabbix’ with password ‘password’ exists and has permissions to create database objects): shell> cd create/schema shell> cat oracle. Flag –withucd-snmp can be used instead of –with-net-snmp. Make sure you have correct Hostname and Server parameters set. shell> .tar Step 3 Create the Zabbix database. If no SNMP support required. Use flag –enable-static to statically link libraries. It will use existing database otherwise. default parameters are sufficient.4.sql | psql -U <username> zabbix For SQLite: shell> cd create/schema shell> cat sqlite. There are separate scripts for MySQL. For MySQL: shell> mysql> mysql> shell> shell> mysql -u<username> -p<password> create database zabbix character set utf8. However.5. /usr/local/lib etc. Optional.3600 zabbix /opt/zabbix/bin/zabbix_agent Restart inetd shell> killall -HUP inetd Modify default settings in configuration files Step 8 Configure /etc/zabbix/zabbix_proxy. Step 2 Untar Zabbix sources shell> gunzip zabbix-1. On the client (monitored) machines. For PostgreSQL: shell> psql -U <username> psql> create database zabbix. run: shell> . –enable-static does not work under Solaris. cd create/schema cat mysql. Step 11 Run server processes Run zabbix_server on server side.8.sql | sqlplus zabbix/password >out. or any other account with special rights is a security risk. Step 1 Create the Zabbix superuser account This is the user the Proxy will run as. Step 9 Run Proxy processes Run zabbix_proxy: shell> cd sbin shell> .8 Manual [Zabbix] http://www. The libary is required for Oracle support. Database auto-creation is supported for SQLite only.8. It is not required to run the process. Zabbix Proxy Zabbix Proxy is a special process. You can specify an installation prefix other than /usr/local using –prefix Step 6 Configure /etc/services The step is optional.zabbix. psql> \q shell> cd create/schema shell> cat postgresql.conf as example. PostgreSQL and SQLite.gz && tar -xvf zabbix-1. shell> cd sbin shell> . For production use you should create a dedicated unprivileged account ('zabbix' is commonly used). add the following lines to /etc/services: zabbix_agent 10050/tcp zabbix_trap 10051/tcp Step 7 Configure /etc/inetd.conf For small installations (up to ten monitored hosts). Oracle. However. Do not do it! Zabbix Proxy process (zabbix_proxy) is protected from being run under root account. you must specify which database will be used.db The database will be automatically created if it does not exist. Zabbix Agent Client side Step 1 Create the Zabbix account 11 of 83 2010/9/17 下午 01:50 ./zabbix_agentd 4. Zabbix Proxy process will create database automatically on the first run if it does not exist. Step 5 Make and install everything shell> make install By default. you must use this flag to make these binaries work without required libraries. Running Zabbix Proxy as 'root'. Step 4 Configure and compile the source code for your system The sources must be compiled to enable compilation of Zabbix Proxy process. However./configure --enable-proxy --with-oracle=/home/zabbix/sqlora8 --with-net-snmp –with-libcurl # for Oracle + WEB monitoring Use flag –with-oracle to specify location of sqlora8 library.conf If you plan to use zabbix_agent instead of the recommended zabbix_agentd.conf as example.'bin'.log Check file out./zabbix_proxy 4.

6.zabbix. It is suggested to use subdirectory instead of HTML root.8 Manual [Zabbix] http://www.6. Step 9 Run zabbix_agentd on all monitored machines shell> /opt/zabbix/bin/zabbix_agentd You should not run zabbix_agentd if you have chosen to use zabbix_agent! Make sure that your system allows allocation of 2MB of shared memory. On the client (monitored) machines.com/documentation/1.conf If you plan to use zabbix_agent instead of the recommended zabbix_agentd. Step 2 Read and accept GPL v2. 12 of 83 2010/9/17 下午 01:50 . it is recommended. Installation is done by simply copying PHP files into webserver HTML documents directory. Step 8 Configure /etc/zabbix/zabbix_agentd. <htdocs>/zabbix Step 1 Point your browser to Zabbix URL. Note.tar Step 3 Configure and compile the source code for your system The sources must be compiled for the client only. Common locations of HTML documents directory for Apache web server include: /usr/local/apache2/htdocs (default directory when installing Apache from source) /srv/www/htdocs (OpenSUSE. execute the following commands. Connections from other hosts will be denied. RHEL. otherwise the agent may not start and you will see “Can't allocate shared memory for collector.8/complete This is the user the agent will run as.conf You need to configure this file for every host having zabbix_agent installed.tar. If you plan to distribute compiled binaries among different hosts. replacing actual directory: mkdir <htdocs>/zabbix cd frontends/php cp -a . The file should contain IP address of Zabbix server.conf as example. 4. However. Ubuntu) To create subdirectory and copy Zabbix frontend files to it.conf as example. add the following lines to /etc/services: zabbix_agent 10050/tcp zabbix_trap 10051/tcp Step 6 Configure /etc/inetd.gz && tar xvf zabbix-1. To configure the source for the client: shell> ./configure --enable-agent Use flag –enable-static to statically link libraries. Step 2 Untar Zabbix sources shell> gunzip zabbix-1. Step 4 Build agent shell> make Copy created binaries from bin/ to /opt/zabbix/bin or any other directory. The file should contain IP address of Zabbix server. you must use this flag to make these binaries work without required libraries. Zabbix agents have protection against running under root account. For production use you should create a dedicated unprivileged account (“zabbix” is commonly used). Step 5 Configure /etc/services The step is not real requirement. SLES) /var/www/html (Fedora. the following line must be added: zabbix_agent stream tcp nowait.3600 zabbix /opt/zabbix/bin/zabbix_agent Restart inetd shell> killall -HUP inetd Step 7 Configure /etc/zabbix/zabbix_agent. Connections from other hosts will be denied. You may take misc/conf/zabbix_agentd. so to run it a PHP supported webserver is needed.conf You need to configure this file for every host with zabbix_agentd installed. You may take misc/conf/zabbix_agent. CentOS) /var/www (Debian.6. Other common directories are /usr/local/bin or /usr/local/zabbix/bin. that no end of line character should present in the file. This may happen on Solaris 8.” in agent's log file.Zabbix 1. Zabbix WEB Interface Step 0 Zabbix frontend is written in PHP.

Module php-gd.0 or higher At least PNG Step 4 Configure database settings. SQLite Any 2. php-sqlora8.ini: post_max_size = 8M In php. PostgreSQL.com/documentation/1. 13 of 83 2010/9/17 下午 01:50 . php-sqlite3 Compiled in PHP5. Module php-gd.8/complete Step 3 Make sure that all software pre-requisites are met. PHP max execution time 300 seconds PHP database support PHP BC math GD Version Image formats One of: MySQL. Step 6 See summary of settings. php-pgsql.zabbix.8 Manual [Zabbix] http://www. Oracle.ini: max_execution_time = 300 One of the following modules must be installed: php-mysql. Step 5 Enter Zabbix Server details.Zabbix 1.ini: memory_limit = 128M In php. Zabbix database must already be created. Pre-requisite PHP version PHP Memory limit PHP post max size Minimum value 5.0 8MB 8MB Description In php.

zabbix. Step 8 Finishing installation.8 Manual [Zabbix] http://www. 14 of 83 2010/9/17 下午 01:50 .com/documentation/1.8/complete Step 7 Download configuration file and place it under conf/.Zabbix 1.

4 to 1. Zabbix 1./zabbix_server –n 1 This will convert database data for use with Node ID '1' and also adds a local node. Maximal PHP POST size should be at least 16MB (option post_max_size).zabbix.0./zabbix_server –n <nodeid> where Node ID is an unique Node identificator.php. Configuration option StartDBSyncers has been removed from Zabbix server and proxy configuration files.x to 1.8.6.cpu.5.4. 5.13 and later is known to work.8. 15 of 83 2010/9/17 下午 01:50 . Before applying database patches.8.6.util key on Linux now starts with 0. Before running upgrade scripts drop the following indexes: MySQL alter table dhosts drop index dhosts_1.7.conf were changed in 1. Comment at the end of a configuration file line is not allowed anymore (this worked for numeric parameters only before). 5. 5. 5. XML export includes SNMP and other information for all items.8.3 can be performed in single step. tables and fields are set to UTF-8 encoding.8.x. for example. Important notes All hosts now are required to belong to at least one group. power off. 5. new parameters added. For example: shell> . Make sure to have a valid database backup before starting database upgrade.8/complete Step 9 For distributed monitoring only! If used in a distributed environment you have to run: shell> . 5. password zabbix.6. To avoid this issue. Upgrading 5. You may want to review them. Make sure that you have backup of your database.7.7. It does not require any configuration changes on agent side.5.6 or 1.1. Hostnames with spaces do not work when sending data from a file with zabbix_sender. System requirement changes Additional or increased system requirements: Support for PHP 4 dropped. Version compatibility Older agents from Zabbix 1. Skip when upgrading from one 1.3. The whole upgrade procedure may take several hours depending on size of Zabbix database. Backup existing Zabbix database This is very important step.1. 5.fs. Known problems PHP mbstring check may fail with PHP < 5.php and modify parameters.2 in Zabbix 1. Backup configuration files. 5.4.6. Key vfs. Stable branch releases For stable branch release upgrades (upgrading 1. If mentioned in release notes. Older Zabbix proxies of version 1. Install new server binaries You may use pre-compiled binaries or compile your own.x and Zabbix 1. For IPMI support you need a recent OpenIPMI version . optional indexes may be added to the database to improve performance. alter table dservices drop index dservices 1.1. Upgrade procedure The following steps have to be performed for successful upgrade from Zabbix 1.7.conf. Key vfs. they should be upgraded. Maximal PHP memory size should be at least 128MB (option memory_limit).8.x can't be used with Zabbix 1. Uploading of images for network maps may fail if database is not configured properly.size now takes into account reserved diskspace for root user.6.6 to 1.8. 5.7.Zabbix 1.2. Sorting in frontend is not performed for entities with positional variables (like item names with $1 etc).6. any unexpected problem).x can be used with Zabbix 1.1 to 1. 5.3. CPU index for system.com/documentation/1.4. Make sure database.2. Step 10 Zabbix frontend is ready! Default user name is Admin. 5. Change level releases For change level releases only upgrading of server binary and frontend is required. It will help if upgrade procedure fails (lack of disk space.8) in addition to binary and frontend upgrade database patch is usually required. copy zabbix. Upgrade database Perform this step only when upgrading from version 1. Stop Zabbix server Stop Zabbix server to make sure that no new data is inserted into database. Zabbix 1.example file to zabbix. 5.8.conf.2.7. Review Server configuration parameters Some parameters of zabbix_server.7.fs. Upgrading can be easily performed over several versions. PHP files and Zabbix binaries Make a backup copy of Zabbix binaries. all Zabbix processes must be stopped. including database access parameters. configuration files and PHP files.x version to another.0. upgrading from 1.size returns data in bytes for all operating systems now.8 Manual [Zabbix] http://www. 5.

1.2. Xen guest. Zabbix configuration Appliance Zabbix setup has the following passwords and other configuration changes: 6. Run the command rcnetwork restart.8 Manual [Zabbix] alter alter alter alter alter alter alter alter alter alter table table table table table table table table table table dservices drop index dservices_1.2. Create file /etc/sysconfig/network/routes.1 .8 only! For upgrade from earlier versions use also upgrade scripts from Zabbix 1. Utility fping is set to have permissions 4710 and is owned by group zabbix . 3 Comments 6. drop table. To configure DNS. services_1.7.x to 1. Using a static IP address By default the appliance uses DHCP to obtain IP address.6. Check log files to see if the binaries have started successfully.8/postgresql/patch. To specify a static IP address: Log in as root user. for PostgreSQL it may take several hours or more because of conversion of existing historical data.sql 5. psql -U <username> zabbix < patch.8/complete Oracle or PostgreSQL drop drop drop drop drop drop drop drop drop drop drop index index index index index index index index index index index dhosts_1.x. Also make sure that you have enough free disk space. CD iso.1. drop index). escalations drop index escalations_2. it can take many hours.sql or shell> cd postgresql.suid and only alowed to be used by zabbix group.2.zabbix. File locations 16 of 83 2010/9/17 下午 01:50 . add nameserver entries in /etc/resolv.1. Other changes Network is configured to use DHCP to obtain IP address.1.2. Using Zabbix appliance As an alternative to setting up manually or reusing existing server for Zabbix.(replacing with your gateway address). history_log_2.conf. Set BOOTPROTO variable to static.7. zabbix. ntpd configured to synchronise to the public pool servers.php.1. actions_1. zabbix_server.sql Oracle: upgrades/dbpatches/1. history_text drop index history_text_2. boot the appliance and point your browser at the IP it has received over DHCP.1. Open file /etc/sysconfig/network/ifcfg-eth0 in your favourite editor. dservices_1. graphs_items_1. 6. 6. http://www. Start new Zabbix binaries Start new binaries. Alternatively. Booting Zabbix appliance Zabbix appliance is an OpenSUSE 11. MySQL configuration changes Binary log is disabled. It is recommended to test the upgrade procedure in a non-production environment. graphs_items drop index graphs_items_2.7. NETMASK and any other parameters as required for your network. HDD/flash image.sql Database upgrade should take around 10-15 minutes. Changes to SUSE configuration There are some changed applied to the base OpenSUSE configuration. The appliance has been built using SUSE Studio . graphs_items_2. It has Zabbix server configured and running on MySQL. To get started. 5. services drop index services_1. Various basic utilities have been added that could make working with Zabbix and monitoring in general easier. httptest drop index httptest_2. history_log drop index history_log_2.8. use default 192. graphs_items drop index graphs_items_1. InnoDB is configured to store data for each table in a separate file.8/mysql/patch.. Set IPADDR. These scripts are for upgrade from Zabbix 1. Ignore any warning messages about non-existent indexes! Database upgrade scripts are located in directory upgrades/dbpatches/1.1. Example usage: shell> cd mysql.sql PostgreSQL: upgrades/dbpatches/1. create index. httptest_3. history_text_2.8/oracle/patch. specifying each nameserver on its own line: nameserver 192.conf. 6.2. actions drop index actions_1. httptest drop index httptest_3.3.8/<db engine>: MySQL: upgrades/dbpatches/1. Install new Zabbix GUI Follow installation instructions. escalations_2.1. Make sure that you have enough permissions (create table.6. Passwords System: root:zabbix zabbix:zabbix Database: root:zabbix zabbix:zabbix Zabbix frontend: admin:zabbix To change the database user password it has to be changed in the following locations: MySQL. as well as frontend available.Zabbix 1. 6. available in the following formats: vmdk (VMWare/Virtualbox). just use yast configuration utility to update network settings. If you are converting the database to UTF-8. users may download Zabbix appliance. For the default route.com/documentation/1. 6. httptest_2.168.2.conf.168.2 based image. 6. mysql zabbix -u<username> -p<password> < patch.

org/SUSE_Studio_Xen_Howtos To use Xen images with Citrix Xenserver you might need to convert images with XenConvert utility. Xen To use images in Xen server.opensuse. 6. If this parameter is left empty (LogFile=). 2 Comments 3. Zabbix logfiles are placed in /var/log/zabbix.7. Home directory for user zabbix is /var/lib/zabbix. SSH2.3.3. available from Citrix website.log.this can add lots of entries to the audit log. You have to restart webserver after modifying this file. use any of these: service zabbix-server status rczabbix-server status /etc/init.7. Disabled triggers and web scenarios are shown by default to reduce confusion.Zabbix 1. 6. 6.opensuse. 6. you can create a backup of whole database. IPMI.5.4. Firewall By default. only two ports are open . Changes to Zabbix configuration Some items and triggers in the default Linux template are disabled (mostly those who did not correspond to appliance setup). including all configuration and gathered data. It logs timestamped problems and starting attempts at /var/log/zabbix/server_problems. syslog logging facilities are used.1. Frontend access Access to frontend by default is allowed from: 127. additionally Zabbix frontend is monitored as well using web monitoring. init and other scripts Zabbix daemons have their names changed from standard with underscore to dash to conform to SUSE guidelines.xenconfig See the following pages for more information on using Xen images: http://en. Zabbix Processes 3. Zabbix home (this can be modified in /etc/php5/apache2/php. This script is available since Zabbix Appliance version 1.conf.0/8 ::1 Root (/) is redirected to /zabbix on the webserver.6.2. To do so.2.bz2 to another machine. Scheduled scripts There is a scheduled script.0/16 10.bz2 Now you can transfer file dbdump. 6.8/complete Configuration files are placed in /etc/zabbix. thus frontend can be accessed both as http://<host> and http://<host>/zabbix. To open additional ports .8.bz2 | mysql zabbix Make sure that Zabbix server is stopped while performing the restore. This can be customised in /etc/apache2/conf. Naming. configuration files are: /etc/zabbix/zabbix-server.8 Appliance”.zabbix.1. Server name for Zabbix frontend set to “Zabbix 1. log in using SSH as root user and execute: service apache2 restart 6. Zabbix appliance monitoring own web frontend Note that web frontend monitoring logs in .conf /etc/zabbix/zabbix-agentd.0.1.com/documentation/1. Frontend timezone is set to Europe/Riga.org/How_to_use_downloaded_SUSE_Studio_appliances#Xen_guest http://en.0. Zabbix server and agent ports .0. 6.8 Manual [Zabbix] http://www. In the provided configuration Zabbix server itself is monitored with the help of locally installed agent for some base parameters.1 192.d/zabbix.modify iptables rules with SuSEfirewall2 utility: SuSEfirewall2 open EXT TCP zabbix-trapper zabbix-agent Then reload the firewall rules: SuSEfirewall2 stop SuSEfirewall2 start 6. They are called: zabbix-agentd zabbix-server In a similar fashion. Monitoring capabilities Zabbix server is compiled with support for the following: SNMP.168. transfer it to the appliance and execute: bzcat dbdump. To create the backup.6. run: mysqldump zabbix | bzip2 -9 > dbdump.0.conf Appropriate init scripts are provided. run from the crontab every 10 minutes that restarts Zabbix server if it is not running. IPv6. To control Zabbix server. Logging For logging configuration of Zabbix daemons “LogFile” configuration parameter is used. Th i b t Z bbi l i l l d l l l i f ll 17 of 83 2010/9/17 下午 01:50 .ini). To restore from the backup.4. Web monitoring. Format-specific notes 6.0.for example. Make sure to disable this crontab entry if stopping of Zabbix server is desired. Preserving configuration If you are running live CD version of the appliance or for some other reason can't have persistent storage.d/zabbix-server status Replace server with agentd for Zabbix agent daemon.22 (SSH) and 80 (HTTP). All Zabbix daemons on Unix-like platforms log their messages from “Daemon” environment. run: xm create -c file-with-suffix.3. /var/lib/zabbix/bin.

3. Zabbix Server runs as a daemon process.conf -h --help give this help -v --version display version number In order to get this help run: shell> zabbix proxy -h 18 of 83 2010/9/17 下午 01:50 .critical information (LOG_LEVEL_CRIT) 2 . Maximum size of log file in MB. at most one item for an unreachable host will be tried at a time. Given that. How often Zabbix Server sends configuration data to a Zabbix Proxy in seconds.8. Ignored for SQLite. If set to 0 then no limit is used at all. 0. Shared memory size for storing hosts and items data. [field].3 and higher. Number of pre-forked instances of IPMI pollers. This option is supported in version 1./zabbix_server Since version 1. After how many seconds of unreachability treat a host as unavailable. in bytes.critical information 2 . Used only for proxies in a passive mode. deletes all corresponding rows without a limit. Specifies debug level 0 . How often host is checked for availability during the unavailability period. socket is used for MySQL. 0 .1. 1-64 0-255 0-255 0-255 0-255 0-255 0-255 0-255 0-255 1-30 1-300 128K-1G 1-3600 1-3600 1-3600 4 1 1 0 1 1 5 1 5 3 /tmp 300 4M 60 15 45 Number of pre-forked instances of DB Syncers.error information (LOG_LEVEL_ERR) syslog log level syslog is not used.zabbix. Database user. Comment this line if no password is used. This option is supported in version 1. Shared memory size for storing history data. Obsolete since 1. Zabbix Server can be started by executing: shell> cd sbin shell> . Zabbix server has improved unreachable host handling. Zabbix Proxy can be started by: shell> cd sbin shell> .error information 3 . Location of fping6. Shared memory size for storing trends data.2. Make sure that fping binary has root ownership and SUID flag set! Size of history cache. If set to localhost.no debug 1 . Number of pre-forked instances of pollers. You may include individual files or all files in a directory in the configuration file. No more than 'MaxHousekeeperDelete' rows (corresponding to [tablename].for debugging (produces lots of information) If set to 1. in seconds. This option is supported in version 1. Name of PID file.for debugging (LOG_LEVEL_DEBUG) debug-level messages (LOG_DEBUG) For syslog configuration consult the corresponding literature. Database name.3 and higher. text or log history data.8. Specifies how many seconds trapper may spend processing new data. Number of pre-forked instances of HTTP pollers. Number of pre-forked instances of pollers for passive proxies. Unique NodeID in distributed setup. If set to '1' local history won't be sent to master node. Make empty (“Fping6Location=”) if your fping utility is capable to process IPv6 addresses.warnings 4 .sock 128K-1G 1-3600 Default /home/zabbix/bin/ 8M 60 localhost Description Location of custom alert scripts Size of configuration cache. Database password.2. Make sure that fping6 binary has root ownership and SUID flag set. disables housekeeping.disable automatic log rotation. How often host is checked for availability during the unreachability period.2 and higher. If PostgreSQL is used. EVENTLOG_ERROR_TYPE Error 3 . Location of public keys for SSH checks 5-3600 30 How often Zabbix will try to send unsent alerts (in seconds). Number of pre-forked instances of trappers Specifies how long we wait for agent.2 and higher. This won't impact ability of this node to propagate history from its child nodes. If a poller finds in the item queue an item from an unreachable host. Mapping between Zabbix log levels (messages of corresponding type) and Windows Event Log entries type is provided below: Zabbix log level 0 . Housekeeping is removing unnecessary information from history.0. In this case you must know what you are doing! This option is supported in version 1. This option is supported in version 1. Database port when not using local socket. and alarms tables. Ignored for SQLite.standalone server If set to '1' local events won't be sent to master node. Database host name. SQLite3 does not use this parameter. As a result. Source IP address for outgoing connections. Ignored for SQLite.8. it takes the item and marks the host as being checked currently. SNMP device or external check (in seconds). [value]) will be deleted per one task in one housekeeping cycle. unreachable host will be checked by at most one poller at a time.8/complete 3 . in bytes. Number of pre-forked instances of pollers for unreachable hosts.0.3 and higher.error information (LOG_LEVEL_ERR) Windows Event Log entry type Comments Event Log is not used. as it performs VACUUM. This won't impact ability of this node to propagate events from its child nodes./zabbix_proxy Zabbix Proxy runs as a daemon process. The file must exist and it should have read permissions for user 'zabbix'. Zabbix Proxy accepts the following command line parameters: -c --config <file> specify configuration file. How often Zabbix will perform update of configuration cache.critical information (LOG_LEVEL_CRIT) 2 .3 and higher. which is marked like that.disable log slow queries This option is supported in version 1.0 1024-32767 10051 0-1024 1 List of comma delimited IP addresses that the trapper should listen on.empty (LOG_LEVEL_EMPTY) 1 . Number of pre-forked instances of discoverers. Size of trend cache.8. How often Zabbix Server requests history data from a Zabbix Proxy in seconds. 0 . default is /etc/zabbix/zabbix_proxy.empty (LOG_LEVEL_EMPTY) 1 .8. Also.com/documentation/1. in seconds. in bytes. Zabbix Server accepts the following command line parameters: -c --config <file> specify configuration file. Path to MySQL socket. Zabbix agent under Windows uses Event Log if “LogFile” configuration parameter is provided empty. Individual processes 3. All messages are skipped.8. Trapper will listen on all network interfaces if this parameter is missing.conf shell> zabbix_server --help shell> zabbix_server -v The configuration file contains parameters for zabbix_server. Other pollers do not take items from a host. in bytes. Number of pre-forked instances of ICMP pingers. Location of fping. alert. default is /etc/zabbix/zabbix_server. critical conditions (LOG_CRIT) error conditions (LOG_ERR) Comments All messages are skipped.8.8. DBUser and DBPassword are ignored. Supported parameters: Parameter AlertScriptsPath CacheSize CacheUpdateFrequency DBHost DBName DBPassword DBPort DBSocket DBUser Mandatory Range no no no no yes no no no no 1024-65535 3306 /tmp/mysql. Multiple IP addresses are supported in version 1. Listen port for trapper.conf -h --help give this help -v --version display version number In order to get this help run: shell> zabbix_server -h Example of command line parameters: shell> zabbix_server -c /usr/local/etc/zabbix_server.pid 1-604800 1-3600 3600 1 If a query takes longer than this many milliseconds. DebugLevel no 0-4 3 DisableHousekeeping ExternalScripts Fping6Location FpingLocation HistoryCacheSize HistoryTextCacheSize no no no no no no 0-1 0 /etc/zabbix/externalscripts Location of external scripts /usr/sbin/fping6 /usr/sbin/fping 128K-1G 128K-1G 1-24 8M 16M 1 HousekeepingFrequency no MaxHousekeeperDelete no Include ListenIP ListenPort LogFileSize LogFile LogSlowQueries NodeID NodeNoEvents NodeNoHistory PidFile ProxyConfigFrequency ProxyDataFrequency SSHKeyLocation SenderFrequency SourceIP StartDBSyncers StartDiscoverers StartHTTPPollers StartIPMIPollers StartPingers no no no no no no no no no no no no no no no no no no no no 0-1000000 500 StartPollersUnreachable no StartPollers StartProxyPollers StartTrappers Timeout TmpDir TrapperTimeout TrendCacheSize UnavailableDelay UnreachableDelay UnreachablePeriod no no no no no no no no no no 0 Comments 3. 0-3600000 0-999 0-1 0-1 0 0 0 0 /tmp/zabbix_server. How often Zabbix will perform housekeeping procedure (in hours).8 Manual [Zabbix] The mapping between Zabbix logging levels and syslog levels is as follows: Zabbix log level 0 .warnings warning conditions (LOG_LEVEL_WARNING) (LOG_WARNING) 4 . Used only for proxies in a passive mode. Zabbix Proxy Zabbix Proxy is a process which collects performance and availability data from one or more monitored devices and sends the information to a Zabbix Server. suggested value is 24. Zabbix Server Zabbix Server is a central process of Zabbix software.Zabbix 1.warnings EVENTLOG_WARNING_TYPE (LOG_LEVEL_WARNING) 4 . Temporary directory. it was decided to remove specific poller class for unreachable hosts. in seconds. Name of log file. 0 . Size of text history cache.8. Shared memory size for storing character.3.for debugging (LOG_LEVEL_DEBUG) Warning EVENTLOG_INFORMATION_TYPE Information 3. For SQLite3 path to database file must be provided.3 and higher. the query is logged to the log file. http://www.

Trapper will listen on all network interfaces if this parameter is missing. Agent will listen on this port for connections from the server. How often host is checked for availability during the unreachability period.proxy in the active mode 1 . and alarms tables.conf --help give this help --version display version number --print print supported metrics and exit --test <metric> test specified metric and exit In order to get this help run: shell> zabbix_agentd -h Example of command line parameters: shell> zabbix_agentd -c /usr/local/etc/zabbix_agentd. socket is used for MySQL. The provided value will be overridden by the parameter 'maxlines'. Location of fping6.do not disable 1 . Zabbix Agent (UNIX. Make sure that fping6 binary has root ownership and SUID flag set. 0 . Make sure that fping binary has root ownership and SUID flag set! Frequency of heartbeat messages in seconds. Unique Proxy name. Standalone daemon) Zabbix UNIX Agent runs on a host being monitored.2 and higher. 0 .8. in bytes. The agent will send all collected data to Zabbix Server or Proxy if the buffer is full. DebugLevel no 0-4 3 DisableHousekeeping ExternalScripts Fping6Location FpingLocation no no no no 0-1 0 /etc/zabbix/externalscripts Location of external scripts /usr/sbin/fping6 /usr/sbin/fping HeartbeatFrequency no 0-3600 60 HistoryCacheSize HistoryTextCacheSize Hostname no no no 128K-1G 128K-1G 8M 16M HousekeepingFrequency no Include ListenIP ListenPort LogFileSize LogFile LogSlowQueries PidFile ProxyLocalBuffer no no no no no no no no ProxyMode no 0-1 0 ProxyOfflineBuffer SSHKeyLocation ServerPort Server SourceIP StartDBSyncers StartDiscoverers StartHTTPPollers StartIPMIPollers StartPingers no no no yes no no no no no no 0-720 1 StartPollersUnreachable no StartPollers StartTrappers Timeout TmpDir TrapperTimeout TrendCacheSize UnavailableDelay UnreachableDelay UnreachablePeriod no no no no no no no no no 3.critical information 2 . DBUser and DBPassword are ignored. The file must exist and it should have read permissions for user 'zabbix'.disable Whether remote commands from Zabbix server are allowed.disabled 1 . You may include individual files or all files in a directory in the configuration file.heartbeat messages disabled. 0 Enable logging of executed shell commands as warnings 0 . syslog is used.0.not allowed 1 . 0. This option is supported in version 1. the query is logged to the log file. This parameter may be used if local data will be used by third party applications. Database user. Database password. How often Zabbix will perform update of configuration cache. You may include individual files or all files in a directory in the configuration file.0 1024-32767 10050 0-1024 1 List of comma delimited IP addresses that the agent should listen on. Proxy operating mode. syslog is used. Active Proxy will get configuration data from the server. Proxy will keep data for N hours in case if no connectivity with Zabbix Server.conf shell> zabbix_proxy --help shell> zabbix_proxy -v The configuration file contains parameters for zabbix_proxy.disable automatic log rotation.8/complete Example of command line parameters: shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy. Supported parameters: Parameter BufferSend BufferSize Mandatory Range no no 1-3600 2-65535 Default 5 100 Description Do not keep data longer than N seconds in buffer. Zabbix Agent can be started by executing: shell> cd sbin shell> . text or log history data. Temporary directory.3. Number of pre-forked instances of discoverers. H f li f i h k i f h d i d DebugLevel no 0-4 3 DisableActive DisablePassive no no 0 0 EnableRemoteCommands no Hostname Include ListenIP ListenPort LogFileSize LogFile LogRemoteCommands no no no no no no 0 system. The agent provides host's performance and availability information for Zabbix Server. Database host name. Location of public keys for SSH checks 1024-32767 10051 Port of Zabbix trapper on Zabbix server. The agent will work in passive mode listening for server. If PostgreSQL is used. Zabbix Agent processes items of type 'Zabbix Agent' or 'Zabbix Agent (active)'.zabbix.critical information 2 .enabled Maximum number of new lines the agent will send per second to Zabbix Server or Proxy processing 'log' and 'eventlog' active checks. Number of pre-forked instances of HTTP pollers. Number of pre-forked instances of pollers. If set to localhost. Specifies debug level 0 . disables housekeeping. How often host is checked for availability during the unavailability period. in seconds.warnings 4 . SNMP device or external check (in seconds).pid Name of PID file. 0 . Number of pre-forked instances of trappers Specifies how long we wait for agent. Supported parameters: Parameter CacheSize CacheUpdateFrequency ConfigFrequency DBHost DBName DBPassword DBSocket DBUser DataSenderFrequency no 1-3600 1 Mandatory Range no no no no yes no no 3306 128K-1G 1-3600 1-604800 Default 8M 60 3600 localhost Description Size of configuration cache.avg1]" The configuration file contains configuration parameters for zabbix_agentd. Disable passive checks. Number of pre-forked instances of ICMP pingers. Zabbix Agent accepts the following command line parameters: -c -h -v -p -t --config <file> specify configuration file. Number of pre-forked instances of pollers for unreachable hosts. Number of pre-forked instances of IPMI pollers.0.error information 3 ./zabbix_agentd Zabbix Agent runs as a daemon process. Ignored for SQLite. Shared memory size. 60 3600 120 19 of 83 2010/9/17 下午 01:50 .3 and higher. alert. Make empty (“Fping6Location=”) if your fping utility is capable to process IPv6 addresses. Name of PID file. Size of text history cache. After how many seconds of unreachability treat a host as unavailable. Maximum size of log file in MB. Maximum size of log file in MB. in bytes. Specifies debug level 0 . Name of log file. Database name. Obsolete since 1. for storing hosts and items data.allowed Unique hostname. The agent will not listen on any TCP port.no debug 1 . Older data will be lost. Location of fping.8.conf shell> zabbix_agentd --help shell> zabbix_agentd --print shell> zabbix_agentd -t "system. Shared memory size for storing character.warnings 4 .0. For SQLite3 path to database file must be provided. Ignored for SQLite. in bytes. Shared memory size for storing trends data.0 1024-32767 10051 0-1024 1 List of comma delimited IP addresses that the trapper should listen on.pid 0-720 0 If a query takes longer than this many milliseconds. Shared memory size for storing history data. Multiple IP addresses are supported in version 1. Specifies how many seconds trapper may spend processing new data.for debugging (produces lots of information) If set to 1.load[all. 0 . in bytes. Required for active checks and must match hostname as configured on the server. Name of log file. 0. Maximum number of values in a memory buffer. 0-3600000 0 /tmp/zabbix_proxy.no debug 1 . How often proxy retrieves configuration data from Zabbix Server in seconds.uname MaxLinesPerSecond PidFile R f hA i Ch k no no 1-1000 100 /tmp/zabbix_agentd. Proxy will keep data locally for N hours. For a proxy in the passive mode this parameter will be ignored. For a proxy in the passive mode this parameter will be ignored.0.3 and higher. Path to MySQL socket. Housekeeping is removing unnecessary information from history. Proxy will send collected data to the Server every N seconds. Multiple IP addresses are supported in version 1.8.disable log slow queries This option is supported in version 1. Ignored for SQLite. If not set. Only active checks will be processed. Comment this line if no password is used. 0 . Size of history cache. 1-64 0-255 0-255 0-255 0-255 0-255 0-255 0-255 1-30 1-300 128K-1G 1-3600 1-3600 1-3600 4 1 1 0 1 1 5 5 3 /tmp 300 4M 60 15 45 Number of pre-forked instances of DB Syncers.3 and higher.Zabbix 1.8.com/documentation/1. 1-24 1 How often Zabbix will perform housekeeping procedure (in hours).proxy in the passive mode This option is supported in version 1. Size of trend cache. Listen port for trapper. 0 . Database port when not using local socket.8. Used for monitoring availability of Proxy on server side.cpu.3 and higher. If not set. IP address (or hostname) of Zabbix server. 0 . provided in 'log' or 'eventlog' item key.8. Make sure the Proxy name is known to the server! System hostname is used if undefined.disable automatic log rotation.error information 3 . For a proxy in the passive mode this parameter will be ignored. Source IP address for outgoing connections. in seconds. The file must exist and it should have read permissions for user 'zabbix'. as it performs VACUUM.3. For a proxy in the passive mode this parameter will be ignored. For a proxy in the passive mode this parameter will be ignored. default is /etc/zabbix/zabbix_agentd. in seconds. suggested value is 24.for debugging (produces lots of information) Disable active checks.8 Manual [Zabbix] shell> zabbix_proxy h http://www.

Display version number. Functions: -i -d -s -x --install --uninstall --start --stop Install ZABBIX agent as a service.<period> Defines new parameter <parameter_name> which is an average value for system performance counter <perf_counter_path> for the specified time period <period> (in seconds).Zabbix 1. 3. Spend no more than Timeout seconds on processing Allow all characters to be passed in arguments to user-defined parameters.exe. Zabbix Get can be started by executing: shell> cd bin shell> . --source-address <ip address> Specify source IP address -key <key of metric> Specify metric name (key) we want to retrieve.exe --config <your_configuration_file> --install Full path to configuration file should be specified. You can find this article at http://support.exe [-Vhp] [-idsx] [-c <file>] [-t <metric>] Zabbix Windows Agent accepts the following command line parameters: Options: -c -h -V -p -t --config <file> --help --version --print --test <metric> Specify alternate configuration file (default is c:\zabbix_agentd. Uninstall ZABBIX agent service. The agent does not kill timeouted User Parameters processes! Allow all characters to be passed in arguments to user-defined parameters User-defined parameter to monitor.4. User-defined parameter to monitor. Start ZABBIX agent service. There can be several user-defined parameters.0. Supported parameters: Parameter Server Timeout Mandatory Default value Description yes no 3 0 Comma-delimited list of IP addresses of ZABBIX Servers or Proxies. Debug level. The utility is usually used in long running user scripts for periodical sending of availability and performance data.DLL is needed.conf) contains configuration parameters for zabbix_agentd. This DLL is not supplied with Windows NT 4. Inetd version) The file contains configuration parameters for zabbix_agent. --help Give this help.microsoft.test.1 -p10050 -k"system. The file must exist and it should have read permissions for user 'zabbix'. Please note that aliases cannot be used for parameters defined in “PerfCounter” configuration file records. --version Display version number. Zabbix Agent (UNIX.who|wc -l UnsafeUserParameters no UserParameter no 5. You can specify as many “Alias” records as you wish.who|wc -l http://www.8.load[all. There can be several user-defined parameters. Connections from other IP addresses will be rejected.exe uses PDH (Performance Data Helper) API to gather various system information. Zabbix Sender can be started by executing: shell> cd bin shell> . warning message will be written to the log file. Example: UserParameter=system. For example: Include=c:\user_parameters. The utility is usually used for troubleshooting of ZABBIX Agents. so you need to download and install it by yourself. Supported since Zabbix 1. Stop ZABBIX agent service. For example. Zabbix_agentd. Supported parameters: Parameter Alias DebugLevel Include ListenPort LogFile LogUnresolvedSymbols NoTimeWait PerfCounter PidFile Server SourceIP StartAgents UnsafeUserParameters UserParameter Mandatory No No No No No No No No No Yes No No no no Default value 3 10050 100 0 Description Sets the alias for parameter. 1 – critical. Test single check (metric) and exit. For example./zabbix_sender -z zabbix -p 10051 -s LinuxDB3 -k db. so PDH. Format: UserParameter=<key>. Configuration 1. An action can be defined for any event or set of events generated by Zabbix. Number of pre-forked instances of zabbix_agentd that process passive checks. Zabbix Get (UNIX) Zabbix UNIX Get is a process which communicates with Zabbix Agent and retrieves required information. Windows Event Log is used. zabbix_agentd. Sets maximum acceptable processing time of one data sample by collector thread (in milliseconds). 2 – errors. if you wish to receive average number of processor interrupts per second for last minute.”<perf_counter_path>”. Format: UserParameter=<key>. Source IP address for outgoing connections. Samples for calculating average value will be taken every second.avg1]" Zabbix Get accepts the following command line parameters: -p -s -I -k -h -v --port <port number> Specify port number of agent running on the host. The parameter has no effect. Set source IP address all connections established by the process.<shell command> Note that shell command must not return empty string or EOL only. you may use parameter “perf_counter[\Paging File(_Total)\% Usage]”. Display help information.exe --start Windows NT 4. You may run typeperf –qx to get list of all performance counters available in Windows.com/documentation/1. Format: UserParameter=<key>./zabbix_get -s127. The configuration file (c:/zabbix_agentd. List of comma delimited IP addresses (or hostnames) of Zabbix servers. Step 3 Run agent.test. Zabbix Sender (UNIX) Zabbix UNIX Sender is a command line utility which may be used to send performance data to Zabbix Server for processing.8/complete 3. The parameter has no effect. Print list of supported checks (metrics) and exit.connections -o 43 See Zabbix Sender manpage for more information. In order to get this help run: shell> zabbix_get -h 4. No spaces allowed. Controls logging of unresolved symbols during agent startup. Comma-delimited list of IP addresses of ZABBIX servers. or you may define an alias by adding the following line to configuration file: Alias = pg_usage:perf_counter[\Paging File(_Total)\% Usage] After that you can use parameter name “pg_usage” to retrieve the same information.en-us. in seconds. Actions Zabbix reacts to events by executing set of operations.exe --install If you wish to use configuration file other than c:\zabbix_agentd. <parameter_name>. If not set. if you wish to retrieve paging file usage in percents from the server. It can be useful to substitute long and complex parameter name with a smaller and simpler one.8 Manual [Zabbix] RefreshActiveChecks ServerPort Server SourceIP StartAgents Timeout UnsafeUserParameters UserParameter no no yes no no no no no 1-16 1-30 0.conf). Connections from other IP addresses will be rejected. First entry is used for receiving list of and sending active checks.<shell command> Note that shell command must not return empty string or EOL only.conf.0.conf (it has the same syntax as UNIX agent). Step 2 Install agent as a Windows service. Values can be strings ‘yes’ or ‘no’ (without quotes).conf Port number to listen.test. Example: UserParameter=system. you should use the following command for service installation: zabbix_agentd.7.”\Processor(0)\Interrupts/sec”. you can define new parameter “interrupts” as following: PerfCounter = interrupts. Number of parameters Include is not limited. Allow all characters to be passed in arguments to user-defined parameters User-defined parameter to monitor.com/default.284996 Usage Command line syntax: zabbix_agentd.<shell command> Note that shell command must not return empty string or EOL only.6.1 3 3 0 60-3600 120 10051 How often list of active checks is refreshed. Create configuration file c:/zabbix_agentd. Name of log file. Note that hostnames must resolve hostname→IP address and IP address→hostname. one of: 0 – none. 20 of 83 2010/9/17 下午 01:50 . Do not spend more than Timeout seconds on getting requested value (1-255).zabbix. Default is 10050. -host <host name or IP> Specify host name or IP address of a host.cpu.0. Now you can use Control Panel to start agent's service or run: zabbix_agentd. There can be several user-defined parameters. The parameter has no effect.0 note.60 Please note double quotes around performance counter path. 3 – warnings.2. Server port for retrieving list of and sending active checks. Microsoft Knowledge Base article number 284996 describes this in detail and contains a download link. Example: UserParameter=system. Zabbix Agent (Windows) Installation Installation is very simple and includes 3 steps: Step 1 Create configuration file.aspx?scid=kb. If processing time will exceed specified value. 4 – debug Use this parameter to include a file into the configuration file.who|wc -l MaxCollectorProcessingTime No 3.

not equal to the value >= . where N is increasing number. Default notification message. If performing discovery by a proxy.service port is out of the range Up – matches Host Up and Service Up events Down – matches Host Down and Service Down events Downtime for Host Down and Service Down events. <> .event came from this Host <> .NAME}: {TRIGGER.8. To successfully receive and read e-mails from Zabbix. = .hh:mm-hh:mm. The subject may contain macros.STATUS} 21 of 83 2010/9/17 下午 01:50 . it is not UTF-8 encoded. It may contain macros. Remote command List of remote commands.more or equal to the value <= .2. Recovery message Recovery message. It may contain macros. which is part of the Application containing the String not like .equal to trigger severity <> .1 and latter adds _N to the hostname.8. the action will be escalated according to operation steps defined for operations. Zabbix will send a recovery message after the original problem is resolved. otherwise remedy events can become escalated as well.less or equal to trigger severity Compare with Trigger Value.8.event came from Trigger.dd-dd. Starting from 1.event did not come from this Host Compare against Trigger which generated event. Subject of the recovery message. its name is decided by standard gethostbyname function.com/documentation/1. Action status: Enabled – action is active Disabled – action is disabled http://www. The messages will be sent only to those who received any message regarding this problem before.hh:mm:hh:mm. Host group Host template Host Trigger Trigger description (name) Trigger severity Trigger value Time period in Maintenance status Trigger value: Trigger changes status from OK to PROBLEM (trigger value is PROBLEM) Trigger changes status from PROBLEM to OK (trigger value is OK) Status change OK→UNKNOWN→PROBLEM is treated as OK→PROBLEM.Zabbix 1. Starting from 1. = . and PROBLEM→UNKNOWN→OK as PROBLEM→OK. resolved name is used. Parameter is given in seconds.not equal to trigger severity >= . then all ”:” (colons) are replaced by “_” (underscores). The subject may contain macros. Starting with 1. The following conditions can be defined for Discovery based events: Condition type Host IP Supported operators Description = <> = <> = <> = >= <= = <> >= <= like not like Check if IP address of a discovered Host is or is not in the range of IP addresses. String comparison. Zabbix sends notifications only to those users. Service type Service port Discovery status Uptime/Downtime Received value For example this set of conditions (calculation type: AND/OR): Host group = Oracle servers Host group = MySQL servers Trigger name like 'Database is down' Trigger name like 'Database is unavailable' is evaluated as (Host group = Oracle servers or Host group = MySQL servers) and (Trigger name like 'Database is down' or Trigger name like 'Database is unavailable') Operations Operation or a set of operations is executed when event matches conditions. 0 – use default period.6.8 Manual [Zabbix] Action attributes: Parameter Name Description Unique action name. Status Warning: before enabling recovery messages or escalations.event came from a trigger inherited from this Host Template <> .event generated by this Trigger <> . Action conditions An action is executed only in case if an event matches defined set of conditions.Host is in maintenance mode.more or equal to trigger severity <= . Time period is given in format: dd-dd. The following conditions can be defined for Trigger based events: Condition type Application Supported operators Description = like not like = <> = <> = <> = <> like not like = <> >= <= = in = <> = . If enabled. Parameter is given as a string.Host IP is in the range <> . since ”:” (colons) are not allowed in host names.event came from this Host Group <> .Host IP is out of the range Check if a discovered service. e-mail servers/clients must support standard 'SMTP/MIME e-mail' format since Zabbix sends UTF-8 data.event generated by other Trigger Compare against Trigger Name which generated event. not like – String cannot be found in Trigger Name. Additional operations available for discovery events: Add host Remove host Enable host Disable host Add to group Delete from group Link to template Unlink from template When adding a host. like – String can be found in Trigger Name. If a host exists in Zabbix configuration with the same name as a newly discovered one.event came from a different service Check if TCP port number of a discovered service is or is not in the range of ports. which have read permissions to a host (trigger).matches discovered service <> .2 the subject and the body of the message are base64-encoded to follow 'SMTP/MIME e-mail' format standard. = . versions of Zabbix prior to 1. If the host can be resolved. >= .event came from Trigger.uptime/downtime is less or equal. Case sensitive.zabbix.8 would add another host with the same name. Besides.equal to the value <> .event came from Trigger. escalation settings: From – execute for each step starting from this one To – till this (0. Type of action: Send message – send message to user Execute command – execute remote command Operation type Event Source Send message to: Send message to Single user – a single user User group – to all members of a group Default message Subject Message If selected. which is part of the Application like . including IPMI. Compare with value received from an agent (Zabbix.8/complete Event Source Enable escalations Enable escalations. = . If not. if the subject contains ASCII characters only. default message will be used.equal to trigger value (OK or PROBLEM) Event is within time period. starting with 2.event did not come from this Host Group Compare against Host Template the trigger belongs to. IP address is used. make sure to add “Trigger value = PROBLEM” condition to the action. = . which generated the event. Zabbix supports the following operations: Send message Remote command(s).uptime/downtime is more or equal <= . if IPv6 address must be used for a host name. SNMP). for all steps starting from From) Period – increase step number after this period. = . = .less or equal to the value like – has a substring not like – does not have a substring. Macros for messages and remote commands The macros can be used for more efficient reporting. At least one host of a trigger expression must be accessible.Host is not in maintenance mode. which is part of the Application not containing the String Compare against Host Group having a trigger which generated event. = .… Check if host is in maintenance. Example 1 Subject: {TRIGGER. = . Zabbix 1. Currently three sources are supported: Triggers – events generated by trigger status changes Discovery – events generated by auto-discovery module Auto registration .events generated by new active agents Time period for increase of escalation step. Source of event. in – event time matches the time period. Subject of the message.event did not come from a trigger inherited from this Host Template Compare against Host having a trigger which generated event. currently hostname lookup still takes place on Zabbix server. Parameter Step Description If escalation is enabled for this action. Compare with Trigger Severity.service port is in the range <> .3. The message may contain macros. The message itself. Case sensitive. = . The message may contain macros. Period (seconds) Event Source Default subject Default message Recovery subject Recovery message If enabled. = . Event source: Triggers – action will be executed for events generated by triggers Discovery – action will be executed for discovery events Default notification subject. Uptime for Host Up and Service Up events.

MACRO {DATE} {DISCOVERY.EVENTS.LOG. Number of acknowledged PROBLEM triggers for a map element.SOFTWARE<1-9>} {PROFILE. Mac Address from host profile. Number of unacknowledged PROBLEM triggers for a map element. Supported since 1.NAME<1-9>} {ITEM.VALUE<1-9>} {NODE. if a macro does not exist for a host.if trigger is in TRUE state.com/documentation/1. IP address of the Nth item of the trigger which caused a notification.HARDWARE<1-9>} {PROFILE. Location from host profile. Key of the Nth item of the trigger which caused a notification. Name from host profile. 5 .KEY}.NAME} {TRIGGER.2. Trigger is considered to be unacknowledged if at least one of its PROBLEM events is unacknowledged. Zabbix will check templates of deeper level taking into account template inheritance. Supported in map element labels since 1. Trigger severity.6.LOG. The following characters are allowed in the macro names: A-Z . 2 – trigger UNKNOWN. Sotware from host profile.last(0)} MAX for 15 minutes: {{HOSTNAME}:{TRIGGER. Host name of the Nth item of the trigger which caused a notification.3.trigger is in OFF state. etc 2.ACK. template and host level. The macros can be used in item keys and trigger expressions.avg1]. Notes from host profile.45 MAX for 15 minutes: 2.SEVERITY<1-9>} {ITEM.SERVICE.AGE} {EVENT.UNACK} {TRIGGER.8. ON . IP and host DNS name depending on host settings. In case if Zabbix is unable to find a macro.Disaster.TIME<1-9>} {ITEM.UPTIME} {ESC. The latest value of the Nth item of the trigger expression which caused a notification. Supported from Zabbix 1.EVENTS. Macros for host labels are supported starting from 1.TAG<1-9>} {TIME} {TRIGGER.UNACK} {TRIGGERS.PROBLEM. Trigger is considered to be acknowledged if all of it's PROBLEM events are acknowledged. If still not found. User macros For a greater flexibility.max(900)} MIN for 15 minutes: {{HOSTNAME}:{TRIGGER. 2 .EVENTS. Useful in escalated messages. Hardware from host profile. Simple macros as used in trigger expressions. global macros for global one-click configuration changes and fine tuning Example 1 Use of host macro in item “Status of SSH daemon” key: ssh.OS<1-9>} {PROFILE. disregarding trigger state. Trigger URL.8.SERVICE.NAME<1-9>} {PROFILE.ss. Current trigger value: 0 .MACADDRESS<1-9>} {PROFILE.zabbix.EVENTS.LOG. Numeric event ID which triggered this action. List of supported macros The table contains complete list of macros supported by Zabbix.last(0)} Notifications commands X and Discovery notifications X X X X X X X X X Escalation history. which can be defined on global. Supported since 1.STATUS} {DISCOVERY.Average. a global template will be used. or for the trigger which generated current event in notifications. Supported since 1. Auto registration GUI notifications Scripts X Item key's Map parameters labels Trigger expressions Trigger names Item descriptions DESCRIPTION Current date in yyyy.DNS<1-9>} {IPADDRESS<1-9>} {ITEM.NAME} {DISCOVERY. _ .33 MIN for 15 minutes: 1.SEVERITY} {TRIGGER. taking advantage of templates with host specific attributes: passwords. Supported from Zabbix 1.KEY}. Number of unacknowledged PROBLEM events for all triggers disregarding their state. Host DNS name. Number of unacknowledged PROBLEM events for triggers in PROBLEM state. Supported starting from Zabbix 1. Date of the event.8.DEVICE. Supported since 1.3. file names.ACK} {host:key. Since Zabbix version 1.ID<1-9>} {NODE. 0-9 . Macros Zabbix supports number of macros which may be used in various situations. Trigger is considered to be unacknowledged if at least one of its PROBLEM events is unacknowledged. Serial No from host profile.HISTORY} {EVENT. Warning. Supported since 1. Global and host level macros.01 2 Comments 2.PROBLEM.zabbix.3 .CONN<1-9>} {HOST.3.3.8.ID} {TRIGGER.COMMENT} {TRIGGER.4.EVENTS.8.LOG. port numbers.PORT} {DISCOVERY. Log of previously sent messages.NSEVERITY<1-9>} {ITEM.Information.Warning.DATE} {EVENT.dd.ACK} {TRIGGER. Device type from of host profile.SERVICE. 4 . 1 – trigger is in ON state. 1 . OFF .LOCATION<1-9>} {PROFILE.45' Example 3 Message: Latest value: {{HOSTNAME}:{TRIGGER. Zabbix supports user macros. Possible values: 0 .8. Numerical trigger severity. Historical (when event happened) value of Nth item of the trigger expression if used for displaying events. format.STATUS} {DISCOVERY.VALUE} {TRIGGERS.NAME} {DISCOVERY.STATUS} {EVENT. 3. Possible values: Not classified. Information.ID} {EVENT.LOG.last(0)} The message will be replaced by something like: 'Processor load is: 1.func(param)} {$MACRO} X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X Contact from host profile.min(900)} The message will be replaced by something like: Latest value: 1. the macro will not be substituted.8.DATE<1-9>} {ITEM. Number of unacknowledged events for a map element in maps.STATUS} {TRIGGER. OS from host profile.Not classified. Number of unacknowledged triggers for a map element.RULE.PROBLEM. Time of the event. global macros (checked last) In other words.CONTACT<1-9>} {PROFILE.UNACK} {TRIGGER.cpu.4 user macros can also be used in item descriptions and trigger names.ACK.TIME} {HOSTNAME<1-9>} {HOST.ACK} {TRIGGER. Number of acknowledged events for a map element in maps.PROBLEM. disregarding trigger state.3. Trigger comment. Name (description) of the trigger. if exists. Most common use cases of global and host macros: 1.3.8.LOG.8. High.8.SERIALNO<1-9>} {PROFILE.3.8/complete Example 2 Message: Processor load is: {zabbix.High.PROBLEM.DEVICE.DEVICE. regular expressions. Current time in hh:mm. Unknown Trigger state. Trigger is considered to be acknowledged if all of it's PROBLEM events are acknowledged.DEVICETYPE<1-9>} {PROFILE.{$SSH_PORT} 22 of 83 2010/9/17 下午 01:50 . Number of acknowledged triggers for a map element.if trigger is in FALSE state.URL} {TRIGGER.com: ON' http://www. Zabbix substitutes macros according to the following precedence: 1. It is alias to {{HOSTNAME}:{TRIGGER.8. Number of acknowledged PROBLEM events for all triggers disregarding their state.mm. macros defined for templates of the host.3. {STATUS} is deprecated.KEY}.com:system.PROBLEM.ACK} {TRIGGER.3.LASTVALUE<1-9>} {ITEM. Number of acknowledged PROBLEM events for triggers in PROBLEM state. host macros (checked first) 2.NSEVERITY} {TRIGGER.IPADDRESS} {DISCOVERY. or for the trigger which generated current event in notifications. The global and host level macros is an excellent way of making maintenance of Zabbix configuration much easier.PROBLEM.zabbix.Zabbix 1.8 Manual [Zabbix] Message subject will be replaced by something like: 'Processor load is too high on server zabbix.NOTES<1-9>} {PROFILE. Supported since 1. Supported since 1. Effective use of macros allows to save time and make Zabbix configuration more transparent. Numeric trigger ID which triggered this action.SERVICE.3.HISTORY} {EVENT.AGE<1-9>} {ITEM. Zabbix will try to find it in host templates.EVENTS. This macro can also be used in trigger expressions. Supported in trigger names and item descriptions since 1. Tag from host profile. Supported since 1.ACK} {TRIGGERS.4. X Name of the Nth item of the trigger which caused a notification.EVENTID<1-9>} {ITEM.KEY}. X X X X X X X X X X X X X X X X X X X X X Age of the event. .UNACK} {TRIGGERS.PROBLEM.LOG.3.UPTIME} {DISCOVERY.KEY<1-9>} {TRIGGER.4.load[. The latest value of Nth item of the trigger expression if used for displaying triggers. These macros have a special syntax: {$MACRO}. Average. Disaster.8.SOURCE<1-9>} {ITEM.NAME<1-9>} {PROFILE.UNACK} {TRIGGER.

com/documentation/1. 4. 3 Comments 4. one or more media types can be assigned to user.size[/opt] 19. Item key 19. we want to receive only one notification if the route is down: “The router is down” instead of: “The router is down” and “The host is down” In order to achieve this. Make sure that: Speed of a serial device (normally /dev/ttyS0 under Linux) matches GSM Modem. Change definition of a template item (trigger. including key parameters. transactions per second. one or more hosts.size[/] vfs. etc.8. PIN can be entered by issuing command AT+CPIN=“NNNN” (NNNN is your PIN number. application 'MySQL Server' may contain all items which are related to the MySQL server: availability of MySQL.zabbix.2. such as Unix minicom or Windows HyperTerminal. one starts with specifying key name. Run commans ls –l /dev/ttyS0 to see current permission of the serial device. 19.if some block can be reached through the line. Items. * is any string that will be passed as argument to the parameter.1. The serial device has read/write access for user zabbix.fs. Host template attributes: Parameter Name Groups New group Description Unique template (host) name. Zabbix passes three command line parameters to the script: Recipient.avg1]. in this example function min(). 4. Applications are used in Zabbix front-end to group items.fs. Example 1 Host dependency Suppose you have two hosts: a router and a server. 5 Comments 4. triggers and graphs of the template will be automatically added to the linked hosts. 23 of 83 2010/9/17 下午 01:50 . Script Custom script. How it works? A trigger may have list of one or more triggers it depends on. Allowed elements and characters at each point can be determined by following the lines . Host templates Use of templates is an excellent way of making maintenance of Zabbix much easier. Assign new host group to the template. Email Email notification. Subject and Message. The server is behind the router.last(0)}>{$MAX_CPULOAD} If you want to use amount of values as the function parameter (for example. once configured. The name must be unique within ZABBIX Node. the quotes must present) in a terminal software.7.1. For example. Alternatively you may disable PIN on the SIM card. max(#3)).load[.1. Zabbix does not set speed of the serial link. GSM Modem Zabbix supports sending of SMS messages using Serial GSM Modem connected to Zabbix Server's serial port. It uses default settings. A template can be linked to a number of hosts. include hash mark in the macro like this: SOME_PERIOD ⇒ #3 Example 3 Use of two macros in trigger “CPU load is too high”: {ca_001:system. vfs. we create a trigger dependency: "The host is down" depends on "The router is down" In case if both the server and the router is down. yet the trigger won't generate notifications and actions in case if one of the trigger in the list has state PROBLEM. disk space.8/complete Example 2 Use of host macro in trigger “CPU load is too high”: {ca_001:system. These graphs. Medias Media is a delivery channel for Zabbix alerts.Zabbix 1. it is allowed. The name must be unique within Zabbix Node. Items Item is a single performance or availability check (metric). Item key To construct a valid item key. Jabber Notifications using Jabber messaging. Graphs Custom (user defined) graphs allow the creation of complex graphs. 19. It means that the trigger will still change its status regardless of state of the triggers in the list. Host groups Host group may have zero.fs.3.avg1]. trigger dependencies. Link with template Used to create hierarchical templates.5.as depicted by the two lines that could be taken.load[.size[*] is a flexible parameter. Applications Application is a set of host items. Correct definition examples: vfs. processor load.it is not allowed. So. i. Key format Item key format. For example.8 Manual [Zabbix] http://www.e. Host and trigger dependencies Zabbix does not support host dependencies. can be easily accessed via Monitoring→Graphs.cpu. GSM Modem has PIN entered and it preserves it after power reset.cpu. 4. The following illustrations depict supported syntax. Currently user macros are not supported in SNMP OID field. Flexible and non-flexible parameters Flexible parameter is a parameter which accepts argument. if not . Zabbix has been tested with the following GSM modems: Siemens MC35 Teltonika ModemCOM/G10 6. number of slow queries. List of host groups the template belongs to. Group name Unique host group name. Currently a host cannot be linked to different templates having same application. then there's a choice to either have parameters or not . None.4. An item may be linked with one or more applications. Configuration of custom graphs can be accessed by navigating to Configuration→Templates or Configuration→Hosts and clicking on Graphs link for corresponding template or host. Host group attributes: Parameter Hosts Description List of hosts of this group.1. Zabbix will not execute actions for trigger “The host is down”.min({$CPULOAD_PERIOD})}>{$MAX_CPULOAD} Note that a macro can be used as a parameter of trigger function. graph) and the change will be automatically applied to the hosts. has to follow syntax rules. Host dependencies can be defined using more flexible option.

consult respective documentation.if.<mode>] logrt[file_format. For items that are marked with ”?” it is not known whether they are supported or not.<ip>. such as documentation for libiconv (GNU Project) or Microsoft Windows SDK documentation for “Code Page Identifiers”. all uppercase letters.list net. Individual key parameter Each key parameter can be either quoted string.tcp. Unsupported items An item can become unsupported if its value can not be retrieved for some reason. 19. Available encodings The parameter “encoding” is used to specify encoding for processing corresponding item checks.zone.tcp. Allowed characters are: 0-9a-zA-Z_-.<ip>.array If the key parameter is an array..<mode>] X 24 of 83 2010/9/17 下午 01:50 . Which means: all numbers. it means that it is ignored.com/documentation/1.1.unquoted string If the key parameter is an unquoted string. so that data acquired would not be corrupted.in[if.<source>.port] net. then ANSI with system specific extension (Windows) or UTF-8 (default locale for newer Unix/Linux distributions.service.perf[service. it is again enclosed in square brackets.<mode>] mode bytes packets errors dropped net. any Unicode character is allowed. Key parameters An item key can have multiple parameters that are comma separated.quoted string If the key parameter is a quoted string.<mode>] mode bytes packets errors dropped net.6 FreeBSD Solaris HP-UX AIX Tru64 Mac OS X OpenBSD NetBSD X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X eventlog[name.<state>.if. For a list of supported encodings (code page identifiers).<user>.<maxlines>. In that case appropriate amount of commas must be added if any further parametrs are specified. configurable in Administration section.port[<ip>.3.zone] net.8 Manual [Zabbix] http://www.<regexp>.500] would specify that interval between individual pings is 200 milliseconds. Parameter . Parameter . unquoted string or an array.<cmdline>] mode sum avg max min proc. all lowercase letters.maxproc log[file. Such items are still rechecked at a fixed interval.num[<name>.<severity>. Parameter / system agent.zabbix. underscore.mem[<name>. any Unicode character is allowed except comma and right square bracket (]). If empty “encoding” parameter is passed.version kernel.dns.<encoding>.2.<port>] proc. and included double quotes must be backslash escaped. Supported by Platform In the following lists parameters that are included in angle brackets <like_this> are optional.collisions[if] net.ping agent.maxfiles kernel. 19. please. Parameter . item key icmpping[.<eventid>.8/complete Key name Key name itself has a limited range of allowed characters.<maxlines>.<type>] net.tcp.<regexp>.<mode>] mode bytes packets errors dropped net.query[<ip>.200. thus using the default value. If a parameter is marked with “i”.tcp.tcp. 19.<cmdline>] state all sleep Windows Linux 2. where individual parameters come following multiple parameter specifying rules and syntax.if.<encoding>.dns[<ip>.500 milliseconds. dash. see your system's settings) is used by default.listen[port] net.out[if. dot.4 Linux 2. Parameter can also be left empty. and all other parameters are left at their defaults.<regexp>.<maxlines>.<user>. which just follow each other.service[service.3.<mode>] net. timeout .<port>] net..<mode>.Zabbix 1.total[if. For example.if.tcp.if.

intr system. Log.<mode>] mode total free used pfree pused vfs.<type>.num vfs.fs.dev.<mode>] Monitoring of event logs.file."Failure Audit".exists[file] vfs... Integer.file.size[fs.num[<type>] type online max system.switches system.<type>.write[device.Code Page identifier maxlines . eventlog[Application] “Failure Audit”.3}$”. Maximum number of opened files supported by OS. eventlog[name.hostname system. This parameter overrides the 'MaxLinesPerSecond' option in zabbix_agentd.file.one of all (default).<severity>.<mode>] mode avg1 avg5 avg15 system.regexp.users.529|680] source . skip (skipping processing of older data) Parameter mode will be supported from version 2.uname system. name – event log name Examples: regexp – regular expression severity – regular expression The parameter accepts the following values: “Information”.cpu.Zabbix 1.regexp[file.6 FreeBSD Solaris HP-UX AIX Tru64 Mac OS X OpenBSD NetBSD 19.<exclude>] system.localtime type utc local system.Source identifier eventid .regexp. Log.cksum[file] vfs. “Success Audit” eventlog[Security. Example: log[/home/zabbix/logs/logfile.maxproc Description Check the agent availability. String Number of files.swap. Version of Zabbix Agent.<mode>] type sectors operations bytes sps ops bps mode avg1 avg5 avg15 vfs.stat[resource.<mode>] mode total free used pfree pused vm.regmatch[file.regular expression 25 of 83 2010/9/17 下午 01:50 . See detailed description.swap.<encoding>] vfs.file.file.memory.version kernel. Must be configured as an Active Check. logrt[file_format.ping agent.4. Example: logrt[”/home/zabbix/logs/^logfile[0-9]{1.swap. Use function nodata() to check for host unavailability..out[<device>.Maximum number of new lines per second the agent will send to Zabbix Server or Proxy.md5sum[file] vfs.<encoding>] vfs.<regexp>. Return value Returns '1' if agent is available.<maxlines>..cpu.one of all (default). <mode>] Monitoring of log file.file.zabbix. This parameter overrides the 'MaxLinesPerSecond' option in zabbix_agentd.<maxlines>.Maximum number of new lines per second the agent will send to Zabbix Server or Proxy. Example of returned value: 1. Must be configured as an Active Check.contents[file.util[<cpu>.cpu.maxfiles kernel..0. Parameters Comments Can be used as a TCP ping.com/documentation/1.<type>] system.run[command.conf mode . <maxlines>.4 Linux 2.<type>] mode free total used pfree pused system.load[<cpu>.dev.8/complete Windows Linux 2.100] See detailed description. file – full file name regexp – regular expression for pattern encoding . Maximum number of processes supported by OS.2 log[file. Integer.100] Log rotation is based on last modification times of files.<mode>] mode wait nowait system.<mode>] type sectors operations bytes sps ops bps mode avg1 avg5 avg15 vfs.file.boottime system.fs. “Warning”. nothing if unavailable.<regexp>. Zabbix Agent List of supported parameters Key agent.<type>] type count sectors pages system.time[file. Number of processes.size[file] vfs.size[<device>.<encoding>.size[<mode>] mode total free used shared buffers cached pfree pused available Parameter / system X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X ? ? ? ? ? ? X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X i i i X X X i i i X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X - http://www.<type>] type count sectors pages system.<regexp>.in[<device>. skip (skipping processing of older data) Parameter mode will be supported from version 2.0.8 Manual [Zabbix] zomb run sensor[<temp>] temp temp1 temp2 temp3 services[<type>. file_format – full file name in format [absolute path][filename format as regexp] regexp – regular expression for pattern encoding . <source>.read[device.inode[fs.conf mode .<state>.<eventid>.<type>.8.<mode>] mode modify access change vfs.<mode>] type user nice idle system kernel iowait wait interrupt softirq steal mode avg1 avg5 avg15 system. Must be configured as an Active Check.. “Error”.uptime system.<encoding>] vfs.cpu.<encoding>. Log.file.Code Page identifier maxlines .<mode>] Monitoring of log file with log rotation support.cpu.

pages (pages swapped out) device .<path>.number of apache2 running under user www-data proc.<type>] system.file.pages paged out to paging space (float) fr .boottime system.util[<cpu>.it is not 1 . zomb cmdline . percentage) Example: system.out[eth0. pfree (free.page.zabbix.device interrupts (float) sy .one of count (default. max Number of CPUs. modification time). nowait (do not wait) ent . Key Description Return value Comments limit access rights of non-privileged users.avg5 (average within 5 minutes).80.<user>.1.process name user . imap.command for execution mode . used.tcp.cpu.fs. Examples: net.indicates the number of transfers per second that were issued to the physical disk/tape (float) This item is supported starting from version 1. CNAME.inode.the time in the 'yyyy-mm-dd.cpu.pages scanned by page-replacement algorithm (float) faults. device .com/documentation/1. CPU(s) utilisation.regexp. length . nice. http.1) port . run.<path>.inode[fs.tcp.<type>. bytes.localtime System time.tcp. Example: system.oracleZABBIX] .<path>.path to HTML document (default is /) port .one of temp1.oracle.page.memory.regexp[www.system calls (float) cs .cksum[/etc/passwd] Example: vfs.<mode>] Find string in a file Find string in a file File size File time information.mem[.out[eth0] You may use this key with Delta (speed per second) in order to get bytes per second statistics.pages paged in from paging space (float) po . softirq. vfs. free.0. available host .file.zabbix. <cmdline>] Memory used by process name running under user user Memory used by process.intr system.inode. proc.oracleZABBIX] .0. Note: To enable this functionality. bytes. Old naming: check_port[*] Example: net.tcp. Integer. ntp.<type> . Number of processes.0.1.org: /usr/src/sys/compile/GENERIC i386 Use Units s or uptime to get readable values.number of processes in sleep state running under oracle having oracleZABBIX in its command line On Linux.<type> .<type> . access . vfs.contents[/etc/passwd] vfs. free. percentage).total[eth0] You may use this key with Delta (speed per second) in order to get bytes per second statistics.1.size[file] vfs. free swap space).idle time during which the system had outstanding disk/NFS I/O request(s) (float) pc .IP address of DNS server (ignored) On success returns a character string zone .kernel thread context switches (float) cpu.oracle.free[*].full path to file Example: vfs.swap device (default is all).num vfs.port[<ip>.port number (by default standard service port number is used) service . Example: vfs.file.fs. Integer. percentage). Device interrupts.one of total (default).memory used by all processes running under user “root”.out work for dropped packets on your platform.cpu. http.swap device (default is all). wait end of execution). Integer. operations.interface if .total vm.0.file.loadX Example: system.average number of runnable kernel threads (float) b .filter by command line name . pages (pages swapped in) device .80] web. ntp.zone to test the DNS Examples: net.hostname path .indicates the percentage of logical processor(s) utilization that occurred while executing at the user and system level (float) app .listen[port] net. Checks if this port is in LISTEN state.<eventid>.port number (default is 80) regexp . NULL.Record type to be queried (default is SOA) 0 .number of seconds spent while connecting to the service port . percentage).free.tcp.<ip>. type . Old naming: check_service[*] Note that before Zabbix version 1.one of ssh. vm.size[<mode>] web.free. net.full path to file file . avg15 type .interface mode – bytes number of bytes (default) packets number of packets errors number of errors dropped number of dropped packets if .dns[127.swap.perf[host.get[www.service is down 1 . user (default). if .in[<device>.file. pused (used.filesystem mode . sps.IP address (default is 127.8. Supported since Zabbix agent version 2. MR. Number of users connected.index.zabbix.user name (default is all users) state .avg5] Example of returned value www.modify] Example: vfs.<type>] system. device .GNU regular expression encoding . <regexp>.service[ftp.<port>] net.time[file.one of all (default).regexp[/etc/passwd.pfree[*].one of count (default.<mode>] Number of processes name having state running under user user Sensor reading.nn.path to HTML document (default is /) port .switches system.file page-outs per second (float) pi .indicates the available physical processors in the shared pool (float) disk.buffers.service..8/complete eventid regular expression maxlines .com utc .avg5 (average within 5 minutes).DNS is down 1 . percentage) mode .service is down sec .8.port number ip .mem[zabbix_server. Number of available processors.inode[/. pused (used swap space. net.file.write[.regmatch[file.Code Page identifier file .2] Linux-specific note.free] Old naming: vfs.^1$] in zabbix_agentd. agent configuration file must have EnableRemoteCommands=1 option.disk device (default is all) type . iowait.pages] Old naming: swap[out] Example: system.out[<device>.load[] Old naming: system.interface mode – bytes number of bytes (default) packets number of packets errors number of errors dropped number of dropped packets Examples: net.0.last access time. Out-of-window collision.<ip>.one of free (default.one of sectors. disk space for local file system is returned.read[.0. Example: proc.IP address (default is 127.num[apache2. file .80] can be used to test availability of WEB server running on port 80. temp2.cannot connect 1 .if.regmatch[/var/log/app.swap device (default is all).zone] Checks if DNS service is up. max. WKS.45] can be used to test availability of FTP server on TCP port 45. buffers.full path to file regexp .fs.zabbix] .in[eth0] You may use this key with Delta (speed per second) in order to get bytes per second statistics..if. Swap statistics Swap statistics Number of bytes or percentage system.num[.size[fs. MINFO.regexp[file.<mode>] Sum of network interface incoming and outgoing statistics.port number (default is 80) host .zabbix. skip (skipping processing of older data) Parameter mode will be supported from version 2. Example: net.grsecurity.interface mode – bytes number of bytes (default) packets number of packets errors number of errors dropped number of dropped packets ip .0. ops.com.full path to file mode .pid] Example of returned value: b5052decb577e0fffd622d6ddc017e82 Example: vfs.GNU regular expression encoding . Command who is used on agent side. String value system. number of swapins). Performs a query for the supplied DNS record type.MX] type can be one of: A.0. eventlog[System.tcp. Time in seconds.stat[resource.file.zabbix] Example: vfs. percentage) fs .file. 26 of 83 2010/9/17 下午 01:50 . Number of seconds.<mode>. smtp.one of wait (default.tcp. vm.0. Timestamp of system boot.<type> . system.indicates the amount of data transferred (read or written) to the drive in bytes per second (integer) tps .total[eth0. sps.num Old naming: system[switches] cpu .fs.php. HINFO.<mode>] Run specified command on the host.file. Context switches.can connect 0 . Processor load.tcp. bps (must specify exactly which parameter to use.port] net. SOA.fs.file. vfs. tcp ip . sleep. kernel.disk statistics: bps . Can be used only for files less than 64MB.filter by command line temp .IP address(default is 127.page.if.file.hh:mm:ss.<maxlines>. ops. vfs.<port>] Disk space Memory size Get content of WEB page Disk space in bytes Memory size in bytes WEB page source as text In case of a mounted volume.swap.disk device (default is all) type .mem[.<state>. System's uptime in seconds. pfree (free swap space.hostname Return host name.root] .one of total (default).dev.<encoding>] vfs. temp3.idle time (float) wa . String value Number of seconds Number of users Numeric value vfs.tcp.file.file exists MD5 hash of the file.pused[*] Old naming: vm.service[service.regexp.cached.number of processor units this partition is entitled to receive (float) kthr.cpu.file.index.here custom regular expression TWOSHORT is defined as type Result is TRUE and expression itself is ^1$|^70$.8. system.idleX.trap and interrupt rate: in . since defaults are different under various OSes) file . Float.active virtual pages (integer) fre . MD.swap.Code Page identifier file .cpu.<mode>] system. vfs.one of modify (default. Processor utilisation in percents cpu .file.util[0. type .errors] net.if.load[<cpu>. MF.filesystem mode .8 Manual [Zabbix] <source>.com.<port>] Check performance of service proc.dev.errors] net. ftp.. interrupt.(default) the time since the Epoch (00:00:00 UTC. free.conf] vfs.php.zabbix.0.num[.full path to file.cpu.one of all (default).if.errors] net.mem[<name>. min.1.operations] Old naming: io[*] Example: system.<type>] Returns detailed host information.fs.perf[service.file does not exist 1 .one of idle.breakdown of percentage usage of processor time: us .fs.if.size[/tmp.sleep.<type>] Virtual memory statistics Numeric value system.full path to file This item is limited to files no larger than 64 Kbytes.ntp should be used instead of ntp.zone to test the DNS with the required type of information.exists[file] Check if file exists 0 .size[. file . pused (used.inode. Example: web.zone.query[127.org WIN32-specific parameters This section contains description of parameter supported by Zabbix WIN32 agent only. sectors (sectors swapped in).process name user . avg15 Old naming: system.cksum[file] Calculate file check sum File check sum calculated by algorithm used by UNIX cksum.full path to file Example: vfs.dns[<ip>.run[ls -l /] . system. total (total swap space).if. Example: web.fs.total Example of returned value: FreeBSD localhost 4.<type>] Disk write statistics.hostname path .page.num[<name>. <cmdline>] sensor[<temp>] system.www-data] . NS.one of avg.tcp.user name (default is all users) mode .1) port .zabbix.4 only). if .swap.0.size[<device>.tcp. CPU load . pop.swap.OK.memory.port[.operations] Old naming: io[*] Example of returned value: 1938292000 Example: vfs. reads /proc/sys/dev/sensors (available on 2.last change time fs .3 service..1) port . net. sectors (sectors swapped out)..conf mode . change .free[*].dns.CPU number (default is all CPUs) type .fs.users.uname system.pfree] vfs.memory used by all processes zabbix_server running under user zabbix proc.<mode>] Network interface incoming statistic. This parameter overrides the 'MaxLinesPerSecond' option eventlog[System. Swap out.size of the free list (integer) page.size[/var/log/syslog] Example: vfs.port number service .tcp. ldap.3 service.number of processes running under user mysql proc. local .num[<type>] system.IP address of DNS server (ignored) zone .zabbix. vfs.<mode>] vm.<encoding>] vfs.timeout connecting to the service 0 . proc.one of total (default).cpu.total[if.memory. steal mode .8.if. net.pages freed (page replacement) (float) sr .dns.list List of network interfaces: Type Status IPv4 Description String net.perf[ssh] can be used to test speed of initial response from SSH server. measured in seconds. Switches count."Warning|Error"] Zabbix Server or Proxy. Number of collisions.get[host. system.in[eth0. sum (default) cmdline . Check. system. Swap space.expression not found 1 .if. vfs. MG.uptime system.in[.GNU regular expression.it is in LISTEN state 0 .if. 1970).port number (by default standard service port number is used) name . Supported since Zabbix agent version 1.<user>. if it is possible to make TCP connection to port number port.used[*]. TXT Example: net. Numeric value Example: vfs.md5sum[file] File's MD5 check sum vfs.memory used by most memory hungry process running under oracle having oracleZABBIX in its command line Example: proc.com.fs.FreeBSD. ftp. imap.contents[file. pop.hostname path .systemX.<port>.CPU number (default is all CPUs) mode .DNS is up net.time[/etc/passwd. regexp .@TWOSHORT] .Maximum number of new lines per second the agent will send to eventlog[System.number of characters to return Example: vfs.in[if.pfree[*]. nntp. system.number of physical processors consumed (float) ec . Kernel patches from www.found Size in bytes.path to HTML document (default is /) port . command .one of avg1 (default).in and net.system time (float) id .4-RELEASE FreeBSD 4.exists[/tmp/application.com. Integer. system. pfree.average number of kernel threads placed in the Virtual Memory Manager wait queue (float) memory.fs.user.<mode>] Network interface outgoing statistic. ldap.<encoding>] Get file contents Text.file.userX Example: system.dev. Disk read statistics. PTR.php.one of avg1 (default).<type>] ip . nntp. pfree (free.run[command.page. Matched string or EOF if expression not found 0 .information about the usage of virtual and real memory: avm . unsupported otherwise.cpu.niceX.+hh:mm' format Parameters for this item will be supported from version 2.<mode>] Number of inodes Numeric value vfs. Old naming: check_service[*] Note that before Zabbix version 1.one of online (default).user time (float) sy . cached. since defaults are different under various OSes) device .percentage of free swap space Old naming: system.Zabbix 1.shared.fs. type .<mode>] http://www.out[.out[if.file page-ins per second (float) fo ..information about kernel thread states: r . MX.4-RELEASE #0: Tue Sep 18 11:57:08 PDT 2001 murray@builder.pfree] .<type> . Integer or string value.. bps (must specify exactly which parameter to use. operations.log.error] File must have read permissions for user zabbix Example: vfs. Note that dropped packets are supported only if both net.mysql] . vfs.<type> . Zabbix agent must have read-only access to filesystem /proc.cpu.memory.service. tcp ip . Returns EOF on fail.pages] Old naming: swap[in] Example: system.md5sum[/etc/zabbix/zabbix_agentd. smtp.listen[80] Example: net.<mode>] Swap in.memory.if.cpu. Check if service is running and accepting TCP connections.dev.if.regexp[host. file .one of sectors. type . net. shared.the percentage of entitled capacity consumed (float) lbusy .query[<ip>.detailed file list of root directory. Integer.one of ssh. January 1.<port>] Get timing of loading full WEB page Time in seconds Example: web.<length>] Get first occurrence of regexp in WEB Matched string page Returns EOF on fail (no match).total[*] Old naming: vfs.cpu.file.write[device.collisions[if] net. Integer. Text result of the command system.swap.cpu.service is running 2 .0.page.0.swap. number of swapouts).perf[www.80] web.. MB. used.read[device.max. 0 .com] Example: net. vm.if.information about page faults and paging activity: fi .index.ntp should be used instead of ntp.port number (default is 80) host .total[*]. Example: net.cpu.memory.swap.

number of packets interval . services[<type>.sum] 2.maximal value among all processes named <process> avg . if not given.62.packet size in bytes timeout . etc).6 interval is used. Enter an IP address and a port of 161.started] . It must be unique for each device. You can use the host. other than read and write operations gdiobj . Set the 'Status' to Monitored.Process kernel time in milliseconds utime . Set the host Status to NOT MONITORED. proc_info[<process>. check returns an average value for last “interval” seconds every time.<type>] Different information about specific process(es). In order to get the average number of page faults for Internet Explorer processes. Parameter must be real service name as seen in service properties under “Name:” or name of EXE file.8 Manual [Zabbix] http://www.ifOctetsIn.SNMP template which would automatically add set of items. use the following parameter: proc_info[iexplore.6.timeout in milliseconds Return ICMP ping response time target .2. Simple checks Simple checks are normally used for agent-less monitoring or for remote checks of services. For SNMPv3 privacy and authentication currently MD5 and DES protocols are supported.one of all (default).6.8. Make sure the 'Host' field has your switch/router in it and change the 'Type' field to “SNMPv1 agent”.<timeout>] 0 – ICMP ping fails 1 – ICMP ping successful icmppingloss[<target>. string OID must be converted to numeric representation.3. use 'snmpwalk' (part of ucd-snmp/net-snmp shell> snmpwalk <host or host IP> public software which you should have installed as part of the Zabbix installation) or equivalent tool: This will give you a list of SNMP strings and their last value.6 this parameter will return correct value only for counters that require just one Average value of the “counter” during last “interval” the counter path. services[automatic. Enter the community (usually public) and enter the numeric OID that you retrieved earlier in to the 'SNMP OID' field being sure to include the leading dot. 0 – running 1 – paused 2 .minimal value among all processes named <process> max .2.Zabbix 1. Note that OID can be given in either numeric or string form. You would then go through the list until you find the string you want to monitor.10. e.service2. selecting the SNMP host you created earlier. so enter a plain English description in the 'Description' field of the new item box.memory.1.1. e.wkset.ucdavis. This should give you something like the following: . Parameter is service name.3 = Counter 32: 614794138 You should now use the snmpget command to find the OID for interfaces.requested process attribute.0 (or . in some cases.ifInOctets. The following steps have to be performed in order to add monitoring of SNMP parameters: Step 1 Create a host for the SNMP device.<port> Description Checks if FTP server is running and accepting connections Checks if FTP server is running and accepting connections Checks if HTTP server is running and accepting connections Checks if HTTP (WEB) server is running and accepting connections Checks if server is accessible by ICMP ping target .timeout in milliseconds Return percentage of lost packets target .Size of process working set (amount of physical memory used by process) in Kbytes pf . but Cisco use regular numbers. SNMP Agent Zabbix must be configured with SNMP support in order to be able to retrieve data provided by SNMP agents. standard default service port is used.service3”] -list of stopped services. the template may not be compatible with the host.1.one of all (default). so the seconds.g. stop_pending. manual.port number.Number of bytes written by process during I/O operations io_write_op .1. SNMP-InOctets-Bps.<port> http. the 'Type of information' to Numeric (float) and the 'Store value' to DELTA (important otherwise you will get cumulative values from the SNMP device instead of the latest change).2.Number of bytes read by process during I/O operations io_read_op .<timeout>] Loss of packets in percents 27 of 83 2010/9/17 下午 01:50 .unknown 255 – no such service service_state[*] State of service.2.01 Value type Float 19. <interval>] Value of any performance counter.Number of write operation performed by process io_other_b .g.1.6. for “interval” is 1.<size>. where “counter” is Performance Monitor can be used to obtain list of available counters.g.gdiobj and userobj attributes available only on Windows 2000 and later versions of Windows. started. However.3 = Counter32: 614794138 again the last number in the OID is the port number. Checking of encrypted protocols (like IMAP on port 993 or POP on port 995) is currently not supported.5.host IP or DNS name packets . now go back to Zabbix and click on Items.8080 IP is taken from the Zabbix host definition.ifTable. except tcp and tcp_perf. would be empty.Number of bytes transferred by process during operations other than read and write operations io_other_op . Now save the item and go back to the hosts area of Zabbix.0) <Unique string to be used as reference to triggers> For example.2.10. The following attributes are currenty supported: vmsize . number of seconds spent connecting to HTTP server.6.sum of values for all processes named <process> Examples: 1. Depending on whether you used a template or not when creating your host you will have either a list of SNMP items associated with your host or just a new item box.host IP or DNS name packets .<port> ftp_perf.uptime uptime 0.Size of process virtual memory in Kbytes wkset .8/complete perf_counter[counter. Valid values are: min .g. accept one optional parameter: port .6. However. 19. Choose the Multiplier if you want one and enter an 'update interval' and 'keep history' if you want it to be different from the default. that should be run.0 router. ‘my_param’. All simple checks.<size>. Step 2 Find out the SNMP string of the item you want to monitor.packet size in bytes timeout .process name (same as in proc_cnt[] parameter) <attribute> .time between successive packets in milliseconds size .zabbix.<port> http_perf.continue pending 5 .8. running. excluding services with names service1. Utility snmpget may be used for this purpose: shell> snmpget -On localhost public enterprises.ifEntry. In order to get the amount of physical memory taken by all Internet Explorer processes.7.<state>. i. if list services[. If monitoring SNMPv3 devices. make sure that msgAuthoritativeEngineID (also known as snmpEngineID or “Engine ID”) is never shared by two devices. without spaces.0 Monitoring of SNMP parameters is possible if either -with-net-snmp or -with-ucd-snmp flag was specified while configuring Zabbix sources.8.Number of USER objects used by process <type> . port 1=port 101. Examples of using simple checks: ftp.1. paused List of services. Note that Zabbix agent is not needed for simple checks.Process user time in milliseconds io_read_b .e. Until version 1.45.list of services to exclude it from the result.Number of page faults ktime . not on Windows NT 4.avg] Note: All io_xxx. As a workaround.1. port 3=port 103.Number of I/O operations performed by process. please use tcp and tcp_perf for checks like these. So.ifEntry.3 Enter the 'SNMP port' as 161 and the 'Key' as something meaningful. <process> .stop pending 6 – stopped 7 . number of seconds spent connecting to FTP server. port 3=3.3: shell> snmpget -On 10.number of packets interval . We will work on the assumption that you are going to create the item yourself using the information you have just gathered using snmpwalk and snmpget. If missing.155 http http_perf.2.0.ifOctetsIn.ifTable. If it doesn't then it is possible that the SNMP 'community' is different from the standard public in which case you will need to find out what it is. Zabbix server is responsible for processing of simple checks (making external connections.<interval>.com/documentation/1.pause pending 4 .1. Examples: pause_pending. .3.average value for all processes named <process> sum .pf. services[automatic.Number of GDI objects used by process userobj . separated by a newline or 0. Example 2 Monitoring of Uptime Parameter Description Community public Oid Key Units Multiplier MIB::sysUpTime.list of stopped services. and “interval” is the time period for sample (like \System\Threads). continue_pending.start pending 3 . Default value. e. stopped.1. List of supported simple checks: Key ftp.7.1.service2 and service3 separated by comma. Since 1. “service1.memTotalSwap.ifTable. use the following parameter: proc_info[iexplore. From here set the SNMP device to be Monitored and check in Latest data for your SNMP data! Example 1 General example Parameter Description Community public Oid Key 1.22 interfaces.list of started services exclude . <exclude>] type . icmpping[<target>.3. disabled state .<packets>.representation type (meaningful when more than one process with the same name exists).2. start_pending. e. <attribute>. that should be run Excluded services should be written in double quotes. 3COM seem to use port numbers in the hundreds.ifEntry.<interval>.exe. 0 – HTTP server is down 1 – HTTP server is running 2 – timeout 0 – HTTP (WEB) server is down Otherwise.exe.3 where the last number in the string is the port number you are looking to monitor. It will not work as expected for counters that require more that one sample .3.45.host IP or DNS name Return value 0 – FTP server is down 1 – FTP server is running 2 – timeout 0 – FTP server is down Otherwise. This parameter is supported starting from version 1. storing the average value. you wanted to monitor the bytes coming in to your switch on port 3 you would use: interfaces.time between successive packets in milliseconds size .<packets>. Step 3 Create an item for monitoring. stopped. stopped] .2.1. automatic.Number of read operation performed by process io_write_b . After creating the host.like CPU utilisation.

Zabbix 1.8 Manual [Zabbix]
g packets - number of packets icmppingsec[<target>,<packets>,<interval>,<size>,<timeout>,<mode>] interval - time between successive packets in milliseconds size - packet size in bytes timeout - timeout in milliseconds mode - one of min, max, avg (default) imap,<port> imap_perf,<port> ldap,<port> ldap_perf,<port> nntp,<port> nntp_perf,<port> ntp,<port> ntp_perf,<port> pop,<port> pop_perf,<port> smtp,<port> smtp_perf,<port> ssh,<port> ssh_perf,<port> tcp,port tcp_perf,port Checks if IMAP server is running and accepting connections Checks if IMAP server is running and accepting connections Checks if LDAP server is running and accepting connections Checks if LDAP server is running and accepting connections Checks if NNTP server is running and accepting connections Checks if NNTP server is running and accepting connections Checks if NTP server is running and accepting connections Checks if NTP server is running and accepting connections Checks if POP server is running and accepting connections Checks if POP server is running and accepting connections Checks if SMTP server is running and accepting connections Checks if SMTP server is running and accepting connections Checks if SSH server is running and accepting connections Checks if SSH server is running and accepting connections Checks if TCP service is running and accepting connections Checks if TCP service is running and accepting connections

http://www.zabbix.com/documentation/1.8/complete

Number of seconds

0 – IMAP server is down 1 – IMAP server is running 2 – timeout 0 – IMAP server is down Otherwise, number of seconds spent connecting to IMAP server. 0 – LDAP server is down 1 – LDAP server is running 2 – timeout 0 – LDAP server is down Otherwise, number of seconds spent connecting to LDAP server. 0 – NNTP server is down 1 – NNTP server is running 2 – timeout 0 – NNTP server is down Otherwise, number of seconds spent connecting to NNTP server. 0 – NTP server is down 1 – NTP server is running 2 – timeout 0 – NTP server is down Otherwise, number of seconds spent connecting to NTP server. 0 – POP server is down 1 – POP server is running 2 – timeout 0 – POP server is down Otherwise, number of seconds spent connecting to POP server. 0 – SMTP server is down 1 – SMTP server is running 2 – timeout 0 – SMTP server is down Otherwise, number of seconds spent connecting to SMTP server. 0 – SSH server is down 1 – SSH server is running 2 – timeout 0 – SSH server is down Otherwise, number of seconds spent connecting to SSH server. 0 – TCP service is down 1 – TCP service is running 2 – timeout 0 - the service on the port is down Otherwise, number of seconds spent connecting to the TCP service.

Timeout processing Zabbix will not process a simple check longer than Timeout seconds defined in Zabbix server configuration file. In case if Timeout time is exceeded, 2 is returned. ICMP pings Zabbix uses external utility fping for processing of ICMP pings. The utility is not part of Zabbix distribution and has to be additionally installed. If the utility is missing, has wrong permissions or its location does not match FpingLocation defined in configuration file, ICMP pings (icmpping, icmppingsec and icmppingloss) will not be processed. Run these commands as user root in order to setup correct permissions:
shell> chown root:zabbix /usr/sbin/fping shell> chmod 710 /usr/sbin/fping shell> chmod ug+s /usr/sbin/fping

The default values for ICMP checks parameters:
Parameter Value packets interval size timeout 3 25 500 Description pings to the target milliseconds, “fping” default milliseconds, “fping” default fping flag Min Max -c -p -t 1 20 24 50 65507 10000

56 or 68 bytes, “fping” default; 56 bytes on x86, 68 bytes on x86_64 -b

Warning: fping defaults can differ depending on platform and version - if in doubt, check fping documentation. Zabbix writes addresses to be checked to a temporary file, which is then passed to fping. If items have different parameters, only ones with identical parameters are written to a single file.

19.7. Internal checks
Internal checks allow monitoring of internals of Zabbix. Internal checks are calculated by Zabbix Server.
Key zabbix[boottime] zabbix[history] zabbix[history_log] zabbix[history_str] zabbix[history_text] zabbix[history_uint] zabbix[items] zabbix[items_unsupported] zabbix[log] Description Startup time of Zabbix server process in seconds. Number of values stored in table HISTORY Number of values stored in table HISTORY_LOG Number of values stored in table HISTORY_STR Number of values stored in table HISTORY_TEXT Number of values stored in table HISTORY_UINT Number of items in Zabbix database Number of unsupported items in Zabbix database Stores warning and error messages generated by Zabbix server. Character. Add item with this key to have Zabbix internal messages stored. <name> - Proxy name List of supported parameters (<param>): lastaccess – timestamp of last heart beat message received from Proxy For example, zabbix[proxy,”Germany”,lastaccess] Trigger function fuzzytime() can be used to check availability of proxies. <from> - default: 6 seconds <to> - default: infinity Suffixes s,m,h,d,w are supported for these parameters. Parameters from and to are supported starting from version 1.8.3. Do not use if MySQL InnoDB, Oracle or PostgreSQL is used! Do not use if MySQL InnoDB, Oracle or PostgreSQL is used! This item is supported starting from version 1.8.3. Comments Unix timestamp. Do not use if MySQL InnoDB, Oracle or PostgreSQL is used! Do not use if MySQL InnoDB, Oracle or PostgreSQL is used! This item is supported starting from version 1.8.3. Do not use if MySQL InnoDB, Oracle or PostgreSQL is used! Do not use if MySQL InnoDB, Oracle or PostgreSQL is used! This item is supported starting from version 1.8.3. Do not use if MySQL InnoDB, Oracle or PostgreSQL is used! This item is supported starting from version 1.8.3.

zabbix[proxy,<name>,<param>]

Access to Proxy related information.

zabbix[queue,<from>,<to>] zabbix[trends] zabbix[trends_uint] zabbix[triggers] zabbix[uptime] zabbix[wcache,<cache>,<mode>] Cache Mode values all float uint str log text history pfree total used free trend pfree total used free text pfree total used free zabbix[rcache,<cache>,<mode>] Cache Mode buffer pfree total used free

Number of server monitored items in the Queue which are delayed by <from> to <to> seconds, inclusive. Number of values stored in table TRENDS Number of values stored in table TRENDS_UINT Number of triggers in Zabbix database Uptime of Zabbix server process in seconds. Number of values processed by Zabbix server.

It is the best indicator of Zabbix performance.

Free space in the history buffer in percentage.

Low number indicates performance problems on the database side.

19.8. Aggregated checks
Aggregate checks do not require any agent running on a host being monitored. Zabbix server collects aggregate information by doing direct database queries. Syntax of aggregate item's key
groupfunc["Host group","Item key","item func","parameter"]

Supported group functions:
GROUP FUNCTION DESCRIPTION grpavg grpmax grpmin grpsum Average value Maximum value Minimum value Sum of values

Supported item functions:
ITEM FUNCTION DESCRIPTION avg count last max min sum Average value Number of values Last value Maximum value Minimum value Sum of values

Examples of keys for aggregate items:

28 of 83

2010/9/17 下午 01:50

Zabbix 1.8 Manual [Zabbix]
Example 1 Total disk space of host group 'MySQL Servers'.
grpsum["MySQL Servers","vfs.fs.size[/,total]","last","0"]

http://www.zabbix.com/documentation/1.8/complete

Example 2 Average processor load of host group 'MySQL Servers'.
grpavg["MySQL Servers","system.cpu.load[,avg1]","last","0"]

Example 3 Average (5min) number of queries per second for host group 'MySQL Servers'
grpavg["MySQL Servers","mysql.qps","avg","300"]

19.9. External checks
External check is a check executed by Zabbix Server by running a shell script or a binary. External checks do not require any agent running on a host being monitored. Syntax of item's key:
script[parameters] * script – name of the script. * parameters – list of command line parameters.

If you don't want to pass your parameters to the script you may use:
script[] or script <- this simplified syntax is supported starting from Zabbix 1.8.1

Zabbix server will find and execute the command in directory defined in configuration parameter ExternalScripts in zabbix_server.conf. Command will be executed as the user Zabbix server runs as, so any access permissions or environment variables should be handled in a wrapper script, if necessary, and permissions on the command should allow that user to execute it. Only commands in the specified directory are available. This directory is located on Zabbix server. For custom command execution using Zabbix agents see user parameter documentation. First command line parameter is host name, other parameters are substituted by parameters. Zabbix uses the standard output of the script as the value. Standard error and exit code are discarded. Do not overuse external checks! It can decrease performance of Zabbix system a lot. Example 1 Execute script check_oracle.sh with parameters ”-h 192.168.1.4”. Host name 'www1.company.com'.
check_oracle.sh[-h 192.168.1.4]

Zabbix will execute:
check_oracle.sh www1.company.com -h 192.168.1.4.

19.10. SSH checks
Zabbix must be configured with SSH2 support. The minimal supported libssh2 library version is 1.0.0. SSH checks are used for agent-less monitoring. Note that Zabbix agent is not needed for SSH checks. Actual commands to be executed must be placed in the Executed script field in the item configuration. Multiple commands can be executed one after another by placing them on a new line.
Key Description Comments

ssh.run[<unique short description>,<ip>,<port>,<encoding>] Run a command by using SSH remote session

19.11. Telnet checks
Telnet checks are used for agent-less monitoring. Zabbix agent is not needed for Telnet checks. Actual commands to be executed must be placed in the Executed script field in the item configuration. Multiple commands can be executed one after another by placing them on a new line. Till version 1.8.1, supported characters that prompt the prompt can end with: $ # > Zabbix version 1.8.2 adds support for additional character: %
Key Description Comments

telnet.run[<unique short description>,<ip>,<port>,<encoding>] Run a command on a remote device using telnet connection

19.12. Calculated items
Support of calculated items was introduced in Zabbix 1.8.1 Calculated items is a very nice way of creating virtual data sources. Item values will be periodically calculated based on a arithmetical expression. Resulting data will be stored in Zabbix database as for any other item - this means storing both history and trends values for fast graph generation. To use calculated items, choose item type Calculated. You can create any key name using supported symbols. Calculation definition should be entered in the Formula field (named Expression in 1.8.1 and 1.8.2). The following functions are supported: A very simple expression might look like:
func(<key>|<hostname:key>,<parameter1>,<parameter2>,...)

More complex expression may use a combination of functions, operators and brackets. You could use all functions and operators supported in trigger expressions. Note that syntax is slightly different, however logic and operator precedence are exactly the same.
ARGUMENT func host:key DEFINITION One of functions supported by trigger expressions: last, min, max, avg, count, etc Is a reference to an item. It may be defined as key or hostname:key

parameter(s) Optional parameters

Supported characters for a hostname:
a..zA..Z0..9 ._-

Supported characters for a key:
a..zA..Z0..9.,_

Supported characters for a function: a..zA..Z0..9_ Unlike trigger expressions, Zabbix processes calculated items according to item update interval, not upon receiving a new value. Also if you change item key of a referenced item, you have to update all formulas that used the old key manually. A calculated item may become unsupported in several cases: 1. 2. 3. 4. referenced item(s) not found no data to calculate a function division by zero syntax errors

Example 1 Calculate percentage of free disk space on '/'. Use of function last:
100*last("vfs.fs.size[/,free]")/last("vfs.fs.size[/,total]")

Zabbix will take the latest values for free and total disk spaces and calculate percentage according to the given formula. Example 2 Calculate 10 minute average number of values processed by Zabbix. Use of function avg:
avg("Zabbix Server:zabbix[wcache,values]",600)

Note that extensive use of calculated items with long time periods may affect performance of Zabbix Server. Example 3 Calculate total bandwidth on eth0. Sum of two functions:

29 of 83

2010/9/17 下午 01:50

Zabbix 1.8 Manual [Zabbix]

http://www.zabbix.com/documentation/1.8/complete

last("net.if.in[eth0,bytes]")+last("net.if.out[eth0,bytes]")

Example 4 Calculate percentage of incoming traffic. More complex expression:
100*last("net.if.in[eth0,bytes]")/(last("net.if.in[eth0,bytes]")+last("net.if.out[eth0,bytes]"))

13 Comments

10. User Parameters
Functionality of Zabbix agents can be enhanced by defining user parameters (UserParameter) in agent's configuration file. User parameters are commands executed by Zabbix agent. /bin/sh is used as a command line interpreter under UNIX operating systems.

10.1. Simple user parameters
In order to define a new parameter for monitoring, one line has to be added to configuration file of Zabbix agent and the agent must be restarted. User parameter has the following syntax:
UserParameter=key,command Parameter Description Key Command Unique item key. Command to be executed to evaluate value of the Key.

Example 1 Simple command
UserParameter=ping,echo 1

The agent will always return '1' for item with key 'ping'. Example 2 More complex example
UserParameter=mysql.ping,mysqladmin -uroot ping|grep alive|wc –l

The agent will return '1', if MySQL server is alive, '0' - otherwise.

10.2. Flexible user parameters
Flexible user parameters can be used for more control and flexibility. For flexible user parameters,
UserParameter=key[*],command Parameter Description Key Command Unique item key. The [*] defines that this key accepts parameters. Command to be executed to evaluate value of the Key. Zabbix parses content of [] and substitutes $1,…,$10 in the command.

To use positional references unaltered, specify double dollar sign - for example, awk '{print $$2}'. Unless UnsafeUserParameters agent daemon configuration option is enabled, it is not allowed to pass flexible parameters containing these symbols: \ ' ” ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @ Example 1 Something very simple
UserParameter=ping[*],echo $1

We may define unlimited number of items for monitoring all having format ping[something]. ping[0] – will always return '0' ping[aaa] – will always return 'aaa' Example 2 Let's add more sense!
UserParameter=mysql.ping[*],mysqladmin –u$1 –p$2 ping|grep alive|wc –l

This parameter can be used for monitoring availability of MySQL database. We can pass user name and password:
mysql.ping[zabbix,our_password]

Example 3 How many lines matching a regular expression in a file?
UserParameter=wc[*],grep "$2" $1|wc -l

This parameter can be used to calculate number of lines in a file.
wc[/etc/passwd,root] wc[/etc/services|zabbix]

Note that Zabbix agent daemon does not support user parameters with -t or -p agent switches (used to test single item or print out a list of all supported items) until version 1.8.3. See manpage in earlier versions for more information. 2 Comments

4.12. Triggers
Trigger is defined as a logical expression and represents system state. Trigger status (expression) is recalculated every time Zabbix server receives new value, if this value is part of this expression. If time based functions like nodata() are used in the expression, it is recalculated every 30 seconds. The expression may have the following values:
VALUE PROBLEM OK DESCRIPTION Normally means that something happened. For example, processor load is too high. Called TRUE in older Zabbix versions. This is normal trigger state. Called FALSE in older Zabbix versions.

In this case, Zabbix cannot evaluate trigger expression. This may happen because of several reasons: server is unreachable UNKNOWN trigger expression cannot be evaluated trigger expression has been recently changed

4.12.1. Expression for triggers
The expressions used in triggers are very flexible. You can use them to create complex logical tests regarding monitored statistics. The following operators are supported for triggers (descending priority of execution):
PRIORITY OPERATOR DEFINITION 1 2 3 4 5 6 7 8 9 10 / * + < > # = & | Division Multiplication Arithmetical minus Arithmetical plus Less than More than Not equal. The operator is defined as: A=B ⇔ (A<B-0.000001) | (A>B+0.000001) Is equal. The operator is defined as: A=B ⇔ (A>B-0.000001) & (A<B+0.000001) Logical AND Logical OR

4.12.2. Trigger functions
The following functions are supported: All functions return numeric values only. Comparison to strings is not supported, for example.
FUNCTION ARGUMENT SUPPORTED TYPES VALUE DEFINITION Returns absolute difference between last and previous values. For strings: 0 – values are equal 1 – values differ Average value for period of time. Parameter defines length of the period in seconds. The function accepts a second, optional parameter time_shift. It is useful when there is a need to compare the current average value with the average value time_shift seconds back. For instance, avg(3600,86400) will return the average value for an hour one day ago. Parameter time_shift is supported from Zabbix 1.8.2. Returns difference between last and previous values. For strings: 0 – values are equal 1 – values differ Number of historical values for period of time in seconds or number of last #num values matching condition. The function accepts second optional parameter pattern, third parameter operator, and fourth parameter time_shift. For example, count(600,12) will return exact number of values equal to '12' stored in the history. Integer items: exact match Float items: match within 0.00001 String, text and log items: operators like (default), eq, ne are supported Supported operators: eq equal

abschange ignored

float, int, str, text, log

avg

sec or #num

float, int

change

ignored

float, int, str, text, log

30 of 83

2010/9/17 下午 01:50

Zabbix 1.8 Manual [Zabbix]
eq – equal ne – not equal gt – greater ge – greater or equal lt – less le – less or equal like (textual search only) - matches if contains pattern. For example, count(600,12,”gt”) will return exact number of values which are more than '12' stored in the history for the last 600 seconds. Another example: count(#10,12,”gt”,86400) will return exact number of values which are larger than '12' stored in the history among last 10 values 24 hours ago. If there is a need to count arbitrary values, for instance, for the last 600 seconds 24 hours ago, count(600,,,86400) should be used. Parameter #num is supported from Zabbix 1.6.1. Parameter time_shift and string operators are supported from Zabbix 1.8.2. Returns current date in YYYYMMDD format. For example: 20031025 Returns day of week in range of 1 to 7. Mon – 1, Sun – 7. Same as max()-min(). Since Zabbix 1.8.2, the function supports a second, optional parameter time_shift. See function avg for an example of its use. Returns: 1 – last and previous values differ 0 – otherwise Returns 1 if timestamp (item value) does not differ from Zabbix server time for more than N seconds, 0 – otherwise. Usually used with system.localtime to check that local time is in sync with local time of Zabbix server. This function is non case-sensitive analogue of regexp. Last (most recent) value. Parameter: sec – ignored #num – Nth value For example, last(0) is always equal to last(#1) last(#3) – third most recent value The function also supports an optional time_shift parameter. For example, last(0,86400) will return the most recent value one day ago. Zabbix does not guarantee exact order of values if more than two values exists within one second in history. Parameter #num is supported starting from Zabbix 1.6.2. Parameter time_shift is supported starting from Zabbix 1.8.2. Returns log severity of the last log entry. Parameter is ignored. 0 – default severity N – severity (integer, useful for Windows event logs). Zabbix takes log severity from field Information of Windows event log. Check if log source of the last log entry matches parameter. 0 – does not match 1 – matches Normally used for Windows event logs. For example, logsource(“VMWare Server”) Maximal value for period of time. Parameter defines length of the period in seconds. Since Zabbix 1.8.2, the function supports a second, optional parameter time_shift. See function avg for an example of its use. Minimal value for period of time. Parameter defines length of the period in seconds. Since Zabbix 1.8.2, the function supports a second, optional parameter time_shift. See function avg for an example of its use. Returns: 1 – if no data received during period of time in seconds. The period should not be less than 30 seconds. 0 - otherwise Returns number of seconds since the Epoch (00:00:00 UTC, January 1, 1970). Returns previous value. Parameter is ignored. Same as last(#2) Check if last value matches regular expression. Parameter defines regular expression, Posix style. Second optional parameter is number of seconds or number of lines to analyse. In this case more than one value will be processed. This function is case-sensitive. Returns: 1 – found 0 - otherwise Find string in last (most recent) value. Parameter defines string to find. Case sensitive! Second optional parameter is number of seconds or number of lines to analyse. In this case more than one value will be processed. Returns: 1 – found 0 – otherwise Sum of values for period of time. Parameter defines length of the period in seconds. Since Zabbix 1.8.2, the function supports a second, optional parameter time_shift. See function avg for an example of its use. Returns current time in HHMMSS format. Example: 123055

http://www.zabbix.com/documentation/1.8/complete

count

sec or #num

float, int, str, text, log

date

ignored

any any float, int float, int, str, text, log float, int str, log, text

dayofweek ignored delta diff fuzzytime iregexp sec or #num ignored sec 1st – string 2nd – sec or #num

last

sec #num

float, int, str, text, log

logseverity ignored

log

logsource

string

log

max min nodata now prev

sec, #num sec, #num sec ignored ignored

float, int float, int any any float, int, str, text, log

regexp

1st – string 2nd – sec or #num

str, log, text

str

1st – string 2nd – sec or #num sec, #num ignored

str, log, text

sum time

float, int any

Some of the functions cannot be used for non-numeric parameters! Most of numeric functions accept number of seconds as an argument. You may also use prefix # to specify that argument has a different meaning:
ARGUMENT DEFINITION sum(600) sum(#5) Sum of all values within 600 seconds Sum of the last 5 values

The following constants are supported for triggers:
CONSTANT <number> DEFINITION Positive float number. Examples: 0, 1, 0.15, 123.55 K – 1024*N M – 1024*1024*N G – 1024*1024*1024*N Examples: 2K, 4G, 0.5M

<number><K|M|G>

A simple useful expression might look like:
{<server>:<key>.<function>(<parameter>)}<operator><const>

Parameter must be given even for those functions, which ignore it. Example: last(0)

Example 1
Processor load is too high on www.zabbix.com
{www.zabbix.com:system.cpu.load[all,avg1].last(0)}>5

‘www.zabbix.com:system.cpu.load [all,avg1]’ gives a short name of the monitored parameter. It specifies that the server is ‘www.zabbix.com ’ and the key being monitored is ‘system.cpu.load[all,avg1]’. By using the function ‘last()’, we are referring to the most recent value. Finally, ‘>5’ means that the trigger is in the PROBLEM state whenever the most recent processor load measurement from www.zabbix.com is greater than 5.

Example 2
www.zabbix.com is overloaded

{www.zabbix.com:system.cpu.load[all,avg1].last(0)}>5|{www.zabbix.com:system.cpu.load[all,avg1].min(600)}>2

The expression is true when either the current processor load is more than 5 or the processor load was more than 2 during last 10 minutes.

Example 3
/etc/passwd has been changed Use of function diff:
{www.zabbix.com:vfs.file.cksum[/etc/passwd].diff(0)}>0

The expression is true when the previous value of checksum of /etc/passwd differs from the most recent one. Similar expressions could be useful to monitor changes in important files, such as /etc/passwd, /etc/inetd.conf, /kernel, etc.

Example 4
Someone is downloading a large file from the Internet Use of function min:
{www.zabbix.com:net.if.in[eth0,bytes].min(300)}>100K

The expression is true when number of received bytes on eth0 is more than 100 KB within last 5 minutes.

Example 5
Both nodes of clustered SMTP server are down Note use of two different hosts in one expression:
{smtp1.zabbix.com:net.tcp.service[smtp].last(0)}=0&{smtp2.zabbix.com:net.tcp.service[smtp].last(0)}=0

The expression is true when both SMTP servers are down on both smtp1.zabbix.com and smtp2.zabbix.com.

Example 6
Zabbix agent needs to be upgraded Use of function str():
{zabbix.zabbix.com:agent.version.str(beta8)}=1

The expression is true if Zabbix agent has version beta8 (presumably 1.0beta8).

Example 7
Server is unreachable
{zabbix.zabbix.com:status.last(0)}=2

The ‘status’ is a special parameter which is calculated if and only if corresponding host has at least one parameter for monitoring. See description of ‘status’ for more details.

Example 8
No heartbeats within last 3 minutes Use of function nodata():

31 of 83

2010/9/17 下午 01:50

then trigger status will not be changed and thus actions will not be executed and notifications will not be sent.com:tick.VALUE}=0&{server:temp. we define these dependencies: trigger 'Host is down' depends on trigger 'Router2 is down' trigger 'Router2 is down' depends on trigger 'Router1 is down' Before changing status of trigger 'Host is down'. like lack of disk space. Average problem. The host should periodically send data for this parameter using zabbix_sender.cpu.load[all. and one of the triggers is in PROBLEM state. Update interval (in sec) This parameter defines default interval between screen rotations in seconds. Screens and Slide Shows Zabbix screens allow grouping of various information for quick access and display on one screen. 4. IT Services IT Services are intended for those who want to get a high-level (business) view of monitored infrastructure. high processor load. 8 Comments 4. audio alarms in Status of Triggers screen. Bright red.zabbix.cpu. email – other. etc. Zabbix will check if there are corresponding trigger dependencies defined.cpu. Different colors for different severities.3.load[all. user medias.12.4.nodata(180)}=1 http://www. and many other information of higher level. PARAMETER Name Slides Screen Delay Description Name of slide show. If set to 0. Trigger dependencies Trigger dependencies can be used to define relationship between triggers. Zabbix supports following trigger severities: SEVERITY Information Warning Average High Disaster DEFINITION For information purposes. Example 9 CPU activity at night time Use of function time(): {zabbix:system. Zabbix . which will be automatically rotated according to configured update intervals. COLOR Gray.Zabbix 1.avg1]. The severities are used to: visual representation of triggers. we define the following trigger: Example 1 Temperature in server room is too high ({TRIGGER. Different audio for different severities.8/complete 'tick' must have type 'Zabbix trapper'. If so. Trigger dependencies is a very convenient way of limiting number of messages to be sent in case if an event belongs to several resources.avg1]. Not classified Unknown severity.last(0)}>20)| ({TRIGGER. A very simple IT Service structure may look like: 32 of 83 2010/9/17 下午 01:50 . If graph height is set to be less than 120 pixels. Different media (notification channel) for different severities. Update Interval of the slide show will be used. structure of existing IT infrastructure. Slide Show is a set of screens.time(0)}<060000 The trigger may change its status to true.time(0)}>000000&{zabbix:system.VALUE}=1&{server:temp. Example 1 Slide show “Zabbix administrators” The slide show consists of two screens which will be displayed in the following order: Zabbix Server ⇒ Pause 60 seconds ⇒ Zabbix Server2 ⇒ Pause 30 seconds ⇒ Zabbix Server ⇒ Pause 60 seconds ⇒ Zabbix Server2 ⇒ … 4. the Host trigger won't be updated. List of individual slides (screens): Screen name How long the screen will be displayed. Trigger severity Trigger severity defines how important is a trigger. Be warned. Light green.last(0)}>15) Note use of macro {TRIGGER.zabbix. the Router1 and the Router2. In many cases. Hysteresis Sometimes a trigger must have different conditions for different states. Dark red.load[all. Financial losses. a host Host is behind router Router2 and the Router2 is behind Router1. 4. only at night (00:00-06:00) time.14. For example. the trigger value becomes PROBLEM. In this case. Something important has happened.VALUE}.12. For example. Light yellow. We can also be interested in identifying weak places of IT infrastructure. What we are interested is availability of service provided by our IT department. Screen is a table which may contain the following elements in each cell: simple graphs user-defined graphs maps other screens plain text information server information (overview) trigger information (overview) data overview clock history of events history of actions URL (data taken from other location) Number of elements in each screen is unlimited. etc. If no data is received within 180 seconds. For example. 4.Router1 – Router2 . we are not interested in low-level details. This is when Trigger dependencies may be handy. If Router1 or Router2 is unreachable.Host If the Router1 is down. One does not want to receive three notifications about the Host. In order to do this. in seconds. any trigger is not shown in the legend.8 Manual [Zabbix] Use of function nodata(): {zabbix.com/documentation/1. then obviously the Host and the Router2 are also unreachable. Red. item 'tick' must be defined. Disaster. SMS – high severity.avg1].12. we would like to define a trigger which would become PROBLEM when server room temperature is higher than 20C while it should stay in the state until temperature will not become lower than 15C. Zabbix performs this check recursively.min(300)}>2&{zabbix:system. Easy-to-use screen builder makes creation of the screens easy and intuitive. SLA of various IT services. IT Services is hierarchy representation of monitored data. In order to make this trigger work.13. The macro returns current trigger value.5. Zabbix IT Services provides answers to all mentioned questions.

and one item of type Zabbix agent (active) waiting more than five minutes (perhaps the agent is down?). which is part of package net-snmp.1. There is no IPC queue or any other queue mechanism in Zabbix. Using regular expressions After a regular expression has been created. 4. 4. The script must be used in combination with snmptrapd. no permissions are granted on a screen when user is registered to the Zabbix. The user has access to Monitoring and Configuration. Permissions cannot be revoked by denying access to specific host groups.sh for the item's key. Triggers create lowest level of the IT Services.17. Configuration and Administration. Users can not use their user id and password to log directly into the UNIX server unless they have also been set up accordingly to UNIX. Run snmptrapd 4. See snmptrap. it can be used everywhere regular expressions are supported by referring to it's name. 4.16. 4. Utilities 4.Zabbix 1. 4.zabbix. There's a full list of such internal items in item configuration section.1. so the information is delayed. Note that a user is automatically disconnected after 30 minutes of inactivity.1.16.com/documentation/1. Start-up scripts The scripts are used to automatically start/stop Zabbix processes during system's start-up/shutdown.16. The status is calculated and propagated to upper levels according to selected algorithm. The user has no access to any resources by default.sh to ~zabbix/bin Edit snmptrap.2. Each Zabbix user is assigned a unique login name and a password.15. On the screenshot we see that there are 93 items waiting more than 5 minutes for refresh on node “Child”. 4.17. 4. @mycustomregexp.2. Configuration guide: Install snmptrapd (part of net-snmp or ucd-snmp) Edit snmptrapd.17. 4.18. All user passwords are encrypted and stored on the Zabbix database. snmptrap. User type Zabbix User Zabbix Admin Description The user has access to Monitoring menu.15. The Queue is just a logical representation of data from the database. Zabbix supports several types of users. Regular expression types 33 of 83 2010/9/17 下午 01:50 .1.d.sh Copy misc/snmptrap/snmptrap. [To be finished…] Note that up to and including Zabbix version 1. Statistics shown by the Queue is a good indicator of performance of Zabbix server. The master node receives historical data with a certain delay (normally.8/complete IT Service | |-Workstations | | | |-Workstation1 | | | |-Workstation2 | |-Servers Each node of the structure has attribute status. The user has no access to any host groups by default. Permissions to host groups must be explicitly given.8. Permissions are granted to user groups on a host group level. Access permissions on screen within the menu may be set for each user. The user has Read-Write access to all host groups. User permissions All Zabbix users access the Zabbix application through the Web-based front end. In this case.2. The scripts are located under directory misc/init. How to read The Queue on a standalone application or when displayed for a master node shows items waiting for a refresh.conf. By default.2. Zabbix Super Admin The user has access to everything: Monitoring.8 Manual [Zabbix] http://www. Regular expressions Complex regular expressions can be created and tested in the Zabbix frontend by going to Administration → General → Regular expressions. User types User types are used to define access to administrative functions and to specify default permissions. however we should not trust the information as it depends on: performance of the Child node communications between Master and Child nodes possible local time difference between Master and Child nodes A special item key zabbix[queue] can be used to monitor health of the queue by Zabbix.15. The Queue 4. Permissions to host groups must be explicitly assigned. Add this line: traphandle default /bin/bash /home/zabbix/bin/snmptrap. up-to 10 seconds for inter-node data transfer). Overview Zabbix Queue displays items that are waiting for a refresh. we see that we have three items of type Zabbix agent waiting to be refreshed 0-5 seconds. The type controls what administrative functions a user has permission to.18. prefixed with @.1 triggers with severities Not classified and Information do not impact SLA calculation.18. Overview Zabbix has a flexible user permission schema which can be efficiently used to manage user permission within one Zabbix installation or in a distributed environment.sh The script is used to receive SNMP traps. 4. Note that information displayed for a child node is not up-to-date.sh to configure some basic parameters Add special host and trapper (type “string”) item to Zabbix. Communication between the Web Server and the user's browser can be protected using SSL. for example.

Default: 0. you will see “Connected as Admin” in the lower right corner of the page and access to Configuration and Administration areas will be granted: 5.0 current Zapcat syntax won't be supported.1. Default: 1800 ZBX_PERIOD_DEFAULT Default graph period.8. Protection against brute force attacks In case of five consecutive failed login attempts. Frontend definitions While many things in the frontend can be configured using the frontend itself. in seconds. If an user does not log in.8.8 Manual [Zabbix] http://www.21.1.uptime. Two years by default since 1. One hour by default.1. in seconds.1. in seconds.21.7.8.6. Login This is “Welcome to Zabbix” screen. some customisations are currently only possible by editing a definitions file.8 versions. By default.8/complete All regular expressions in Zabbix.zabbix_proxy.21.days w .last()}<1d 5. when used.php. in seconds.com/documentation/1. 4. or entered manually.21.2 the following time-related multipliers are available: s . When installed.8.weeks. 1 .last()}<86400 could be changed to: {host:zabbix[proxy.lastaccess]}>120 {host:system.hours. Quick Start Guide 5. whether created with the advanced editor. d .3.lastaccess]}>2m {host:system. When logged in. Add user After initial installation.inc. Time-related multipliers Since Zabbix version 1.right. Parameters in this file that could be of interest to users: TRIGGER_FALSE_PERIOD For how long to show triggers in OK state after their state changed from PROBLEM. item keys syntax 4. ZBX_MAX_PERIOD Maximum graph period. one year before that. Values less than it will be rounded to ZBX_UNITS_ROUNDOFF_LOWER_LIMIT number of digits after comma. in seconds. Possible values: 0 .20.4 and latter 1.2. Zabbix has only two users defined. m . User “guest” is a special default user. User “Admin” is Zabbix superuser. when value is less than roundoff threshold Default: 6 ZAPCAT_COMPATIBILITY Enables support for Zapcat Zabbix Java JMX bridge Default: false ZAPCAT_COMPATIBILITY is only available for 1. 4. 34 of 83 2010/9/17 下午 01:50 . Standard multipliers The following table summarises available standard multipliers in Zabbix frontend and server: Till_1. IP address of a failed login attempt will be displayed after successful login. the user will be accessing Zabbix with “guest” permissions. Default: 1800 TRIGGER_BLINK_PERIOD For how long a trigger should blink after its state changed.zabbix_proxy.2.left. One hour by default. support POSIX extended regular expressions . ZBX_MIN_PERIOD Minimum graph period. h . GRAPH_YAXIS_SIDE_DEFAULT Default location of Y axis in simple graphs and default value for drop down box when adding items to custom graphs. Located in the frontend directory. 5. when value is greater than roundoff threshold Default: 2 ZBX_UNITS_ROUNDOFF_LOWER_LIMIT Number of digits after comma. which has full permissions.seconds. “guest” has no permissions on Zabbix objects.2 Server K (Kilo) M (Mega) T (Tera) G (Giga) K (Kilo) P (Peta) M (Mega) E (Exa) G (Giga) Z (Zetta) T (Tera) Y (Yotta) Frontend 4.2 Additional in 1. works the same as raw value. 4. greater to ZBX_UNITS_ROUNDOFF_UPPER_LIMIT. Examples These multipliers allow to write expressions that are easier to understand and maintain. Suffixes It is possible to simplify Zabbix trigger expressions or item keys by using suffixes.01 ZBX_UNITS_ROUNDOFF_UPPER_LIMIT Number of digits after comma. use user name Admin with password zabbix to connect as Zabbix superuser. for example the following expressions: {host:zabbix[proxy.zabbix. Zabbix interface will pause for 30 seconds in order to prevent brute force and dictionary attacks.Zabbix 1. Default: 0 ZBX_UNITS_ROUNDOFF_THRESHOLD Threshold value for roundoff constants.minutes.uptime[]. this file is include/defines. Starting from 2.

To grant user rights. The new user appears in the userlist. navigate to Administration → Users and switch to Users in the dropdown. then click “Create User”. Zabbix has several predefined notification delivery methods (media types). all access rights are assigned to user groups.8 Manual [Zabbix] http://www. 5. Press Save when ready. You can also customise severities for which the media will be active.zabbix. make sure to add your user to one of existing groups. for example Network administrators. Set correct SMTP server. new users have no media (notification method). SMTP helo and SMTP email values. click Add in the Media section. Email settings Initially. By default. Email is one of those. 35 of 83 2010/9/17 下午 01:50 .Zabbix 1. In new user form. then click Save in the user properties. so click on Add below the Read only listbox. Email configuration can be found under Menu → Administration → Media types.8/complete In order to add new user. click Save. This opens group properties. then click Select. In Zabbix. By default. SMTP email is used as the From address for outgoing e-mails. This user will have read-only access to Linux servers group. but leave all of them enabled for now. In this popup. click on the group in Groups column. Click on Email in the list of pre-defined media types. To create one. enter email address of the user. mark checkbox next to Linux servers.com/documentation/1. new user has no permissions. In the new popup. Click Add. Done! You may try to log in using credentials of the new user. In user group properties.3.

3. the host will be monitored from now on. In the Group dropdown. Move groups from the right hand side box to the left hand side box and the opposite until you are satisfied with the result. choose Templates in the Group dropdown. Monitoring default Zabbix server Open Configuration → Hosts to see the list of currently defined hosts.1. A media type must be linked with users. choose one of the groups you added your new host to. Click on Items next to it. For a quickstart. Monitoring a different server Open Configuration → Hosts to see the list of currently defined hosts. IP address Enter the IP address of the host. The situation will be different depending on Zabbix version being used. The host should be successfully created. Host must belong to at least one hostgroup. click on Not monitored in the Status column and confirm the popup.3 or later. then mark checkbox next to Template_Linux entry (assuming the newly added host is running Linux) and click on Select. Click on Create host. Note that Zabbix agent daemon must have Zabbix server IP address specified in its configuration file Server directive.2. As the minimum.8 Manual [Zabbix] http://www. Monitoring an agent-enabled host The section provides details about monitoring a host which has Zabbix agent running. you will see single disabled host. 5. we don't have to do anything else .if agent and server daemons are running properly. otherwise it will not be used.8.4. you will see single enabled host.3. If the host is not monitored. If you are using Zabbix up to version 1. triggers and graphs supposedly have been added to our new host. Click on Details in the upper left corner of the resulting page . Other options will suit us with their defaults. Alpha-numericals. Verifying current configuration In this list we can see that several items.8.com/documentation/1. If you are using Zabbix appliance version 1. That's it. Host name Enter a host name here. According to the details. You must have the agent installed and configured properly.4. Check that Zabbix server is running.4. 36 of 83 2010/9/17 下午 01:50 . click Save. we will use one of the pre-defined templates as well. no status update has happened so far.Zabbix 1. Zabbix server. That should show a high level configuration overview of this host. click on the Add button. When done.zabbix.let's verify that.4. Zabbix server. spaces and underscores are allowed. There will be one pre-defined host. host definition for our purposes should have the following defined: Host name. If the Z icon in the Availability column is red. Let's make sure that this host indeed has those items. For passive Zabbix agent monitored hosts IP address should be defined.move your mouse cursor over it to see the error message. and try refreshing the page later as well. If that icon is gray. there is some error with communication . the effect of using a template should be that this new host now has entities from Template_Linux . 0 Comments 5.that should show you what actually happened.8/complete Now you have media type “Email” defined. 5. but now we want to add another one. Groups Host must belong to at least one host group. Linked templates On the right hand side block Linked templates. 5.

Macros (or variables) {TRIGGER. there are no actions configured. 5. choose the user we created before. You can change the currently displayed time period using the controls above the graph. To view such a graph. Now it is time to see what information is available. you can modify this in your user profile. 37 of 83 2010/9/17 下午 01:50 . The values are being gathered and displayed along with change information. set up. then click on Select.which means we will want to set up notifications. While we can look at the data to determine the current status. click on Graph link next to any item. enter a name for the action. In Zabbix. There was also something about graphs . We also have problem conditions.triggers also seem to be in place (the above screenshot only shows part of the output.com/documentation/1. which indicates which template do the entities come from. By default. To do this. Monitoring → Dashboard for a high level overview. Set up notifications We have a host or several hosts monitored. click on Triggers.these graphs are generated on runtime. as well as data for individual items. for all numeric items a graph can be obtained without any configuration at all .8 Manual [Zabbix] http://www. Feel free to explore other areas that display monitoring information. Click Add in the Edit operation block. we might want to actually notify on situation changes. Click on New in that block. Go to Menu→Latest data and expand some category in there. choose Single user in the Send message to dropdown.5. Here. it is not feasible to do so all the time . if we don't add any conditions. We can see simple and custom graphs. In the most simple case. To create one. respectively. currently visible in the Default subject and Default message fields. In the upcoming popup.using the host bar above the trigger list navigate to custom graph configuration. including: Monitoring → Graphs for custom graphs. will be replaced with trigger name and trigger status. After having the basic monitoring in place. Monitoring → Triggers for a list of currently active problems.and that is done in the Action operations block.8/complete Looks like items have been added successfully. Monitoring → Screens for compound pages showing several elements at once. open Configuration → Actions. though).NAME} and {STATUS}. Zabbix entity lists are limited to 50 entries per page. Monitoring → Maps for network maps.Zabbix 1. In the upcoming form. called triggers. By default. In there. which opens new operation configuration form. if any. click Create Action.zabbix. Trigger status will be either PROBLEM or OK. which we'll set up in the next section. Note the Template_Linux text in gray prefixing them. Here we can see that some templated custom graphs are available as well. We still should define what the action should do . and they are changing from OK to PROBLEM state and back as situation changes. action will be used upon any trigger change from OK to PROBLEM and vice versa. What about triggers? Looking above the item list. there's a horizontal strip which allows to easily navigate between different entity categories of a host. Notice how the e-mail address we specified for that user will be used here. Great .

Triggers. hosts. All map elements.11"> <hosts> <host name="ZABBIX Server"> <useip>1</useip> <ip>127.2.com/documentation/1.0" date="11. 6. XML Import and Export 6. and choosing Actions in the dropdown. located in the upper right corner.0. Applications.xml. 2 Comments 6.2. Map import/export Zabbix map import/export supports the following elements since version 1. Templates.0"?> <zabbix_export version="1. If the notifications don't work. Goals Zabbix Import/Export functionality is created to make possible effective exchange of various configuration entities. Exporting and importing network maps is supported since Zabbix version 1. Items.2: Full map configuration.Zabbix 1. and network maps.1. 6. Data is exported in XML format which is easy to read and modify. Additionally.8/complete We are done with the simple action configuration.05. so click Save in the Action block.2. including images.8.1. Custom graphs. Host export Menu→Configuration→Export/Import Step 1 Select elements for export We selected host “Template_Linux” and all its items and triggers. host groups and maps. Congratulations .0. 6.zabbix. 6. triggers. Integration with third-party tools Universal XML format makes integration and data import/export possible with third party tools and applications.we are done with the simple setup of monitoring some host and sending out notifications based on problem condition definitions.3.2.ping" value_type="3"> <description>Ping to the server (TCP)</description> <delay>30</delay> 38 of 83 2010/9/17 下午 01:50 . as discussed in the ”Add user” step. Press button “Preview” to see list of elements to be exported: Step 2 Export data Press button “Export” to export selected elements to a local XML file with default name zabbix_export. including labels and status indicators. All connectors with associated data.hosts and their associated data. you can check out action log by going to Administration → Audit. Host import/export Zabbix host Import/Export processes the following data: Hosts and their linkage to templates.8.2. Overview Currently two main categories of configuration are supported for export .1</ip> <port>10050</port> <status>1</status> <groups> </groups> <items> <item type="0" key="agent. Use cases: Sharing of templates or network maps Zabbix users may share configuration parameters.8 Manual [Zabbix] http://www. make sure user you created has at least read permissions on the host which generated the event.07" time="11. The file has the following format (one element of each type is shown): <?xml version="1.

8. Press “Import Map” button.zabbix. On the top right corner near “Create Map” button.8/complete <history>7</history> <trends>365</trends> <snmp_port>161</snmp_port> <valuemap>Service state</valuemap> <applications> <application>General</application> </applications> </item> .8.. 4. or why it failed to import. images or any others elements related to the exported map are not exported.load[. Select “Export selected” if it's not selected already. hostgroups..0000</yaxismin> <yaxismax>100.cpu.. </graphs> </host> . Note that Zabbix versions 1. Otherwise it will not add it. Check box under “Update existing” if you need to update (overwrite) existing maps. What is not exported? Any maps.avg15]"> <color>990000</color> <yaxisside>1</yaxisside> <calc_fnc>2</calc_fnc> <periods_cnt>5</periods_cnt> </graph_element> <graph_element item="{HOSTNAME}:system.. </hosts> </zabbix_export> 6. where all configured maps are displayed. Map exporting In left bottom corner a selection box is available with two options: “Export selected” and “Delete selected”.cpu.avg1]"> <color>009900</color> <yaxisside>1</yaxisside> <calc_fnc>2</calc_fnc> <periods_cnt>5</periods_cnt> </graph_element> <graph_element item="{HOSTNAME}:system. Wait till page reloads. Map export and import controls can be found under Configuration → Maps menu. Map importing Importing maps is as easy as exporting them.. If parameter Update is set for Existing element. Map export and import Map export and import is available since Zabbix version 1. Select file where Zabbix should store XML data with exported maps. items should be moved in front of the triggers. Host import Menu→Configuration→Export/Import Step 1 Configure settings for data import and press “Import”. import would fail with an error message: Cannot find trigger "our_node5:Zabbix server:Disk is full" used in exported map "Small map". Press button “Go”.3. 6. To import maps: 1.5. To export maps: 1.x.4.“Import Map”. then the import will update it with data taken from the file. 6.diff(0)}&gt.8 Manual [Zabbix] http://www.. You will get to a screen similar to what you see when importing hosts in Configuration→ Export/Import (Import) menu.version. 2.8. 4. 6..x place triggers before items in the export and such data can not be imported in Zabbix 1.5. you will find new button . Thus if at least one of the elements map refers to is missing.avg5]"> <color>999900</color> <yaxisside>1</yaxisside> <calc_fnc>2</calc_fnc> <periods_cnt>5</periods_cnt> </graph_element> </graph_elements> </graph> . 6.5.2.1. but this trigger has been deleted in the meantime.5. If such a path is desired.load[.cpu.0000</yaxismax> <graph_elements> <graph_element item="{HOSTNAME}:system..0</expression> <priority>3</priority> </trigger> .2..3) Click on “Details” link on the left hand side to see more information about what was done by import. Pay attention to the following parameters of the item: PARAMETER Description Import file Rules File name of XML file. 3.. triggers. all contained elements with their settings are exported. Export format An example empty map export with background image from a distributed setup node: <sysmap> <selements> </selements> 39 of 83 2010/9/17 下午 01:50 . 6. 2. hosts. That means all map settings are exported. Check box under “Add missing” if you need to create a new map if it's missing..4. <graphs> <graph name="CPU Loads" width="900" height="200"> <show_work_period>1</show_work_period> <show_triggers>1</show_triggers> <yaxismin>0.5. triggers etc.5. Mark boxes next to maps you wish to export. then the import will add new element with data taken from the file. If parameter Add is set for Missing element. Otherwise it will not update it. if map refers to a specific trigger on a specific node. Element defines element of XML file.load[. 5. showing image importing options (available since version 1. Zabbix frontend will inform you about import success or failure. </items> <triggers> <trigger> <description>Version of zabbix_agent(d) was changed on {HOSTNAME}</description> <expression>{{HOSTNAME}:agent. Press import to send needed data to Zabbix frontend.Zabbix 1.com/documentation/1.6. so are the map links and map link status indicators. import will fail. 6. Press on “Choose file” button to select XML file containing exported Zabbix maps.5.. It can take some time if you have lots of maps to import or lots of hosts. 3. What is exported? Only map structure is exported. Map import dialogue Map import dialogue for Zabbix super admin. For example. 1 Comment 6.

5. 6.5.last(0)}=0 &amp. <iconid_maintenance> and <iconid_disabled> describes what icons should be used for the map element according to its status. 6. used for map link references. Nodes <iconid_off>. <label_location> is used for positioning element's label: Value Type -1 0 1 2 3 use map default bottom left right top 6.5. Macros can be used in labels.5. Element positioning <x> and <y> nodes are used for positioning element on the map by x and y coordinates. node for that state should be skipped in the <selement> block.last(0)}=2</expression> </elementid> <elementtype>2</elementtype> <iconid_off> <node>noden1</node> <name>Hub</name> </iconid_off> <label>New Element</label> <label_location>-1</label_location> <x>231</x> <y>122</y> </selement> <selement> is the opening tag for an element (shorthand of “System map element”). Map elements Let's take XML excerpt of some Zabbix map element as an example: <selement> <selementid>100100000000372</selementid> <elementid> <node>noden1</node> <host>LocalHost</host> <description>DOUBLE</description> <expression>{TimeHost:system.5. {TimeHost:system.5.5.localtime[local].5. 6.localtime[local].1.4.10000</expression> Trigger is referred to by host name. Element labels <label> describes map elements labels.size[free].10000</expression> Single server setup <host>LocalHost</host> <description>Lack of free memory on server {HOSTNAME}</description> <expression>{LocalHost:vm. <iconid_off> is used. <selementid> is a unique element id. <elementid> refers to the actual Zabbix entity that is represented on the map (map/hostgroup/host etc. <node> tag will be present if the exported map comes from a distributed setup.Zabbix 1. Inside icon block.last(0)}&lt. <drawtype> defines default link style: Value Style 0 2 3 line bold line dot 40 of 83 2010/9/17 下午 01:50 .3. trigger description and trigger expression. Image reference For images <elementid> node can be skipped.2. Map links Example: <link> <selementid1>100100000000399</selementid1> <selementid2>100100000000402</selementid2> <drawtype>0</drawtype> <color>00AA00</color> <linktriggers> </linktriggers> </link> <selemetid1> and <selementid2> nodes are used to specify map elements that link connects. <iconid_unknown>.5. skipped otherwise.memory.size[free]. <iconid_on>. For default icon. Trigger reference Triggers are described in a more complex way: DM setup <node>noden1</node> <host>LocalHost</host> <description>Lack of free memory on server {HOSTNAME}</description> <expression>{LocalHost:vm.com/documentation/1. <elementtype> describes what type of element info is stored in <elementid> node..memory. Map reference DM setup <node>noden1</node> <name>Local map</name> Single server setup <name>Local map</name> Maps are referred to by map name. image itself is specified: DM setup <node>noden1</node> <name>Local Image</name> Single server setup <name>Local Image</name> To use default icon for any state.5.8 Manual [Zabbix] </selements> <links> </links> <name>TEST</name> <width>800</width> <height>600</height> <backgroundid> <node>aly_trunk</node> <name>Map BG</name> </backgroundid> <label_type>2</label_type> <label_location>0</label_location> <highlight>1</highlight> <expandproblem>1</expandproblem> </sysmap> http://www.8/complete 6. Element types and storage elementtype tag in map export can be one of the following: Value Type 0 1 2 3 4 Host Map Trigger Host group Image Host reference DM (distributed monitoring) setup <node>noden1</node> <host>LocalHost</host> Single server setup <host>LocalHost</host> Hosts are referred to by host name. Host group reference DM setup <node>noden1</node> <name>Local Host Group</name> Single server setup <name>Local Host Group</name> Host groups are referred to by host group name.zabbix.5.last(0)}&lt.

or why it failed to import. 5. for example. An example of how an exported image might look like: <images> <image> <name>Server (small)</name> <imagetype>1</imagetype> <encodedImage>iVBORw0KGgoAA. if any of the referenced elements is missing. 6.5.2. It can take some time if you have lots of screens to import or lots their elements. <drawtype> and <color> are used to indicate how link should be drawn on the map if this trigger has the highest severity from all the active triggers that are attached to this link. hsize . with: Cannot find trigger "child_node5: ZBXHost:DOUBLE CHECK" used in exported screen "Link Screen" 6.5. import will fail.6. hostgroup or any other data) is not exported. you will find new button . 6. XML format .base64 encoded image When importing. where all configured screens are displayed. To export screens: 1.individual screen items. Screen export and import Screen export and import is available since Zabbix version 1..6.6. 2. Screen exporting In left bottom corner a selection box is available with two options: “Export selected” and “Delete selected”. Example: <linktrigger> <triggerid> <node>aly_trunk</node> <host>Symmetra PX40 Clone2</host> <description>APC: Input Current (PHASE L3)</description> <expression>{Symmetra PX40 Clone2:upsPhaseInputCurrent.columns. Warning: if replacing an existing image. XML format . If exported map is using any images.Zabbix 1.6. Select file where Zabbix should store XML data with exported screens.15 | {Symmetra PX40 Clone2:upsPhaseInputCurrent. Check box under “Add missing” if you need to create new screen if it's missing.3. missing images can be added and existing images can be overwritten by marking appropriate checkboxes. Select “Export selected” if it's not selected already. 3. Press “Import Screen” button. they are stored in the resulting XML file.ErkJggg==</encodedImage> </image> </images> Value for the <encodedImage> tag is truncated in the above example.6. described below. 2..5.1. Screen import form 6. Exported data Only screen structure is exported. Click the button to select XML file containing exported Zabbix screens. where 1 ⇒ icon. File selection along with options to control import is shown. Zabbix frontend will inform you about import success or failure. On the top right corner near “Create Screen” button. Press button “Go”. To import screens: 1.com/documentation/1. vsize . unique <imagetype> . Image importing is only available to users of Zabbix Super Admin type. <screenitem></screenitem> </screenitems> </screen> </screens> name .6. it will affect all maps that are using this image. Check box under “Update existing” if you need to update (overwrite) existing screens. 4. Used tags: <images> .last(0)}&gt.last(0)}&lt. Wait till page reloads.6.image type.6. <screens> <screen> <name>Screen name</name> <hsize>1</hsize> <vsize>2</vsize> <screenitems> <screenitem></screenitem> .individual image element <name> . Screen importing Importing screens is as easy as exporting them. 6.L3.6.18</expression> </triggerid> <drawtype>0</drawtype> <color>0</color> </linktrigger> <triggerid> describes trigger used for indicating link status. Press import to send needed data to the Zabbix frontend.zabbix. <linktriggers> contains information about link status indicators. When importing a screen. 6.L3. 4. 2 ⇒ background <encodedImage> . 3. Screen export and import controls can be found under Configuration → Screens menu. Resource type Description 0 1 2 3 4 5 6 7 8 9 10 11 12 13 Graph Simple graph Map Plain text Hosts info Triggers info Server info Clock Screen Triggers overview Data overview URL History of actions History of events 41 of 83 2010/9/17 下午 01:50 . It is possible to export and import used images alongside maps.screen definition Screen export consists of screen definition itself and any additional elements. Mark checkboxes next to screens you wish to export.4.root element for images <image> .8.“Import Screen”.3. 6.8 Manual [Zabbix] http://www. Not exported data Anything included in the screen itself (like a host. Linked trigger referenced the same as map element trigger.2. 6.rows.screen name. Click on “Details” link in the left upper corner to see more detailed information about what has been done by import. screenitem . Images Image import/export is supported since Zabbix version 1. 6... That includes all screen settings are and all screen elements along with their configuration.8/complete 4 dashed line <color> specifies what the default link colour is. It is possible to import images only by unchecking both map checkboxes.screen elements Available screen elements and their IDs.image name.8.

Normal text .8.amount of rows to show.1.element's width in pixels. Server info Resource type 6. 6. History of events Resource type 13. if applicable.7. <dynamic> . 6.Graph (by name). History of actions Resource type 12. <colspan> .9. Simple graph <resourceid> entry from a non-distributed setup would look like this: <resourceid> <host>Zabbix server</host> <key_>system.Item (by key).load</key_> 6. Data overview Resource type 10.6. <dynamic>.cpu.6.6.cpu.left. 6. 6.centre. Additional tags: <resourceid> . If data is exported from a distributed setup installation. <resourceid> . sets count of columns to merge (to the right). <style> . 1 .6.3.zabbix.if higher than 1.top.middle. <height>.right. <halign> .Zabbix 1. it becomes: <resourceid> <node>Zabbix node</node> <host>Zabbix server</host> <key_>system. it can have subtags.6. Additional tags: <width>.tag optionally available for some elements (see below for details).8. Available <resourceid> contents: <name>City map</name> 6.Local time (0). No additional tags available. If there are additional tags available for the specific element. <resourcetype> .Item (by key).element location on screen table by Y axis (cell of the upper left corner).8.allows to apply the element to different hostgroups and/or hosts.7. 6. Server time (1).8. <elements> .8.8/complete 6.amount of rows to show. if applicable.8. XML format .6.8.individual screen element details. Available <resourceid> contents: <name>Linux servers</name> 6. as per the table above.8.6.Zabbix map (by name). Plain text Resource type 3.available element tags Bold text . XML format .Screen (by name). Additional tags: <elements> . Screen Resource type 8. <dynamic>. Hosts info Resource type 4.8.amount of rows to show.number of rows to show.11.8. Available <resourceid> contents: <name>Linux servers</name> 6. Available <resourceid> contents: <name>Application servers screen</name> 6.6.12.6.2. they are listed here.8. <style> . Clock Resource type 7.8. 2 . Additional tags: <elements> . <height> . <style> . <elements> .Host group (by name).mandatory tag for all elements. <x> .8.meaning depends on resource type.8. 6.identifies resource.identifies element type.load</key_> </resourceid> In a distributed setup. Additional tags: <resourceid> .6.6.4. <width>. <dynamic>. <height>. if applicable.cpu. Additional tags: <resourceid> .horizontal align: 0 .com/documentation/1. node will always be identified by name: <node>Zabbix node</node> For example.tag available for all elements. Additional tags: <resourceid> . Status of host triggers 42 of 83 2010/9/17 下午 01:50 . Additional tags: <resourceid> . Additional tags: <resourceid> . Map Resource type 2.load</key_> 6. HTML code will rendered for in item data that contains strings. Simple graph Resource type 1.load</key_> </resourceid> Individual object references are listed at each element. A-Z Each individual element must have mandatory tags from the previous section and may have tags that are available for all elements. Italic text . Available <resourceid> contents: <host>Zabbix server</host> <key_>system. Additional tags: <resourceid> . <y> .if set.bottom.5.6. If <resourceid> refers to an object by name.cpu.10.vertical align: 0 . depends of resource type.if higher than 1. <valign> .8 Manual [Zabbix] 13 14 15 16 History of events Status of hostgroup triggers System status Status of host triggers http://www.Host group (by name). <rowspan> . sets count of rows to merge (down). 2 . Graph Resource type 0. 1 . Available <resourceid> contents: <host>Zabbix host</host> <name>Graph name</name> 6.6.element location on screen table by X axis (cell of the upper left corner). if applicable.6. if applicable. Available <resourceid> contents: <host>Zabbix server</host> <key_>system. <width> .6.element's height in pixels.

System status Resource type 15. Additional tags: <resourceid> .questions. No additional tags available.14. exported to XML. <elements> . Type of the item must be either Zabbix Agent or Zabbix Agent (active). Tutorials This section contains step-by-step instructions for most common tasks.6.13.8. Step 1 Write a script or command line to retrieve required parameter. Extending Zabbix Agents This tutorial provides step-by-step instructions how to extend functionality of Zabbix agent.6.6.Host group (by name).9.8. queries. the command returns total number of SQL queries.6. Add the command to zabbix_agentd.0" encoding="UTF-8"?> <screens> <screen> <name>Excellent screen</name> <hsize>2</hsize> <vsize>2</vsize> <screenitems> <screenitem> <resourcetype>0</resourcetype> <resourceid> <host>Zabbix server</host> <name>CPU Load &amp. It is assumed that a host is configured already in ZABBIX frontend. for example.2. Additional tags: <url> . traffic</name> </resourceid> <width>1000</width> <height>100</height> <x>0</x> <y>0</y> <colspan>2</colspan> <rowspan>0</rowspan> <elements>0</elements> <valign>0</valign> <halign>0</halign> <style>0</style> <dynamic>0</dynamic> </screenitem> <screenitem> <resourcetype>1</resourcetype> <resourceid> <host>Zabbix server</host> <key_>zabbix[uptime]</key_> </resourceid> <width>500</width> <height>90</height> <x>0</x> <y>1</y> <colspan>0</colspan> <rowspan>0</rowspan> <elements>0</elements> <valign>0</valign> <halign>0</halign> <style>0</style> <dynamic>0</dynamic> </screenitem> <screenitem> <resourcetype>14</resourcetype> <resourceid> <name>Linux servers</name> </resourceid> <width>500</width> <height>100</height> <x>1</x> <y>1</y> <colspan>0</colspan> <rowspan>0</rowspan> <elements>25</elements> <valign>0</valign> <halign>0</halign> <style>0</style> <dynamic>0</dynamic> </screenitem> </screenitems> </screen> </screens> 7. Notice the encoding of & as &amp.questions is an unique identifier. It contains one custom graph in upper left cell (spanning two columns).Host (by name). in the lower right cell.com/documentation/1.Host group (by name). It can be any string.mysqladmin -uroot status|cut -f4 -d":"|cut -f1 -d"S" mysql. Triggers overview Resource type 9. For example.8. 6.8.6. Available <resourceid> contents: <name>aaa</name> 6. Step 4 Add new item for monitoring.16. <?xml version="1. Monitoring of log files This tutorial provides step-by-step instructions how to setup monitoring of log files.6.questions to the monitored host.zabbix. Additional tags: <resourceid> .number of rows to show. Test this parameter by using zabbix_get utility. Agent will reload configuration file. Available <resourceid> contents: <name>aaa</name> 6. Available <resourceid> contents: <host>aleksei_host</host> 6. one simple graph in the lower left cell and trigger status element. <elements> .conf: UserParameter=mysql.number of rows to show. Additional tags: <resourceid> . Triggers info Resource type 5.8 Manual [Zabbix] http://www. 43 of 83 2010/9/17 下午 01:50 . URL Resource type 11. Otherwise Zabbix won't accept them. Available <resourceid> contents: <name>aaa</name> 6. 7. Add new item with Key=mysql.15.Zabbix 1. Be aware that type of returned values must be set correctly on Zabbix server. we may write the following command in order to get total number of queries executed by a MySQL server: mysqladmin -uroot status|cut -f4 -d":"|cut -f1 -d"S" When executed.8/complete Resource type 16. filtered for a hostgroup..1. Status of hostgroup triggers Resource type 14. Additional tags: <resourceid> . 6. 1 Comment 7.Host group (by name). XML export example The following is a simple screen (2×2).17.8. Step 2 Add this command to agent's configuration file. Step 3 Restart Zabbix agent.fully qualified or relative URL.

For example: log[/var/log/syslog]. Step 2 Add item for monitoring of the service Add item with a key service_state[lanmanworkstation]. To change this. http_proxy=http://proxy_ip:proxy_port. Zabbix does not check if a command has been executed successfully. Example 1 Monitoring of Zabbix GUI If we want to monitor availability and performance of Zabbix GUI. zabbix ALL=(ALL) NOPASSWD: /etc/init. The data is automatically used for graphs. Overview Zabbix provides effective and very flexible WEB monitoring functionality. Zabbix agent will filter entries of log file by the regexp if present. Restart agent daemon if changing this parameter. For example. One may be interested in using sudo to give access to privileged commands. enable remote commands. comment out requiretty option in /etc/sudoers. In the General tab you should see a field called Service name. Step 2 Configure new action by going to Configuration → Actions and choosing operation type Remote command. Parameter Description 44 of 83 2010/9/17 下午 01:50 . Also make sure that parameter DisableActive is not set in zabbix_agentd.8 Manual [Zabbix] Step 1 Configure Zabbix agent. Make sure that the file has read permissions for user ‘zabbix’ otherwise the item status will be set to ‘unsupported’. WEB Monitoring 9. Goals Zabbix WEB Monitoring support is developed with the following goals: Performance monitoring of WEB applications Availability monitoring of WEB applications Support of HTTP and HTTPS Support of complex scenarios consisting of many steps (HTTP requests) 9. set environment variable http_proxy for Zabbix server user.Zabbix user does not have permissions to restart system services by default. Supported values: “on”.4. Server reboot: host:IPMI power off <group>#IPMI <ipmi control> [value] The syntax is for execution of IPMI command for all hosts of a host group.d/apache restart On some systems sudoers file will prevent non-local users from executing commands.exe –r –f Replace 'host' with Zabbix hostname of Windows server. Remote command may contain macros! Note the use of sudo .conf Step 2 Add a new item for monitoring of a log file. Remote commands This tutorial provides step-by-step instructions on how to setup remote execution of pre-defined commands in case on an event. Normally a scenario is defined for one particular part of functionality of a WEB application. WEB Scenario Scenario is set of HTTP requests (steps). Remote commands in Zabbix < 1.com/documentation/1. define the following actions: PARAMETER Action type Remote command Description 'Remote command' host:c:\windows\system32\shutdown. Examples: Server restart: host:IPMI reset on.Zabbix 1. value type Integer. “off” or number (1. Must be set to ‘log’. Syntax of remote commands: REMOTE COMMAND <host>:<command> Description Command 'command' will be executed on host 'host'. Update interval (in sec) The parameter defines how often ZABBIX Agent will check for any changes in the log file. The module periodically executes WEB scenarios and keeps collected data in the database. It is assumed that Zabbix is configured and operational.regexp>]’.zabbix. Login Go to Overview screen Go to Status of Triggers screen Logout If a step cannot be performed. <group>#<command> Command 'command' will be executed on all hosts of host group 'group'. Supported ipmi controls: “reset”. log[/var/log/syslog. For example. Scenarios are very convenient way of monitoring user experience. Zabbix WEB monitoring supports both HTTP and HTTPS. 3. Pay attention to the following parameters of the item: PARAMETER Type Key Type of information Description Must be set to ‘ZABBIX Agent (active)’. See below for hints on how to configure sudo. Step 1 Get service name You can get that name by going to the services mmc and bring up the properties of the service you want to monitor it's up/down status. check how quickly Overview and Status of Triggers screens work and then logout. For example: host:sudo /etc/init. Example 1 Restart of Windows on certain condition. The following information is collected per each step of WEB scenario: Response time Download speed per second Response code Zabbix also checks if a retrieved HTML page contains a pre-defined string.2. Must be set to ‘log[file<. Make sure that parameter Hostname matches host name of the host configured in Zabbix frontend. WEB Scenario is periodically executed and consists of one or more Steps. Pay attention to the following parameters of the action: PARAMETER Action type Description Must be set to 'Remote command'. 3. To use HTTP proxy. if I wanted to monitor the “workstation” service then my service would be lanmanworkstation. 4. Step 1 On Zabbix agent. “power”. Zabbix agent executes commands in background. In order to automatically restart Windows in case of a problem detected by Zabbix. 9. execute as root: # visudo Example lines that could be used in sudoers file: # allows 'zabbix' user to run all commands without password. value mapping Windows service state. http://www. Access permissions Make sure that user 'zabbix' has execute permissions for configured commands. 7. WEB Scenario is linked to a host application for grouping. by default). 2.4 they are limited to 255 characters.1.error]. triggers and notifications. Monitoring of Windows Services This tutorial provides step-by-step instructions how to setup monitoring of Windows services. All cookies are preserved during execution of a single scenario.conf make sure that parameter EnableRemoteCommands is set to 1 and uncommented. In zabbix_agentd. we have to login. To configure access. Syntax of IPMI remote commands: REMOTE COMMAND <host>:IPMI <ipmi control> [value] Description The syntax is for execution of IPMI command on a single host. Remote command Each line must contain an command for remote execution. It is assumed that ZABBIX server and ZABBIX agent are configured and operational.4 are limited to 44 characters.8/complete Follow standard instructions in order to install and configure agent on monitored host. Normally must be set to 1 second in order to get new records as soon as possible.d/apache restart. in Zabbix >= 1. execution of scenario fails. The scenario may have the following steps: 1. The value that follows that you put in the brackets above. zabbix ALL=NOPASSWD: ALL # allows 'zabbix' user to restart apache without password. which will be periodically executed by Zabbix server. 3.

click Create application. Therefore. Step 3 Define steps for the scenario.last(0)>3 9.test. Example 1 Trigger “Zabbix GUI login is too slow” The trigger expression can be defined as: {zabbix: web. These items can be used to create triggers and define notification conditions. Zabbix automatically adds the following items for monitoring and links them to the selected application. Real life scenario Let's use Zabbix Web Monitoring for monitoring of Zabbix Web interface.5.test. First we login with our user name and password. For example: 60 Zabbix will pretend to be the selected browser. The information will be sent as is. Navigate to Configuration → Web.com HTTP POST variables.02 on Linux Active: active scenario.Step] Type: float This item will collect response codes of the step. average for all steps.. WEB Step Step is basically a HTTP request. For example: 200. You may also want to create a host if one does not exist. In the application section.test.rspcode[Scenario.bps]}. Otherwise this step fails.Step. This step is not required if you already have a suitable application. The application must exist. 9. Item Description This item will collect information about download speed (bytes per second) of the whole scenario.210 As soon as a step is created. If retrieved status code is not in the list. If all steps are executed successfully. Item key: web. Syntax: {macro}=value The macro {macro} will be replaced by “variable” in Step's URL and Post variables. returns with HTTP response code 200 and contains text SIA Zabbix.test.zabbix.test. For example: {user}=guest {password}=guest Steps of the scenario. Example 1 Trigger “WEB scenario failed” The trigger expression can be defined as: {host: web.com/documentation/1.Step] Type: integer Response code for step 'Step' of scenario 'Scenario' Web monitoring items are added with 30 day history retention and 90 day trend retention periods. i. if any. it will be executed Disabled: disabled scenario. select a host.8/complete Application Name Update interval Agent Status WEB scenario will be linked to this application. For example: id=2345&userid={user} If {user} is defined as a macro of the WEB scenario. Download speed for scenario 'Scenario' Item key: web. Open Configuration → Hosts.in[Scenario.last(0)<10000 Do not forget to replace the Scenario with real name of your scenario.Zabbix 1. then click on Applications next to the host you want to use for web monitoring. Note that we also created two macros. Example 2 Trigger “WEB application is slow” The trigger expression can be defined as: {host: web. it will be replaced by its value when the step is executed. Click on Select next to the Application field and choose the application we just created. These items can be used to create triggers and define notification conditions.bps] Type: float Response time for step 'Step' of scenario 'Scenario' This item will collect information about response time of the step in seconds.time[Scenario.in[Scenario.test. Variables Steps As soon as a scenario is created. any content will be accepted. any status code is accepted. Item key: web.e. We will add a new scenario for monitoring of Zabbix Web interface. Steps are executed in a pre-defined order. 0 is returned. Parameter Name URL Description Name of the step. Status codes If empty. provides right content and how quickly it works.fail[Scenario]}.test.test. For example: Login URL For example: www. Item key: web.last(0)#0 Do not forget to replace the Scenario with real name of your scenario.time[ZABBIX GUI. Actual scenario name will be used instead of “Scenario”. then click Create scenario button. Item Description This item will collect information about download speed (bytes per second) of the step. Useful for monitoring of WEB sites which generate different content for different WEB browsers.in[Scenario. Zabbix will not spend more than 2 x Timeout seconds on the step. The name will appear in Monitoring → Web For example: Zabbix GUI How often this scenario will be executed.fail[Scenario] Type: integer Web monitoring items are added with 30 day history retention and 90 day trend retention periods. in seconds. Actually this parameter defines maximum time for making connection to the URL and maximum time for performing an HTTP request. Zabbix automatically adds the following items for monitoring and links them to the selected application. Step 2 Add new Web scenario. Response time is counted from the beginning of the request until all information has been transferred.bps] Type: float Failed step of scenario 'Scenario' This item keeps number of failed step of the scenario. If empty. Step 1 Add new host application. For example: Zabbix Server Name of the WEB scenario.8 Manual [Zabbix] http://www. it will NOT be executed List of macros to be used in configuration of the steps. For example: Opera 9. {user} and {password}. For example: 15 The string (given as POSIX regular expression) must exist in retrieved content. Click on Add button in the Steps section to add individual steps. Web scenario step 1 We start by checking that the first page responds correctly. For example: Homepage of Zabbix Post Timeout Required List of HTTP status codes to be considered as success.4. this step fails. Do not spend more than Timeout seconds for execution of the step. Actual scenario and step names will be used instead of “Scenario” and “Step” respectively. The scenario will execute number of steps. We want to know if it is available..zabbix. Download speed for step 'Step' of scenario 'Scenario' Item key: web. 45 of 83 2010/9/17 下午 01:50 .Login]}.

otherwise Zabbix database will become polluted with lots and lots of open session records. All the post variables must be on a single line and concatenated with & symbol. and we do so by reusing the macros (variables) we defined on the scenario level.8/complete When done configuring the step. we should now verify the fact. we check for a string that is only visible when logged in . Profile link appears in the upper right corner. Web scenario step 4 Now that we have verified that frontend is accessible. we should also log out . Web scenario step 2 We continue by logging in the Zabbix frontend. Note that Zabbix frontend uses JavaScript redirect when logging in. login string becomes: name={user}&password={password}&enter=Enter Web scenario step 3 Being logged in. we can log in and retrieve logged-in content.php file. To do so. click Add. {user} and {password}. Example string for logging into Zabbix frontend: name=Admin&password=zabbix&enter=Enter If using the macros as in this example.zabbix. Final step configuration The final web scenario step configuration should look like this: Step 4 Save the finished web monitoring scenario.for example.8 Manual [Zabbix] http://www. Additionally.com/documentation/1. thus first we must log in.Zabbix 1. login step must use full URL to index. The list of applications and linked scenarios will appear in Monitoring → Web: Click on the scenario name to see more detailed statistics: 46 of 83 2010/9/17 下午 01:50 . and only further steps may check for logged-in features.

The number of bytes already analyzed (the size counter) and the last modification time (the time counter) are stored in the Zabbix database and are sent to the agent.<max lines>]. WEB. Then we process the events and apply certain actions depending of type of discovered device.2. All files matching the filename format in the provided directory are analyzed every cycle the agent tries to get the next line from the log (for logrt). Notifications can be used to warn users when a log file contains certain strings or string patterns. First. up/down time. How it works Monitoring of log files requires Zabbix Agent running on a host. Discovery 11."UTF-8". Actions For a description of all conditions available for network discovery based events see action conditions 47 of 83 2010/9/17 下午 01:50 .3}".zabbix.100] The last one will collect data from files such “filelog_abc_1” or “filelog__001”. If the service is lost after being up. 10.2. and generate discovery event or several events.log". 11. For example: log["/home/user/file. Zabbix Agent processes new records of a log file once per Refresh period seconds. Every time Zabbix cannot detect service. An item used for monitoring of a log file must have type Zabbix Agent (Active). If Zabbix server is compiled with IPv6 support and fping6 utility is missing."pattern_to_match".log”. Zabbix generates the following events: Event Service Up Service Down Host Up Host Down Service Lost Host Discovered Host Lost When generated Every time Zabbix detects active service.com/documentation/1. Goals There are several goals of Zabbix network discovery module: Simplify deployment Network discovery can be used to significantly simplify and speed up Zabbix deployment.3. 11.” is escaped or is the first symbol of the file name. POP3. then there should not be directory “file”. then the agent will read lexicographically the smallest one. The limit prevents overloading of network and CPU resources and overrides the default value provided for MaxLinesPerSecond parameter in the configuration file of the agent.1. Whenever the log file becomes smaller than the log size counter known by the agent. Important notes: The server and agent keep a trace of the monitored log's size and last modification time (for logrt) in two counters. It also makes possible creation of user friendly appliances. Simplify administration Properly configured network discovery can simplify administration of Zabbix system a lot. Log File Monitoring 10.8 Manual [Zabbix] http://www. Special note for “\” path separators: if file_format is “file\.<encoding>. etc. If host is lost after being up. SSH.<pattern>.3. the counter is reset to zero and the agent starts reading the log file from the beginning taking the time counter into account. How it works Network discovery basically consists of two phases: Discovery and Actions. 0 Comments 11. Overview Zabbix can be used for centralized monitoring and analysis of log files with/without log rotation support. Zabbix network discovery is based on the following information: IP ranges Availability of external services (FTP.<pattern>. IP.*_[0-9]{1. The agent starts reading the log file from the point it stopped the previous time. its status.2 IPv4 addresses are still processed by located fping.<encoding>. Support of changing environments Network discovery makes possible use of Zabbix in rapidly changing environments with no excessive administration.<max lines>] or logrt[path to log file with filename format.3.8/complete 2 Comments 10. Frequency of the check is configurable for each rule individually. to make sure it starts reading the log file from this point.100] or logrt["/home/user/filelog_. etc) Information received from Zabbix agent Information received from SNMP agent It does NOT provide: Discovery of network topology Every service and host (IP) checked by Zabbix network discovery module generates events which may be used to create rules for the following actions: Generating user notifications Adding and removing hosts Enabling and disabling hosts Adding hosts to a group Removing hosts from a group Linking hosts to a template Unlinking hosts from a template Executing remote scripts The actions can be configured to respect host or service uptime and downtime. If there are several matching files with the same last modification time in the directory. Each rule defines set of service checks to be performed for IP range.1."pattern_to_match". Zabbix Agent does not send more than maxlines of a log file per second. 11. since it is not possible to unambiguously define whether ”. 4 Comments 11. Discovery Zabbix periodically scans IP ranges defined in network discovery rules.2.8. If host is back after downtime or discovered for the first time. ICMP checks will fail for IPv4 devices as well. If all services are not responding. TCP.1. Only from 1.Zabbix 1. we discover a host or a service. its value type must be Log and key set to log[file. IMAP."UTF-8". Events generated by network discovery module have Event Source “Discovery”. Overview Zabbix provides effective and very flexible network discovery functionality. Service Discovered If the service is back after downtime or discovered for the first time. If at least one of the services is UP for the IP.

200.255. In our scenario we want to: discover only hosts having Zabbix Agent running run discovery every 10 minutes add host for monitoring if host uptime is more than 1 hour remove hosts if host downtime is more than 24 hours use Template_Windows for Windows hosts use Template_Linux for Linux hosts add Linux hosts to group “Linux servers” add Windows hosts to group “Windows servers” Step 1 Define network discovery rule for our IP range.192.168.168. List of supported checks: SSH. SNMPv1 Agent. Range of IP addresses for discovery.1.Zabbix 1. POP.255 by connecting to Zabbix Agents and getting value from system.1.4. For a description of all operations available for network discovery based events see operations.168.33 Range of IP addresses: 192. It won't be executed.168. Linux boxes to Linux_Template.1. Step 2 Define an action for adding newly discovered Linux servers.uname (Zabbix Agent's key we used in rule definition) contains “Linux” Uptime is more than 1 hour (3600 seconds) The action will execute the following operations: adds newly discovered host to group “Linux servers” (also adds host if wasn't added previously) links host to template “Template_Linux”. Step 4 Define an action for removing lost servers.4. NNTP.8/complete 11. Status Active – the rule is active and will be execute by Zabbix server Disabled – the rule is not active.1. 11.1-100.0/24 This parameter defines how often Zabbix should execute this rule. IMAP.2.55. TCP. When the rule is added. http://www.168.1-192. Parameters of network discovery rule: Parameter Name Description Name of the rule.168.168.1-192.uname key.1. Zabbix will automatically start monitoring of the host using items and triggers from “Template_Linux”.com/documentation/1. For example.192. FTP.168. ZABBIX Agent. SNMPv2 Agent.1-255.4. Zabbix will use this list of checks for discovery of hosts and services. Zabbix will try to discover hosts in IP range of 192.168. Real life scenario Suppose we would like to setup network discovery for local network having IP range of 192. 48 of 83 2010/9/17 下午 01:50 .2.168. LDAP.1.1. The action will be activated if: service “Zabbix Agent” is Up value of system.168. HTTP.8 Manual [Zabbix] For a description of all conditions available for network discovery based events see action conditions.192. SMTP. Step 3 Define an action for adding newly discovered Windows servers. It may have the following formats: Single IP: 192. For example.0/24 List: 192.1-255 IP mask: 192.zabbix.60-70 IP range Delay (in sec) Checks Uniqueness criteria may be: Device uniqueness criteria IP address (no processing multiple-IP devices) One of discovery check of the rule. Zabbix will automatically start discovery and generation of Discovery based events for further processing. Network discovery rule Network discovery rule is a rule used by Zabbix to discover hosts and services. SNMPv3 Agent Parameter Ports may be one of following: Single port: 22 Range of ports: 22-45 List: 22-45.5. “Local network”. Will be based either on a SNMP or Zabbix Agent check. The rule will be executed every 10 minutes (600 seconds). A value received from an agent can be used to apply different actions for different operating systems. link Windows boxes to Windows_Template.

1.3. Case sentitive.2.1.6.5391 HOST-RESOURCES-MIB::hrSWRunPerfMem.6.6.2.1. 13.1.1.1.2.1. 1."ifDescr".1. Also.1.1..3.1.1 1..2. 13.6.11 The number of subnetwork-unicast packets delivered to a higher-layer protocol.1.6. The current administrative state of the interface.2 1.2.6. Advanced SNMP Monitoring 12. ifInUnknownProtos 1. etc).1.1. A special syntax for item OID can be used in order to deal with dynamic data (random IDs of network interfaces.6. ifIndex is translated to 1.13 The number of inbound packets which were chosen to be discarded even though no errors had been detected to prevent their being deliverable to a higher-layer protocol.6. The type of interface.1.1.1. The interface's address at the protocol layer immediately `below' the network layer in the protocol stack. 1.7 1.3. can be executed manually from ZABBIX GUI See corresponding sections of the Manual for more details. specified in octets.3. Using dynamic indexes leads to more SNMP queries in Zabbix versions up to 1.2.This string should include the name of the manufacturer. The syntax: <base OID of data>["index".2. and other commands can be executed either automatically or manually from ZABBIX front-end.2. Currently one method is supported index – search for index and append it to the base OID The OID will be used to make a lookup for the string.6.2.2.1.2.1.2. subnetwork.3. including framing characters. a host must be configured to process IPMI commands.5377 HOST-RESOURCES-MIB::hrSWRunPerfMem.3.8 Manual [Zabbix] http://www.6. 1.2.2.1.6. 1.1.1.20 The number of outbound packets that could not be transmitted because of errors. Use of Proxies Zabbix Proxies may greatly simplify maintenance of Zabbix environment and increase performance of the central Zabbix server. Why use Proxy? Zabbix Proxy can be used for many purposes: Offload Zabbix Server when monitoring thousands of devices Monitor remote locations Monitor locations having unreliable communications Simplify maintenance of distributed monitoring 49 of 83 2010/9/17 下午 01:50 .1. IPMI actions Two types of actions can be defined: automatic actions. Use of dynamic indexes Dynamic indexes are supported since Zabbix version 1.5388 HOST-RESOURCES-MIB::hrSWRunPerfMem.5392 = = = = = = = INTEGER: INTEGER: INTEGER: INTEGER: INTEGER: INTEGER: INTEGER: 528 KBytes 528 KBytes 31468 KBytes 31740 KBytes 32116 KBytes 30420 KBytes 32560 Kbytes Dynamic indexes are cached since Zabbix version 1.10 The total number of octets received on the interface.3.1. 12.2.3.6. including those that were discarded or not sent.1.1.3.2.com/documentation/1.5377 HOST-RESOURCES-MIB::hrSWRunPath.5376 HOST-RESOURCES-MIB::hrSWRunPerfMem.5390 HOST-RESOURCES-MIB::hrSWRunPerfMem.2.2.1.1.2. Sun hardware.2. The size of the largest datagram which can be sent / received on the interface.6 1.5 1.15 The number of packets received via the interface which were discarded because of an unknown or unsupported protocol.2.1.2.Zabbix 1.2.1.1. use of Zabbix Proxies is the easiest way of implementing centralized and distributed monitoring.2.1.1.1.2. Special OIDs Some of the most used SNMP OIDs are translated automatically to a numeric representation by Zabbix.1.3.3.2. 1. Dynamic index lookup and data retrieval is performed in single connection since Zabbix version 1. 12.0.1.1.2.1. For example.2.1.2. 13.2.e.4 1.. including framing characters. getting memory usage of apache process: HOST-RESOURCES-MIB::hrSWRunPerfMem["index". Method of processing. 14.2. when all Agents and Proxies report to one Zabbix server and all data is collected centrally.1.2.. halt.2.2. which are executed automatically IPMI scripts.2.1.6.6.2.17 The total number of octets transmitted out of the interface. user name and password must be configured properly.2. 1. A textual string containing information about the interface.broadcast or subnetwork-multicast) packets delivered to a higher-layer protocol. HOST-RESOURCES-MIB::hrSWRunPath. One possible reason for discarding such a packet could be to free up buffer space.3. 1. One possible reason for discarding such a packet could be to free up buffer space.6. See configuration of hosts for more details.8/complete A server will be removed if service “Zabbix Agent” is Down for more than 24 hours (86400 seconds).1.1. distinguished according to the physical/link protocol(s) immediately `below' the network layer in the protocol stack.1.2.2.3.2. The current operational state of the interface.1.2.6.2.2. etc).2."<base OID of index>".1..1. 14.2.12 The number of non-unicast (i.3.1.3.19 The number of outbound packets which were chosen to be discarded even though no errors had been detected to prevent their being transmitted.0 is translated to 1.6.1.2.2.1. An estimate of the interface's current bandwidth in bits per second. Monitoring of IPMI devices 13.6.6.1. 1.2. The table contains list of the special OIDs.1. Another example. = = = = STRING: STRING: STRING: STRING: "/sbin/getty" "/sbin/getty" "/usr/sbin/apache2" "/sbin/sshd" Now we have index.5389 HOST-RESOURCES-MIB::hrSWRunPerfMem. shutdown.18 The total number of packets that higher-level protocols requested be transmitted to a subnetwork-unicast address.1. In order to use IMPI monitoring.3.2. to get the ifInOctets value for the GigabitEthernet0/1 interface on a Cisco device.3.6.2.2. Special OID ifIndex ifDescr ifType ifMtu ifSpeed ifPhysAddress ifAdminStatus ifOperStatus ifInOctets ifInUcastPkts ifInNUcastPkts ifInDiscards ifInErrors ifOutOctets ifOutNUcastPkts ifOutDiscards ifOutErrors ifOutQLen Identifier 1.1."HOST-RESOURCES-MIB::hrSWRunPath".2."GigabitEthernet0/1"] Parameter base OID of data index base OID of index Description Base OID to use for data retrieval. 1.1. IPMI agent's IP address.1. 1.zabbix.1."<string to search for>"] For example. string to search for The string is used for exact match with a value when doing lookup.2.21 The length of the output packet queue (in packets). ifIndex.3.5376 HOST-RESOURCES-MIB::hrSWRunPath. port number.5388 HOST-RESOURCES-MIB::hrSWRunPath.1.7.3.1.5. Goals There are several goals of Zabbix IPMI monitoring: Monitoring of health and availability of IPMI devices Remote IPMI based management functions Remote restart.1.2.1.5389 .1.7.2.8 Description A unique value for each interface.1.2. The index will be appended to the Data OID in order to receive value we are interested in: HOST-RESOURCES-MIB::hrSWRunPerfMem.2.14 The number of inbound packets that contained errors preventing them from being deliverable to a higher-layer protocol. "/usr/sbin/apache2"] .1.1.1.2. IMPI parameters ZABBIX IPMI monitoring works only for devices having IPMI support (HP iLO.2. use the following OID: ifInOctets["index".2.2.1.1. the product name and the version of the hardware interface.2.6.2.2.6.3 1.3.2.3.3.3. 5388.

3. Child Node will report to central node events. Proxy v.1. Central Node will have NodeID=1 while Child Node's NodeID=2 50 of 83 2010/9/17 下午 01:50 . No restart of any Node required.8/complete 14. 15. Child Nodes will optionally send the data to Master Node. the Proxy will perform gathering of performance and availability data for the host.1.e. Central Node will have total control over configuration of Child Node. Distributed Monitoring Zabbix can be configured to support hierarchical distributed monitoring. 15.zabbix. Configuration of Child Nodes can be done in off line mode. Lightweight GUI Works independently Easy maintenance Automatic DB creation Local administration Ready for embedded hardware One way TCP connections Centralised configuration Generates notifications Node No Yes Yes No Yes No Yes No Yes Yes No No Yes Yes Yes No Yes Yes No Proxy Yes 14. Zabbix won't keep trends of the node longer than N days. Historical information and events are stored locally. Goals There are several goals of the distributed monitoring: Get control of whole monitoring from a single or several locations Zabbix administrator may control configuration of all Nodes from a single Zabbix WEB front-end. Node can be configured either locally or by its Master node which has a copy of configuration data of all Child Nodes. Offload the overhead from busy Zabbix server Monitoring thousands of hosts using single Zabbix server? This may be for you! 15. When communication is back. Zabbix won't keep history of the node longer than N days.com/documentation/1. Node IP address. Local – Local node Remote – Remote node Time zone of the Node. Zabbix trapper must be listening on this IP address. 15. Zabbix trapper must be listening on this port number. Proxies can be created and deleted here. Opening proxy properties also allows to select which hosts should be monitored by that proxy. New Nodes can be attached to and detached from the Zabbix distributed setup without any loss of functionality of the setup.s. Do not keep history older than (in days) For non local historical data only. Node Port number. Each proxy also has last time listed when it contacted the server (either to send in new data or because of the heartbeat connection). when there are no connectivity between Master and Child Node. history and trends. 15. Zabbix automatically converts time stamps to local timezone when transferring time related data across nodes. Configuration 14.3. All Nodes may work even in case of communication problems. Each Node has its own configuration and works as a normal Zabbix Server.2. Unique Node ID. Hierarchical monitoring This is for monitoring of complex multi-level environments. Zabbix supports up-to 1000 (one thousand) Nodes in a distributed setup.3.3.3. Configuration 15.1.8 Manual [Zabbix] http://www.2. Default is 10051. Simple configuration Our simple configuration consists of a Central Node and a Child Node.3. Node When making a choice between use of a Proxy or a Node. Each Node is responsible for monitoring of its own Location. This is configured in host definition screen: If a host is configured to be monitored by a Proxy. Monitoring a host by a proxy Every host can be monitored either by Zabbix Server or by Zabbix Proxy. Monitor large complex environments This is especially useful when monitoring several geographical locations. Hierarchical distributed monitoring allows having tree-like structure of Nodes. Configuration of the whole distributed setup can be done from a single location via common WEB interface. Overview Zabbix provides effective and reliable way of monitoring distributed IT infrastructure. The data will be collected by the Proxy and sent to Zabbix Server for further processing. 14.Zabbix 1. Configuration of Nodes Parameters of a Node: Parameter Name Id Type Time zone IP Port Description Unique node name. i.2. Do not keep trends older than (in days) For non local trend data only. several considerations must be taken into account. Managing proxies Zabbix proxy management screen can be accessed by opening Administration → DM and choosing Proxies from the dropdown in the upper right corner.2. Each Node reports to its Master Node only.

. Node ID:1] For Child Node Step 1 Install Zabbix....... This option is not required to start Zabbix server! Step 4 Configure Node parameters. Conversion completed....168..conf Converting tables .............. This should be executed only once.... done......... Zabbix server has to be executed to convert unique IDs for use by first node. install Zabbix frontend and binaries. Port: 10051 Child Node IP: 192....8 Manual [Zabbix] Central Node will have NodeID=1..conf: NodeID=2 Step 3 Convert database data.. This option is not required to start Zabbix server! Step 4 Configure Node parameters..8/complete Step 3 Convert database data.Zabbix 1....... Step 2 Setup NodeID in server configuration file..5. Step 6 Start Master Node.. Zabbix server has to be executed to covert unique IDs for use by first node.168. 51 of 83 2010/9/17 下午 01:50 .3... install Zabbix frontend and binaries......com/documentation/1... Conversion completed.. Step 5 Add master node.............../zabbix_server -n 2 -c /etc/zabbix/zabbix_server.....2....conf: NodeID=1 http://www... Port: 15052 For Central Node Step 1 Install Zabbix. In file zabbix_server. Step 5 Add child node........ Step 6 Start Child Node.. Step 2 Setup NodeID in server configuration file.............zabbix. while Child Node s NodeID=2..conf Converting tables . done... Central Node IP: 192....3.. We should see NodeID in startup messages of server log file: 31754:20070629:150342 server #16 started [Node watcher. In file zabbix_server..... Follow standard installation instructions to create database.. cd bin .... This should be executed only once. Follow standard installation instructions to create database... cd bin ...../zabbix_server -n 1 -c /etc/zabbix/zabbix_server........

All information available in the GUI belongs to the selected node.3. Platform independence A node may use its own platform (OS. Riga (node 4) will collect events from all child nodes.4. Zabbix node will automatically start configuration and data exchange with all nodes in distributed setup.1.com/documentation/1. We should see NodeID in startup messages of server log file: 27524:20070629:150622 server #9 started [Node watcher.7.8/complete Does it work? Selection of active nodes will appear automatically after nodes are defined: Add host for monitoring for Child Node node and see events coming to Master Node: 15. Every 10 seconds. Step 4 Start Zabbix Node. 11656:20061129:171614 NODE 2: Sending data of node 2 to node 1 datalen 3522738 11656:20061129:171614 NODE 2: Sending data of node 2 to node 1 datalen 20624 . Step 3 Configure Master and Child Nodes. It displays current node.7.. Oracle or PostgreSQL backend. 52 of 83 2010/9/17 下午 01:50 .. In this example. 15. 15. Additional steps Step 1 Follow standard installation procedure. Start Zabbix Server: shell> .zabbix.. Zabbix database must be created and populated with data from data. Use Zabbix Frontend to configure details of Nodes having direct communication with the Node. Node ID:2] http://www.Zabbix 1. a list of available child nodes is accessible in right-upper corner of the GUI. Child to Master Each Child Node periodically sends configuration changes. Zabbix front end must be installed and configured. Make sure that all IP addresses and port numbers are correct. 15. Configuration of a single Node Every Node in distributed environment must be properly configured to have a unique Node ID. It may also optionally collect historical information as well. Data Events History Frequency Every 10 seconds./zabbix_server If everything was configured properly. Also child nodes can be installed without ZABBIX frontend. Add NodeID to Zabbix Server configuration file. Follow standard installation procedure but do not start Zabbix Server. NodeID must be a unique Node ID.. hardware) and database engine independently of other nodes. You may see the following messages in server log file: . It may be practical to use less powerful hardware with ZABBIX Server running SQLite or MySQL MyISAM while nodes of higher levels may use combination of a better hardware with MySQL InnoDB.8 Manual [Zabbix] Step 6 Start Child Node.conf. Trends are calculated locally based on received historical data. Data flow 15.3. Configuration changes Every 120 seconds. Each Node may be configured either locally (using local WEB interface) or from one of its Master Nodes. More complex setup The setup consists of seven Nodes. Switching between nodes When connecting to a node in distributed setup.5. Step 2 Configure zabbix_server. Child Node will resend data in case of communication problems.sql.6. 15. historical data and events to its Master Node.

1-255 warning_msg Informative message.S_ORIGINAL_BLUE). $cmbTheme->AddItem('css_bb. How it looks like The following screen will be displayed while in maintenance mode.zabbix. css_new. Goals There are several goals of the maintenance mode: Protect Zabbix database from any changes initiated by users Perform database maintenance Inform users about reason of the maintenance work Users from a range of IP addresses will be able to work with the GUI during the maintenance mode normally Automatic return to normal mode when maintenance is over 16. Data Frequency Configuration changes Every 120 seconds.conf.1.1. There are two pieces of code that have to be amended.$theme).1). into directory styles/. 15. // MSG showed on Warning screen! $_REQUEST['warning_msg'] = 'Zabbix is under maintenance. Firewall settings Inter-node communications use TCP protocol only.Zabbix 1.1.css.S_SYSTEM_DEFAULT). etc) exists only locally. Performance considerations Any node requires more processing resources in a distributed setup.2. For example. Step 3 Edit include/forms.0. file conf/maintenance.css and create new css_new.3. Feel free to share result of your work with Zabbix community if you created something nice.8/complete Zabbix does not send operational data across the nodes. 16. For example. $cmbTheme->AddItem(ZBX_DEFAULT_CSS. // IP range. Master to Child Each Master Node (a node with at least one child) periodically sends configuration changes to Child Nodes either directly or via other Child Nodes directly connected to the Master Node.3.inc. etc) sound alarm can be switched on and off in Status of Triggers view a new theme can be created to match your preferences or a company color schema 17. 15.8 Manual [Zabbix] http://www. Zabbix database can be stopped while Zabbix GUI is in the maintenance mode.1').8. WEB Interface There are several useful features of ZABBIX WEB interface: almost all screens support full-screen mode Ctrl + Mouse click make possible selection of multiple list elements (hosts. disabled otherwise Connections from these IP addresses will be allowed with no maintenance mode.php. Sending of Events and History can be controlled by configuration parameters NodeNoEvents and NodeNoHistory.css. item-related information (last check.0.S_BLACK_AND_BLUE). you may take Black&Blue CSS file from styles/css_bb. Creating your own theme By default.2.7. Zabbix provides number of predefined themes. items.7.css. ZBX_GUI_ACCESS_IP_RANGE For example: 192. Configuration In order to enable maintenance mode. search for css_bb. Modified code: 53 of 83 2010/9/17 下午 01:50 .css'. Open this file for editing. triggers. 16.'. thus protecting integrity of database. who allowed to connect to FrontEnd $ZBX_GUI_ACCESS_IP_RANGE = array('127. The screen is refreshed every 30 seconds in order to return to normal state withiout user intervention when maintenance is over. $cmbTheme->AddItem('css_ob. Zabbix does not send configuration of a Master Node to Childs. You may follow this step-by-step procedure in order to create your own. 17.css'. Maintenance mode for Zabbix GUI Zabbix GUI can be temporarily disabled in order to prohibit access to the front-end. Master Node must be powerful enough to process and store not only local data but also data received from its all Child Nodes. 15. Data flow Source port Destination port 10051 10051 Child to Master Any Master to Child Any This is default port used by Zabbix trapper process. Step 1 Create your own CSS file. Parameter ZBX_DENY_GUI_ACCESS Details Enable maintenance mode: 1 – maintenance mode is enabled. 16.php must be modified to uncomment the following lines: // Maintenance mode define('ZBX_DENY_GUI_ACCESS'. Step 2 Place the new CSS file into correct location.168. last value. This can be useful for protection of Zabbix database from any changes initiated by users.com/documentation/1. The file you created. The file can be based on existing CSS files coming with Zabbix. Network communications must be also fast enough for timely transfer of new data. Original code: $cmbTheme = new CComboBox('theme'.

1.css'.css'. MS Explorer or any other application. You should not omit apostrophes.in that case make sure to prefix it with S_. WEB scenarios configuration The screen is used to define parameters of an individual WEB scenario. It has the following format: {macro1}=value1 {macro2}=value2 For example: username=Alexei password=kj3h5kJ34bd The macros can be referenced as {username} and {password}. as that will result in warnings.8 Manual [Zabbix] http://www. In Zabbix GUI. 2. Status of the scenario: Active – the scenario is active Disabled – the scenario is disabled.S_BLACK_AND_BLUE). Frequency of execution of the WEB scenario. Agent Status Variables Steps 2. WEB step configuration The screen is used to define parameters of each individual step of the WEB scenario. $cmbTheme->AddItem('css_bb. but the new example uses string (enclosed in apostrophes). Zabbix will automatically replace them with actual values.1.css'. 54 of 83 2010/9/17 下午 01:50 . Zabbix will pretend that it is Firefox. List of variables (macros) that can be used in scenario steps (URL and Post variables).'MY_COOL_THEME'). Enjoy new look and feel! 2 Comments 2. Displayed data: Parameter Name Update interval Status Description Unique name of a WEB scenario. Unique name of the WEB scenario.css'. List of steps executed by the scenario: Name – step name Timeout – timeout URL – location to connect to Required – required string Status – step status Update interval (in sec) Frequency of execution of the WEB scenario.2. 2.zabbix. Note that disabled scenarios are not displayed by default. Configuration 2. Step 5 Activate new theme. Status of the scenario: Active – the scenario is active Disabled – the scenario is disabled. Note that original themes use constants.Zabbix 1.S_SYSTEM_DEFAULT). $cmbTheme->AddItem(ZBX_DEFAULT_CSS. Note that disabled scenarios are not displayed by default.8/complete $cmbTheme = new CComboBox('theme'.3. WEB The screen can be used to manage monitoring of WEB scenarios.S_ORIGINAL_BLUE).1. Useful when WEB site returns different content for different browsers. Number of steps Number of individual steps (HTTP requests) the scenario consists of.1. List of WEB scenarios It provides list of active WEB scenarios.1.com/documentation/1.'MY_COOL_THEME').php file: $combo_theme->addItem('css_new. If you want your theme name to be translatable. Step 4 You should also add your new theme to the config. you must add the constant used for name in locale files .$theme). Client agent string. Configuration parameters: Parameter Application Name Description Host application the scenario is linked to. $cmbTheme->AddItem('css_ob. $cmbTheme->AddItem('css_new. you may either set this theme to be a default one or change your theme in user profile.

List of expected HTTP codes. Host configuration The screen give access to host details. 55 of 83 2010/9/17 下午 01:50 .google. GET variables can be passed in the URL parameter.com/documentation/1. the step will fail. Hosts The screen is used to manage host related information. Host Status: Monitored – Host is active and being monitored Disabled – Host disabled Templates List of templates linked to the host. SNMP) availability: Availability Available – agent is up and running Unknown – agent is not available Error Any errors related to use of agent based checks. It is a very effective way of changing attributes for a number of hosts.1. List of Hosts The screen provides a list of monitored hosts. no check is performed.Zabbix 1.com List of POST variables.201. Host IP address if used.8 Manual [Zabbix] http://www. Status Agent (Zabbix. URL to connect and retrieve data. Displayed data: Parameter Description Name DNS IP Port Unique host name. otherwise the step will fail. If empty. Host mass-update screen The screen is accessible by selecting hosts and clicking on button “Mass update”. no check is performed. It is ignored by Zabbix if no agent used. Status codes If empty. Host DNS name if used. Hosts 2. For example: http://www. Zabbix will not spend more than Timeout second on processing the URL. Retrieved content (HTML) must contain this string.2.zabbix.zabbix. For example: 200. Required string. Zabbix Agent port number.8/complete Configuration parameters: Parameter Name URL Post Timeout Required Description Unique step name.210-299 2.com https://www.2. If Zabbix gets a code which is not in the list.

List of Templates The screen provides list of templates. Password for authentication. Ignored. triggers and graphs will be inherited from the templates.Zabbix 1. if empty. triggers and graphs Unlink and clear – unlink from template and remove all information inherited from the template Enable IMPI management functionality for this host. Zabbix server will use this setting to retrieve data from agents: DNS name – Connect to host DNS name IP address – Connect to host IP (recommended) Zabbix agent TCP port number. List of host groups the host belongs to. 2. Information about items. Displayed data: Parameter Description Name Template name. Status Link with template Use IPMI IPMI IP address IPMI port IPMI privilege level IPMI username IPMI password Use profile Use extended profile Enable or disable use of extended Host profile.8 Manual [Zabbix] http://www.2. User. Template configuration The screen give access to template details. triggers and graphs will be inherited from the templates. List of host groups the template belongs to.3. ready to be monitored Not monitored – Host is not active. Keep default setting here. Link template with one or more templates. Ignored. 56 of 83 2010/9/17 下午 01:50 . Configuration parameters: Parameter Name Groups New group Link with template Description Unique template name. User name for authentication. Proxies The screen is used to manage proxies.2. Optional host IP address. Port number of the IPMI device. thus not monitored Link host with one or more templates.com/documentation/1. but preserve information about items. New group can be created and linked to the template. Enable or disable use of Host profile. 2. Information about items.2. Default value is 10050. IP address of IPMI management device. Unlink – unlink from template. The host can be monitored either by Zabbix Server or one of Proxies: (no proxy) – host is monitored by Zabbix Server Proxy name – host is monitored by Proxy “Proxy name” Host status: Monitored – Host is active. Optional host DNS name. New group can be created and linked to the host. Templates List of hosts linked to this template.8/complete Configuration parameters: Parameter Name Groups New group DNS name IP address Connect to Port Monitored by proxy Description Unique host name.zabbix. Templates The screen is used to manage host templates. if empty. List of Proxies The screen provides list of proxies.

List of host group members.4. Proxy name Unique Proxy name. Configuration parameters: Parameter Hosts Description List of hosts monitored by this Proxy. Host group configuration The screen provides access to host group details.8 Manual [Zabbix] http://www.Zabbix 1.com/documentation/1. Displayed data: Parameter Description Name # Members Host Group name.zabbix. 57 of 83 2010/9/17 下午 01:50 . Number of group members (hosts). List of hosts monitored by this Proxy. The screen provides list of host groups.8/complete Displayed data: Parameter Name Members Description Unique Proxy name. Host groups The screen is used to manage host groups. 2.2. List of Host Groups. Proxy configuration The screen gives access to proxy details. Last seen (age) Last time we received a heart beat message or data from the Proxy.

Hosts List of hosts linked to the template.Zabbix 1. 2. 58 of 83 2010/9/17 下午 01:50 . Applications The screen is used to manage applications.8/complete Configuration parameters: Parameter Hosts Description List of hosts.6.2. Configuration parameters: Parameter Description Template Hosts Template name.2. 2. Template linkage The screen is used to manage host template linkage.zabbix. members of the group. Template linkage The screen give access to management of host template linkage. List of Applications The screen provides list of applications. Group name Unique host group name. List of hosts linked to the template.8 Manual [Zabbix] http://www. Displayed data: Parameter Description Templates Host template name.com/documentation/1.5. List of Templates The screen provides list of template and linked hosts.

59 of 83 2010/9/17 下午 01:50 . 2.com/documentation/1. also displays number of items (members of the application). Must be unique within one host. Configuration of application The screen give access to management of applications. It is very effective way of changing attributes of a number of items.3. Number of days Zabbix keeps detailed historical data. Items The screen is used to manage item related information. Unique item key. Host name the application is linked to. Show Link to host items.8 Manual [Zabbix] http://www. Update interval Frequency of the check. Item mass-update screen The screen is accessible by selecting items and clicking on button “Mass update”. Items 2.8/complete Displayed data: Parameter Description Application Application name. Any errors related to this item.Zabbix 1. Item type. List of Items The screen provides list of items linked to a host. Displayed data: Parameter Description Key History Trends Type Status Applications Error Description Item description (name).3.1. Item status.zabbix. Number of days Zabbix keeps trends data. List of applications the item belongs to. Configuration parameters: Parameter Description Name Hosts Application name.

1-5. Item key. Delta (simple change) – evaluate as (value-prev_value). Text – text of unlimited size The data type is used for integer items in order to specify expected data type.” It begins with six character positions for PID. …. and some units have special processing: b. It may contain this macros: $1.com/documentation/1. Since Zabbix 1.7 . however Zabbix may try to periodically set status of such items to Active if configured.09:00-18:00. Do not use .2. s – translated to “yyymmmdddhhhmmmsss”. Value mapping does not change received values. only is shown “1m5d” (no hours. where value – current value value_prev – previously received value Apply value mapping to this item. then follow date. Keep aggregated (hourly min. See sections below for detailed description of each type.1 Zabbix supports the following unit prefixes: 60 of 83 2010/9/17 下午 01:50 .09:00-18:00 – refresh set to 10 seconds for working hours. M and G). Older data will be removed by Housekeeper. if key type is Zabbix Agent. and the rest of the line. It works with integer items only.8.fs. or Zabbix aggregate.hh:mm-hh:mm. and special processing is used for units B.$2. max. Till Zabbix 1. This item will not be processed. Zabbix will display: 1 as 1B 1024 as 1KB 1536 as 1.5KB unixtime – translated to “yyyy. minutes or secondsare shown).8. default multiplier is 1000.… ninth parameter of item key For example: Free disk space on $1 If item key is “vfs. default multiplier is 1024. time. Decimal – data in decimal format Octal – data in octal format Hexadecimal – data in hexadecimal format Zabbix will automatically perform conversion to numeric. etc into B. Zabbix will process this item.6-7. Simple check. If multiple flexible intervals overlap.dd hh:mm:ss” uptime – translated to “hh:mm:ss” or “N days.8. This item will not be processed.8/complete Click on a parameter you would like to change. For example. bps . Link item to one or more applications. Log time format for this line would be “pppppp:yyyyMMdd:hhmmss”. Zabbix Agent (active). Bps. consider the following line from Zabbix agent log file: ” 23480:20100328:154718. Period format: dd-dd. it is for displaying data only.Sunday Keep detailed history for N days in the database. For example. second. List of exceptions for Update Interval. If set. special processing for bits.8. Item attributes: Parameter Description Item description. Multiply all received value by this integer or floating-point value.10:00-12:00 1 .8. like 1m3w5d or 2h4m46s. Not supported – item is not supported by Zabbix or SNMP agent.free]”. parameter is treated as number of seconds.active (normal) status.hh:mm-hh-mm For example. Description Type Key Type of information Data type Units Use multiplier Custom multiplier Update interval (in sec) Refresh this item every N seconds. Select hosts you would like to copy items and press “Copy”. Available for items of type Log only.size[/.dd-dd. Active . Otherwise default update interval will be used. hh:mm:dd”. if units are set to B. parameter is treated as number of seconds since 01/01/1970.8 Manual [Zabbix] http://www. This is supported starting from version 1. Copy selected to… The screen makes possible copy of a selected item to a number of hosts. Type of data as stored in the database after performing conversions.045 Zabbix Agent started. the description will be automatically changed to “Free disk space on /” Item type. The key must be unique within a single host. Flexible intervals Keep history (in days) Keep trends (in days) Status Store value Show value Log time format Applications Until version 1. Item configuration The screen provides access to configuration of a single item.1000 is 1K. Numeric (unsigned) – 64bit unsigned integer Numeric (float) – floating point number Character – character (string) data limited to 255 bytes Log – log file.…$9 – first. For example: 10 sec.Monday. enter new value and press “Save”. where value – current value value_prev – previously received value time – current timestamp prev_time – timestamp of previous value This setting is extremely useful to get speed per second based on constantly growing value. The key value must be supported by an agent or Zabbix server. avg.2 (revision 11211). Otherwise Zabbix cannot correctly set prefixes (K. the smallest Delay value is used for the overlapping period. count) detailed history for N days in the database. If there are no weeks to display. Supported placeholders: * y: Year (0001-9999) * M: Month (01-12) * d: Day (01-31) * h: Hour (00-23) * m: Minute (00-59) * s: Second (00-59) Leaving this field blank means don't try to parse the timestamp. For example. where multiplier is 1024. “Windows service states”. As is – no pre-processing Delta (speed per second) – evaluate value as (value-prev_value)/(time-prev_time). Older data will be removed by Housekeeper.do not pre-process received values Custom multiplier – multiply received values by value defined in Custom multiplier Use this option to convert values received in KB. Zabbix will add prefix if required and the unit postfix to all received values. Disabled – item is disabled. Must be set for keys log[].2.mm. Pre-process received values. if any.zabbix. Note that “p” and ”:” chars are just placeholders and can be anything other than “yMdhms”. 1-5. Zabbix 1.Zabbix 1. Only 3 upper major units are shown. MBps.

additionally supported prefixes include: P (Peta). Copy selected to… The screen makes possible copy of a selected trigger to a number of hosts.Zabbix 1. M (Mega). It is very effective way of changing attributes of a number of triggers. 61 of 83 2010/9/17 下午 01:50 . List of Triggers The screen provides list of triggers linked to a host. See more details about items in other sections of the Manual.zabbix. Trigger status. 2. Displayed data: Parameter Description Severity Status Name Coloured trigger severity. G (Giga). Trigger name. Triggers 2.4. Select hosts you would like to copy items and press “Copy”. Triggers The screen is used to manage triggers.8 Manual [Zabbix] http://www. Since version 1.4.2.com/documentation/1. T (Tera). E (Exa).8/complete K (Kilo). Trigger configuration The screen provides access to configuration of a single trigger. Trigger mass-update screen The screen is accessible by selecting triggers and clicking on button “Mass update”. enter new value and press “Save”. Z (Zetta). Note that Disabled triggers are hidden by default. Click on a parameter you would like to change. Expression Trigger expression. Y (Yotta).8.1.

Operations List of operations for execution. See also more information about triggers. The trigger depends on List of triggers the trigger depends on. Displayed data: Parameter Description Name Action name.5. Actions The screen is used to manage actions. Logical expression used for calculation of trigger state. List of Actions The screen provides list of actions. contact detail of responsible staff.Zabbix 1. 2. Text field used to provide more information about this trigger.com/documentation/1. Add new dependency. the URL is used in the screen 'Status of Triggers'. on trigger status change Normal + Multiple PROBLEM events (Multiple TRUE events in 1. Normal – events are generated normally.8/complete Trigger attributes: Parameter Name Expression New dependency Event generation Severity Comments URL Disabled Description Trigger name. May contain instructions for fixing specific problem.2 and before) – events are also generated on every PROBLEM evaluation of the trigger Trigger severity. Trigger can be disabled if required.zabbix. Status Status of the action. Action configuration The screen provides access to configuration of a single action. Conditions List of conditions for this action.5.8 Manual [Zabbix] http://www.8. Actions 2. If not empty. More configuration options are available if escalation is enabled: 62 of 83 2010/9/17 下午 01:50 . etc. The name may contain macros.1.

Display legend. conditions and operations in other sections of the Manual. Graph height in pixels.zabbix. non-working hours will be shown with gray background. maximum value will be automatically calculated. etc. List of graph elements (items) to be displayed for this graph. Exploded – exploded pie graph.6.8/complete See more details about configuration of actions.Zabbix 1. Type of Y axis: Calculated – Y axis value will be automatically calculated Calculated [min=0] – Y min value is set to 0. Graph element: 63 of 83 2010/9/17 下午 01:50 .com/documentation/1. Text field used to provide more information about this trigger. Graph height in pixels. Graphs The screen is used to manage custom graphs. 2. Graph type: Normal – normal graph. Graph width in pixels. Stacked – stacked graph. Pie – pie graphs. Normally used for displaying 95% percentile.8 Manual [Zabbix] http://www. If selected. contact detail of responsible staff. Display percentile for left Y axis. List of Graphs The screen provides list of graphs. Displayed data: Parameter Description Name Width Height Graph name. Graphs 2. simple triggers will be displayed as red lines. Normally used for displaying 95% percentile.1. Graph type Show working time Show triggers Percentile line (Left) Comments Y axis type 3D view Legend Items Percentile line (Right) Display percentile for right Y axis. For Pie graphs only. May contain instructions for fixing specific problem. Fixed – fixed min and max value for Y axis. If selected. Graph width in pixels. For Pie graphs only. values displayed as lines.6. Graph type: Normal Graph type Stacked Pie Pie exploded Graph configuration The screen provides access to configuration of a single custom graph. Graph attributes: Parameter Name Width Height Description Unique graph name. Enable 3D style.

64 of 83 2010/9/17 下午 01:50 .com/documentation/1. Screens 2. Screen configuration (high-level) The screen provides access to configuration of a single screen.1.Zabbix 1. Parameter Name Description Screen name.zabbix. Dimension (cols x rows) Screen size. 0 will be processed first. Screen high-level attributes: Parameter Description Name Columns Unique screen name. number of columns and rows. which will be displayed. List of Screens The screen provides list of screens. Draw order. used when more than one value exists for a single pixel (X-coordinate): All – all (minimum.7. Screens The screen is used to manage screens. Number of columns in the screen. Type: Simple Aggregated What values will be displayed. average and maximum) Min – minimum only Avg – average only Max – maximum only Draw style: Line – draw lines Filled region – draw filled region Bold line – draw bold lines Dot – draw dots Dashed line – draw dashed line RGB color in HEX notation. What Y axis side the element is assigned to.7.8 Manual [Zabbix] http://www. Function Draw style Color Aggregated periods count Y axis side Sort order (0→100) 2.8/complete Attributes of a graph element: Parameter Parameter Type Description Selection of host item.

zabbix.8. Screen high-level attributes: Parameter Description Information displayed in the cell: Clock – digital or analog clock displaying current server or local time Data overview – latest data for a group of hosts Graph – single custom graph History of actions – history of recent actions History of events – latest events Hosts info – high level host related information Map – single map Plain text – plain text data Screen – screen (one screen may contain other screens inside) Server info – server high-level information Simple graph – single simple graph Triggers info – high level trigger related information Triggers overview . same way as HTML row spanning works. Click on a screen element (cell) to change what information should be displayed in the screen cell.8/complete Rows Number of rows in the screen.1. same way as HTML column spanning works.Zabbix 1.8.com/documentation/1. Resource Horizontal align Vertical align Column span Row span 2. Maps 2. 65 of 83 2010/9/17 下午 01:50 .8 Manual [Zabbix] http://www. Map height in pixels. Maps The screen is used to manage user-defined maps. List of Maps The screen provides list of maps. Screen configuration (screen elements) The screen provides access to configuration of a single screen giving access to configuration of all elements. Displayed data: Parameter Description Name Width Height Map name Map width in pixels. Extend cell to a number of rows.status of triggers for a host group URL – include content from an external resource Possible values: Center Left Right Possible values: Middle Top Bottom Extend cell to a number of columns.

If element has an active trigger. host group or another map) has a single problem. or problem count. If element status is “disabled” or “in maintenance”.8/complete Map configuration (high-level) The screen provides access to configuration of a user-defined screen. Map width in pixels. For upgrades from previous installations it is enabled by default on all maps.8 Manual [Zabbix] http://www.Zabbix 1.no icon labels are displayed Display icon label on: Bottom – bottom (under the icon) Left – left side Right – right side Top – top of the icon Icon label type Icon label location Map configuration (configuration of map elements) The screen provides access to configuration of map icons and links. Map elements will receive highlighting. This option is available since Zabbix 1. having same colour as the highest severity trigger. Use background image: No image – no background image (white background) Image – selected image to be used as a background image.1. problem name is used. This option is available since Zabbix 1.com/documentation/1. Label type used for all map icons: Label – icon label only IP address – IP address only Element name – element name (for example. Map high-level attributes: Parameter Name Width Height Background image Icon highlighting Expand single problem Description Unique map name. square background will be used.8. If marked. this option controls whether problem (trigger) name is printed. 66 of 83 2010/9/17 下午 01:50 .8. host name) Status only – status only (OK or PROBLEM) Nothing .zabbix. List of map elements (icons): List of links: Configuration of map element The screen provides access to configuration of a single map element. round background will be used. Map height in pixels. If a map element (host. No scaling is performed.

In case if a trigger has status PROBLEM.9. Icon to be used in case of problems (one or more). its style is applied to the link. Type Label Label location Host Map Trigger Host group Icon (ok) Icon (problem) Icon (disabled) Coordinate X Coordinate Y URL Icon (unknown) Icon to be used in case of problems (one or more).1. Type (OK) Colour (OK) 2. Status of this triggers will be used. Macros and multi-line string can be used in labels starting from version 1. List of IT Services The screen provides list of IT Services. Configuration of a link The screen provides access to configuration of a link.8 Label location: Default – Map's default label location Bottom – bottom (under the icon) Left – left side Right – right side Top – top of the icon Status of triggers of this hosts will be used.com/documentation/1. IT Services 2. Default link style: Line – single line Bold line – bold line Dot – dots Dashed line – dashed line Default link colour. 67 of 83 2010/9/17 下午 01:50 . Map link attributes: Parameter Label Element 1 Element 2 Description Label that will be rendered on top of the link. You can use macros here.Zabbix 1. the URL will be used when an user clicks on the screen element. Displayed data: Parameter Service Description Service name. Y coordinate for the map element. Status of all triggers of this host group will be used. Icon to be used when no problem exists. Status of all elements of this map will be used. Second element that link connects. IT Services The screen is used to manage IT Services. any string. If set.8/complete Map element attributes: Parameter Description Type of the element: Host – icon representing status of all triggers of the selected host Map – icon representing status of all elements of a map Trigger – icon representing status of a single trigger Host group – icon representing status of all triggers of all hosts belonging to Image – just an icon not linked to any resources Icon label. First element that link connects. X coordinate for the map element.9.8 Manual [Zabbix] http://www. Link status indicators List of triggers linked to the link. Status calculation How the service updates its status.zabbix. Icon to be used if the selected host is disabled.

lowest comes first. Service state within this period does not affect SLA. it cannot be changed.10. Service times: One-time downtime – a single downtime. Discovery 2.8/complete Trigger Linked to a trigger: none – no linkage trigger name – linked to the trigger.8 Manual [Zabbix] http://www. Frequency in seconds. 2.Zabbix 1. thus depends on the trigger status IT Service configuration The screen provides access to configuration of IT services. SLA percentage for this service.10. List of child services the service depends on. all service operates 24x7x365. For reference only. List of checks executed by the discovery rule. How to calculate status of the service: Do not calculate – do not calculate service status Problem. Status of the discovery rule: Active – the rule is active Disabled – the rule is disabled Discovery rule configuration The screen provides access to configuration of a discovery rule. By default. Displayed data: Parameter Description Name IP range Delay Checks Status Name of discovery rule.com/documentation/1. Uptime – service uptime Downtime – Service state within this period does not affect SLA. Range of IP addresses affected by the discovery rule. Display sort order. Parent service. IT Service attributes: Parameter Name Parent service Depends on Status calculation algorithm Calculate SLA Acceptable SLA (in %) Service times New service time Link to trigger Sort order Description Service name. Discovery The screen is used to manage discovery rules.zabbix.1. 68 of 83 2010/9/17 下午 01:50 . Add new service times to make exceptions. if all children have problems – consider problem if all children have problems Select to display SLA data. if it least one child has a problem – consider problem if at least one child service has a problem Problem. Services of the lowest level must be linked to triggers. It is used for reporting. List of discovery rules The screen provides list of discovery rules.

168. POP. Export The screen is used to export hosts. FTP.1-255. Import The screen is used to perform XML import of host related data. SNMPv3 Agent SLA percentage for this service. List of supported checks: SSH. It is used for reporting. Select to export host triggers.60-70 Status of the discovery rule: Active – the rule is active Disabled – the rule is disabled Status 2. TCP.11.33 Range of IP addresses: 192. Select to export host graphs.168. NNTP.1. Preview page: 2. Format: Single IP: 192.11. Zabbix Agent.1-100.168. This parameter may be one of following: Single port: 22 Range of ports: 22-45 List: 22-45.com/documentation/1.192.2.8 Manual [Zabbix] http://www.2.168. LDAP. Displayed data: Parameter Description Name DNS IP Port Status Items Triggers Graphs Host name.Zabbix 1.zabbix. IP address of Zabbix agent. items.11.168. Host DNS name.1.55. Select to export host items. Templates Select to export template related information. triggers and graphs. Export The screen provides list of hosts and their elements for export. SNMPv1 Agent.1. then press “Preview” or “Export”. Host status. Export/Import 2. SNMPv2 Agent. Zabbix agent port number. SMTP.192. HTTP.2. IMAP.1. 69 of 83 2010/9/17 下午 01:50 .8/complete Discovery rule attributes: Parameter Name Description Unique name of the discovery rule.200 This parameter defines how often Zabbix should execute this rule in seconds. Select elements you would like to export. Who performs discovery: Discovery by proxy (no proxy) – Zabbix Server is doing discovery proxy name – This proxy performs discovery IP range Delay (seconds) Checks New check Port Range of IP addresses for discovery.1-255 List: 192.

17.8 Manual [Zabbix] http://www. 17.8/complete Discovery rule attributes: Parameter Description Import file XML file to import.3.1.Zabbix 1. Mac count of events per trigger to show Maximum number of event to show for each trigger in Status of Triggers screen. Older actions will be removed. jabber.3. Images List of images 70 of 83 2010/9/17 下午 01:50 .1. 2 Comments 17. SMS. General 17.3.3. The process removes outdated information and information deleted by user. Do not keep events older than (in days) This parameter defines how many days of events history Zabbix will keep in the database. Default is 7 days.1. Set of rules for each type of element: Existing – what to do if element already exists Missing – what do to if element is missing Possible actions: Update – update existing element Add – add element Skip – do not process new data Rules Press “Import” to import selected file.zabbix.2.3. etc) history Zabbix will keep in the database. Configuration parameters: Parameter Description Do not keep actions older than (in days) This parameter defines how many days of executed actions (emails.3. Administration 17. Events This screen defines event related settings.com/documentation/1. Housekeeper The Housekeeper is a periodical process which is executed by Zabbix Server. Default is 100.1. Configuration parameters: Parameter Event acknowledges Show events no older (Days) Description This parameter defines if event acknowledges are activated in Zabbix interface. This parameter defines for how many days event are displayed in Status of Triggers screen.1. Older events will be removed.

Value mapping Value maps are used to create a mapping between numeric values and string representations. For example. JPEG) to be uploaded to Zabbix Note that you may upload image of any size. 17.8/complete Image definition Zabbix images are stored in the database.zabbix. 17. an item which has value ‘0’ or ‘1’ can use value mapping to represent the values in a human readable form: ‘0’ ⇒ ‘Not Available’ ‘1’ ⇒ ‘Available’ Value mapping can be used only for items having type ‘Unsigned integer’. Themes Zabbix support themes. Value mappings are used for representation of data in both Zabbix front-end and information sent by email/jabber/SMS/whatever.com/documentation/1.5MB may not be displayed in maps.Zabbix 1.1.ini if you have this problem.1.3. Value mapping definition 71 of 83 2010/9/17 下午 01:50 . Backgrounds are used as background images of System Maps. which are used to customize look and feel of Zabbix front-end. An user may override the default theme in user profile. Image attributes: Parameter Description Name Type Upload Unique name of an image.8 Manual [Zabbix] http://www.4. Either Icon or Background Name of local file (PNG. however images bigger than 1.5. Increase value of max_memory_size in php.3. Default theme is “Original blue”. Possible parameters: Parameter Description Default theme Theme used for all users. There are two types of images: Icon Background Icons are used in for displaying System Map elements.

Zabbix can be configured to periodically make unsupported items active. Note that an user must exist in Zabbix as well.1. a special Zabbix server process. 2 – Tuesday . 17. Parameter Refresh unsupported items (in sec) Description Zabbix will activate unsupported item every N seconds.… .2. is created in order to alarm Zabbix administrators in case of disaster. Working time is displayed as a white background.3.3. 72 of 83 2010/9/17 下午 01:50 .1.hh:mm-hh:mm. Until Zabbix version 1. Database watchdog Availability of Zabbix server depends on availability of back-end database very much.zabbix. it is supported for all databases. The authentication will be used to check user names and passwords. It cannot work without a database.3. while non-working time is displayed as grey. If set to 0.6-7. Database watchdog.1.3. New mapping Single mapping for addition.2.2. Since 1.8 Manual [Zabbix] http://www. 7 – Sunday Hours: 00-24 Minutes: 00-59 Empty format is equal to 01-07. The Administration Tab is available to users of type Super Administrators only.2 database watchdog is supported for MySQL only.hh:mm-hh:mm. HTTP The screen can be used to enable Apache based (HTTP) authentication. Working time Working time is system-wide parameter which defines working time. however his Zabbix password will not be used.8. Zabbix server will not stop. Working time has the following format: dd-dd. it will wait until the database is back again to continue processing.8/complete Parameters of a value mapping: Parameter Name Mapping Description Unique name of set of value mappings. This is not configurable for Proxies.8. 17. the automatic activation will be disabled.6. Other Refresh unsupported items Some items may become unsupported due to errors in User Parameters or possible an item is not supported by an agent. Currently this is used for graphs only.… Format Description dd hh mm Day of week: 1 – Monday.00:00-23:59 For example: 1-5.10:00-16:00 17. Proxies check unsupported items every 10 minutes. Authentication 17. The watchdog will send notifications to a user group in case if the database is down. Set of mappings.09:00-18:00 1-5.dd-dd.Zabbix 1. User group for database down message User group for sending alarm message or ‘None’.com/documentation/1.09:00-18:00.7.

Some user groups can still be authorised by Zabbix. For example: ldap://ldap.2. i. Status Actions User configuration The screen provides user details and gives control to change user attributes.com For secure LDAP server use ldaps protocol ldaps://ldap. The user is ignored by Zabbix.zabbix.zabbix. Name of a test user.com/documentation/1. one of following: Zabbix User Zabbix Admin Zabbix Super Admin List of all group the user belong to.3. HTTP Authentication. Displayed data: Parameter Description Alias Name Surname User type Groups Is online? GUI Access User short-name. Be careful! Make sure that Apache authentication is configured and works properly before switching it on.3.e.com Port of LDAP server.ou=system Password for binding to the LDAP server.3. Zabbix LDAP authentication works at least with Microsoft Active Directory and OpenLDAP.zabbix. Note that an user must exist in Zabbix as well.8/complete Configuration parameters: Parameter Description HTTP Authentication Enabled This parameter defines if Apache based authentication is enabled. 17. LDAP Authentication Internal – the user is authenticated by Zabbix regardless of system settings Disabled – GUI access is restricted to this user User status.ou=system uid uid=Admin. The authentication will be used to check user names and passwords. not by Zabbix! 17. Configuration parameters: Parameter LDAP Host Port Base DN Search Attribute Bind DN Bind Password Test Authentication Login User Password Description Name of LDAP server. User name.Zabbix 1. Is user online. User surname. depends on settings of user groups: System default – Zabbix. ou=Users. For secure LDAP connection port number is normally 636. login name.2. User type. The user must exist in LDAP. depends on settings of user groups: Enabled – the user is active Disabled – the user is disabled. Zabbix will not activate LDAP authentication if it is unable to authenticate the test user. LDAP Authentication Enabled Enable LDAP authentication.1. Default is 389. LDAP The screen can be used to enable external LDAP authentication. LDAP password of the test user. List of users It provides list of users.8 Manual [Zabbix] http://www. These groups must have GUI Access set to Internal. In case of Apache authentication all users (even with GUI Access set to Internal) will be authorised by Apache. however his Zabbix password will not be used.3.3. Access to GUI. 73 of 83 2010/9/17 下午 01:50 . Users The screen can be used to manage Zabbix users. Users 17.

plain text data.Zabbix 1. 17.3. etc. Auto-logout (0 . It is impossible to change user rights here. screens.8 Manual [Zabbix] http://www.e. the rights depend on user group membership! The information is available read-only. Browser cookies are used for this.use system settings Original Blue – standard blue theme Black & Blue – alternative theme Enable if you want Zabbix to remember you. Must be unique! User name. Enabled – users are active Disabled – all users of the group are disabled Displays how the users are authenticated.com/documentation/1.zabbix. Must be unique. one of following: Zabbix User – access to Monitoring tab only. i. The medias are used by Zabbix for sending notifications. List of all group the user belong to.disable) User will be logouted after N seconds if inactivity. List of all medias.8/complete Configuration parameters: Parameter Alias Name Surname User type Groups Media Language Theme Auto-login (1 month) URL (after login) Refresh (in seconds) Description User short-name. User type.3. Zabbix Admin – access to Monitoring and Configuration tabs. Click on User Rights Show to display user rights. login name. Displayed data: Parameter Description Name User status Host group name. Set it to 0 to disable auto-logout. Can be set to 0 to disable. System default – use default authentication Internal – use Zabbix authentication Disabled – access to Zabbix GUI is forbidden List of group members GUI Access Members User group configuration 74 of 83 2010/9/17 下午 01:50 . List of user groups It provides list of user groups. Make Zabbix to transfer you to the URL after successful login. Zabbix Super Admin – access to everything. User surname. Refresh used for graphs. Language of Zabbix GUI. including Administration tabs. Defines how the GUI looks like: System Default . User Groups The screen can be used to manage Zabbix user groups.2.

Displayed data: Parameter Description Media type: Email – email notification SMS – SMS notifications sent using serial GSM modem Jabber – Jabber notification Script – script based notification Configuration details.4.Zabbix 1.1. Media types 17. System default – use default authentication Internal – use Zabbix authentication Disabled – access to Zabbix GUI is forbidden Group name Unique group name.3. List of media types It provides list of media types.com/documentation/1. Media type is a delivery method for user notifications.8/complete Configuration parameters: Parameter Users GUI Access Description List of members of this group.3. Status of group members: Users Status Enabled – users are active Disabled – users are disabled Rights Three lists for different host permissions: Read-write – host groups with read-write access Read-only – host groups with read-only access Deny – host groups with deny access Click on User rights (Show) to see what permissions the user group has: 17. Details Media configuration The screen provides user details and gives control to change media attributes.8 Manual [Zabbix] http://www. Type Description Name of the media. How the users of the group are authenticated. 75 of 83 2010/9/17 下午 01:50 . Media types The screen can be used to manage Zabbix media types. depends on media type.4.zabbix.

Command to be executed. User group The script is available to members of the user group only. Configuration parameters: Parameter Name Description Unique script name. The command will run on Zabbix Server side.user must have read permission for the host to execute the script Write .Zabbix 1.serial device name of GSM modem Jabber – Jabber notification Jabber Identifier . Command User group The script is available to members of the user group only.Jabber ID Password – Password of the Jabber ID Script – script based notification Script name .user must have write permission for the host to execute the script.CONN} A special syntax for IPMI commands must be used: IPMI <ipmi control> [value] For example: IPMI power off The script is available for hosts of the host group only.8/complete Configuration parameters: Parameter Description Description Unique media name. The scripts are executed on Zabbix Server side even for hosts monitored by a proxy.5. The following macros are supported here: {HOST.user must have read permission for the host to execute the script Write . Read .3.zabbix.8 Manual [Zabbix] http://www.server name SMTP Hello – Hello string. Displayed data: Parameter Name Command Host group Host access Description Unique script name. Type Media type: Email – email notification SMTP Server . normally domain name SMTP Email – sender email address SMS – SMS notifications sent using serial GSM modem GSM Modem .user must have write permission for the host to execute the script.3. Host group Host access 17. Zabbix user may execute a script from the front-end by clicking on host from certain screens. Script configuration The screen provides script details and gives control to change script attributes. Audit The screen can be used to see front-end audit records and list of notifications sent to users. which will be executed on user request. Audit logs 76 of 83 2010/9/17 下午 01:50 .com/documentation/1.6. Scripts The screen can be used to manage user-defined scripts. List of scripts It provides list of scripts known to Zabbix. The script is available for hosts of the host group only.name of the custom script 17. Full path to a command.DNS} {IPADDRESS} For example: /bin/ping-c 3 {HOST. Depending on permission. Read .CONN} {HOST.

Error if the notification was not sent. which was affected: Application Graph Host Item User Performed action: Added Login Logout Removed Updated More detailed information about action.8/complete Displayed data: Parameter Description Time User Time stamp when an action took place. Message used in notification. User name.zabbix. Data is delayed for 5-10 minutes.com/documentation/1. Object. 77 of 83 2010/9/17 下午 01:50 . Displayed data: Parameter Time Type Description Time stamp when an action took place. Resource Action Details Audit actions The screen provides access to history of notifications and remote commands. More than 10 minutes Data is delayed for more than 10 minutes. Type of executed operation: Notifications Remote command Status: Not sent Sent Number of retries left. 17. Overview by proxy The view gives more detailed information about performance of Zabbix Server and Proxies. Data is delayed for 1-5 minutes.Zabbix 1. Data is delayed for 10-30 seconds.3. Queue The Queue provides information about performance of Zabbix. Data is delayed for 30-60 seconds. Overview For each item type the following data is displayed: Parameter Items 5 seconds 10 seconds 30 seconds 1 minute 5 minutes Description Item type Data is delayed for 5-10 seconds.7. Status Retires left Message Error Recipient(s) List of recipients.8 Manual [Zabbix] http://www.

17. The time stamps will always be in the past.8/complete For each Proxy and local Zabbix Server the following data is displayed: Parameter Description Proxy Proxy name or Server. Host Host name. 78 of 83 2010/9/17 下午 01:50 .com/documentation/1. shows statistics about local server. Locale selection Select locale you'd like to select for further processing. displayed last.zabbix. Details The view gives very detailed information about delayed items.Zabbix 1. Locales Locales provides functionality for easy editing of translations of Zabbix front-end.9. 17. For each user number of notifications is displayed per each media type. Notifications This is report on number of notifications sent to each user grouped by media types.3. Description Item name. Server.3.8 Manual [Zabbix] http://www.8. List of items is displayed with the following details: Parameter Description Next check Expected time stamp of next data retrieval.

Do not add – if something is not translated. IDE) is able to collect more than 200 parameters per second from servers being monitored (assuming no network delays).54a-4. then number of monitored servers can be increased even up to 5x-10x times. Every additional instance of zabbix_server adds known overhead.0.8 Manual [Zabbix] http://www.1. Operating System Use latest (stable!) version of OS Exclude unnecessary functionality from kernel Tune kernel parameters 18. These calculations made in assumption that all monitored values are retrieved as soon as required (latency is 0). 18. 18. leave translation empty Fill with default value – if something is not translated. Translation form This form is used to translate phrases used in Zabbix front-end. each server you monitor has ten parameters to watch for.Zabbix 1.5Ghz. press button “Download” to have translation file.2. Suppose. Doing simple calculation. Hardware General advices on hardware: Use fastest processor available SCSI or SAS is better than IDE (performance of IDE disks may be significantly improved by using utility hdparm) and SATA 15K RPM is better than 10K RPM which is better than 7200 RPM User fast RAID storage Use fast Ethernet adapter Having more memory is always better 18. 1 Comment 18. 17. zabbix_server StartPollers General rule .2. Left side is filled with default language. 256Mb. Performance Tuning 18.0 installed (RedHat Linux 8. If this is not a requirement. In case if these parameters need to be updated once in a minute. Once translation is ready. in the same time.8/complete Parameters: Parameter Locale to extend New entries Description Select language you'd like to improve. Real world configuration Server with Zabbix 1.zabbix.18-14. the hardware configuration will be able to handle 600×2=1200 servers. MySQL/MyISAM 3. How many servers can be monitored by Zabbix on the hardware.3. parallelism is increased. 0 at any given moment). kernel 2.10.23. ignore it Leave empty – if something is not translated.2. on average.2.2. You want to update these parameters once in 30 seconds.keep value of this parameter as low as possible. Pentium IV 1. one may ask? It depends on number of monitored parameters and how often Zabbix should acquire these parameters. Zabbix configuration parameters Many parameters may be tuned to get optimal performance.3.4. contains minimum number of parameters (ideally.2. Performance tuning It is very important to have Zabbix system properly tuned for maximum performance.1.3. Optimal number of instances is achieved when queue. right side consists of translated phrases. which can be used to replace files under include/locales. This value can be monitored by using internal check zabbix[queue].1. 18. we see that Zabbix is able to handle 600 servers (or 6000 checks). DebugLevel 79 of 83 2010/9/17 下午 01:50 . Installation The screen makes possible creation of Zabbix front-end configuration file.com/documentation/1. fill translation with default value Take for default locale The locale will be used as a base one.

2. See http://www. mysql[uptime] Number of seconds MySQL is running 19. Zabbix heavily depends on availability and performance of database engine. mysql[slowqueries] Number of slow queries 19. Also. For example.html?Open . Novell Use MRTG Extension Program for NetWare Server (MRTGEXT.1. Example: why use system[procload].com/documentation/1.2.1. It could be good addition for email-based alert messages. WIN32 Use Zabbix W32 agent included (pre-compiled) into Zabbix distribution.mysqladmin -uroot ping|grep alive|wc -l #UserParameter=mysql[uptime]. The agent is compatible with protocol used by Zabbix.49. 19.jmxremote \ 2 D tj t t \ 80 of 83 2010/9/17 下午 01:50 .2. Sending alerts via WinPopUps WinPopUps maybe very useful if you're running Windows OS and want to get quick notification from ZABBIX. However.2.Zabbix 1.2.7.5 times faster (comparing to MyISAM) if InnoDB is used.1.conf contains list of parameters that can be used for monitoring of MySQL.16 Distrib 3.mysqladmin -uroot status|cut -f4 -d":"|cut -f1 -d"S" #UserParameter=mysql[slowqueries].management. keeping of MySQL temporary files in tmpfs is recommended 18. I enable it by setting the following options for the jvm: 1. which is part of the software. More information is available at http://publib-b. InnoDB requires more CPU power.2.42 and later) ### Change -u and add -p if required #UserParameter=mysql[ping]. ### Set of parameter for monitoring MySQL server (v3.2.sun.2.2.23.8. mysql[qps] Queries per second 19.zabbix.2. 19. 19. i. AS/400 IBM AS/400 platform can be monitored using SNMP.nsf/RedbookAbstracts/sg244504.com for more information. Zabbix can retrieve information provided by Informix SNMP agent.3.1. keep database tables on different hard disks 'history'.mysqladmin -uroot status|cut -f2 -d":"|cut -f1 -d"T" #UserParameter=mysql[threads].1. Monitoring of server's availability At least three methods (or combination of all methods) may be used in order to monitor availability of a server. mysql[ping] Check whether MySQL is alive Result: 0 .alive 19.2.mikrotik. MySQL Configuration file misc/conf/zabbix_agentd.com/Redbooks.6.2.2.php?msg_id=2721722 . Cookbook 19. JMX First of all. 18. ICMP ping (Key “icmpping”) Key “status” Trigger function nodata() for monitoring availability of hosts using only active checks 19.2.8 Manual [Zabbix] http://www.2. use fastest database engine.3. Keeping small update interval may be good for nice graphs. This is because of increased parallelism. 19. Informix Standard Informix utility onstat can be used for monitoring of virtually every aspect of Informix database. 19. avoid use of triggers with long period given as function argument.e.2.2.novell.6. mysql[version] Version of MySQL Example: mysql Ver 11.2.mysqladmin -uroot status|cut -f5 -d”:”|cut -f1 -d"O" #UserParameter=mysql[qps]. for large installations.8/complete Optimal value is 3.mysql -V 19. however. 19. General Recipes 19.1. Details about enabling of WinPopUps can be found at https://sourceforge. 'history_str.4. If you can connect. triggers'. It is available from http://forge.mysqladmin -uroot status|cut -f3 -d":"|cut -f1 -d"Q" #UserParameter=mysql[questions]. In my tomcat environment.2.2.not started 1 .com/modules/xfmod/project/?mrtgext .2.2. Database Engine This is probably most important part of Zabbix tuning.net/forum /message. Tuxedo Tuxedo command line utilities tmadmin and qmadmin can be used in definition of a UserParameter in order to return per server/service/queue performance counters and availability of Tuxedo resources.4. For example: UTIL1 1 minute average CPU utilization CONNMAX Max licensed connections used VFKSys bytes free on volume Sys: Full list of parameters supported by the agent can be found in readme.2.boulder. Monitoring of Specific Applications 19.mysqladmin -uroot status|cut -f9 d":" #UserParameter=version[mysql]. you are good. MySQL use stable release of a database engine rebuild MySQL or PostgreSQL from sources to get maximum performance follow performance tuning instructions taken from MySQL or PostgreSQL documentation for MySQL. mysql[questions] Number of processed queries 19.2.2.txt. Mikrotik routers Use SNMP agent provided by Mikrotik. 19. 'items' 'functions'. max(3600) will be calculated significantly slower than max(60). DBSocket MySQL only. Items have to be configured of type Zabbix Agent and must have keys according to the MRTGEXT documentation. General advices monitor required parameters only tune 'Update interval' for all items.NLM) agent for Novell. It is recommended to use DBSocket for connection to the database.2. 19. How do you know if you can do this? You can use the sun jconsole utility that comes with the jdk and point it at your machine running the jvm.5. use InnoDB table structure ZABBIX works at least 1.ibm.7. this may overload Zabbix tune parameters for default templates tune housekeeping parameters do not monitor parameters which return same information. and 'trends' are most heavily used tables. for pc-linux-gnu (i686) 19.system[procload5] andsystem[procload15] if system[procload] contains all.2. you need to configure your jvm to allow jmx monitoring.5.4. Dcom.5. mysql[threads] Number of MySQL threads 19. That is the fastest and the most secure way.23.2.

Additional information: database name database error code database error string Zabbix daemon is unable to create database.archive. otherwise remedy events can become escalated as well.jmxremote. Dcom.5 jvm also supports SNMP which provides another option. Error Message Details Zabbix daemon is unable to establish connection to the database. Zabbix daemon is unable to close connection to the database.1.0/docs. 20. Leaving it out will give you a list of all the attributes available under Threading. I browse down through the jmx objects via jconsole. Zabbix supports the following scenarios for escalations. Once you can reliably grab the data you are interested in. then execute OpenView command opcmsg -id application=<application> msg_grp=<msg_grp> object=<object> msg_text=<text>. Step 3 Configure actions.sun. If you don't have a servlet that will allow you to make a http request to the jmx interface. If trigger is OFF then opcmack <message id> has to be executed with message ID retrieved from the database. Troubleshooting 20.com/j2se/1.lang:type=Threading PeakThreadCount | <some filter to grab just the number you need .lang:type=Threading' | /bin/awk '/^PeakThreadCount\:/ { gsub( /[^0123456789]/. Parse the output and grab the number of your choice. (You might consider enabling ssl to make the connection more secure. HP OpenView ZABBIX can be configured to send messages to OpenView server. Depending on configuration. See the sun docs on jconsole for details. "" ). Z3004 Cannot close database: [%d] %s Z3005 Query failed: [%d] %s [%s] Z3006 Fetch failed: [%d] %s The numbered error messages are supported starting from Zabbix 1.sun.) Once that is done. Some of the messages are numbered. I click on the info tab. 1 Comment 21. Report to Zabbix Team. If trigger is ON.. I can do the following: curl -s -u<jmxusername>:<jmxpassword> 'http://<tomcat_hostname>/manager/jmxproxy/?qry=java. to use password authentication.password. Overview Zabbix provides effective and extremely flexible functionality for escalations and repeated notifications. Now. preferrably in a new table of ZABBIX database.lang:type=Threading” With tomcat.8 Manual [Zabbix] 2. The user has to be linked with the media.jar <jmxusername>:<jmxpassword> <jvmhostname>:<jmxport> java. e. Error and warning messages Zabbix daemons generate error and warning messages in case of any problems.8.management. since I use Tomcat.. Additional information: database name database error code database error string This should never happen. Zabbix will automatically escalate (increase escalation step) unresolved problems and execute actions assigned to each escalation step.g. Zabbix executes arbitrary scripts (remote commands) Repeated notifications until problem is resolved Delayed notifications and remote commands Escalate problems to other user groups Different escalation path for acknowledged and unacknowledged problems Execute actions (both notifications and remote commands) if a problem exists for more than N hours (seconds.sun.jmxremote.ment/agent.sun. 19. UserParameter=jvm.. The following steps must be performed: Step 1 Define new media. and to refer to the passwords stored in the jmxremote.sun. Step 4 Write media script. Integration 19. (Don't know what jboss has). The output from this will be all the metrics from this jmx key. Dcom.zabbix.1.left as an exercise to the reader> That's it. After selecting Threading.file=/path/java/jre/lib/management/jmxremote.lang.authenticate=true \ 5.management. Threading. Let's say I am interested in peak threads used by the system. Refer to OpenView official documentation for more details about opcmsg and opcmack. Need a command line jmx client? I use the one from here: http://crawler.port=xxxxx \ 3.sun. minutes. Additional information: database error code database error string SQL query string Record fetch failed. Dcom.5. Additional information: database error code database error string SQL query execution failed.1.maxthreads. The table contains complete list of numbered messages with additional details. I can then run jconsole and see everything that is currently exposed (and to verify that I can connect properly).Zabbix 1. The media script is not given here.2. find it under java. Escalations and repeated notifications 21.management. the qry string is the one obtained from jconsole. you can then turn that command into a zabbix userparm. The first way is I can use the servlet provided by Tomcat. jconsole will also provide you the information you need to query specific jmx attributes from the information tab. /<pathTo>/java -jar /<pathTo>/cmdline-jmxclient. print $1 }' or UserParameter=jvm.0/docs. make sure to add “Trigger value = PROBLEM” condition to the action.3.password file.com/documentation/1.8/complete This tells the jmx server to run on port XXXXX. Configure actions to send all (or selected) trigger status changes to the user.html Apparently the 1. /usr/bin/curl -s -u<jmxusername>:<jmxpassword> 'http://<tomcat_hostname>/manager/jmxproxy/?qry=java. Again. The script will have the following logic.management.com/j2se/1. you can use the command line tool like this /<pathTo>/java -jar /<pathTo>/cmdline-jmxclient.jmxremote. I prefer getting my stats from the servlet via http rather than using the java command line client as it is much “lighter” to start up and grab the information. Dcom.ssl=false \ 4. Simple messages Warning: before enabling recovery messages or escalations.5. In order to alert MySQL Administrators about any issues with MySQL applications the following configuration can be used: 81 of 83 2010/9/17 下午 01:50 . etc).maxthreads.verviewTOC.jmxremote.html General Information on JMX http://java. The messages are written to log files depending on configuration parameters.org/cmdline-jmxclient/ Information on setting up jmx monitoring for your jvms http://java. Additional information: database error code database error string Z3001 Connection to database '%s' failed: [%d] %s Z3002 Cannot create database '%s': [%d] %s Z3003 No connection to the database. The second way is I can send well formatted requests via a jmx command line tool. password” http://www.lang:type=Threading' where the jmx username and password are the ones defined in the file defined in the jvm options above.3. Recovery message to all interested parties Zabbix supports unlimited number of escalation steps 21. and I can see the name of the mbean is “java. notifications and remote commands: Immediately inform users about new problems Pro-active monitoring.jar <jmxusername>:<jmxhostname> <jvmhostname>:<jmxport> java.. The command will return unique message ID which has to be stored somewhere. there are two ways that I can grab the jmx attribute values (or effect a jmx operation).lang:type=Threading PeakThreadCount The difference with the command line client is you need to specify the attribute you are interested in specifically. parse the output for the data of your choice. The media will execute a script which will send required information to OpenView. Step 2 Define new user.

Zabbix can execute a command on a monitored host in case of any pre-defined conditions.e. Zabbix will send a single message to MySQL Administrators and a recovery message when problem is resolved.3. 21. Make sure that escalations are enabled in the action details: The period defines how frequently Zabbix should increase escalation step. actions operations get additional options: Step(s). By default. Zabbix supports wide range of macros. Note that the escalation period was changed to 10 hours and we use a custom default message: 82 of 83 2010/9/17 下午 01:50 . If the trigger that generated an active escalation is disabled. If sending of recovery messages is not enabled. when the problem is resolved. 21. Action conditions is defined so that it will be activated in case of any problem with any of MySQL applications. Suppose we would like to be notified about long-standing MySQL problems only. Complete list of macros is available here: macros Actions are defined as: A message will be sent to all members of the group MySQL Administrators. Suppose we would like to send 5 messages every hour. it goes to the next step every hour. See remote command tutorial for more information. Note also use of macros in the messages. Remote commands Remote commands is a powerful mechanism for smart pro-active monitoring. 21. so all operations of step 2 will be execute. A recovery message will be sent only to those people who received at least one message before in scope of the escalation. Delayed notifications Zabbix escalations supports sending of delayed notifications. clean /tmp) if we are running out of disk space Migrate one VM from one physical box to another depending on CPU load Add new nodes to the cloud environment if we have insufficient CPU (disk. whatever) resources Configuration of action for remote commands is similar to messaging. CRM) if it does not respond Using IPMI 'reboot' command reboot remote server if it does not answer requests Try to automatically free disk space (remove older files. i.Zabbix 1.4. He is the list of some of the most obvious uses of the feature: Automatically restart application (WEB server. Repeated notifications Repeated notifications is probably one of the most common use of Zabbix escalations. The escalation period will be taken from action definition unless we overwrote it for an individual operation. escalation period will be increased automatically (if the problem still exists obviously). no messages will be sent on recovery. Zabbix will send only one message with information about new problem.8/complete Since we are not interested in sending multiple messages or escalating MySQL problems to other user groups. The action condition is defined so that it will be activated in case of any disaster problems with one of Apache applications. 3600 seconds. so we defined that the operation will be active from escalation step 1 till 5. And so on. Also Zabbix Agent should run on a remote host and accept incoming connections. memory. As soon as we enabled escalations. Zabbix is at step 1. i. After one hour. escalations are not enabled.e. User 'zabbix' must have enough permissions to execute this script. so all operations assigned to the step will be executed.8 Manual [Zabbix] http://www.5. Period and Conditions. As soon as we have a problem. the only difference is that Zabbix will execute a command instead of sending a message. Zabbix sends a message informing about this fact to persons that have already received notifications. As a reaction to the disaster problem Zabbix will try to restart Apache process: Note use of the macro {HOSTNAME} here.zabbix.com/documentation/1. middleware.

8/complete The operation is assigned only to step 2. Complex scenario Look at this set of actions. It means it will be executed once after one escalation period.7.Zabbix 1.zabbix. 83 of 83 2010/9/17 下午 01:50 . If this does help. MySQL administrators. Escalate to Boss Zabbix escalations can be used to escalate problem to other users and user groups. after another 30 minutes Zabbix will send a message to all users in Japan. i. The administrators will get four messages before the problem will be escalated to the Database manager. Note use of the {ESC. The macro will contain information about all previously executed steps. 10 hours: Therefore user 'Alexei' will get a message only in case if a problem exists for more than 10 hours.8 Manual [Zabbix] http://www.com/documentation/1. supposedly no one is working on it. The notification delay is controlled by the escalation period. After multiple messages to MySQL administrators and escalation to the manager. The manager will get information about all email and all action executed before.e.HISTORY} macros in the message. It will happen if problem exists for 2:30 hours and it hasn't been acknowledged. Problem is not being fixed by MySQL admins? Escalate to their BOSS! Now we configured periodical sending of messages to MySQL administrators. after another hour Zabbix will reboot server with the MySQL database (second remote command) using IPMI commands.6. beware! 21. Note that the manager will get a message only in case if the problem is not acknowledged yet. If the problems still exists. Zabbix will try to restart the MySQL database. 21.