You have recently started with Zabbix, and stumbled upon something that doesn’t look right. What do do? You might want to report it as a bug. Let’s talk about the suggested way to do that.
or Why should conferences have long breaks
In the post about the first day of the conference I explicitly mentioned that the coffee/tea breaks were fairly long. And that was not a complaint – it was a positive observation and “thank you” to the organisers. Why should conferences have long breaks then?
We covered the main talks during day one and day two of the Zabbix Conference 2016, but there were a few more things that happened in the conference hall at the end of the second day. After the main talks were over, in 5-minute long lightning talks various topics were introduced and briefly covered.
Afterwards, the participants had a chance to ask questions to the Zabbix team. While there is a lot of talking going on off-the-record (conference participants catching a developer, separate sessions for Zabbix partners etc), this was a chance both to raise a topic to be heard by a bigger audience, and find out something if you had not managed to grab a Zabbix team member before.
A relatively common Zabbix feature request is to change the interval of a Zabbix item (how often the item is updated) based on the value of the item. This post will illustrate how to use a trigger to execute a Perl script to meet this goal.
In this example, the item will be a
net.tcp.service item to check a web server for an http response. The goal is to have this service checked every 5 minutes (300 seconds) under normal conditions, but if the response indicates that the service is down, change the interval to 60 seconds, which will allow the trigger to get cleared faster. Additionally, once the service is back up, the interval should return to 5 minutes. Continue reading Using the Zabbix::Tiny to change an item interval based on a trigger.
The second day of the Zabbix conference started with workshops. This was a completely new thing, thus there was limited experience with organising these. There were four workshops in two tracks:
- Scale with Zabbix Partitioning
- Master Low Level Discovery
- Hands On Trend Prediction
- Guide to Extending Zabbix + Scripts and API
It’s been a few weeks since the Zabbix Conference 2016. If you are considering attending next year, you might want to know – how was it? In one word, great. But that doesn’t tell much, so let’s briefly explore how it went.
The conference started with a talk by Alexei Vladishev, the original author of Zabbix. He shared the improvements in the soon-to-be-released Zabbix 3.2 and the usually-interesting statistics on the conference itself. This year the 3rd biggest number of participants was from the Netherlands, second from France and Russia had the first place. Importantly, he assured all the participants that Zabbix will always be true open source software – also commonly known as Free software.
Zabbix::Tiny is a Perl module that I wrote to automate much of the boilerplate that I found myself writing when I wanted to script against the Zabbix API. This article will take a brief look at exactly what advantages are provided by using Zabbix::Tiny. Finally a simple example script is provided, along with a step-by-step explanation of what it does.
Zabbix’s API has the advantage of being both extremely flexible and extremely powerful. Scripts that leverage the API can address many of the perceived ‘short-comings’, or commonly requested features of Zabbix. I wrote the
Zabbix::Tiny module as a small interface to the API to abstract some of the boiler plate that I was repeating in each script I was writing without it. Rather than delve directly into the module and it’s uses, I wanted to first cover a few of the dependencies I rely on for (nearly) every script that I write using the Zabbix API. Any articles that I write in the future will consider these points as implied.
Zabbix 3.0 introduced a major new feature – encryption between Zabbix components. If you’d like to add a new host with encryption enabled, you would go to the documentation of the host.create method… and be surprised. It says nothing about the encryption at all. You might continue to the host object page, but that wouldn’t have anything on encryption either.
There are some conceptual things new Zabbix users sometimes misunderstand, and a popular one is about adding templates to groups.
Sometimes users expect that adding a template to the same group as hosts will make the template affect the hosts. It does not.