Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Arrow up icon
GO TO TOP
Puppet Reporting and Monitoring

You're reading from   Puppet Reporting and Monitoring Create insightful reports for your server infrastructure using Puppet

Arrow left icon
Product type Paperback
Published in Jun 2014
Publisher
ISBN-13 9781783981427
Length 186 pages
Edition Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Michael Duffy Michael Duffy
Author Profile Icon Michael Duffy
Michael Duffy
Arrow right icon
View More author details
Toc

Table of Contents (16) Chapters Close

Puppet Reporting and Monitoring
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
1. Setting Up Puppet for Reporting FREE CHAPTER 2. Viewing Data in Dashboards 3. Introducing Report Processors 4. Creating Your Own Report Processor 5. Exploring PuppetDB 6. Retrieving Data with the PuppetDB API 7. Writing Custom Reports with PuppetDB 8. Creating Your Own Custom Dashboard 9. Looking Back and Looking Forward Index

Index

A

  • aggregate-event-counts endpoint
    • using / Applying the aggregate-event-counts endpoint
    • URL, for documentation / Applying the aggregate-event-counts endpoint
    • about / Creating new jobs in Dashing
  • alerts
    • creating, report processor used / Producing alerts
    • creating, Nagios used / Using Nagios
    • Icinga, discovering / Discovering Icinga and Shinken
    • Shinken, discovering / Discovering Icinga and Shinken
  • assets directory
    • about / Exploring the default puppetdash directory layout
  • Atlassian JIRA
    • about / Raising issues with JIRA
  • audit metaparameter
    • about / Compliance monitoring with Puppet

B

  • basic query application
    • creating / Creating a basic query application
    • setting up / Setting up the basic application
    • connecting, to PuppetDB / Connecting to PuppetDB
    • results, extracting / Outputting results
  • Boundary
    • URL / Rediscovering dashboards
  • built-in report processors
    • utilizing / Utilizing the built-in report processors
    • reports, storing with store report processor / Storing reports with the store report processor
    • log files, adding with log report processor / Adding to logfiles with the log report processor
    • graphing, with rrdgraph report processor / Graphing with the rrdgraph processor
    • tagmail report processor / The tagmail report processor
    • reports, sending with HTTP report processor / Sending reports with the HTTP report processor
    • PuppetDB report processor / The PuppetDB report processor
    • third-party report processors, exploring / Exploring the power of third-party plugins

C

  • catalogs endpoint
    • using / Getting the run details with the catalogs endpoint
  • catalog wire format
    • URL, for documentation / Getting the run details with the catalogs endpoint
  • choice function
    • about / Setting up the UI
  • collectd
    • URL / Analyzing metrics with StatsD, Graphite, and Etsy Skyline
    • about / Analyzing metrics with StatsD, Graphite, and Etsy Skyline
  • command interface
    • about / Understanding the command interface
    • replace catalog function / Understanding the command interface
    • replace facts function / Understanding the command interface
    • store report function / Understanding the command interface
    • deactivate node function / Understanding the command interface
  • command_line_reporter gem
    • about / Outputting results
  • compliance monitoring
    • with Puppet / Compliance monitoring with Puppet
  • createdb command / Creating the PostgreSQL database
  • createuser command / Creating your database user

D

  • dashboard
    • advantages / Why use a dashboard?
    • creating / Creating our dashboard
    • layout, creating / Creating our dashboard layout
    • trends, adding / Adding trends
    • meters, adding / Adding meters
    • rediscovering / Rediscovering dashboards
  • dashboards directory
    • about / Exploring the default puppetdash directory layout
  • Dashing
    • about / Exploring Dashing
    • overview / Exploring Dashing
    • URL, for downloading / Exploring Dashing
    • reference link / Exploring Dashing
    • installing / Setting up Dashing
    • puppetdash directory / Exploring the default puppetdash directory layout
    • executing / Running Dashing
    • data, feeding / Feeding data into Dashing
    • jobs, creating / Creating new jobs in Dashing
  • dashing start command / Creating our dashboard layout
  • data
    • feeding, into Dashing / Feeding data into Dashing
  • data-col tag / Creating our dashboard layout
  • data-id tag / Creating our dashboard layout
  • data-row tag / Creating our dashboard layout
  • data-title tag / Creating our dashboard layout
  • data-view tag / Creating our dashboard layout
  • deactivate node function
    • about / Understanding the command interface

