SlideShare a Scribd company logo
How do I write check plugins?!
● Write in any language!
● (Maybe not COBOL)
● State is determined by exit
code
● Check Output is just console
output
● Performance Data is space
seperated list after pipe
symbol
Mattis Haase Icinga Camp Berlin 2017
Status Exit Code
OK 0
WARNING 1
CRITICAL 2
UNKNOWN 3
print(“Output!”)
print(“Output!|key1=1 key2=2”)
But how does it work, really?
1. Gather Information
2. Parse Information
3. Internal Logic
4. Translate to Human
Mattis Haase Icinga Camp Berlin 2017
Maybe 10 lines of code
Tricky Part!
This Talk!

More Related Content

PPTX
Icinga Camp Berlin 2017 - Welcome & State of Icinga
Icinga
 
PPTX
Icinga Camp Berlin 2017 - Icinga Web 2 - How to Write Modules
Icinga
 
PPTX
Icinga Camp Berlin 2017 - Integrations all the way
Icinga
 
PDF
Icinga Camp Berlin 2017 - Train IT Platform Monitoring
Icinga
 
PDF
Icinga Camp Berlin 2017 - Thruk - Just another Icinga Web Frontend
Icinga
 
PDF
Icinga Camp San Diego 2016 - Apify them all
Icinga
 
PDF
Icinga Camp San Francisco 2017 - Icinga Director - Managing your configuration
Icinga
 
PDF
Icinga Camp San Diego 2016 - Icinga Director
Icinga
 
Icinga Camp Berlin 2017 - Welcome & State of Icinga
Icinga
 
Icinga Camp Berlin 2017 - Icinga Web 2 - How to Write Modules
Icinga
 
Icinga Camp Berlin 2017 - Integrations all the way
Icinga
 
Icinga Camp Berlin 2017 - Train IT Platform Monitoring
Icinga
 
Icinga Camp Berlin 2017 - Thruk - Just another Icinga Web Frontend
Icinga
 
Icinga Camp San Diego 2016 - Apify them all
Icinga
 
Icinga Camp San Francisco 2017 - Icinga Director - Managing your configuration
Icinga
 
Icinga Camp San Diego 2016 - Icinga Director
Icinga
 

Viewers also liked (20)

PPTX
Icinga Camp San Diego 2016 - Opening
Icinga
 
PDF
Icinga Camp San Diego 2016 - Unrealized Role of Monitoring
Icinga
 
ODP
Icinga Camp Berlin 2017 - How to write check plugins, part 2
Icinga
 
PPTX
Icinga Camp Amsterdam - Monitoring – When to start
Icinga
 
PPTX
IcingaCamp Stockholm - Icinga Web2
Icinga
 
ODP
Icinga Camp Amsterdam - Infrastructure as Code
Icinga
 
PPTX
Icinga Camp San Diego 2016 - Icinga Web 2
Icinga
 
PPTX
Monitoring as code
Icinga
 
PDF
Icinga Camp San Diego 2016 - Enter the Metrics
Icinga
 
PPTX
Icinga Camp San Francisco 2017 - Current State of Icinga
Icinga
 
PPTX
Icinga Camp Belgrade - State of Icinga
Icinga
 
PPTX
Presentation about Icinga at Kiratech DevOps Day in Verona
Icinga
 
PDF
Icinga Camp San Diego: Apify them all
Icinga
 
PDF
Icinga Camp Amsterdam - Icinga Director
Icinga
 
ODP
Icinga Camp Belgrade - ITAF Introduction
Icinga
 
PDF
IcingaCamp Stockholm - NSClient++
Icinga
 
PDF
Icinga 2 - Apify them all at Icinga Camp Amsterdam 2016
Icinga
 
PDF
IcingaCamp Stockholm - How to make your monitoring shut up
Icinga
 
PDF
Icinga Camp Amsterdam - Icinga2 and Ansible
Icinga
 
PPTX
IcingaCamp Stockholm - Opening
Icinga
 
Icinga Camp San Diego 2016 - Opening
Icinga
 
Icinga Camp San Diego 2016 - Unrealized Role of Monitoring
Icinga
 
Icinga Camp Berlin 2017 - How to write check plugins, part 2
Icinga
 
Icinga Camp Amsterdam - Monitoring – When to start
Icinga
 
IcingaCamp Stockholm - Icinga Web2
Icinga
 
Icinga Camp Amsterdam - Infrastructure as Code
Icinga
 
Icinga Camp San Diego 2016 - Icinga Web 2
Icinga
 
Monitoring as code
Icinga
 
Icinga Camp San Diego 2016 - Enter the Metrics
Icinga
 
