Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

We are currently in the process of converting our monitoring solution from OneSight to Zabbix. We have Zabbix up and running and monitoring our hardware, perf counters and software errors. We use OneSight for synthetic transactions which involve a large amount of HTTP POSTs, expression matching and multiple points of origin. Zabbix' built in web checks will be far too labor intensive for us to get going.

Which, if any, synthetic transaction solutions will integrate with or work well with Zabbix?

We are starting to look at Gomez, Dotcom-Monitor, and keeping OneSight but only for synthetics. Thanks for your help!

share|improve this question

3 Answers 3

up vote 0 down vote accepted

I used JMeter, Zabbix and Splunk to do this, there's a blog entry on how I set it up http://engineering.navinet.net/?p=322. I'll explain briefly how it all works.

Essentially, we used JMeter to record the various HTTP Requests required to carry out the various transactions/processes in our application and then run these with dummy users. As part of this test plan we created our own Beanshell Sampler script which got executed after each request. This script created Sys Log format messages with details on the URL hit, status code, timing etc. as well as the Header variables. Internally we use Splunk for storing and querying machine data such as event logs etc. so we used the Sampler script to send the data into Splunk.

Using the functionality within Splunk we were able to create visual dashboards and charts reporting on the durations for each execution and show error counts etc. We also set up some reports which were ran on a regular basis which emailed when either:

  • The time to execute a step took longer than a defined threshold (based on an average over defined window)
  • No data was found for certain steps within a given time frame

We then used Zabbix to kick off the JMeter test plans using it's User Parameter functionality on a regular basis and had it track when errors occured during execution. This would then notify us when error's occured during execution and we would be able to debug using Splunk.

If you're interested I can forward on some screenshots or scripts to help people get started.

share|improve this answer
1  
Thanks I've amended my message –  Paddy Feb 5 '13 at 10:13
    
Hi Paddy, Just came across this old question, sorry for taking so long. Yours is the correct answer because when I asked this question I was working at NaviNet. I'm glad they came up with an elegant solution. Recently I've approached a similar set up with a custom transaction program, message queuing, and discovery rules. –  ckaznocha May 22 at 0:43

Have you looked at AlertFox and Browsermob yet? IMHO these two are the best when it comes to synthetic transaction monitoring. You can script complex transactions easily and the pricing is reasonable. Both can be integrated as external check with Zabbix, Nagios etc.

share|improve this answer

If you want free / open source tools, you should check the SeleniumIDE and Jmeter software.

At work, we use JMeter (http://jmeter.apache.org/)for load and custom tests.

I believe the Selenium IDE(http://seleniumhq.org/projects/ide/) should do the trick, too.

They are most complete open source tools for Web Monitoring, and you can use zabbix_sender to send results to Zabbix.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.