This Week in OpenNMS: Season 1.6, Episode 32: Ackd's alive. ALLLIIIIIVVEEEEE!

Benjamin Reed <[email protected]> Mon, 24 Aug 2009 14:33:18 -0400
Newsgroups gmane.network.opennms.announce
Organization The OpenNMS Group
Message-ID <4A92DCEE.5050004__11990.3287188665$1251139006$gmane$org@opennms.org>
It's time for This Week in OpenNMS.  This week we worked on Ackd, the
SMS API, the iPhone application, and other bugfixes.


Project Updates
---------------

- Stable: Current Release is 1.6.5

1.6.5 is the current stable release, released May 16th.  It fixes a
number of bugs, and adds a few features.  For a full list, see the
bugzilla 1.6.5 milestone.  This is a non-critical but recommended
upgrade for anyone on OpenNMS versions older than 1.6.5.

    http://tinyurl.com/opennms-165

- Unstable: Current Release is 1.7.6

1.7.6 is the current unstable release, tagged August 3rd.  Since 1.7.5,
there have been a ton of bugfixes, as well as updates to the RESTful
interfaces, inventory report updates, syslogd updates, collection
updates, new OpenManage and Cisco IP-SLA monitors, thresholding updates,
provisiond updates, map updates, and probably more stuff I'm missing.  A
1.7.x overview is available in the release notes on the site.

    http://tinyurl.com/opennms-17x

- Unstable: Ackd Updates

Dave made more progress on documentation and Ackd work.  I'll talk a
little bit more about that below.

- Unstable: SMS Pinger/Request-Response API

Matt, Donald, Jeff, and I continued working on the SMS pinger APIs,
including putting in a lot of infrastructure work for OSGi integration.
 We now have a working SMS "ping" monitor, and the groundwork is being
layed for a sequence monitor along the lines of the HTTP page sequence
monitor.

- Unstable: Bugfixes

Bill Ayres fixed a couple of annoying bugs that were in 1.7.6, including
a search bug and the infamous IfLabel malformed database query bug a
number of folks have reported.

- Stable: Jetty SSL Changes

Jeff updated the Jetty code so that you can configure it to exclude
certain SSL ciphers.  Be aware that by default, we exclude a number of
the older, more insecure ciphers.  Chances are your browser should not
be affected (and if it is, it's time to upgrade!) but you can edit
$OPENNMS_HOME/etc/opennms.properties and remove the excluded ciphers if
necessary.

- Unstable: iPhone Updates

I did some more work on the iPhone app early last week, including
support for asking for configuration the first time you start it, and
finishing up the CoreData conversion.  There are a few more small things
to finish up, and then it's time to push 1.0 to the app store for
submission!


Coming in OpenNMS 1.7.7: Acknowledgement through E-Mail
-------------------------------------------------------

Dave's been making a lot of progress on Ackd.  It was already capable of
acknowleding alarms and notifications through the RESTful interface
(which the iPhone application uses), but he's now finished a very cool
interface to Ackd: e-mail.  Ackd is fully documented on the wiki but I
wanted to give a brief example of how it works in the real world.

As of the latest 1.7.7 snapshots, the Acknowledgement service daemon
will be turned on by default, so you won't have to mess with service
configuration.  You will, however, have to configure the ackd javamail
configuration.  Rather than continuing to jury-rig things into the
existing javamail-configuration.properties file, Dave made a new
configuration: javamail-configuration.xml.  For now, Ackd is the only
thing using this, but we plan on transitioning the existing
properties-based configuration used by notifications and the mail
transport monitor when time permits.

So first, you'll need to make sure ackd-configuration.xml is configured
properly.  The default configuration looks like this:

  <?xml version="1.0" encoding="UTF-8"?>
  <ackd-configuration
    xmlns:this="http://xmlns.opennms.org/xsd/config/ackd-configuration"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    alarm-sync="true"
    ack-expression="~(?i)^ack$"
    clear-expression="~(?i)^(resolve|clear)$"
    escalate-expression="~(?i)^esc$"
    notifyid-match-expression="~(?i).*Re:.*Notice #([0-9]+).*"
    alarmid-match-expression="~(?i).*alarmid:([0-9]+).*"
    unack-expression="~(?i)^unack$">

    <readers>
      <reader enabled="false" reader-name="JavaMailReader">
        <reader-schedule interval="60" unit="s"/>
        <parameter key="readmail-config" value="localhost" />
      </reader>
    </readers>

  </ackd-configuration>

Here's a brief rundown of what the various attributes mean:

- alarm-sync
  Whether to acknowledge the alarms associated with the notification,
  or just the notification.

- *-expression
  The text to match in the email response.  The notification ID match
  is matched in the subject of the acknowledgement email, the rest in
  the message body.

- reader
  Defines the existence of an ackd "reader" plugin.  These provide the
  interface to integrating various acknowledgement methods into Ackd.
  JavaMailReader is the first such implementation shipped with OpenNMS.

- reader-schedule
  How often it should schedule attempting to check for acknowledgements.

- parameter
  Parameters can be passed to the reader plugins.  They are specific to
  a given plugin's implementation.

And here's the relevant "readmail-config" portion of
javamail-configuration.xml that goes with it:

  <readmail-config name="google" attempt-interval="1000"
    delete-all-mail="false" mail-folder="INBOX" debug="true">
    <readmail-host host="imap.gmail.com" port="993">
    <readmail-protocol ssl-enable="true" start-tls="true"
      transport="imaps"/>
    </readmail-host>

    <user-auth user-name="foo" password="bar" />
  </readmail-config>

This default ackd configuration, when you set enabled to "true", will
read from the mail server defined in javamail-configuration.xml as
"google" every 60 seconds.  Obviously this will need to be configured as
the address you have OpenNMS events configured to send as.  That's all
it takes, and you should be able to hit "reply" to a notification email,
type in "ack" or "escalate" and send.


Upcoming Events
---------------

* September 10, 2009:
  Tarus Balog will be giving his talk, "So, You Think You Want to Start
  an Open Source Business" at the Triangle Linux Users Group.

    http://www.trilug.org/node/95

* September 19th, 2009:
  Tarus Balog to speak at Atlanta LinuxFest on the topic of running an
  open-source business.

    http://atlantalinuxfest.org/node/52

* September 21st-25th, 2009:
  OpenNMS training will be available through The OpenNMS Group at the
  OpenNMS training facility in Pittsboro, NC.

  For more information on training, go to:
    http://www.opennms.com/training.html

* October 28, 2009:
  Tarus Balog will be speaking at the Open Source Monitoring Conference
  2009 in Nuremberg.

  http://www.netways.de/en/osmc/y2009/referenten/

If you have anything to add to the events list, please let me know.


Until Next Week...
------------------

As always, if there's anything you'd like me to talk about in a future
TWiO, or you just have a comment, criticism, or notification email
account details you'd like to share, don't hesitiate to say hi.


-- 
Benjamin Reed
The OpenNMS Group
http://www.opennms.org/

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july

_______________________________________________
Please read the OpenNMS Mailing List FAQ:
http://www.opennms.org/wiki/index.php?page=MailingListFaq

opennms-announce mailing list

To *unsubscribe* or change your subscription options, see the bottom of this page:
https://lists.sourceforge.net/lists/listinfo/opennms-announce
signature.asc (application/pgp-signature, 259 B)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.0.12 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iD8DBQFKktzzUu+jZtP2Zf4RAp14AJ9rPyGSsc5sZVo8OXdNZlJl8GsxUwCcCHav
ZbQNL9zKDv9kXMTe9NbexQo=
=53IG
-----END PGP SIGNATURE-----