An important aspect of Zabbix is its open source nature. Zabbix is a true open source solution—it's not "open core", and it doesn't have an Enterprise version or some proprietary plugins. Such approaches could be labeled as "fake open source". All components of Zabbix are completely open source; there are no closed or hidden components. Its developers have undertaken to keep Zabbix that way—feel free to look this up in the Zabbix conference 2013 videos: see the opening speech by Zabbix creator Alexei Vladishev, around 27 minutes and 30 seconds in.
Besides being open source, a lot of Zabbix development happens out in the open, too. That makes it easy to closely follow the development and to get community support. But each open source project is different in how it is run and what guidelines it has, so let's look at what one can expect to find from this aspect of Zabbix:
The development of Zabbix happens out in the open, but external contributions are usually not accepted, except in one area: translations. Contributors to all the translations Zabbix has are welcome, and we will also find out how to get involved in that area.
There's a vibrant community of Zabbix users, who communicate and share using different means. You are free to choose the communication and information exchange method you prefer, but it is good to know how things are arranged.
You are welcome to ask questions and help others by answering theirs, but it is suggested to observe some basic rules, which will help you to get the answers:
These and other guidelines are listed at http://zabbix.org/wiki/Getting_help—make sure to read through those as well.
IRC, or Internet Relay Chat, is a fairly old communication method and is especially popular within open source project communities. Zabbix users also like to gather for Zabbix-related discussions on a dedicated channel. Located on the Freenode network at freenode.net, the channel #zabbix
is where you can expect to get help from, and communicate with, fellow Zabbix users. The most advanced and knowledgeable community members are to be found here. You may use one of the many web-IRC gateways, such as http://webchat.freenode.net/, or connect to any Freenode IRC server with a dedicated program called an IRC client. There are many different options available for different operating systems, and you are free to choose any one—it won't impact your ability to communicate with people using a different one. In addition to general communication guidelines, there are some IRC-specific ones as well:
Regarding politeness, remember that all communication is logged and publicly available. If you reveal yourself to be a person hard to communicate with, it will not only stay in people's memories, but also in the logs.
The Zabbix IRC channel also has a couple of automated helpers, called bots. All new bug reports and feature requests are announced in the channel by them, and they have other features as well. At this time, current bot features are described at http://zabbix.org/wiki/Getting_help#IRC_bots.
Not only the most knowledgeable users are available on the Zabbix IRC channel. This channel is also quite popular. At the time of writing this, the average number of participants is about 300. It is actually the most popular IRC channel about monitoring. The demo Zabbix instance at http://zabbix.org/zabbix/ monitors the number of users on the channel, and a graph from 2006 until mid-2016 looks like this:
The number of participants on the channel has grown significantly since 2006. You can access the current version by going to http://zabbix.org/zabbix/ and looking up the simple graph Users in #zabbix on freenode on host Zabbix.org.
The system that hosts the demo instance we discovered a moment ago also serves as a community platform. Primarily, it's a MediaWiki instance that has a large amount of useful information, and we have referred to it a few times before already. A few things of interest at this time are:
The content is flexible, and it is suggested to investigate what is available on http://zabbix.org/wiki/Main_Page every now and then.
This book was also supposed to cover how great it is to have new feature specifications available on the Zabbix website, but unfortunately, the Zabbix team has decided to withdraw them. One can still find old specifications at http://zabbix.org/wiki/Category:Specifications.
It being a wiki, everybody is welcome to participate. See a mistake or something missing? Just go ahead and improve it. Want to write instructions for some process you found non-trivial to perform? Go ahead and create a new page. And if you are not sure about it, just ask on IRC, and somebody will surely help.
There is also a Zabbix-related resource directory at http://share.zabbix.com . It does not host most of the content; instead, it usually links to templates or scripts on GitHub or a Zabbix website page. We won't look into it in any detail at this time, as the functionality is a bit limited, but it is suggested to visit it every now and then to check whether it has improved.
The Zabbix forum is located at http://www.zabbix.com/forum. You can read it without registering, but for posting, you will need authenticated access, so register for a user account. The forum offers both a large collection of already solved problems and a chance that you will receive assistance with new problems.
While we've looked at the general suggestions for efficient and satisfactory communication, there are some forum-specific suggestions as well:
What if you have discovered a bug or have a bright idea on how to improve Zabbix? Zabbix uses an issue tracker to record such things and track the resolution process. To access the Zabbix issue tracker, navigate to https://support.zabbix.com. Here, you can register and log in to search existing reports as well as enter new ones.
When reporting a new issue, choose the correct project—project ZBX is used for bug reporting, and project ZBXNEXT for new feature requests. It is strongly suggested to search the tracker before filing a new report—perhaps the problem has already been reported and there is no need to create duplicate reports.
What if you have resolved the problem yourself and have a patch fixing some bug or implementing a feature? Just attach it to the corresponding report. You should discuss your approach with Zabbix developers before coding for all but the most simple cases—perhaps they are already working on it, or perhaps your approach will conflict with some other feature in development. Make sure to get familiar with the coding guidelines, too—they are available at http://zabbix.org/wiki/Main_Page.
There is also a patch repository at https://github.com/zabbix/zabbix-patches, but it remains to be seen whether it becomes popular.
All the discussed channels are great for communicating with other Zabbix users, getting help, and helping others. But there are also various ways to meet in person. A very popular and nice yearly event is the official Zabbix conference, but there are also various less formal events organized by local communities.
The official Zabbix conference is a great event. It was first organized in 2011, and it usually happens in September. It is a chance to find out about the latest things happening to Zabbix, learn from a lot of very inventive Zabbix users, and have a bit of fun. It happens in the Zabbix birthplace and hometown—Riga, Latvia. There are two days packed with interesting talks, and the Zabbix team tries hard to make everybody feel welcome. If you have a chance, do try to join this event.
Your local community might also be coming together. Check out the listing of various communication channels at http://zabbix.org/wiki/Usergroups. Join the user group, follow the news, and maybe even help in organizing events. Do not hesitate to add a new country to the list, too.