ensuring application quality through automated monitoring …ensuring application quality through...

38
Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad

Upload: others

Post on 18-Mar-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Ensuring Application Quality Through Automated Monitoring

With

Code Freeze 2012

Ethan Galstad

Page 2: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Ensuring Application Quality Through Automated Monitoring

With

Code Freeze 2012

Ethan Galstad

Page 3: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

About Me

Ethan Galstad

Founder of Nagios

Past Experience

Helpdesk

Desktop Support

Sys/Net Admin

Developer

Page 4: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Why Does Monitoring Matter?

Page 5: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Why Monitoring Matters

Problem Alerts → Faster Fixes

Visibility → Proactive Planning

Instant Awareness → Reduced Downtime

Page 6: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

What Is Nagios?

Page 7: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

What Is Nagios?

Monitoring

Things are okay

Operating as expected

Plugins perform “tests”

Page 8: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

What Is Nagios?

Monitoring

Alerting

Page 9: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

What Is Nagios?

Monitoring

Alerting

Graphing

Page 10: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

What Is Nagios?

Monitoring

Alerting

Graphing

Reporting

Page 11: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Business Case For Monitoring

Reduce Downtime

Plan For Upgrades

Save Your Image

Save Time

Save Money

Page 12: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Nagios Users

Page 13: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

What Can Be Monitored?

Page 14: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 14

Computer Systems

Servers

Workstations

Operating Systems

Disk, Memory, CPU

Services

Processes

Applications

Performance Metrics

Page 15: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 15

Network Infrastructure

Routers

Switches

Firewalls

Availability

Port Status

Bandwidth

Traps

Page 16: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 16

Databases

MSSQL

MySQL

DB2

Oracle

Table, Database Size

SQL Queries

Performance Metrics

Page 17: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 17

Websites

Websites

Availability

Load Time

Response Codes

Page Content

Web Transactions

SSL Certificates

DNS Matches

Page 18: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 18

Security

Security Alerts

Intrusion Detection

Port Scans

Website Defacement

DNS Hijacking

Log Monitoring

Motion Sensors

Page 19: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 19

Other Uses

Environmental

Energy

Audio Silence

Financial

Weather Alerts

Threat Levels

Page 20: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 20

Limitless Monitoring Capabilities

Most Anything

Extensible Architecture

Hundreds of Plugins

Easy To Create Your Own

exchange.nagios.org

Page 21: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Application Monitoring

Page 22: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 22

Windows Apps

Agent or WMI

Application and Process State

Performance Metrics

Event Logs

Powershell, WSH scripts

AutoIT

Page 23: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 23

Linux / Unix Apps

Agent or SSH

Application and Process State

Performance Metrics

Logs

Scripts or Binaries (Shell, Perl, Python, *)

Page 24: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Web Application Monitoring

Page 25: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 25

Available / Online

Proper Operation

Secured

Infrastructure Impact

Transactions

User Experience

Build / QA Tests

Business Processes

What's Important?

Page 26: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 26

Reachability

Ping Times

Packet Loss

DNS Resolution

Page 27: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 27

HTTP Response

Response Code

Response Time

Page Size

Page 28: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 28

Security

DNS / IP Mismatches

SSL Certificate Expiration

Page Content

Page 29: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 29

Infrastructure Impact

System Metrics

Database Metrics

Bandwidth

Page 30: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 30

Web Transactions

WebInject

Page 31: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 31

Behavior Driven Monitoring

cucumber-nagios

Feature: google.com It should be up And I should be able to search for things

Scenario: Searching for things When I go to "http://www.google.com/" And I fill in "q" with "nagios" And I press "Google Search" Then I should see "www.nagios.com"

# cucumber-nagios features/google.com/search.featureCritical: 0, Warning: 0, 4 okay | value=4.0000;;;;

Page 32: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 32

Other Options

cURL

Mechanize

Selenium

AutoIT

Page 33: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 33

User Experience Monitoring

Real World Experience

Test From Multiple Locations

Page 34: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 34

Monitoring QA / CI / Test Systems

Hudson

Jenkins

Rundeck

Page 35: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Code Freeze 2012 35

Monitoring Business Processes

The “Internet” and “E-Commerce” Systems

Aggregated Status

Page 36: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Monitoring Tips

Page 37: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Implementation Tips

Start With The Basics

Determine What's Important, What's Not

Make Adjustments, Additions Slowly

Understand Your Audience

Page 38: Ensuring Application Quality Through Automated Monitoring …Ensuring Application Quality Through Automated Monitoring With Code Freeze 2012 Ethan Galstad. Ensuring Application Quality

Links

Nagios.com → Commercial Product

Nagios.org → Free Project

Exchange.nagios.org → Plugins, Addons

Support.nagios.com → Support