SlideShare a Scribd company logo
Integrating Nagios withTest Driven Development	Nathan VonnahmeNathan.Vonnahme@bannerhealth.comIntegrating Nagios withTest Driven Development
20112Intro9 years of hospital IT
Developer -> sysadmin
Sysadmin -> developer20113Central IdeaMonitoring tools are to the sysadmin what testing tools are to the developer.
Blog postgoo.gl/Oc2rn CASE sensitive!2011
OverviewTest-driven DevelopmentMonitoring and TDDSample toolsFurther ideas/implications2011
I.Test-driven Development (TDD)2011Nagios World Conference6
KwaliteeUhshuranse (QA)What is “quality”?“In its broadest sense, quality is a degree of excellence: the extent to which something is fit for its purpose. In the narrow sense, product or service quality is defined as conformance with requirement, freedom from defects or contamination, or simply a degree of customer satisfaction.”
Quality is a result“Quality is the result of a comparison between what was required and what was provided. It is judged not by the producer but by the receiver.”
How do you get quality?By, among other things:verifying before delivery that products and services possess the features required
preventing the supply of products and services which possess features which dissatisfy customersTestingEnsures essential function
Catches defectsSoftware Testing Types(Names/categories vary)UnitIntegrationUser Acceptance
1.  Unit testingDoes each individual piece do what we expect?
Yes or no?2. Integration testingDo the units work together?
We need a parallel universe!3. UserAcceptance testingAKA “Functional testing” or “Customer testing”
Does it work for the actual user?
Does it do what we promised?
“User stories”As a user closing the application, I want to be prompted to save anything that has changed since the last save so that I can preserve useful work and discard erroneous work.
Test AutomationThe robots will do our work for us!
Why automate?Thorough
Consistent
Fast
More likely to actually get run
Running scoreboard
“us 43 them 0”TDD (~1999)Testing is such a good idea, let’s do itEarly (test first, then implement)
Always (test automation)
Often (continuous integration)2011
Continuous IntegrationRun the test suite whenever source code changes!Alarm if any tests fail!2011
Behavior-driven development (~2003)BDD builds on TDD but especially emphasizes acceptance testing, and begins by writing user stories, not unit tests.2011
II. Monitoring and TDD2011Nagios World Conference20
Monitoring as TDDAt the highest level, monitoring is QA.2011
Translation neededHow do these types of testing translate for the sysadmin?Unit
Integration
Acceptance2011
UnitHosts pingable
Filesystems writable
CPU, memory properly utilized
OS functioning
Services running2011
Unit Monitoring with NagiosMany plugins for “unit” monitoring:check_ping
check_swap
check_load
check_disk
check_dhcp
check_http
check_ldap
check_mysql
check_nt
check_ntp_peer
check_pgsql
check_procs
check_radius
check_smtp
check_ssh2011
IntegrationCross-machine functions
Database queryable
Data fresh
Expected scheduled processes have completed
Backups worked
Printing works2011
Integration Monitoring with NagiosA few plugins for “integration” monitoring:check_mysql_query
check_hpjd  ?Usually requires custom plugins. Some of mine:check_backup
check_printer
check_app_logins
check_chartserver*2011*See my other talk.
User AcceptanceRequired functions
Acceptable speed
Expected security/access
Core expectations

More Related Content

ODP
Nagios Conference 2012 - Mike Weber - NRPE
PPTX
Nagios distributed monitoring for web applications
PDF
Puppet Continuous Integration with PE and GitLab
PDF
Beaker: Automated, Cloud-Based Acceptance Testing - PuppetConf 2014
PDF
What you need to remember when you upload to CPAN
PDF
Advanced Eclipse Workshop (held at IPC2010 -spring edition-)
PDF
Test Driven Development with Puppet - PuppetConf 2014
PDF
Vagrant + Rouster at salesforce.com - PuppetConf 2013
Nagios Conference 2012 - Mike Weber - NRPE
Nagios distributed monitoring for web applications
Puppet Continuous Integration with PE and GitLab
Beaker: Automated, Cloud-Based Acceptance Testing - PuppetConf 2014
What you need to remember when you upload to CPAN
Advanced Eclipse Workshop (held at IPC2010 -spring edition-)
Test Driven Development with Puppet - PuppetConf 2014
Vagrant + Rouster at salesforce.com - PuppetConf 2013

What's hot (20)

