PagerDuty notification Integration

MonGuru’s Nagios now has notification commands that integrates with PagerDuty.

Bellow is reproduced the PagerDuty’s guide to get started:

If you don’t already have a PagerDuty “Nagios” service, you should create one:

  1. In your account, under the Services tab, click Add New Service.
    SL-AddNewServiceButton
  2. Enter a Service Name, choose an Escalation Policy. Start typing “Nagios” under Integration Type to filter your choices.
     Add a new PagerDuty Nagios service
  3. Click the Add Service button.
  4. Once the service is created, you’ll be taken to the service page. On this page, you’ll see the Service API key, which will be needed when you configure your Nagios server to send events to PagerDuty.
  5. PagerDuty Nagios service key

 

As PagerDuty is already configuured on MonGuru, you just need to configure your contacts definitions.

define contact {
       contact_name                             pagerduty
       alias                                    PagerDuty Pseudo-Contact
       service_notification_period              24x7
       host_notification_period                 24x7
       service_notification_options             w,u,c,r
       host_notification_options                d,r
       service_notification_commands            notify-service-by-pagerduty
       host_notification_commands               notify-host-by-pagerduty
       pager                                    YOUR-SERVICE-KEY-HERE
}

Now you can use thecontact name “pagerduty” in one existing contact group by adding it to the contact group as seen bellow:

define contactgroup {
       contactgroup_name                        instance_owners
       alias                                    Nagios Administrators
       members                                  instance_owner, pagerduty
}

 

 

 

Actions in the Inbox

Actions in the box is a really simple way (adding schema.org markups to sent emails) to increase the user engagement on emails. GMail and Google Apps users now will receive notifications with “One click Action” attached to it. Which means that you can “Acknowledge” any kind of problem without opening the email.

actions_inbox

 

This is what you will see when you receive a problem notification from MonGuru.

HTML Email Notification has arrived

The number one contact channel of MonGuru to their users is definitely email messages.

Until now we were sending the Nagios’ default notification emails.

html_mail

Now the emails contain a lot of useful information like state duration, service check execution time, and more.

There is also an action section that allows you to go right to the corresponding Nagios action page. For now there’s only the “Acknowledge” action. We will use your Nagios instance’s secret key so you can take the action in only one click, there is no need to enter your credentials.

We are working in a way to add the actions as “Actions in the Inbox“, this will allow Gmail and Google Apps users to take actions without even opening the email. Stay tuned.

Easy Way to Start Monitoring Cloud Servers

TL;DR – Start monitoring your server using MonGuru Cloud Hosted Nagios.

What you will need:
-Debian 6+ or Ubuntu 12.04+ or CentOS 6+.
-Root access
-A MonGuru account
-Open SNMP (udp port 161) on firewall
-ICMP echo reply on firewall (type 0)

If you have all the ingredients all that you need to do is to type on your servers the following command line:

curl -sL https://mongu.ru/configuration_scripts/add_new_server.sh | sudo bash

Follow the script instructions.

===

Nowadays it’s common a developer own a cloud based system. Or at least
one cloud based server or a VPS (linode, aws, digital ocean…). Also they are used to profile their applications with tools like NewRelic.

What it’s not common to see is developers that have some kind of
alerting system if their server or application is running out of
resources like disk, cpu, memory, etc.

Without discussion today Nagios is the most famous alerting system. But
setting it up can be a little painful, especially to developers that not
necessarily want to learn how to configure it.

If you are one of these guys, MonGuru created a really simple script that will
detect some services on your server, and add it to a MonGuru cloud
hosted Nagios instance.

You will need:
-Debian 6+ or Ubuntu 12.04+ or CentOS 6+.
-Root access
-A MonGuru account
-Open SNMP (udp port 161) on firewall
-ICMP echo reply on firewall (type 0)

If you have all the ingredients all that you need to do is to type on your servers the following command line:

curl -sL https://mongu.ru/configuration_scripts/add_new_server.sh | sudo bash

After that, you can follow the URL informed by the script to see the
Nagios instance collecting data from your system. It will send to you
e-mail alerts when something goes critical.

If you know Nagios, will feel confortable downloading and editing the
configuration on your dashboard.

We tested this on CentOS, Debian and Ubuntu, it uses apt-get or yum, so it will not work
on other Linux distributions.

Here is what it does:

-Installs snmpd.
-Generates a random pair of snmp login/password.
-Backup the existing snmpd configuration.
-Download a pre-configured snmpd.conf file.
-Creates a snmp login/password using the random pair created before.
-Download a python script to detect you server’s services and configuration
-Authenticates you on https://mongu.ru
-Creates a Nagios instance if it don’t exists yet.
-Adds your server to the Nagios instance.

Twitter Integration

It’s really nice when you use a service that provides you a system health
web page. A place that you can go when you start to see things failing.
So you can know if the problem is in your service, or on the service
that you depends on.

Examples of that are the Amazon Web Services status page, DreamHost Status, or even the DreamHost Status Twitter Account.

You may have a service that should have some kind of public status page
to let your users know when your server are under heavy load, or things
are back to normal.

A simple way to get a “health page” working, is to twitt about the system health just like DreamHost Status Twitter Account.

twitter_integrationWe think this is a really good idea, use a social network that people are already used to use. That’s why  we implemented a feature in MonGuru that allows your Nagios instance to update Twitter when the state of a service or host changes. You can find the step-by-step process in our wiki.

 

Git Integration

A lot of System Administrators uses some version control software to keep track on the configuration for the monitoring tool. No doubts this is a useful use of version control.

That’s why, even running on Beta, MonGuru has a full integration with git.

If you are a GitHub or *Bitbucket user, you will feel at home using this new integration. MonGuru allows you to configure a WebHook in your git repository to notify MonGuru that the Nagios configuration has changed. MonGuru will automatically pull the changes from the git repository.

git_integration

Beyond keeping track of configuration changes, git integration is a great way to give people access to change your Nagios configuration at MonGuru. Anyone with write access to the git repository can write config changes, and receive the changes results via e-mail. The instance’s owner is also notified by e-mail when changes are made.

Go ahead and take a look on git integration help, to see how easy it is.

* Btbucket has the advantage of providing the possibility of the creation of private repositories.

Nagios on your android

Even in these of smartphones days, we know that receiving SMS notification from our monitoring system is really useful. However when some aditional action on the monitor system is required, we can not count on SMS only.

People who use nagios or Icinga as monitoring system, and an android phone can take privilege of aNag android app. An unofficial Nagios and Icinga client for android devices.

It is really simple to configure, and have a lot of cool features, as you can see on its Google Play Page:

– Multiple actions available directly in app [on hosts or services]:
* acknowledge (incl. Icinga 1.6 expirable ack)
* custom notification
* submit passive check
* enable/disable notification
* recheck
* downtime management (set and remove)

– multiple Nagios and Icinga instances
– no server side modification required (only stock CGI)
– self signed / invalid certificate exception on per instance basis
– Background auto refresh
– Service filtering (acknowledge, scheduled downtimes, disabled notifications and SOFT state) customizable differently for notification and display
– Notification (top bar, vibrate, sound) on per severity basis and on update failure
– Fine grained notification criteria
– Pattern based filtering (regexp, equals, contains, starts with, ends with against server name, service name, services message or a selection)
– Quiet hours (global or on weekday basis), Critical only mode (change quiet hours behavior)

And of course you can use it with an MonGuru’s Nagios instance. By simply adding your nagios instance FQDN to the aNag configuration. For facilitating you can configure a personal FQDN (Virtual Host) when creating your Nagios instance.

Go ahead, give it a try, and happy monitoring.