E

  • .erb file
    • about / Adding meters
  • e-mail alert
    • creating / Alerting with e-mail and Puppet
  • endpoints
    • about / Exploring endpoints
    • facts endpoint, using / Using the facts endpoint
    • resources endpoint, using / Using the resources endpoint
    • nodes endpoint / Retrieving details about nodes
    • catalogs endpoint, using / Getting the run details with the catalogs endpoint
    • fact-names endpoint, using / Understanding the fact-names endpoint
    • metrics endpoint, using / Knowing the status of PuppetDB with the metrics endpoint
    • reports endpoint, using / Using the reports endpoint
    • events endpoint, using / Working with the events endpoint
    • event-counts endpoint, using / Using the event-counts endpoint
    • aggregate-event-counts endpoint, using / Applying the aggregate-event-counts endpoint
    • server-time endpoint, using / Using the server-time endpoint
    • version endpoint, using / The version endpoint
  • Etsy Skyline
    • used, for analysing metrics / Analyzing metrics with StatsD, Graphite, and Etsy Skyline
    • using / Using Etsy Skyline to find your normal
  • event-counts endpoint
    • using / Using the event-counts endpoint
    • URL, for documentation / Using the event-counts endpoint
    • about / Fetching the event counts
  • event counts
    • fetching / Fetching the event counts
  • Event Inspector
    • about / Event Inspector
  • events
    • adding, to MySQL / Adding metrics and events to MySQL
  • events data
    • presenting / Presenting the events data
  • events endpoint
    • using / Working with the events endpoint
    • URL, for documentation / Working with the events endpoint
    • about / Presenting the events data
  • External Node Classifiers (ENC)
    • about / Exploring Dashing
  • External Node Classifiers (ENCs)
    • about / Why use a dashboard?

F

  • .first method
    • about / Fetching the event counts
  • fact-names endpoint
    • using / Understanding the fact-names endpoint
  • Facter
    • about / Learning the basics of Puppet reporting
  • Facter 1.7
    • about / Learning the basics of Puppet reporting
  • facts endpoint
    • about / Using the facts endpoint
    • using / Using the facts endpoint
    • URL, for documentation / Using the facts endpoint
    • querying, in menu-driven PuppetDB application / Querying PuppetDB's facts endpoint
  • fully qualified domain name (FQDN)
    • about / Outputting results

G

  • Graphite
    • used, for analysing metrics / Analyzing metrics with StatsD, Graphite, and Etsy Skyline
    • URL / Analyzing metrics with StatsD, Graphite, and Etsy Skyline
    • and Puppet used, for tracking changes / Tracking changes with Puppet and Graphite

H

  • hardware report
    • extracting, from menu-driven PuppetDB application / Outputting the hardware report
  • header method
    • about / Outputting the hardware report
  • HighLine
    • about / Setting up the UI
  • HTTP report processor
    • reports, sending with / Sending reports with the HTTP report processor
  • HyperSQL Database (HSQLDB)
    • about / A brief history of PuppetDB

I

  • Icinga
    • discovering / Discovering Icinga and Shinken
    • URL / Discovering Icinga and Shinken
  • insert function
    • about / Logging with MySQL
  • installation, Dashing
    • about / Setting up Dashing
  • installation, PostgreSQL / Installing PostgreSQL
  • installation, PuppetDB / Installing PuppetDB
  • installation, report processor
    • about / Understanding a report processor
  • installation, Twitter / Getting social with Twitter
  • Intrusion Detection System (IDS)
    • about / Monitoring changes and alerting with Puppet
  • issues
    • raising, with JIRA / Raising issues with JIRA