PDF
Security and dev ops for high velocity organizations
PDF
DevOps in PHP environment
PDF
Automatic PHP 7 Compatibility Checking Using php7cc (and PHPCompatibility)
KEY
Crafting Beautiful CLI Applications in Ruby
PDF
Debugging PHP with Xdebug - PHPUK 2018
PDF
Using Puppet to Create a Dynamic Network - PuppetConf 2013
PDF
Zend Framework 1.8 workshop
PDF
Hyperledger composer
PDF
Better detection of what modules are used by some Perl 5 code
PDF
Zabbix Console
PDF
Php 7.2 compliance workshop php benelux
PDF
Alexander Reelsen - Seccomp for Developers
ODP
Vagrant move over, here is Docker
PDF
Test driven infrastructure
PPTX
Nagios Conference 2012 - Nathan Vonnahme - Writing Custom Nagios Plugins in Perl
KEY
Introducing Command Line Applications with Ruby
PDF
How to inspect a RUNNING perl process
PDF
Laravel 4 package development
PDF
From Zero To Production (NixOS, Erlang) @ Erlang Factory SF 2016
PDF
Nginx Internals
Security and dev ops for high velocity organizations
DevOps in PHP environment
Automatic PHP 7 Compatibility Checking Using php7cc (and PHPCompatibility)
Crafting Beautiful CLI Applications in Ruby
Debugging PHP with Xdebug - PHPUK 2018
Using Puppet to Create a Dynamic Network - PuppetConf 2013
Zend Framework 1.8 workshop
Hyperledger composer
Better detection of what modules are used by some Perl 5 code
Zabbix Console
Php 7.2 compliance workshop php benelux
Alexander Reelsen - Seccomp for Developers
Vagrant move over, here is Docker
Test driven infrastructure
Nagios Conference 2012 - Nathan Vonnahme - Writing Custom Nagios Plugins in Perl
Introducing Command Line Applications with Ruby
How to inspect a RUNNING perl process
Laravel 4 package development
From Zero To Production (NixOS, Erlang) @ Erlang Factory SF 2016
Nginx Internals
Ad

Viewers also liked (7)

PDF
Analise das fraudes_aplicadas_sobre_o_ambiente_internet_banking
PPT
Jewish Innovation, Online and Off: Presentation to Sixth & I Historic Synagogue
PDF
Exploring a Route Toward Adoption of the Common Core. University of Wisconsin...
PPT
Nagios Conference 2014 - Konstantin Benz - Monitoring Openstack The Relations...
PPT
Nagios Conference 2013 - Troy Lea - Leveraging and Understanding Performance ...
DOCX
La música Instrumental
PPTX
Service operation
Analise das fraudes_aplicadas_sobre_o_ambiente_internet_banking
Jewish Innovation, Online and Off: Presentation to Sixth & I Historic Synagogue
Exploring a Route Toward Adoption of the Common Core. University of Wisconsin...
Nagios Conference 2014 - Konstantin Benz - Monitoring Openstack The Relations...
Nagios Conference 2013 - Troy Lea - Leveraging and Understanding Performance ...
La música Instrumental
Service operation
Ad

Similar to Nagios Conference 2011 - Nathan Vonnahme - Integrating Nagios With Test Driven Development (20)

