Archive for Mai, 2011

Photo-Tisch für Detailaufnahmen

Dienstag, Mai 24th, 2011

Ich habe vor kurzem ein paar Detailaufnahmen von Gewürzgläsern gemacht. Um sie vor einem neutralen, aber nicht flächigen Hintergrund photographieren zu können, habe ich mir einen Photo-Tisch improvisiert.

Er bestand aus zwei Balkonstühlen und einem Balkontisch. Der Tisch steht so auf den Stühlen, dass die Tischplatte über der Balustrade ist, und somit nicht im Schatten liegt. Die Sonne kommt in den Morgenstunden von rechts, und ist somit optimal. Es fehlt nur noch ein wenig Füll-Licht von links, das ich in der nächsten Auflage eventuell noch ergänzen werde.

SNMP-Traps per EEM generieren

Donnerstag, Mai 19th, 2011

Kürzlich habe ich darüber geschrieben, wie man die Alarm-Kontakte an einem Cisco Metro Ethernet Switch, z.B. dem Modell ME 3400EG-2CS-A, nutzen kann. Allerdings hat offenbar Cisco — mal wieder — das nützlichste Feature vergessen, nämlich die Möglichkeit, SNMP-Traps hierzu zu generieren.

Alles, was man bekommt, sind Log-Meldungen, die z.B. so aussehen:

%PLATFORM_ENV-1-EXTERNAL_ALARM_CONTACT_ASSERT:
Alarm asserted: Door
%PLATFORM_ENV-1-EXTERNAL_ALARM_CONTACT_CLEAR:
Alarm cleared: Door

Zum Glück hat man aber heutzutage den Embedded Event Manager zur Verfügung. Hiermit kann man aus den Logmeldungen auch SNMP-Traps generieren:

event manager applet DoorOpen
 event syslog occurs 1 pattern "%PLATFORM_ENV-1-EXTERNAL_ALARM_CONTACT_ASSERT:"
 action 1.0 snmp-trap intdata1 1 intdata2 2 strdata "Door Opened"
event manager applet DoorClose
 event syslog occurs 1 pattern "%PLATFORM_ENV-1-EXTERNAL_ALARM_CONTACT_CLEAR:"
 action 1.0 snmp-trap intdata1 1 intdata2 0 strdata "Door Closed"

Hierbei wird in den Trap-Parametern die Sensor-Nummer 1 sowie der Status als entsprechender Code für das auswertende Nagios-Plugin übermittelt. Der Trap enthält somit diese Daten:

SNMPv2-SMI::enterprises.9.10.91.1.2.3.1.9.11 = INTEGER: 1#011
SNMPv2-SMI::enterprises.9.10.91.1.2.3.1.10.11 = INTEGER: 2#011
SNMPv2-SMI::enterprises.9.10.91.1.2.3.1.11.11 = STRING: “Door Closed”#011

Heidelbeerernte 2010

Dienstag, Mai 17th, 2011

Letztes Jahr haben wir Buch geführt über die Anzahl der Heidelbeeren, die an unseren zwei Heidelbeerpflanzen im Balkonkasten gewachsen sind — am Ende waren es 195 Stück. Wir werden es dieses Jahr wiederholen, und sind gespannt wie sich der Ertrag entwickelt.

dyerware.com


Alarm-Kontakt Cisco ME 3400EG-2CS-A

Donnerstag, Mai 12th, 2011

Bei einigen Cisco-Switches der Metro Ethernet Serie ist ein praktischer Alarm-Port eingebaut. Diesen kann man z.B. verwenden, um einen verschlossenen Verteilerkasten beim Kunden zu überwachen. Leider findet man bei Cisco hierzu nur eine kurze Notiz im Installation Guide:

Alarm Input Port

The switch supports four alarm inputs. The alarm input is a dry-contact alarm port. Use the CLI to define each alarm input to respond to a normally open or closed dry-contact closure and to define the alarm severity as minor, major, or critical. When a condition triggers an alarm, the console displays an alarm message, and the corresponding Alarm LED responds (see the “Alarm LEDs” section).

Welche Pins hierfür benutzt werden müssen geht hieraus leider nicht hervor. Durch Tests habe ich allerdings an unserem Cisco ME 3400EG-12CS-M folgende Belegung ermitteln können:

Pin Signal Farbe (T568A)
1 Alarm1 weiß/grün
2 Alarm2 grün
3 weiß/orange
4 Alarm3 blau
5 Alarm4 weiß/blau
6 orange
7 weiß/braun
8 Masse braun

Die Konfiguration im IOS ist dann entsprechend der Dokumentation schnell erledigt, z.B. wenn an Port 1 der Normalzustand “Geschlossen” ist:

alarm-contact 1 description door
alarm-contact 1 severity critical
alarm-contact 1 trigger open

Update: In der Zwischenzeit ist auch die Dokumentation Configuring Switch Alarms bei Cisco verfügbar geworden

Stärke einer Spiegelreflex-Kamera

Dienstag, Mai 10th, 2011

Diese zwei Photos zeigen sehr deutlich, warum man zum photographieren mehr braucht als ein iPhone oder eine kleine kompakte Digitalkamera. Nur mit einer “ordentlichen” Kamera kann man die Parameter so beeinflussen, dass nicht das ganze Bild scharf ist, sondern dass der Vordergrund scharf ist, oder aufgrund einer offenen Blende verschwimmt. Diese beiden Photos sind von der selben Position aus aufgenommen, nur mit unterschiedlicher Fokussierung.

Lesbares dmesg time Format unter Linux

Donnerstag, Mai 5th, 2011

Linux hat leider die unangenehme Angewohnheit, im dmesg nur relative Zeitangaben zu speichern. Diese beziehen sich auf den Systemstart, also die Uptime. Wenn man also folgendes im dmesg findet, weiss man nicht, wann das Ereignis aufgetreten ist:

[6509063.707779] md: data-check of RAID array md0
[6509063.707784] md: minimum _guaranteed_  speed: 1000 KB/sec/disk.
[6509063.707787] md: using maximum available idle IO bandwidth (but not more than 
	200000 KB/sec) for data-check.
[6509063.707794] md: using 128k window, over a total of 20482752 blocks.
[6509063.708619] md: md0: data-check done.

Um diese Angaben in absolute Datumswerte zu überführen, habe ich folgendes Skript gefunden:

#!/usr/bin/perl -w

use strict;
chomp (my $uptime = `cat /proc/uptime`);
$uptime =~ s/^([\d\.]+)\s+.*/$1/;
my $time = time;
open(CMD,"dmesg|") || die "$!\n";
while(<CMD>) {
        if (/^\[\s*(\d+)\.\d+\s*\]\s+(.*$)/) {
                my $event = $time -($uptime - $1);
                $event = scalar(localtime($event));
                print "$event: $2\n";
        } else { print; }
}       
close;

Das Ergebnis sind folgende, deutlich lesbarere Zeilen:

Sun May  1 00:57:00 2011: md: data-check of RAID array md0
Sun May  1 00:57:00 2011: md: minimum _guaranteed_  speed: 1000 KB/sec/disk.
Sun May  1 00:57:00 2011: md: using maximum available idle IO bandwidth (but not more than 
	200000 KB/sec) for data-check.
Sun May  1 00:57:00 2011: md: using 128k window, over a total of 20482752 blocks.
Sun May  1 00:57:00 2011: md: md0: data-check done.

Hamburger Aussichten

Dienstag, Mai 3rd, 2011

Hier ein paar Blicke vom Hamburger Michel auf den Fernsehturm und die Nikolaikirche.