Icinga Camp San Francisco 2017 - Current State of Icinga
Icinga
 
Icinga Camp Belgrade - State of Icinga
Icinga
 
Presentation about Icinga at Kiratech DevOps Day in Verona
Icinga
 
Icinga Camp San Diego: Apify them all
Icinga
 
Icinga Camp Amsterdam - Icinga Director
Icinga
 
Icinga Camp Belgrade - ITAF Introduction
Icinga
 
IcingaCamp Stockholm - NSClient++
Icinga
 
Icinga 2 - Apify them all at Icinga Camp Amsterdam 2016
Icinga
 
IcingaCamp Stockholm - How to make your monitoring shut up
Icinga
 
Icinga Camp Amsterdam - Icinga2 and Ansible
Icinga
 
IcingaCamp Stockholm - Opening
Icinga
 
Ad

More from Icinga (20)

PDF
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
Icinga
 
PDF
Extending Icinga Web with Modules: powerful, smart and easily created - Icing...
Icinga
 
PDF
Infrastructure Monitoring for Cloud Native Enterprises - Icinga Camp Milan 2023
Icinga
 
PDF
Incident management: Best industry practices your team should know - Icinga C...
Icinga
 
PDF
Monitoring Cooling Units in a pharmaceutical GxP regulated environment - Icin...
Icinga
 
PDF
SNMP Monitoring at scale - Icinga Camp Milan 2023
Icinga
 
PPTX
Monitoring Kubernetes with Icinga - Icinga Camp Milan 2023
Icinga
 
PPTX
Current State of Icinga - Icinga Camp Milan 2023
Icinga
 
PDF
Efficient IT operations using monitoring systems and standardized tools - Ici...
Icinga
 
PPTX
Tornado Complex Event Processing Framework for Icinga - Icinga Camp Zurich 2019
Icinga
 
PDF
Signalilo: Visualizing Prometheus alerts in Icinga2 - Icinga Camp Zurich 2019
Icinga
 
PDF
Moving from Icinga 1 to Icinga 2 + Director - Icinga Camp Zurich 2019
Icinga
 
PDF
Icinga Director and vSphereDB - how they play together - Icinga Camp Zurich 2019
Icinga
 
PDF
Current State of Icinga - Icinga Camp Zurich 2019
Icinga
 
PDF
NetEye 4 based on Icinga 2 - Icinga Camp Milan 2019
Icinga
 
PDF
Integrating Icinga 2 and ntopng - Icinga Camp Milan 2019
Icinga
 
PDF
DevOps monitoring: Best Practices using OpenShift combined with Icinga & Big ...
Icinga
 
PPTX
Current State of Icinga - Icinga Camp Milan 2019
Icinga
 
PPTX
Best of Icinga Modules - Icinga Camp Milan 2019
Icinga
 
PPTX
hallenges of Monitoring Big Infrastructure - Icinga Camp Milan 2019
Icinga
 
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
Icinga
 
Extending Icinga Web with Modules: powerful, smart and easily created - Icing...
Icinga
 
Infrastructure Monitoring for Cloud Native Enterprises - Icinga Camp Milan 2023
Icinga
 
Incident management: Best industry practices your team should know - Icinga C...
Icinga
 
Monitoring Cooling Units in a pharmaceutical GxP regulated environment - Icin...
Icinga
 
SNMP Monitoring at scale - Icinga Camp Milan 2023
Icinga
 
Monitoring Kubernetes with Icinga - Icinga Camp Milan 2023
Icinga
 
Current State of Icinga - Icinga Camp Milan 2023
Icinga
 
Efficient IT operations using monitoring systems and standardized tools - Ici...
Icinga
 
Tornado Complex Event Processing Framework for Icinga - Icinga Camp Zurich 2019
Icinga
 
Signalilo: Visualizing Prometheus alerts in Icinga2 - Icinga Camp Zurich 2019
Icinga
 
Moving from Icinga 1 to Icinga 2 + Director - Icinga Camp Zurich 2019
Icinga
 
Icinga Director and vSphereDB - how they play together - Icinga Camp Zurich 2019
Icinga
 
Current State of Icinga - Icinga Camp Zurich 2019
Icinga
 
NetEye 4 based on Icinga 2 - Icinga Camp Milan 2019
Icinga
 
Integrating Icinga 2 and ntopng - Icinga Camp Milan 2019
Icinga
 
DevOps monitoring: Best Practices using OpenShift combined with Icinga & Big ...
Icinga
 
Current State of Icinga - Icinga Camp Milan 2019
Icinga
 
Best of Icinga Modules - Icinga Camp Milan 2019
Icinga
 
hallenges of Monitoring Big Infrastructure - Icinga Camp Milan 2019
Icinga
 