J

  • Java Virtual Machine (JVM)
    • about / A brief history of PuppetDB
  • JAVA_ARGS= / Increasing the JVM heap space
  • JIRA
    • issues, raising with / Raising issues with JIRA
  • jobs
    • creating, in Dashing / Creating new jobs in Dashing
  • jobs directory
    • about / Exploring the default puppetdash directory layout

L

  • .last method
    • about / Creating the PuppetDB query method
  • layout, dashboard
    • creating / Creating our dashboard layout
  • lib directory
    • about / Exploring the default puppetdash directory layout
  • load balancer
    • about / Understanding a report processor
  • logging
    • with MySQL / Logging with MySQL
  • log report processor
    • log files, adding with / Adding to logfiles with the log report processor

M

  • MCollective
    • about / Puppet Live Management
  • MCollective project
    • URL / Using Puppet to drive orchestration
  • menu-driven PuppetDB application
    • creating / Creating a menu-driven PuppetDB application
    • UI, setting up / Setting up the UI
    • facts endpoint, querying / Querying PuppetDB's facts endpoint
    • hardware report, extracting / Outputting the hardware report
    • testing / Testing our application
  • meters
    • adding, to dashboard / Adding meters
  • metrics
    • adding, to MySQL / Adding metrics and events to MySQL
    • analysing, with StatsD / Analyzing metrics with StatsD, Graphite, and Etsy Skyline
    • analysing, with Graphite / Analyzing metrics with StatsD, Graphite, and Etsy Skyline
    • analysing, with Etsy Skyline / Analyzing metrics with StatsD, Graphite, and Etsy Skyline
  • metrics endpoint
    • using / Knowing the status of PuppetDB with the metrics endpoint
    • URL, for documentation / Knowing the status of PuppetDB with the metrics endpoint
    • about / Creating new jobs in Dashing
  • MySQL
    • using / Logging with MySQL
    • events, adding to / Adding metrics and events to MySQL
    • metrics, adding to / Adding metrics and events to MySQL

N

  • Nagios
    • used, for creating alerts / Using Nagios
  • New Relic
    • URL / Rediscovering dashboards
  • NFS
    • about / Setting up the server
  • nodes endpoint
    • using / Retrieving details about nodes
    • about / Creating new jobs in Dashing

O

  • Object-relational Mapping (ORM)
    • about / Logging with MySQL
  • OpenJDK
    • about / Installing PuppetDB