PPTX
Anatomy of a Build Pipeline
PDF
Continuous testing and deployment in Perl (London.pm Technical Meeting Octobe...
PPT
Automated Unit Testing
PPTX
DevOps - Boldly Go for Distro
PPTX
Cerberus_Presentation1
PPTX
Cerberus : Framework for Manual and Automated Testing (Web Application)
PPTX
Automating Perl deployments with Hudson
PPT
Stopping the Rot - Putting Legacy C++ Under Test
PPTX
Creating testing tools to support development
PPT
Unit testing php-unit - phing - selenium_v2
PPTX
Chicago DevOps Meetup Nov2019
PDF
Testing In Drupal
PDF
Drupalcamp Simpletest
PDF
How to test infrastructure code: automated testing for Terraform, Kubernetes,...
PPTX
OWASP ZAP Workshop for QA Testers
PPTX
Google, quality and you
PPTX
Containerize your Blackbox tests
PDF
Joomla Code Quality Control and Automation Testing
PDF
Stop Being Lazy and Test Your Software
PPTX
Testing 101
Anatomy of a Build Pipeline
Continuous testing and deployment in Perl (London.pm Technical Meeting Octobe...
Automated Unit Testing
DevOps - Boldly Go for Distro
Cerberus_Presentation1
Cerberus : Framework for Manual and Automated Testing (Web Application)
Automating Perl deployments with Hudson
Stopping the Rot - Putting Legacy C++ Under Test
Creating testing tools to support development
Unit testing php-unit - phing - selenium_v2
Chicago DevOps Meetup Nov2019
Testing In Drupal
Drupalcamp Simpletest
How to test infrastructure code: automated testing for Terraform, Kubernetes,...
OWASP ZAP Workshop for QA Testers
Google, quality and you
Containerize your Blackbox tests
Joomla Code Quality Control and Automation Testing
Stop Being Lazy and Test Your Software
Testing 101

More from Nagios (20)

PPTX
Nagios XI Best Practices
PDF
Jesse Olson - Nagios Log Server Architecture Overview
PDF
Trevor McDonald - Nagios XI Under The Hood
PDF
Sean Falzon - Nagios - Resilient Notifications
PDF
Marcus Rochelle - Landis+Gyr - Monitoring with Nagios Enterprise Edition
PDF
Janice Singh - Writing Custom Nagios Plugins
PDF
Dave Williams - Nagios Log Server - Practical Experience
PDF
Mike Weber - Nagios and Group Deployment of Service Checks
PDF
Mike Guthrie - Revamping Your 10 Year Old Nagios Installation
PDF
Bryan Heden - Agile Networks - Using Nagios XI as the platform for Monitoring...
PDF
Matt Bruzek - Monitoring Your Public Cloud With Nagios
PDF
Lee Myers - What To Do When Nagios Notification Don't Meet Your Needs.
PDF
Eric Loyd - Fractal Nagios
PDF
Marcelo Perazolo, Lead Software Architect, IBM Corporation - Monitoring a Pow...
PDF
Thomas Schmainda - Tracking Boeing Satellites With Nagios - Nagios World Conf...
PPTX
Nagios World Conference 2015 - Scott Wilkerson Opening
PDF
Nrpe - Nagios Remote Plugin Executor. NRPE plugin for Nagios Core
PDF
Nagios Log Server - Features
PDF
Nagios Network Analyzer - Features
PPTX
Nagios Conference 2014 - Dorance Martinez Cortes - Customizing Nagios
Nagios XI Best Practices
Jesse Olson - Nagios Log Server Architecture Overview
Trevor McDonald - Nagios XI Under The Hood
Sean Falzon - Nagios - Resilient Notifications
Marcus Rochelle - Landis+Gyr - Monitoring with Nagios Enterprise Edition
Janice Singh - Writing Custom Nagios Plugins
Dave Williams - Nagios Log Server - Practical Experience
Mike Weber - Nagios and Group Deployment of Service Checks
Mike Guthrie - Revamping Your 10 Year Old Nagios Installation
Bryan Heden - Agile Networks - Using Nagios XI as the platform for Monitoring...
Matt Bruzek - Monitoring Your Public Cloud With Nagios
Lee Myers - What To Do When Nagios Notification Don't Meet Your Needs.
Eric Loyd - Fractal Nagios
Marcelo Perazolo, Lead Software Architect, IBM Corporation - Monitoring a Pow...
Thomas Schmainda - Tracking Boeing Satellites With Nagios - Nagios World Conf...
Nagios World Conference 2015 - Scott Wilkerson Opening
Nrpe - Nagios Remote Plugin Executor. NRPE plugin for Nagios Core
Nagios Log Server - Features
Nagios Network Analyzer - Features
Nagios Conference 2014 - Dorance Martinez Cortes - Customizing Nagios

Recently uploaded (20)

PPTX
The various Industrial Revolutions .pptx
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
2021 HotChips TSMC Packaging Technologies for Chiplets and 3D_0819 publish_pu...
PDF
project resource management chapter-09.pdf
PDF
Getting Started with Data Integration: FME Form 101
PDF
Zenith AI: Advanced Artificial Intelligence
PDF
Getting started with AI Agents and Multi-Agent Systems
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
August Patch Tuesday
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PDF
Architecture types and enterprise applications.pdf
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
1 - Historical Antecedents, Social Consideration.pdf
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PPTX
TLE Review Electricity (Electricity).pptx
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PPTX
Tartificialntelligence_presentation.pptx
PDF
NewMind AI Weekly Chronicles – August ’25 Week III
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
The various Industrial Revolutions .pptx
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
2021 HotChips TSMC Packaging Technologies for Chiplets and 3D_0819 publish_pu...
project resource management chapter-09.pdf
Getting Started with Data Integration: FME Form 101
Zenith AI: Advanced Artificial Intelligence
Getting started with AI Agents and Multi-Agent Systems
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
August Patch Tuesday
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
Architecture types and enterprise applications.pdf
A comparative study of natural language inference in Swahili using monolingua...
1 - Historical Antecedents, Social Consideration.pdf
O2C Customer Invoices to Receipt V15A.pptx
Assigned Numbers - 2025 - Bluetooth® Document
TLE Review Electricity (Electricity).pptx
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Tartificialntelligence_presentation.pptx
NewMind AI Weekly Chronicles – August ’25 Week III
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf

Nagios Conference 2011 - Nathan Vonnahme - Integrating Nagios With Test Driven Development

Editor's Notes

  • #6: Write this on a board?
  • #20: E.g. not “Does the Adder object add numbers properly?” but “Can the cashier complete a sale?”
  • #22: We’re all trying to deliver quality. XKCD mouseover text: “The weird sense of duty really good sysadmins have can border on the sociopathic, but it's nice to know that it stands between the forces of darkness and your cat blog's servers.”
  • #24: We certainlyneed to monitor these things! They particularly speed problem resolution.
  • #27: *See my other talk.
  • #38: http://www.perl.org/about/whitepapers/perl-testing.html
  • #65: (Plug my other talk)