abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 10:55 | Pozvánky

    Organizátoři konference LinuxDays ukončili veřejné přihlašování přednášek. Teď je na vás, abyste vybrali nejlepší témata, která na letošní konferenci zaznějí. Hlasovat můžete do neděle 7. září. Poté podle výsledků hlasování organizátoři sestaví program pro letošní ročník. Konference proběhne 4. a 5. října v Praze.

    Petr Krčmář | Komentářů: 8
    dnes 02:22 | Nová verze

    Byla vydána verze 11.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 06:00 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma. Vypíchnout lze, že v Plasmě byl implementován 22letý požadavek. Historie schránky nově umožňuje ohvězdičkovat vybrané položky a mít k ním trvalý a snadný přístup.

    Ladislav Hagara | Komentářů: 0
    30.8. 20:00 | Nová verze

    Wayfire, kompozitní správce oken běžící nad Waylandem a využívající wlroots, byl vydán ve verzi 0.10.0. Zdrojové kódy jsou k dispozici na GitHubu. Videoukázky na YouTube.

    Ladislav Hagara | Komentářů: 0
    30.8. 04:00 | Komunita

    Před necelými čtyřmi měsíci byl Steven Deobald jmenován novým výkonným ředitelem GNOME Foundation. Včera skončil, protože "nebyl pro tuto roli v tento čas ten pravý".

    Ladislav Hagara | Komentářů: 7
    29.8. 18:33 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 156 (pdf).

    Ladislav Hagara | Komentářů: 1
    29.8. 15:11 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 25.8.1. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 0
    29.8. 12:11 | IT novinky

    Včera večer měl na YouTube premiéru dokumentární film Python: The Documentary | An origin story.

    Ladislav Hagara | Komentářů: 0
    28.8. 23:33 | Nová verze

    Společnost comma.ai po třech letech od vydání verze 0.9 vydala novou verzi 0.10 open source pokročilého asistenčního systému pro řidiče openpilot (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    28.8. 21:55 | Nová verze Ladislav Hagara | Komentářů: 4
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (81%)
     (8%)
     (2%)
     (3%)
     (4%)
     (1%)
    Celkem 124 hlasů
     Komentářů: 9, poslední 28.8. 11:53
    Rozcestník

    Dotaz: Nagios a nahrazení návratové hodnoty za text

    13.10.2022 14:52 PD321 | skóre: 4
    Nagios a nahrazení návratové hodnoty za text
    Přečteno: 381×
    Kontroluju prostřednictvím Nagiosu stav zařízení přes SNMP. V některých případech dostávám chybový kód v podobě čísla. Protože si je nepamatuji chtěl bych je nahradit číslem:

    check_command check_snmp! -C "heslo" -r 2 -P 2c -o 1.3.6.1.4.1.25506.2.6.1.1.1.1.19.68 | sed 's/41/Fan error/g' | sed 's/2/Normal/g'

    Takhle mi to funguje a chyba 41 je nahrazena textem "Fan error" a 2 zase "Normal". Chtěl jsem, aby pokud návratová hodnota není 2 (Normal) aby se vyvolal poplach. Jenže při použití roury a SEDu to Nagios vyhodnotí zeleně jako "Status OK" a přitom v posledním sloupci je "Status Information - SNMP CRITICAL - *Fan error*". Když tu část se SEDem kompletně odstraním:

    check_command check_snmp! -C "heslo" -r 2 -P 2c -o 1.3.6.1.4.1.25506.2.6.1.1.1.1.19.68

    tak se situace vyhodnotí červeně jako "Status CRITICAL" a "Status Information - SNMP CRITICAL - *Fan error*" a pošle email. Jenže pak mám místo slovního hodnocení opět jenom číslo. Nenapdá vás jak tam zachovat slovní popis závady a zároveň správné vyhodnocení chyby? Díky

    Řešení dotazu:


    Odpovědi

    13.10.2022 15:12 X
    Rozbalit Rozbalit vše Re: Nagios a nahrazení návratové hodnoty za text
    Tahle to asi nepujde. Nagios si hlida navratovy kod toho pluginu. Jako reseni se nabizi si proste vyrobit vlastni upraveny plugin, ktery bude vracet text a zaroven spravny navratovy kod.
    13.10.2022 16:04 PD321 | skóre: 4
    Rozbalit Rozbalit vše Re: Nagios a nahrazení návratové hodnoty za text
    Ale v případě čtení seriového čísla, kdy to vrací text a nikoliv číslo, mě to takhle funguje

    check_command check_snmp! -C "heslo" -r CNx -P 2c -o SNMPv2-SMI::mib-2.47.1.1.1.1.11.2

    Pokud S/N neobsahuje CNx, tak vyhlásí poplach:
    Status CRITICAL
    Status Information SNMP CRITICAL - *"CN28F610GH"*
    13.10.2022 17:27 X
    Rozbalit Rozbalit vše Re: Nagios a nahrazení návratové hodnoty za text
    To je funkce prepinace '-r', jak to souvisi s tvym pozdavkem?
    13.10.2022 23:34 PD321 | skóre: 4
    Rozbalit Rozbalit vše Re: Nagios a nahrazení návratové hodnoty za text
    Asi jsem zaměnil pojmy text a návratová hodnota. Návratová hodnota je správná do doby, než se výstup skriptu pokusím upravit pomocí SEDu. Pravděpodobně přitom nějak znehodnotím návratovou hodnotu "2-critical" na OK. Tak že můj upravený dotaz zní: lze nějak upravit text ("42" na "Chyba chladiče") tak, abych přitom nezměnil návratovou hodnout?

    Dík
    Max avatar 14.10.2022 00:20 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: Nagios a nahrazení návratové hodnoty za text
    Návratová hodnota určuje stavy. Nevím, zda to jde, ale pokud by jsi změnil návratovou hodnotu sedu, tak by to znamenalo, že příkaz "sed" neproběhl správně. I kdyby to šlo, není to dobrý nápad. Zabal to třeba do bash scriptu a budeš to mít čistě a bez problémů.
    Zdar Max
    Měl jsem sen ... :(
    14.10.2022 19:34 PD321 | skóre: 4
    Rozbalit Rozbalit vše Re: Nagios a nahrazení návratové hodnoty za text
    Možná hloupá otázka, ale kde se zjeví návratová hodnota? Když check_snmp spustím přímo v Bashi, tak dostanu

    SNMP CRITICAL - *41* | iso.3.6.1.4.1.25506.2.6.1.1.1.1.19.92=41
    14.10.2022 20:26 X
    Rozbalit Rozbalit vše Re: Nagios a nahrazení návratové hodnoty za text
    Vystup na stdout neni navratova hodnota.

    https://github.com/nagios-plugins/nagios-plugins/blob/e362e3f13d69719068fc36a21bd0f85b2cc7f2bf/plugins/check_snmp.c#L731

    Pokud tomu nerozumis bude lepsi nechat to v tom stavu v jakem to mas..
    14.10.2022 22:39 PD321 | skóre: 4
    Rozbalit Rozbalit vše Re: Nagios a nahrazení návratové hodnoty za text
    Než se náležitě dovzdělám, obešel jsem problém parametrem -u a místo jednotek jsem tam nacpal nápovědu.
    14.10.2022 12:59 čavo | skóre: 15
    Rozbalit Rozbalit vše Re: Nagios a nahrazení návratové hodnoty za text
    Priznám, že netuším na čo reaguje nagios, či na text, alebo návratovú hodnotu.

    Ak na hodnotu, tak si ju treba odložiť a následne po skončení nahradzovania poslať:
    docasnysubor=`mktemp`
    check_command check_snmp! -C "heslo" -r 2 -P 2c -o 1.3.6.1.4.1.25506.2.6.1.1.1.1.19.68 > $docasnysubor
    navratovahodnota=$?
    sed 's/41/Fan error/g;s/2/Normal/g' <$docasnysubor
    rm $docasnysubor
    exit $navratovahodnota
    
    Ak na vystup, tak ju po nahradení tam nechajte, možno sa s tým vysporiada:
    check_command check_snmp! -C "heslo" -r 2 -P 2c -o 1.3.6.1.4.1.25506.2.6.1.1.1.1.19.68 | sed 's/41/41 - Fan error/g;s/2/2 - Normal/g'
    
    Ak sa nevysporiada, tak máte smolu.
    Max avatar 13.10.2022 17:48 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: Nagios a nahrazení návratové hodnoty za text
    Tak tak, jak říká pan X. Nejde o to, co to vypisuje, jde o to, jaký je návratový kód. Tady jsem kdysi psal vysvětlení: Nagios + Centreon + MySQL - skripty. Pokud chceš nějaký příklad, tak tady jsem si něco psal: github.com. Je to malý, krátký script na monitoring teplotního sensoru.
    Zdar Max
    Měl jsem sen ... :(
    13.10.2022 19:01 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: Nagios a nahrazení návratové hodnoty za text
    Nedá sa ako použiť návratná hodnota programu (t. j. exit(VALUE) resp. return v main() v C programovacom jazyku)?

    C program:
    int main(int argc, char **argv)
    {
    	return argv[1][0]-'0';
    }
    
    A výsledok:
    (./main 0 && echo "ok") || echo "wrong"
    Návratna hodnota posledne vykonaného príkazu je uložená vo $?.
    debian.plus@protonmail.com
    13.10.2022 19:06 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: Nagios a nahrazení návratové hodnoty za text
    Pre testovanie dobrého výsledku:
    (./main 0 && echo "ok") || echo "wrong"
    Pre testovanie zlého výsledku:
    (./main 1 && echo "ok") || echo "wrong"
    debian.plus@protonmail.com
    14.10.2022 13:54 MM
    Rozbalit Rozbalit vše Re: Nagios a nahrazení návratové hodnoty za text
    A nevyřešilo by se to celé, pokud bys SNMP krámu podstrčil MIBku, která by ti to přechroupala z čísla na text automagicky? Pak by nebyl potřeba sed atp. a asi by to padalo rovnou z toho check_snmp jako text i s návratovou hodnotou. K tomu MIBky jsou,...
    Řešení 1× (PD321 (tazatel))
    17.10.2022 23:31 PD321 | skóre: 4
    Rozbalit Rozbalit vše Re: Nagios a nahrazení návratové hodnoty za text
    Nakonec jsem to vyřešil napsáním vlastního pluginu v Pythonu. Bylo to 2 dny moření a zjišťování jak Nagios předává parametry, ale celkově snažší než se pokoušet zachytávat výstup z check_snmp.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.