Ad

Recently uploaded (20)

PPT
1965 INDO PAK WAR which Pak will never forget.ppt
sanjaychief112
 
PPTX
Slides Powerpoint: Eco Economic Epochs.pptx
Steven McGee
 
PDF
Cybersecurity Awareness Presentation ppt.
banodhaharshita
 
PPTX
办理方法西班牙假毕业证蒙德拉贡大学成绩单MULetter文凭样本
xxxihn4u
 
PDF
KIPER4D situs Exclusive Game dari server Star Gaming Asia
hokimamad0
 
PPTX
The Monk and the Sadhurr and the story of how
BeshoyGirgis2
 
PPTX
Artificial-Intelligence-in-Daily-Life (2).pptx
nidhigoswami335
 
PDF
UI/UX Developer Guide: Tools, Trends, and Tips for 2025
Penguin peak
 
PPTX
LESSON-2-Roles-of-ICT-in-Teaching-for-learning_123922 (1).pptx
renavieramopiquero
 
PDF
LB# 820-1889_051-7370_C000.schematic.pdf
matheusalbuquerqueco3
 
PDF
Latest Scam Shocking the USA in 2025.pdf
onlinescamreport4
 
PPT
Introduction to dns domain name syst.ppt
MUHAMMADKAVISHSHABAN
 
PPTX
Perkembangan Perangkat jaringan komputer dan telekomunikasi 3.pptx
Prayudha3
 
PPTX
How tech helps people in the modern era.
upadhyayaryan154
 
PPTX
Google SGE SEO: 5 Critical Changes That Could Wreck Your Rankings in 2025
Reversed Out Creative
 
PPTX
Crypto Recovery California Services.pptx
lionsgate network
 
PDF
Data Protection & Resilience in Focus.pdf
AmyPoblete3
 
PDF
The Internet of Things (IoT) refers to a vast network of interconnected devic...
chethana8182
 
PPTX
Different Generation Of Computers .pptx
divcoder9507
 
PPTX
谢尔丹学院毕业证购买|Sheridan文凭不见了怎么办谢尔丹学院成绩单
mookxk3
 
1965 INDO PAK WAR which Pak will never forget.ppt
sanjaychief112
 
Slides Powerpoint: Eco Economic Epochs.pptx
Steven McGee
 
Cybersecurity Awareness Presentation ppt.
banodhaharshita
 
办理方法西班牙假毕业证蒙德拉贡大学成绩单MULetter文凭样本
xxxihn4u
 
KIPER4D situs Exclusive Game dari server Star Gaming Asia
hokimamad0
 
The Monk and the Sadhurr and the story of how
BeshoyGirgis2
 
Artificial-Intelligence-in-Daily-Life (2).pptx
nidhigoswami335
 
UI/UX Developer Guide: Tools, Trends, and Tips for 2025
Penguin peak
 
LESSON-2-Roles-of-ICT-in-Teaching-for-learning_123922 (1).pptx
renavieramopiquero
 
LB# 820-1889_051-7370_C000.schematic.pdf
matheusalbuquerqueco3
 
Latest Scam Shocking the USA in 2025.pdf
onlinescamreport4
 
Introduction to dns domain name syst.ppt
MUHAMMADKAVISHSHABAN
 
Perkembangan Perangkat jaringan komputer dan telekomunikasi 3.pptx
Prayudha3
 
How tech helps people in the modern era.
upadhyayaryan154
 
Google SGE SEO: 5 Critical Changes That Could Wreck Your Rankings in 2025
Reversed Out Creative
 
Crypto Recovery California Services.pptx
lionsgate network
 
Data Protection & Resilience in Focus.pdf
AmyPoblete3
 
The Internet of Things (IoT) refers to a vast network of interconnected devic...
chethana8182
 
Different Generation Of Computers .pptx
divcoder9507
 
谢尔丹学院毕业证购买|Sheridan文凭不见了怎么办谢尔丹学院成绩单
mookxk3
 

Icinga Camp Berlin 2017 - How to write check plugins, part 1

  • 1. How do I write check plugins?! ● Write in any language! ● (Maybe not COBOL) ● State is determined by exit code ● Check Output is just console output ● Performance Data is space seperated list after pipe symbol Mattis Haase Icinga Camp Berlin 2017 Status Exit Code OK 0 WARNING 1 CRITICAL 2 UNKNOWN 3 print(“Output!”) print(“Output!|key1=1 key2=2”)
  • 2. But how does it work, really? 1. Gather Information 2. Parse Information 3. Internal Logic 4. Translate to Human Mattis Haase Icinga Camp Berlin 2017 Maybe 10 lines of code Tricky Part! This Talk!