P

  • PagerDuty
    • about / Staying on top of alerts with PagerDuty
    • using / Staying on top of alerts with PagerDuty
    • URL / Staying on top of alerts with PagerDuty
  • Parser
    • about / Learning the basics of Puppet reporting
  • perspectives
    • about / Event Inspector
  • Phusion Passenger
    • about / Exploring the Puppet configuration file
  • PostgreSQL
    • installing / Installing PostgreSQL
    • installing, from packages / Installing the packages
    • database user, creating / Creating your database user
    • database, creating / Creating the PostgreSQL database
  • public directory
    • about / Exploring the default puppetdash directory layout
  • Puppet
    • report processor configuration, managing with / Managing your report processor configuration with Puppet
    • report processor, alerting with / Monitoring changes and alerting with Puppet
    • report processor, monitoring with / Monitoring changes and alerting with Puppet
    • compliance, monitoring with / Compliance monitoring with Puppet
    • and Graphite used, for tracking changes / Tracking changes with Puppet and Graphite
    • using, to drive orchestration / Using Puppet to drive orchestration
  • Puppet agent
    • about / Learning the basics of Puppet reporting
    • setting up / Setting up the Puppet agent
  • PuppetBoard
    • about / Discovering PuppetBoard
    • URL, for installing / Discovering PuppetBoard
  • Puppet configuration file
    • about / Exploring the Puppet configuration file
    • [main] configuration block / Exploring the Puppet configuration file
    • [master] configuration block / Exploring the Puppet configuration file
    • [agent] configuration block / Exploring the Puppet configuration file
  • Puppet Dashboard
    • feature list / The Puppet Dashboard feature list
    • overview / Understanding Puppet Dashboard
    • URL / Understanding Puppet Dashboard
  • Puppet Dashboard, feature list
    • ENC / The Puppet Dashboard feature list
    • Reporting / The Puppet Dashboard feature list
    • Class Discovery / The Puppet Dashboard feature list
    • PuppetDB Integration / The Puppet Dashboard feature list
    • MCollective Integration / The Puppet Dashboard feature list
  • puppetdash directory
    • about / Exploring the default puppetdash directory layout
    • widgets / Exploring the default puppetdash directory layout
    • public / Exploring the default puppetdash directory layout
    • lib / Exploring the default puppetdash directory layout
    • jobs / Exploring the default puppetdash directory layout
    • assets / Exploring the default puppetdash directory layout
    • dashboards / Exploring the default puppetdash directory layout
  • PuppetDB
    • history / A brief history of PuppetDB
    • URL, for scaling recommendations / A brief history of PuppetDB
    • installing / Installing PuppetDB
    • installing, from packages / Installing PuppetDB from packages
    • JVM heap space, increasing / Increasing the JVM heap space
    • basic query application, connecting to / Connecting to PuppetDB
    • querying, for report information / Querying PuppetDB for report information
    • query method, creating / Creating the PuppetDB query method
    • event counts, fetching / Fetching the event counts
    • events data, presenting / Presenting the events data
    • menu-driven PuppetDB application, testing / Testing our application
  • PuppetDB API
    • about / Exploring the PuppetDB query API
    • command interface / Exploring the PuppetDB query API, Understanding the command interface
    • query interface / Exploring the PuppetDB query API, Understanding the query API interface
  • PuppetDB query API
    • about / Exploring the PuppetDB query API, Understanding the query API interface
    • PuppetDB query language / A primer on the PuppetDB query language
    • endpoints / Exploring endpoints
  • PuppetDB query language
    • about / A primer on the PuppetDB query language
    • using / A primer on the PuppetDB query language
  • PuppetDB query method
    • creating / Creating the PuppetDB query method
  • PuppetDB report processor
    • about / The PuppetDB report processor
  • PuppetDB server
    • setting up / Setting up the PuppetDB server
    • PuppetDB, installing / Installing PuppetDB
    • PostgreSQL, installing / Installing PostgreSQL
  • Puppet Enterprise Console
    • about / Exploring Puppet Enterprise Console
    • Event Inspector / Event Inspector
    • Puppet Live Management / Puppet Live Management
    • URL, for downloading / Puppet Live Management
  • Puppet Forge
    • about / Understanding a report processor
    • URL / Understanding a report processor
  • Puppet Labs
    • URL / Learning the basics of Puppet reporting, Setting up the Puppet agent
  • Puppet Live Management
    • about / Puppet Live Management
  • Puppet master
    • about / Learning the basics of Puppet reporting
  • Puppet Open Source
    • using / Learning the basics of Puppet reporting
  • Puppet reporting
    • about / Learning the basics of Puppet reporting
    • features / Looking back at what we've learned
  • Puppet server
    • using / Exploring the Puppet configuration file
    • setting up / Setting up the server

