3 of 3 people found this helpful
I want to preface this comment with two things:
- Monitoring is a very tricky thing, you need to balance between collecting data too frequently or not frequent enough. You need to ensure your triggers aren't too light, if people start getting too many messages, eventually people see the system as a "boy who cried wolf". If you or your institution are looking to begin monitoring your applications, let them know that time invested into planning will help tremendously and help you realise the RoI.
- I am a Zabbix Certified Professional. I'm not trying to sell anything, I have a lot of experience with this that I just don't have for any other monitoring systems.
I've worked with an open source piece of software named Zabbix for approximately 7 years, at least 5 of those years I've been using it to monitor my Blackboard application servers.
Without being sure on your environment or your organisation, the following pieces of Zabbix functionality are likely to help you out:
- Simple Checks (Agentless. Including: Ping, port status, page scraping, etc)
- Zabbix Agent (Includes: CPU % Used, % Memory Used, % Disk Full, etc)
- JMX Monitoring (Agentless. Includes: Number of user sessions, number of abandoned sessions, number of errors, B2 metrics)
- ODBC Monitoring (Agentless. Can query underlying databases for data/metrics)
- Log File Monitoring (Needs an agent. Can read log files and raise alarms when regular expression conditions are met)
Because you've mentioned by name that you're looking for JMX monitoring, these are my recommendations/pointers:
- You need arguments in your bb-config.properties. (See below)
- Try your connection from JVisualVM or JConsole before you invest time in Zabbix or another tool. Firewall or other networking issues are best worked out as early as possible.
- The unpredictable Java RMI port behind a firewall can make you very sad.
- If you're installing Zabbix, make sure you include the Java Gateway if compiling from source.
Note: You can run every component of Zabbix on a single host, MySQL (or PostgresSQL), Zabbix and the Java Gateway.
- Read this as a general rule if you're using Zabbix, use discovery wherever possible.
The following link will save you hours in creation and maintenance of your templates for JMX monitoring: JMX Discovery
Arguments in Bb Configuration
The following entries are required in the 'bbconfig.jvm.options.extra.tomcat' options list if you're presenting unauthenticated JMX monitoring:
Zabbix is an amazing platform that fits my needs really well, I gave a very simplified presentation in 2015 at the ANZTLC about the benefits of monitoring your Blackboard application however now that I'm employed by another institution, I do not have the rights to distribute that presentation.
I also found a presentation given in 2012 at Blackboard DevCon on Zabbix & Blackboard: Here.
The links in that presentation Blackboard templates provided by Blackboard will be pointing to an old link that existed on EduGarage many years ago, I haven't been able to find a mirror of that article in a while though.
Best of luck and have fun!
Woow Ashley...Thanks for the detailed explanation.
Let me try Zabbix and see whether it can meet our requirements.
Once again thanking you for the wonderful reply. Will give you some updates after I install and configure it.
We use Zenoss and it includes JMX monitoring so it works fairly well for us.