Title: Page 94 – Alex Kirk

---

 * 
   ## 󠀁[munin smart plugin: ignore error in the past](https://alex.kirk.at/2013/02/07/munin-smart-plugin-ignore-error-in-the-past/)󠁿
   
 * February 7, 2013
 * As a hard drive in my server failed, my [hosting provider](http://www.hetzner.de/)
   exchanged the drive with another one which obviously had some sort of error in
   its past, but now seems to be fully ok again. I would have wished to receive 
   a drive without any problems but as my server is [RAID 1](http://en.wikipedia.org/wiki/Standard_RAID_levels#RAID_1),
   I can live with that.
 * I do my monitoring with [Munin](http://munin-monitoring.org/) and for monitoring
   my hard drives I use the [smart plugin](http://munin-monitoring.org/wiki/plugin-smart_).
   Now this plugin also monitors the exit code of smartctl, where smartctl sets 
   bit no 6 if there was an error in the past, so now while everything is alright,
   the exit code is always numeric 64.
 * Now the smart plugin reports this as an error, if the exit code is > 0, i.e. 
   now it always reports a problem.
 * I could set the threshold to 65, but then I wouldn’t be notified of other errors
   which essentially makes the plugin useless.
 * I asked at Serverfault but [no one seems to have a solution for that](http://serverfault.com/questions/461456/munins-smart-plugin-keeps-reporting-an-error-in-the-past-because-of-the-exit-co/461457).
 * So I attacked the problem on my own and patched the plugin. In the source code
   the important line is here:
 * `
    if exit_status!=None : # smartctl exit code is a bitmask, check man page. 
   num_exit_status=int(exit_status/256)
 * which I have modified to look like this:
    ` if exit_status!=None : # smartctl
   exit code is a bitmask, check man page. num_exit_status=int(exit_status/256) #
   filter out bit 6 num_exit_status &= 191 if num_exit_status<=2 : exit_status=None
   if exit_status!=None :
 * Now it doesn't bug me anymore when bit 6 is set, but if any other bit goes on
   again, I will still be notified. The most interesting part is the line where 
   there is a bitwise operation with 191: this is 0x11011111 in binary, so doing
   an AND operation with the current value it will just set bit no 6 to 0 while 
   letting the other values untouched.
 * Therefore a value of 64 (as mine does) will be reported as 0 while a value of
   8 would remain at 8. But also, very importantly, a value of 72 (bit 6 set as 
   always and bit 3 set because the disk is failing) it would also report 8.
 * And there we have another reason, why it is good to be firm with knowledge about
   how bits and bytes behave in a computer. Saved me from a warning message every
   5 minutes :-)
 * [Code](https://alex.kirk.at/category/code/), [linux](https://alex.kirk.at/category/code/linux/)
 * 
   ## 󠀁[Genial Daneben Analyse](https://alex.kirk.at/2012/12/23/genial-daneben-analyse/)󠁿
   
 * December 23, 2012
 * Zur Abwechslung mal ein Post auf deutsch. Ich bin Fan der (inzwischen abgesetzten)
   Fernsehsendung Genial daneben. Es gibt da eine [Genial Daneben Datenbank](http://genialdaneben.beepworld.de/)
   mit (nahezu) allen Fragen, die in den Sendungen vorkamen. Ohne konkreten Nutzen
   habe ich diese Daten aus der Text-Form in eine echte Datenbank konviertiert (
   [Script hier](https://alex.kirk.at/dl/genial-daneben.zip?output_format=md&term_id=1122))
   und bin zu folgender Tabelle gekommen. Für alle die es interessiert:
 * Fragen: 2732 (1087 beantwortet, das sind fast 40%)
 *   |  Teilnehmer |  Teilnahmen |  gelöst |  gelöst pro Teilnahme |  
      |  Bernhard
   Hoecker |  399 |  223 |  0.56 |  
    |  Hella von Sinnen |  390 |  202 |  0.52 
   |  
    |  Wigald Boning |  120 |  56 |  0.47 |  
    |  Guido Cantz |  96 |  51 |  
   0.53 |  
    |  Barbara Schöneberger |  62 |  14 |  0.23 |  
    |  Dieter Nuhr |  
   62 |  18 |  0.29 |  
    |  Bastian Pastewka |  62 |  6 |  0.10 |  
    |  Ralf Schmitz
   |  60 |  6 |  0.10 |  
    |  Oliver Kalkofe |  55 |  6 |  0.11 |  
    |  Herbert 
   Feuerstein |  47 |  25 |  0.53 |  
    |  Georg Uecker |  39 |  13 |  0.33 |  
    
   |  Olli Dittrich |  38 |  11 |  0.29 |  
    |  Oliver Welke |  37 |  11 |  0.30
   |  
    |  Ingo Appelt |  32 |  8 |  0.25 |  
    |  Martin Schneider |  31 |  0 |  
   0.00 |  
    |  Michael Kessler |  29 |  6 |  0.21 |  
    |  Thomas Hermanns |  27
   |  7 |  0.26 |  
    |  Anke Engelke |  26 |  8 |  0.31 |  
    |  Matze Knop |  23
   |  2 |  0.09 |  
    |  Christoph Maria Herbst |  20 |  3 |  0.15 |  
    |  Mario 
   Barth |  20 |  8 |  0.40 |  
    |  Jürgen von der Lippe |  19 |  3 |  0.16 |  
   
   |  Lou Richter |  19 |  7 |  0.37 |  
    |  Ingo Oschmann |  13 |  2 |  0.15 |  
   
   |  Guildo Horn |  13 |  1 |  0.08 |  
    |  Dirk Bach |  12 |  3 |  0.25 |  
    |
   Kim Fisher |  12 |  1 |  0.08 |  
    |  Urban Priol |  10 |  2 |  0.20 |  
    |  
   Cordula Stratmann |  9 |  0 |  0.00 |  
    |  Eckart von Hirschhausen |  9 |  0
   |  0.00 |  
    |  Tetje Mierendorf |  8 |  0 |  0.00 |  
    |  Oliver Pocher |  8
   |  0 |  0.00 |  
    |  Bodo Bach |  8 |  0 |  0.00 |  
    |  Hennes Bender |  7 |
   1 |  0.14 |  
    |  Rüdiger Hoffmann |  7 |  0 |  0.00 |  
    |  Elton |  7 |  1 
   |  0.14 |  
    |  Johann Köhnich |  7 |  0 |  0.00 |  
    |  Bürger Lars Dietrich
   |  7 |  2 |  0.29 |  
    |  Helge Schneider |  7 |  7 |  1.00 |  
    |  Anka Zink
   |  6 |  0 |  0.00 |  
    |  Hans Werner Olm |  6 |  0 |  0.00 |  
    |  Cindy aus
   Marzahn |  6 |  0 |  0.00 |  
    |  Kaya Yanar |  5 |  2 |  0.40 |  
    |  Mike Krüger
   |  5 |  2 |  0.40 |  
    |  Horst Lichter |  5 |  2 |  0.40 |  
    |  Susanne Pätzold
   |  5 |  1 |  0.20 |  
    |  Jochen Busse |  5 |  1 |  0.20 |  
    |  Karl Dall |  
   5 |  0 |  0.00 |  
    |  Mirja Regensburg |  4 |  1 |  0.25 |  
    |  Oli Petszokat
   |  4 |  2 |  0.50 |  
    |  Janine Kunze |  4 |  0 |  0.00 |  
    |  Michael Mittermeier
   |  4 |  0 |  0.00 |  
    |  Paul Panzer |  3 |  0 |  0.00 |  
    |  Florian Schroeder
   |  3 |  0 |  0.00 |  
    |  Konrad Stöckel |  3 |  2 |  0.67 |  
    |  Axel Stein
   |  3 |  0 |  0.00 |  
    |  Gayle Tufts |  3 |  1 |  0.33 |  
    |  Verona Pooth 
   |  3 |  1 |  0.33 |  
    |  Zack Michalowski |  2 |  0 |  0.00 |  
    |  Atze Schröder
   |  2 |  1 |  0.50 |  
    |  Emily Wood |  2 |  1 |  0.50 |  
    |  Susanne Fröhlich
   |  2 |  0 |  0.00 |  
    |  Gabi Decker |  2 |  0 |  0.00 |  
    |  Helfried |  2
   |  1 |  0.50 |  
    |  Mirja Boes |  2 |  1 |  0.50 |  
    |  April Hailer |  2 |
   0 |  0.00 |  
    |  Michael “Bully” Herbig |  2 |  1 |  0.50 |  
    |  Roberto Cappelluti
   |  2 |  0 |  0.00 |  
    |  Olaf Schubert |  2 |  0 |  0.00 |  
    |  Sissi Perlinger
   |  2 |  0 |  0.00 |  
    |  Ottfried Fischer |  2 |  0 |  0.00 |  
    |  Klaus Eberhartinger
   |  2 |  0 |  0.00 |  
    |  Rick Kavanian |  2 |  0 |  0.00 |  
    |  Lisa Feller
   |  1 |  0 |  0.00 |  
    |  Sascha Korf |  1 |  0 |  0.00 |  
    |  Marc Metzger 
   |  1 |  0 |  0.00 |  
    |  Joachim Fuchsberger |  1 |  1 |  1.00 |  
    |  Martin
   Klempnow |  1 |  0 |  0.00 |  
    |  Tom Gerhard |  1 |  0 |  0.00 |  
    |  Ralph
   Morgenstern |  1 |  1 |  1.00 |  
    |  Valerie Bolzano |  1 |  0 |  0.00 |  
    
   |  Kurt Krömer |  1 |  0 |  0.00 |  
    |  Hubertus Meyer-Burkhardt |  1 |  0 |
   0.00 |  
    |  Smudo |  1 |  1 |  1.00 |  
    |  Badesalz (Gerd Knebel und Hendrik
   Nachtsheim) |  1 |  0 |  0.00 |  
    |  Markus Maria Profitlich |  1 |  1 |  1.00
   |  
    |  Sven Nagel |  1 |  0 |  0.00 |  
    |  Bernd Stelter |  1 |  0 |  0.00 
   |  
    |  Matthias Matschke |  1 |  0 |  0.00 |  
    |  Otto Waalkes |  1 |  0 |  
   0.00 |  
    |  Till Hoheneder |  1 |  0 |  0.00 |  
    |  Waldemar Hartmann |  1 
   |  0 |  0.00 |  
    |  Lisa Fitz |  1 |  0 |  0.00 |  
    |  Fatih Cevikkollu |  
   1 |  0 |  0.00 |  
    |  Matze Knop (als Franz Beckenbauer) |  1 |  0 |  0.00 |
   
   |  Ralf Morgenstern |  1 |  0 |  0.00 |  
    |  Ulrike von der Gröben |  1 |  0
   |  0.00 |
 * Ich habe den Großteil der Daten nicht überprüft, aber im Groben dürfte es stimmen.
 * [Web](https://alex.kirk.at/category/web/)

 [Previous Page](https://alex.kirk.at/page/93/?output_format=md&term_id=1122) [Next Page](https://alex.kirk.at/page/95/?output_format=md&term_id=1122)