R

  • replace catalog function
    • about / Understanding the command interface
  • replace facts function
    • about / Understanding the command interface
  • reporting
    • with The Foreman / Reporting with The Foreman
  • report processor
    • about / Understanding a report processor, The anatomy of a report processor
    • overview / Understanding a report processor
    • installing / Understanding a report processor
    • creating / Creating a basic report processor
    • registering / Registering your report processor
    • describing / Describing your report processor
    • processing / Processing your report
    • self.status object / Values of the self.status object
    • e-mail alert, creating / Alerting with e-mail and Puppet
    • monitoring, with Puppet / Monitoring changes and alerting with Puppet
    • alerting, with Puppet / Monitoring changes and alerting with Puppet
    • used, for creating alerts / Producing alerts
  • report processor configuration
    • managing, with Puppet / Managing your report processor configuration with Puppet
  • report processors
    • built-in report processors, utilizing / Utilizing the built-in report processors
  • reports endpoint
    • using / Using the reports endpoint
    • URL, for documentation / Using the reports endpoint
  • resources endpoint
    • about / Using the resources endpoint
    • using / Using the resources endpoint
    • URL, for documentation / Using the resources endpoint
  • REST API
    • about / A brief history of PuppetDB
  • RRD
    • about / Graphing with the rrdgraph processor
  • rrdgraph report processor
    • used, for graphing / Graphing with the rrdgraph processor
  • Ruby
    • URL, for documentation / Logging with MySQL
  • Ruby Version Manager (RVM)
    • URL, for installation / Creating a basic query application
  • rufus-scheduler
    • about / Feeding data into Dashing
    • URL / Creating new jobs in Dashing

S

  • self.status object
    • about / Values of the self.status object
    • skipped value / Values of the self.status object
    • failed value / Values of the self.status object
    • failed_to_restart value / Values of the self.status object
    • restarted value / Values of the self.status object
    • changed value / Values of the self.status object
    • out_of_sync value / Values of the self.status object
  • send_event method
    • about / Creating new jobs in Dashing
  • Sensu
    • URL / Discovering Icinga and Shinken
    • about / Discovering Icinga and Shinken
  • sequel library
    • about / Logging with MySQL
  • server-time endpoint
    • using / Using the server-time endpoint
    • URL, for documentation / Using the server-time endpoint
  • Shinken
    • discovering / Discovering Icinga and Shinken
    • URL / Discovering Icinga and Shinken
  • Shopify
    • URL / Exploring Dashing
  • Sinatra
    • about / Exploring Dashing
  • StatsD
    • used, for analysing metrics / Analyzing metrics with StatsD, Graphite, and Etsy Skyline
  • store report function
    • about / Understanding the command interface
  • store report processor
    • reports, storing with / Storing reports with the store report processor
  • strftime function
    • about / Logging with MySQL
  • strftime method
    • about / Logging with MySQL
  • Sun JDK
    • about / Installing PuppetDB
  • Syntactically Awesome Style Sheets (SASS)
    • about / Exploring the default puppetdash directory layout

T

  • table method
    • about / Outputting results
  • tagmail report processor
    • about / The tagmail report processor, Alerting with e-mail and Puppet
    • URL, for documentation / The tagmail report processor
  • The Foreman
    • about / Using The Foreman
    • using / Using The Foreman
    • reporting, with / Reporting with The Foreman
    • trends, viewing in / Looking at trends in The Foreman
  • third-party applications
    • about / A final note on third-party applications
  • third-party report processors
    • exploring / Exploring the power of third-party plugins
  • trends
    • about / Reporting with The Foreman
    • viewing, in The Foreman / Looking at trends in The Foreman
    • adding, to dashboard / Adding trends
  • Twitter
    • about / Getting social with Twitter
    • URL / Getting social with Twitter
    • installing / Getting social with Twitter

U

  • UI
    • setting up, for menu-driven PuppetDB application / Setting up the UI
  • Universally Unique Identifier (UUID)
    • about / Logging with MySQL
  • Universal Resource Identifier (URI)
    • about / Connecting to PuppetDB

V

  • version endpoint
    • using / The version endpoint
    • URL, for documentation / The version endpoint

W

  • widget, options
    • data-row tag / Creating our dashboard layout
    • data-col tag / Creating our dashboard layout
    • data-id tag / Creating our dashboard layout
    • data-view tag / Creating our dashboard layout
    • data-title tag / Creating our dashboard layout
    • additional tags / Creating our dashboard layout
  • widgets directory
    • about / Exploring the default puppetdash directory layout

X

  • XKCD
    • URL / Logging with MySQL

Y

  • YAML
    • URL / Setting up the server
lock icon The rest of the chapter is locked
arrow left Previous Section
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at €18.99/month. Cancel anytime